glebtv-ckeditor 4.0.1 → 4.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (348) hide show
  1. data/Rakefile +63 -62
  2. data/app/assets/stylesheets/ckcontent.css +0 -0
  3. data/lib/ckeditor.rb +4 -3
  4. data/lib/ckeditor/engine.rb +1 -1
  5. data/lib/ckeditor/version.rb +2 -2
  6. data/vendor/assets/javascripts/ckeditor/CHANGES.md +27 -1
  7. data/vendor/assets/javascripts/ckeditor/README.md +1 -1
  8. data/vendor/assets/javascripts/ckeditor/build-config.js +10 -89
  9. data/vendor/assets/javascripts/ckeditor/ckeditor.js +286 -329
  10. data/vendor/assets/javascripts/ckeditor/config.js.erb +3 -8
  11. data/vendor/assets/javascripts/ckeditor/lang/en.js +1 -1
  12. data/vendor/assets/javascripts/ckeditor/lang/ru.js +1 -1
  13. data/vendor/assets/javascripts/ckeditor/plugins/CKCss/ckcss.png +0 -0
  14. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/cs.js +2 -2
  15. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/cy.js +1 -1
  16. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/fa.js +1 -1
  17. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/km.js +9 -0
  18. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js +6 -6
  19. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/nl.js +2 -2
  20. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/pl.js +6 -5
  21. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js +1 -1
  22. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/sv.js +2 -2
  23. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/th.js +9 -0
  24. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/vi.js +2 -2
  25. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/css/codemirror.ckeditor.css +74 -0
  26. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/css/codemirror.css +16 -10
  27. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/css/codemirror.min.css +1 -0
  28. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/icons/AutoFormat.png +0 -0
  29. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/icons/CommentSelectedRange.png +0 -0
  30. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/icons/UncommentSelectedRange.png +0 -0
  31. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/{util → addon/dialog}/dialog.js +76 -75
  32. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/addon/edit/closebrackets.js +29 -0
  33. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/{util → addon/edit}/closetag.js +86 -85
  34. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/{util → addon/edit}/continuelist.js +28 -28
  35. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/{util → addon/edit}/matchbrackets.js +74 -63
  36. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/{util → addon/foldcode}/foldcode.js +183 -182
  37. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/addon/format/autoFormatAll.js +43 -0
  38. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/{util → addon/format}/formatting.js +114 -108
  39. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/addon/search/match-highlighter.js +60 -0
  40. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/{util → addon/search}/search.js +131 -119
  41. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/{util → addon/search}/searchcursor.js +131 -119
  42. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.addons.min.js +1 -0
  43. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.js +5384 -4553
  44. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.min.js +1 -0
  45. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.modes.min.js +1 -0
  46. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/codemirror.search-addons.min.js +1 -0
  47. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/css.js +465 -465
  48. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/htmlmixed.js +104 -84
  49. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/javascript.js +426 -411
  50. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/xml.js +324 -324
  51. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/af.js +4 -1
  52. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/ar.js +4 -1
  53. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/bg.js +4 -1
  54. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/bn.js +4 -1
  55. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/bs.js +4 -1
  56. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/ca.js +4 -1
  57. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/cs.js +4 -1
  58. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/cy.js +4 -1
  59. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/da.js +4 -1
  60. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/de.js +4 -1
  61. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/el.js +4 -1
  62. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/en-au.js +4 -1
  63. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/en-ca.js +4 -1
  64. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/en-gb.js +4 -1
  65. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/en.js +4 -1
  66. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/eo.js +4 -1
  67. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/es.js +4 -1
  68. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/et.js +4 -1
  69. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/eu.js +4 -1
  70. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/fa.js +4 -1
  71. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/fi.js +4 -1
  72. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/fo.js +4 -1
  73. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/fr-ca.js +4 -1
  74. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/fr.js +4 -1
  75. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/gl.js +4 -1
  76. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/gu.js +4 -1
  77. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/he.js +4 -1
  78. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/hi.js +4 -1
  79. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/hr.js +4 -1
  80. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/hu.js +4 -1
  81. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/is.js +4 -1
  82. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/it.js +4 -1
  83. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/ja.js +4 -1
  84. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/ka.js +4 -1
  85. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/km.js +4 -1
  86. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/ko.js +4 -1
  87. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/ku.js +4 -1
  88. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/lt.js +4 -1
  89. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/lv.js +4 -1
  90. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/mk.js +4 -1
  91. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/mn.js +4 -1
  92. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/ms.js +4 -1
  93. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/nb.js +4 -1
  94. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/nl.js +4 -1
  95. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/no.js +4 -1
  96. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/pl.js +4 -1
  97. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/pt-br.js +4 -1
  98. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/pt.js +4 -1
  99. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/ro.js +4 -1
  100. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/ru.js +4 -1
  101. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/sk.js +4 -1
  102. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/sl.js +4 -1
  103. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/sr-latn.js +4 -1
  104. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/sr.js +4 -1
  105. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/sv.js +4 -1
  106. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/th.js +4 -1
  107. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/tr.js +4 -1
  108. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/ug.js +4 -1
  109. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/uk.js +4 -1
  110. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/vi.js +4 -1
  111. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/zh-cn.js +4 -1
  112. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/lang/zh.js +4 -1
  113. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/plugin.js +249 -103
  114. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/ambiance-mobile.css +6 -6
  115. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/ambiance.css +76 -76
  116. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/blackboard.css +25 -25
  117. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/cobalt.css +18 -18
  118. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/eclipse.css +25 -25
  119. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/elegant.css +10 -10
  120. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/erlang-dark.css +21 -21
  121. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/lesser-dark.css +44 -44
  122. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/monokai.css +28 -28
  123. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/neat.css +9 -9
  124. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/night.css +21 -21
  125. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/rubyblue.css +21 -21
  126. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/solarized.css +207 -207
  127. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/twilight.css +26 -25
  128. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/vibrant-ink.css +27 -27
  129. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/theme/xq-dark.css +46 -46
  130. data/vendor/assets/javascripts/ckeditor/plugins/icons.png +0 -0
  131. data/vendor/assets/javascripts/ckeditor/plugins/iframedialog/plugin.js +173 -173
  132. data/vendor/assets/javascripts/ckeditor/plugins/{MediaEmbed → mediaembed}/images/icon.png +0 -0
  133. data/vendor/assets/javascripts/ckeditor/plugins/{MediaEmbed → mediaembed}/plugin.js +16 -13
  134. data/vendor/assets/javascripts/ckeditor/plugins/oembed/images/icon.png +0 -0
  135. data/vendor/assets/javascripts/ckeditor/plugins/oembed/lang/de.js +5 -2
  136. data/vendor/assets/javascripts/ckeditor/plugins/oembed/lang/en.js +4 -1
  137. data/vendor/assets/javascripts/ckeditor/plugins/oembed/lang/fr.js +9 -6
  138. data/vendor/assets/javascripts/ckeditor/plugins/oembed/lang/nl.js +4 -1
  139. data/vendor/assets/javascripts/ckeditor/plugins/oembed/lang/ru.js +11 -8
  140. data/vendor/assets/javascripts/ckeditor/plugins/oembed/libs/jquery.oembed.js +161 -30
  141. data/vendor/assets/javascripts/ckeditor/plugins/oembed/libs/jquery.oembed.min.js +1 -4
  142. data/vendor/assets/javascripts/ckeditor/plugins/oembed/plugin.js +55 -59
  143. data/vendor/assets/javascripts/ckeditor/plugins/scayt/dialogs/options.js +11 -10
  144. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/fa.js +8 -9
  145. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/fr.js +1 -1
  146. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/ku.js +9 -10
  147. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/pl.js +12 -0
  148. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/th.js +13 -0
  149. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog.css +1 -1
  150. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie.css +1 -1
  151. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie7.css +1 -1
  152. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie8.css +1 -1
  153. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_iequirks.css +5 -3
  154. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_opera.css +1 -1
  155. data/vendor/assets/javascripts/ckeditor/skins/moono/editor.css +1 -1
  156. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_gecko.css +1 -1
  157. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie.css +1 -1
  158. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie7.css +1 -1
  159. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie8.css +1 -1
  160. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_iequirks.css +52 -196
  161. data/vendor/assets/javascripts/ckeditor/skins/moono/icons.png +0 -0
  162. metadata +29 -203
  163. data/vendor/assets/javascripts/ckeditor/contents.css +0 -99
  164. data/vendor/assets/javascripts/ckeditor/lang/af.js +0 -5
  165. data/vendor/assets/javascripts/ckeditor/lang/ar.js +0 -5
  166. data/vendor/assets/javascripts/ckeditor/lang/bg.js +0 -5
  167. data/vendor/assets/javascripts/ckeditor/lang/bn.js +0 -5
  168. data/vendor/assets/javascripts/ckeditor/lang/bs.js +0 -5
  169. data/vendor/assets/javascripts/ckeditor/lang/ca.js +0 -5
  170. data/vendor/assets/javascripts/ckeditor/lang/cs.js +0 -5
  171. data/vendor/assets/javascripts/ckeditor/lang/cy.js +0 -5
  172. data/vendor/assets/javascripts/ckeditor/lang/da.js +0 -5
  173. data/vendor/assets/javascripts/ckeditor/lang/de.js +0 -5
  174. data/vendor/assets/javascripts/ckeditor/lang/el.js +0 -5
  175. data/vendor/assets/javascripts/ckeditor/lang/en-au.js +0 -5
  176. data/vendor/assets/javascripts/ckeditor/lang/en-ca.js +0 -5
  177. data/vendor/assets/javascripts/ckeditor/lang/en-gb.js +0 -5
  178. data/vendor/assets/javascripts/ckeditor/lang/eo.js +0 -5
  179. data/vendor/assets/javascripts/ckeditor/lang/es.js +0 -5
  180. data/vendor/assets/javascripts/ckeditor/lang/et.js +0 -5
  181. data/vendor/assets/javascripts/ckeditor/lang/eu.js +0 -5
  182. data/vendor/assets/javascripts/ckeditor/lang/fa.js +0 -5
  183. data/vendor/assets/javascripts/ckeditor/lang/fi.js +0 -5
  184. data/vendor/assets/javascripts/ckeditor/lang/fo.js +0 -5
  185. data/vendor/assets/javascripts/ckeditor/lang/fr-ca.js +0 -5
  186. data/vendor/assets/javascripts/ckeditor/lang/fr.js +0 -5
  187. data/vendor/assets/javascripts/ckeditor/lang/gl.js +0 -5
  188. data/vendor/assets/javascripts/ckeditor/lang/gu.js +0 -5
  189. data/vendor/assets/javascripts/ckeditor/lang/he.js +0 -5
  190. data/vendor/assets/javascripts/ckeditor/lang/hi.js +0 -5
  191. data/vendor/assets/javascripts/ckeditor/lang/hr.js +0 -5
  192. data/vendor/assets/javascripts/ckeditor/lang/hu.js +0 -5
  193. data/vendor/assets/javascripts/ckeditor/lang/is.js +0 -5
  194. data/vendor/assets/javascripts/ckeditor/lang/it.js +0 -5
  195. data/vendor/assets/javascripts/ckeditor/lang/ja.js +0 -5
  196. data/vendor/assets/javascripts/ckeditor/lang/ka.js +0 -5
  197. data/vendor/assets/javascripts/ckeditor/lang/km.js +0 -5
  198. data/vendor/assets/javascripts/ckeditor/lang/ko.js +0 -5
  199. data/vendor/assets/javascripts/ckeditor/lang/ku.js +0 -5
  200. data/vendor/assets/javascripts/ckeditor/lang/lt.js +0 -5
  201. data/vendor/assets/javascripts/ckeditor/lang/lv.js +0 -5
  202. data/vendor/assets/javascripts/ckeditor/lang/mk.js +0 -5
  203. data/vendor/assets/javascripts/ckeditor/lang/mn.js +0 -5
  204. data/vendor/assets/javascripts/ckeditor/lang/ms.js +0 -5
  205. data/vendor/assets/javascripts/ckeditor/lang/nb.js +0 -5
  206. data/vendor/assets/javascripts/ckeditor/lang/nl.js +0 -5
  207. data/vendor/assets/javascripts/ckeditor/lang/no.js +0 -5
  208. data/vendor/assets/javascripts/ckeditor/lang/pl.js +0 -5
  209. data/vendor/assets/javascripts/ckeditor/lang/pt-br.js +0 -5
  210. data/vendor/assets/javascripts/ckeditor/lang/pt.js +0 -5
  211. data/vendor/assets/javascripts/ckeditor/lang/ro.js +0 -5
  212. data/vendor/assets/javascripts/ckeditor/lang/sk.js +0 -5
  213. data/vendor/assets/javascripts/ckeditor/lang/sl.js +0 -5
  214. data/vendor/assets/javascripts/ckeditor/lang/sr-latn.js +0 -5
  215. data/vendor/assets/javascripts/ckeditor/lang/sr.js +0 -5
  216. data/vendor/assets/javascripts/ckeditor/lang/sv.js +0 -5
  217. data/vendor/assets/javascripts/ckeditor/lang/th.js +0 -5
  218. data/vendor/assets/javascripts/ckeditor/lang/tr.js +0 -5
  219. data/vendor/assets/javascripts/ckeditor/lang/ug.js +0 -5
  220. data/vendor/assets/javascripts/ckeditor/lang/uk.js +0 -5
  221. data/vendor/assets/javascripts/ckeditor/lang/vi.js +0 -5
  222. data/vendor/assets/javascripts/ckeditor/lang/zh-cn.js +0 -5
  223. data/vendor/assets/javascripts/ckeditor/lang/zh.js +0 -5
  224. data/vendor/assets/javascripts/ckeditor/plugins/CKCss/CKCss.xml +0 -26
  225. data/vendor/assets/javascripts/ckeditor/plugins/CKCss/ckcss1.png +0 -0
  226. data/vendor/assets/javascripts/ckeditor/plugins/MediaEmbed/icons/mediaembed.png +0 -0
  227. data/vendor/assets/javascripts/ckeditor/plugins/about/dialogs/about.js +0 -6
  228. data/vendor/assets/javascripts/ckeditor/plugins/about/dialogs/logo_ckeditor.png +0 -0
  229. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/css/sourcecodepro-regular.eot +0 -0
  230. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/css/sourcecodepro-regular.otf +0 -0
  231. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/css/sourcecodepro-regular.svg +0 -242
  232. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/css/sourcecodepro-regular.ttf +0 -0
  233. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/css/sourcecodepro-regular.woff +0 -0
  234. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/util/colorize.js +0 -29
  235. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/util/continuecomment.js +0 -36
  236. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/util/dialog.css +0 -32
  237. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/util/javascript-hint.js +0 -137
  238. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/util/loadmode.js +0 -51
  239. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/util/match-highlighter.js +0 -46
  240. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/util/multiplex.js +0 -95
  241. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/util/overlay.js +0 -59
  242. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/util/pig-hint.js +0 -117
  243. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/util/runmode-standalone.js +0 -90
  244. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/util/runmode.js +0 -52
  245. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/util/simple-hint.css +0 -16
  246. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/util/simple-hint.js +0 -102
  247. data/vendor/assets/javascripts/ckeditor/plugins/codemirror/js/util/xml-hint.js +0 -131
  248. data/vendor/assets/javascripts/ckeditor/plugins/colordialog/dialogs/colordialog.js +0 -13
  249. data/vendor/assets/javascripts/ckeditor/plugins/div/dialogs/div.js +0 -9
  250. data/vendor/assets/javascripts/ckeditor/plugins/find/dialogs/find.js +0 -24
  251. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/button.js +0 -8
  252. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/checkbox.js +0 -8
  253. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/form.js +0 -8
  254. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/hiddenfield.js +0 -8
  255. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/radio.js +0 -8
  256. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/select.js +0 -20
  257. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/textarea.js +0 -8
  258. data/vendor/assets/javascripts/ckeditor/plugins/forms/dialogs/textfield.js +0 -10
  259. data/vendor/assets/javascripts/ckeditor/plugins/forms/images/hiddenfield.gif +0 -0
  260. data/vendor/assets/javascripts/ckeditor/plugins/htmlbuttons/docs/install.html +0 -93
  261. data/vendor/assets/javascripts/ckeditor/plugins/htmlbuttons/docs/styles.css +0 -59
  262. data/vendor/assets/javascripts/ckeditor/plugins/htmlbuttons/icon1.png +0 -0
  263. data/vendor/assets/javascripts/ckeditor/plugins/htmlbuttons/icon2.png +0 -0
  264. data/vendor/assets/javascripts/ckeditor/plugins/htmlbuttons/icon3.png +0 -0
  265. data/vendor/assets/javascripts/ckeditor/plugins/htmlbuttons/plugin.js +0 -71
  266. data/vendor/assets/javascripts/ckeditor/plugins/iframe/dialogs/iframe.js +0 -10
  267. data/vendor/assets/javascripts/ckeditor/plugins/iframe/images/placeholder.png +0 -0
  268. data/vendor/assets/javascripts/ckeditor/plugins/liststyle/dialogs/liststyle.js +0 -10
  269. data/vendor/assets/javascripts/ckeditor/plugins/pagebreak/images/pagebreak.gif +0 -0
  270. data/vendor/assets/javascripts/ckeditor/plugins/preview/preview.html +0 -10
  271. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_address.png +0 -0
  272. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_blockquote.png +0 -0
  273. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_div.png +0 -0
  274. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_h1.png +0 -0
  275. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_h2.png +0 -0
  276. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_h3.png +0 -0
  277. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_h4.png +0 -0
  278. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_h5.png +0 -0
  279. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_h6.png +0 -0
  280. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_p.png +0 -0
  281. data/vendor/assets/javascripts/ckeditor/plugins/showblocks/images/block_pre.png +0 -0
  282. data/vendor/assets/javascripts/ckeditor/plugins/smiley/dialogs/smiley.js +0 -10
  283. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/angel_smile.gif +0 -0
  284. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/angry_smile.gif +0 -0
  285. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/broken_heart.gif +0 -0
  286. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/confused_smile.gif +0 -0
  287. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/cry_smile.gif +0 -0
  288. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/devil_smile.gif +0 -0
  289. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/embaressed_smile.gif +0 -0
  290. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/embarrassed_smile.gif +0 -0
  291. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/envelope.gif +0 -0
  292. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/heart.gif +0 -0
  293. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/kiss.gif +0 -0
  294. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/lightbulb.gif +0 -0
  295. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/omg_smile.gif +0 -0
  296. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/regular_smile.gif +0 -0
  297. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/sad_smile.gif +0 -0
  298. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/shades_smile.gif +0 -0
  299. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/teeth_smile.gif +0 -0
  300. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/thumbs_down.gif +0 -0
  301. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/thumbs_up.gif +0 -0
  302. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/tongue_smile.gif +0 -0
  303. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/tounge_smile.gif +0 -0
  304. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif +0 -0
  305. data/vendor/assets/javascripts/ckeditor/plugins/smiley/images/wink_smile.gif +0 -0
  306. data/vendor/assets/javascripts/ckeditor/plugins/templates/dialogs/templates.css +0 -84
  307. data/vendor/assets/javascripts/ckeditor/plugins/templates/dialogs/templates.js +0 -10
  308. data/vendor/assets/javascripts/ckeditor/plugins/templates/templates/default.js +0 -6
  309. data/vendor/assets/javascripts/ckeditor/plugins/templates/templates/images/template1.gif +0 -0
  310. data/vendor/assets/javascripts/ckeditor/plugins/templates/templates/images/template2.gif +0 -0
  311. data/vendor/assets/javascripts/ckeditor/plugins/templates/templates/images/template3.gif +0 -0
  312. data/vendor/assets/javascripts/ckeditor/plugins/wordcount/lang/en.js +0 -9
  313. data/vendor/assets/javascripts/ckeditor/plugins/wordcount/lang/ru.js +0 -9
  314. data/vendor/assets/javascripts/ckeditor/plugins/wordcount/plugin.js +0 -95
  315. data/vendor/assets/javascripts/ckeditor/samples/ajax.html +0 -82
  316. data/vendor/assets/javascripts/ckeditor/samples/api.html +0 -207
  317. data/vendor/assets/javascripts/ckeditor/samples/appendto.html +0 -57
  318. data/vendor/assets/javascripts/ckeditor/samples/assets/inlineall/logo.png +0 -0
  319. data/vendor/assets/javascripts/ckeditor/samples/assets/outputxhtml/outputxhtml.css +0 -204
  320. data/vendor/assets/javascripts/ckeditor/samples/assets/posteddata.php +0 -59
  321. data/vendor/assets/javascripts/ckeditor/samples/assets/sample.css +0 -3
  322. data/vendor/assets/javascripts/ckeditor/samples/assets/sample.jpg +0 -0
  323. data/vendor/assets/javascripts/ckeditor/samples/assets/uilanguages/languages.js +0 -7
  324. data/vendor/assets/javascripts/ckeditor/samples/divreplace.html +0 -141
  325. data/vendor/assets/javascripts/ckeditor/samples/index.html +0 -119
  326. data/vendor/assets/javascripts/ckeditor/samples/inlineall.html +0 -311
  327. data/vendor/assets/javascripts/ckeditor/samples/inlinebycode.html +0 -122
  328. data/vendor/assets/javascripts/ckeditor/samples/plugins/dialog/assets/my_dialog.js +0 -48
  329. data/vendor/assets/javascripts/ckeditor/samples/plugins/dialog/dialog.html +0 -187
  330. data/vendor/assets/javascripts/ckeditor/samples/plugins/enterkey/enterkey.html +0 -103
  331. data/vendor/assets/javascripts/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/outputforflash.fla +0 -0
  332. data/vendor/assets/javascripts/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/outputforflash.swf +0 -0
  333. data/vendor/assets/javascripts/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/swfobject.js +0 -18
  334. data/vendor/assets/javascripts/ckeditor/samples/plugins/htmlwriter/outputforflash.html +0 -280
  335. data/vendor/assets/javascripts/ckeditor/samples/plugins/htmlwriter/outputhtml.html +0 -237
  336. data/vendor/assets/javascripts/ckeditor/samples/plugins/magicline/magicline.html +0 -203
  337. data/vendor/assets/javascripts/ckeditor/samples/plugins/toolbar/toolbar.html +0 -200
  338. data/vendor/assets/javascripts/ckeditor/samples/plugins/wysiwygarea/fullpage.html +0 -71
  339. data/vendor/assets/javascripts/ckeditor/samples/readonly.html +0 -73
  340. data/vendor/assets/javascripts/ckeditor/samples/replacebyclass.html +0 -57
  341. data/vendor/assets/javascripts/ckeditor/samples/replacebycode.html +0 -56
  342. data/vendor/assets/javascripts/ckeditor/samples/sample.css +0 -333
  343. data/vendor/assets/javascripts/ckeditor/samples/sample.js +0 -5
  344. data/vendor/assets/javascripts/ckeditor/samples/sample_posteddata.php +0 -16
  345. data/vendor/assets/javascripts/ckeditor/samples/tabindex.html +0 -75
  346. data/vendor/assets/javascripts/ckeditor/samples/uicolor.html +0 -69
  347. data/vendor/assets/javascripts/ckeditor/samples/uilanguages.html +0 -119
  348. data/vendor/assets/javascripts/ckeditor/samples/xhtmlstyle.html +0 -219
@@ -1,324 +1,324 @@
1
- CodeMirror.defineMode("xml", function(config, parserConfig) {
2
- var indentUnit = config.indentUnit;
3
- var Kludges = parserConfig.htmlMode ? {
4
- autoSelfClosers: {'area': true, 'base': true, 'br': true, 'col': true, 'command': true,
5
- 'embed': true, 'frame': true, 'hr': true, 'img': true, 'input': true,
6
- 'keygen': true, 'link': true, 'meta': true, 'param': true, 'source': true,
7
- 'track': true, 'wbr': true},
8
- implicitlyClosed: {'dd': true, 'li': true, 'optgroup': true, 'option': true, 'p': true,
9
- 'rp': true, 'rt': true, 'tbody': true, 'td': true, 'tfoot': true,
10
- 'th': true, 'tr': true},
11
- contextGrabbers: {
12
- 'dd': {'dd': true, 'dt': true},
13
- 'dt': {'dd': true, 'dt': true},
14
- 'li': {'li': true},
15
- 'option': {'option': true, 'optgroup': true},
16
- 'optgroup': {'optgroup': true},
17
- 'p': {'address': true, 'article': true, 'aside': true, 'blockquote': true, 'dir': true,
18
- 'div': true, 'dl': true, 'fieldset': true, 'footer': true, 'form': true,
19
- 'h1': true, 'h2': true, 'h3': true, 'h4': true, 'h5': true, 'h6': true,
20
- 'header': true, 'hgroup': true, 'hr': true, 'menu': true, 'nav': true, 'ol': true,
21
- 'p': true, 'pre': true, 'section': true, 'table': true, 'ul': true},
22
- 'rp': {'rp': true, 'rt': true},
23
- 'rt': {'rp': true, 'rt': true},
24
- 'tbody': {'tbody': true, 'tfoot': true},
25
- 'td': {'td': true, 'th': true},
26
- 'tfoot': {'tbody': true},
27
- 'th': {'td': true, 'th': true},
28
- 'thead': {'tbody': true, 'tfoot': true},
29
- 'tr': {'tr': true}
30
- },
31
- doNotIndent: {"pre": true},
32
- allowUnquoted: true,
33
- allowMissing: true
34
- } : {
35
- autoSelfClosers: {},
36
- implicitlyClosed: {},
37
- contextGrabbers: {},
38
- doNotIndent: {},
39
- allowUnquoted: false,
40
- allowMissing: false
41
- };
42
- var alignCDATA = parserConfig.alignCDATA;
43
-
44
- // Return variables for tokenizers
45
- var tagName, type;
46
-
47
- function inText(stream, state) {
48
- function chain(parser) {
49
- state.tokenize = parser;
50
- return parser(stream, state);
51
- }
52
-
53
- var ch = stream.next();
54
- if (ch == "<") {
55
- if (stream.eat("!")) {
56
- if (stream.eat("[")) {
57
- if (stream.match("CDATA[")) return chain(inBlock("atom", "]]>"));
58
- else return null;
59
- }
60
- else if (stream.match("--")) return chain(inBlock("comment", "-->"));
61
- else if (stream.match("DOCTYPE", true, true)) {
62
- stream.eatWhile(/[\w\._\-]/);
63
- return chain(doctype(1));
64
- }
65
- else return null;
66
- }
67
- else if (stream.eat("?")) {
68
- stream.eatWhile(/[\w\._\-]/);
69
- state.tokenize = inBlock("meta", "?>");
70
- return "meta";
71
- }
72
- else {
73
- var isClose = stream.eat("/");
74
- tagName = "";
75
- var c;
76
- while ((c = stream.eat(/[^\s\u00a0=<>\"\'\/?]/))) tagName += c;
77
- if (!tagName) return "error";
78
- type = isClose ? "closeTag" : "openTag";
79
- state.tokenize = inTag;
80
- return "tag";
81
- }
82
- }
83
- else if (ch == "&") {
84
- var ok;
85
- if (stream.eat("#")) {
86
- if (stream.eat("x")) {
87
- ok = stream.eatWhile(/[a-fA-F\d]/) && stream.eat(";");
88
- } else {
89
- ok = stream.eatWhile(/[\d]/) && stream.eat(";");
90
- }
91
- } else {
92
- ok = stream.eatWhile(/[\w\.\-:]/) && stream.eat(";");
93
- }
94
- return ok ? "atom" : "error";
95
- }
96
- else {
97
- stream.eatWhile(/[^&<]/);
98
- return null;
99
- }
100
- }
101
-
102
- function inTag(stream, state) {
103
- var ch = stream.next();
104
- if (ch == ">" || (ch == "/" && stream.eat(">"))) {
105
- state.tokenize = inText;
106
- type = ch == ">" ? "endTag" : "selfcloseTag";
107
- return "tag";
108
- }
109
- else if (ch == "=") {
110
- type = "equals";
111
- return null;
112
- }
113
- else if (/[\'\"]/.test(ch)) {
114
- state.tokenize = inAttribute(ch);
115
- return state.tokenize(stream, state);
116
- }
117
- else {
118
- stream.eatWhile(/[^\s\u00a0=<>\"\']/);
119
- return "word";
120
- }
121
- }
122
-
123
- function inAttribute(quote) {
124
- return function(stream, state) {
125
- while (!stream.eol()) {
126
- if (stream.next() == quote) {
127
- state.tokenize = inTag;
128
- break;
129
- }
130
- }
131
- return "string";
132
- };
133
- }
134
-
135
- function inBlock(style, terminator) {
136
- return function(stream, state) {
137
- while (!stream.eol()) {
138
- if (stream.match(terminator)) {
139
- state.tokenize = inText;
140
- break;
141
- }
142
- stream.next();
143
- }
144
- return style;
145
- };
146
- }
147
- function doctype(depth) {
148
- return function(stream, state) {
149
- var ch;
150
- while ((ch = stream.next()) != null) {
151
- if (ch == "<") {
152
- state.tokenize = doctype(depth + 1);
153
- return state.tokenize(stream, state);
154
- } else if (ch == ">") {
155
- if (depth == 1) {
156
- state.tokenize = inText;
157
- break;
158
- } else {
159
- state.tokenize = doctype(depth - 1);
160
- return state.tokenize(stream, state);
161
- }
162
- }
163
- }
164
- return "meta";
165
- };
166
- }
167
-
168
- var curState, setStyle;
169
- function pass() {
170
- for (var i = arguments.length - 1; i >= 0; i--) curState.cc.push(arguments[i]);
171
- }
172
- function cont() {
173
- pass.apply(null, arguments);
174
- return true;
175
- }
176
-
177
- function pushContext(tagName, startOfLine) {
178
- var noIndent = Kludges.doNotIndent.hasOwnProperty(tagName) || (curState.context && curState.context.noIndent);
179
- curState.context = {
180
- prev: curState.context,
181
- tagName: tagName,
182
- indent: curState.indented,
183
- startOfLine: startOfLine,
184
- noIndent: noIndent
185
- };
186
- }
187
- function popContext() {
188
- if (curState.context) curState.context = curState.context.prev;
189
- }
190
-
191
- function element(type) {
192
- if (type == "openTag") {
193
- curState.tagName = tagName;
194
- return cont(attributes, endtag(curState.startOfLine));
195
- } else if (type == "closeTag") {
196
- var err = false;
197
- if (curState.context) {
198
- if (curState.context.tagName != tagName) {
199
- if (Kludges.implicitlyClosed.hasOwnProperty(curState.context.tagName.toLowerCase())) {
200
- popContext();
201
- }
202
- err = !curState.context || curState.context.tagName != tagName;
203
- }
204
- } else {
205
- err = true;
206
- }
207
- if (err) setStyle = "error";
208
- return cont(endclosetag(err));
209
- }
210
- return cont();
211
- }
212
- function endtag(startOfLine) {
213
- return function(type) {
214
- var tagName = curState.tagName;
215
- curState.tagName = null;
216
- if (type == "selfcloseTag" ||
217
- (type == "endTag" && Kludges.autoSelfClosers.hasOwnProperty(tagName.toLowerCase()))) {
218
- maybePopContext(tagName.toLowerCase());
219
- return cont();
220
- }
221
- if (type == "endTag") {
222
- maybePopContext(tagName.toLowerCase());
223
- pushContext(tagName, startOfLine);
224
- return cont();
225
- }
226
- return cont();
227
- };
228
- }
229
- function endclosetag(err) {
230
- return function(type) {
231
- if (err) setStyle = "error";
232
- if (type == "endTag") { popContext(); return cont(); }
233
- setStyle = "error";
234
- return cont(arguments.callee);
235
- };
236
- }
237
- function maybePopContext(nextTagName) {
238
- var parentTagName;
239
- while (true) {
240
- if (!curState.context) {
241
- return;
242
- }
243
- parentTagName = curState.context.tagName.toLowerCase();
244
- if (!Kludges.contextGrabbers.hasOwnProperty(parentTagName) ||
245
- !Kludges.contextGrabbers[parentTagName].hasOwnProperty(nextTagName)) {
246
- return;
247
- }
248
- popContext();
249
- }
250
- }
251
-
252
- function attributes(type) {
253
- if (type == "word") {setStyle = "attribute"; return cont(attribute, attributes);}
254
- if (type == "endTag" || type == "selfcloseTag") return pass();
255
- setStyle = "error";
256
- return cont(attributes);
257
- }
258
- function attribute(type) {
259
- if (type == "equals") return cont(attvalue, attributes);
260
- if (!Kludges.allowMissing) setStyle = "error";
261
- else if (type == "word") setStyle = "attribute";
262
- return (type == "endTag" || type == "selfcloseTag") ? pass() : cont();
263
- }
264
- function attvalue(type) {
265
- if (type == "string") return cont(attvaluemaybe);
266
- if (type == "word" && Kludges.allowUnquoted) {setStyle = "string"; return cont();}
267
- setStyle = "error";
268
- return (type == "endTag" || type == "selfCloseTag") ? pass() : cont();
269
- }
270
- function attvaluemaybe(type) {
271
- if (type == "string") return cont(attvaluemaybe);
272
- else return pass();
273
- }
274
-
275
- return {
276
- startState: function() {
277
- return {tokenize: inText, cc: [], indented: 0, startOfLine: true, tagName: null, context: null};
278
- },
279
-
280
- token: function(stream, state) {
281
- if (stream.sol()) {
282
- state.startOfLine = true;
283
- state.indented = stream.indentation();
284
- }
285
- if (stream.eatSpace()) return null;
286
-
287
- setStyle = type = tagName = null;
288
- var style = state.tokenize(stream, state);
289
- state.type = type;
290
- if ((style || type) && style != "comment") {
291
- curState = state;
292
- while (true) {
293
- var comb = state.cc.pop() || element;
294
- if (comb(type || style)) break;
295
- }
296
- }
297
- state.startOfLine = false;
298
- return setStyle || style;
299
- },
300
-
301
- indent: function(state, textAfter, fullLine) {
302
- var context = state.context;
303
- if ((state.tokenize != inTag && state.tokenize != inText) ||
304
- context && context.noIndent)
305
- return fullLine ? fullLine.match(/^(\s*)/)[0].length : 0;
306
- if (alignCDATA && /<!\[CDATA\[/.test(textAfter)) return 0;
307
- if (context && /^<\//.test(textAfter))
308
- context = context.prev;
309
- while (context && !context.startOfLine)
310
- context = context.prev;
311
- if (context) return context.indent + indentUnit;
312
- else return 0;
313
- },
314
-
315
- electricChars: "/",
316
-
317
- configuration: parserConfig.htmlMode ? "html" : "xml"
318
- };
319
- });
320
-
321
- CodeMirror.defineMIME("text/xml", "xml");
322
- CodeMirror.defineMIME("application/xml", "xml");
323
- if (!CodeMirror.mimeModes.hasOwnProperty("text/html"))
324
- CodeMirror.defineMIME("text/html", {name: "xml", htmlMode: true});
1
+ CodeMirror.defineMode("xml", function(config, parserConfig) {
2
+ var indentUnit = config.indentUnit;
3
+ var Kludges = parserConfig.htmlMode ? {
4
+ autoSelfClosers: {'area': true, 'base': true, 'br': true, 'col': true, 'command': true,
5
+ 'embed': true, 'frame': true, 'hr': true, 'img': true, 'input': true,
6
+ 'keygen': true, 'link': true, 'meta': true, 'param': true, 'source': true,
7
+ 'track': true, 'wbr': true},
8
+ implicitlyClosed: {'dd': true, 'li': true, 'optgroup': true, 'option': true, 'p': true,
9
+ 'rp': true, 'rt': true, 'tbody': true, 'td': true, 'tfoot': true,
10
+ 'th': true, 'tr': true},
11
+ contextGrabbers: {
12
+ 'dd': {'dd': true, 'dt': true},
13
+ 'dt': {'dd': true, 'dt': true},
14
+ 'li': {'li': true},
15
+ 'option': {'option': true, 'optgroup': true},
16
+ 'optgroup': {'optgroup': true},
17
+ 'p': {'address': true, 'article': true, 'aside': true, 'blockquote': true, 'dir': true,
18
+ 'div': true, 'dl': true, 'fieldset': true, 'footer': true, 'form': true,
19
+ 'h1': true, 'h2': true, 'h3': true, 'h4': true, 'h5': true, 'h6': true,
20
+ 'header': true, 'hgroup': true, 'hr': true, 'menu': true, 'nav': true, 'ol': true,
21
+ 'p': true, 'pre': true, 'section': true, 'table': true, 'ul': true},
22
+ 'rp': {'rp': true, 'rt': true},
23
+ 'rt': {'rp': true, 'rt': true},
24
+ 'tbody': {'tbody': true, 'tfoot': true},
25
+ 'td': {'td': true, 'th': true},
26
+ 'tfoot': {'tbody': true},
27
+ 'th': {'td': true, 'th': true},
28
+ 'thead': {'tbody': true, 'tfoot': true},
29
+ 'tr': {'tr': true}
30
+ },
31
+ doNotIndent: {"pre": true},
32
+ allowUnquoted: true,
33
+ allowMissing: true
34
+ } : {
35
+ autoSelfClosers: {},
36
+ implicitlyClosed: {},
37
+ contextGrabbers: {},
38
+ doNotIndent: {},
39
+ allowUnquoted: false,
40
+ allowMissing: false
41
+ };
42
+ var alignCDATA = parserConfig.alignCDATA;
43
+
44
+ // Return variables for tokenizers
45
+ var tagName, type;
46
+
47
+ function inText(stream, state) {
48
+ function chain(parser) {
49
+ state.tokenize = parser;
50
+ return parser(stream, state);
51
+ }
52
+
53
+ var ch = stream.next();
54
+ if (ch == "<") {
55
+ if (stream.eat("!")) {
56
+ if (stream.eat("[")) {
57
+ if (stream.match("CDATA[")) return chain(inBlock("atom", "]]>"));
58
+ else return null;
59
+ }
60
+ else if (stream.match("--")) return chain(inBlock("comment", "-->"));
61
+ else if (stream.match("DOCTYPE", true, true)) {
62
+ stream.eatWhile(/[\w\._\-]/);
63
+ return chain(doctype(1));
64
+ }
65
+ else return null;
66
+ }
67
+ else if (stream.eat("?")) {
68
+ stream.eatWhile(/[\w\._\-]/);
69
+ state.tokenize = inBlock("meta", "?>");
70
+ return "meta";
71
+ }
72
+ else {
73
+ var isClose = stream.eat("/");
74
+ tagName = "";
75
+ var c;
76
+ while ((c = stream.eat(/[^\s\u00a0=<>\"\'\/?]/))) tagName += c;
77
+ if (!tagName) return "error";
78
+ type = isClose ? "closeTag" : "openTag";
79
+ state.tokenize = inTag;
80
+ return "tag";
81
+ }
82
+ }
83
+ else if (ch == "&") {
84
+ var ok;
85
+ if (stream.eat("#")) {
86
+ if (stream.eat("x")) {
87
+ ok = stream.eatWhile(/[a-fA-F\d]/) && stream.eat(";");
88
+ } else {
89
+ ok = stream.eatWhile(/[\d]/) && stream.eat(";");
90
+ }
91
+ } else {
92
+ ok = stream.eatWhile(/[\w\.\-:]/) && stream.eat(";");
93
+ }
94
+ return ok ? "atom" : "error";
95
+ }
96
+ else {
97
+ stream.eatWhile(/[^&<]/);
98
+ return null;
99
+ }
100
+ }
101
+
102
+ function inTag(stream, state) {
103
+ var ch = stream.next();
104
+ if (ch == ">" || (ch == "/" && stream.eat(">"))) {
105
+ state.tokenize = inText;
106
+ type = ch == ">" ? "endTag" : "selfcloseTag";
107
+ return "tag";
108
+ }
109
+ else if (ch == "=") {
110
+ type = "equals";
111
+ return null;
112
+ }
113
+ else if (/[\'\"]/.test(ch)) {
114
+ state.tokenize = inAttribute(ch);
115
+ return state.tokenize(stream, state);
116
+ }
117
+ else {
118
+ stream.eatWhile(/[^\s\u00a0=<>\"\']/);
119
+ return "word";
120
+ }
121
+ }
122
+
123
+ function inAttribute(quote) {
124
+ return function(stream, state) {
125
+ while (!stream.eol()) {
126
+ if (stream.next() == quote) {
127
+ state.tokenize = inTag;
128
+ break;
129
+ }
130
+ }
131
+ return "string";
132
+ };
133
+ }
134
+
135
+ function inBlock(style, terminator) {
136
+ return function(stream, state) {
137
+ while (!stream.eol()) {
138
+ if (stream.match(terminator)) {
139
+ state.tokenize = inText;
140
+ break;
141
+ }
142
+ stream.next();
143
+ }
144
+ return style;
145
+ };
146
+ }
147
+ function doctype(depth) {
148
+ return function(stream, state) {
149
+ var ch;
150
+ while ((ch = stream.next()) != null) {
151
+ if (ch == "<") {
152
+ state.tokenize = doctype(depth + 1);
153
+ return state.tokenize(stream, state);
154
+ } else if (ch == ">") {
155
+ if (depth == 1) {
156
+ state.tokenize = inText;
157
+ break;
158
+ } else {
159
+ state.tokenize = doctype(depth - 1);
160
+ return state.tokenize(stream, state);
161
+ }
162
+ }
163
+ }
164
+ return "meta";
165
+ };
166
+ }
167
+
168
+ var curState, setStyle;
169
+ function pass() {
170
+ for (var i = arguments.length - 1; i >= 0; i--) curState.cc.push(arguments[i]);
171
+ }
172
+ function cont() {
173
+ pass.apply(null, arguments);
174
+ return true;
175
+ }
176
+
177
+ function pushContext(tagName, startOfLine) {
178
+ var noIndent = Kludges.doNotIndent.hasOwnProperty(tagName) || (curState.context && curState.context.noIndent);
179
+ curState.context = {
180
+ prev: curState.context,
181
+ tagName: tagName,
182
+ indent: curState.indented,
183
+ startOfLine: startOfLine,
184
+ noIndent: noIndent
185
+ };
186
+ }
187
+ function popContext() {
188
+ if (curState.context) curState.context = curState.context.prev;
189
+ }
190
+
191
+ function element(type) {
192
+ if (type == "openTag") {
193
+ curState.tagName = tagName;
194
+ return cont(attributes, endtag(curState.startOfLine));
195
+ } else if (type == "closeTag") {
196
+ var err = false;
197
+ if (curState.context) {
198
+ if (curState.context.tagName != tagName) {
199
+ if (Kludges.implicitlyClosed.hasOwnProperty(curState.context.tagName.toLowerCase())) {
200
+ popContext();
201
+ }
202
+ err = !curState.context || curState.context.tagName != tagName;
203
+ }
204
+ } else {
205
+ err = true;
206
+ }
207
+ if (err) setStyle = "error";
208
+ return cont(endclosetag(err));
209
+ }
210
+ return cont();
211
+ }
212
+ function endtag(startOfLine) {
213
+ return function(type) {
214
+ var tagName = curState.tagName;
215
+ curState.tagName = null;
216
+ if (type == "selfcloseTag" ||
217
+ (type == "endTag" && Kludges.autoSelfClosers.hasOwnProperty(tagName.toLowerCase()))) {
218
+ maybePopContext(tagName.toLowerCase());
219
+ return cont();
220
+ }
221
+ if (type == "endTag") {
222
+ maybePopContext(tagName.toLowerCase());
223
+ pushContext(tagName, startOfLine);
224
+ return cont();
225
+ }
226
+ return cont();
227
+ };
228
+ }
229
+ function endclosetag(err) {
230
+ return function(type) {
231
+ if (err) setStyle = "error";
232
+ if (type == "endTag") { popContext(); return cont(); }
233
+ setStyle = "error";
234
+ return cont(arguments.callee);
235
+ };
236
+ }
237
+ function maybePopContext(nextTagName) {
238
+ var parentTagName;
239
+ while (true) {
240
+ if (!curState.context) {
241
+ return;
242
+ }
243
+ parentTagName = curState.context.tagName.toLowerCase();
244
+ if (!Kludges.contextGrabbers.hasOwnProperty(parentTagName) ||
245
+ !Kludges.contextGrabbers[parentTagName].hasOwnProperty(nextTagName)) {
246
+ return;
247
+ }
248
+ popContext();
249
+ }
250
+ }
251
+
252
+ function attributes(type) {
253
+ if (type == "word") {setStyle = "attribute"; return cont(attribute, attributes);}
254
+ if (type == "endTag" || type == "selfcloseTag") return pass();
255
+ setStyle = "error";
256
+ return cont(attributes);
257
+ }
258
+ function attribute(type) {
259
+ if (type == "equals") return cont(attvalue, attributes);
260
+ if (!Kludges.allowMissing) setStyle = "error";
261
+ else if (type == "word") setStyle = "attribute";
262
+ return (type == "endTag" || type == "selfcloseTag") ? pass() : cont();
263
+ }
264
+ function attvalue(type) {
265
+ if (type == "string") return cont(attvaluemaybe);
266
+ if (type == "word" && Kludges.allowUnquoted) {setStyle = "string"; return cont();}
267
+ setStyle = "error";
268
+ return (type == "endTag" || type == "selfCloseTag") ? pass() : cont();
269
+ }
270
+ function attvaluemaybe(type) {
271
+ if (type == "string") return cont(attvaluemaybe);
272
+ else return pass();
273
+ }
274
+
275
+ return {
276
+ startState: function() {
277
+ return {tokenize: inText, cc: [], indented: 0, startOfLine: true, tagName: null, context: null};
278
+ },
279
+
280
+ token: function(stream, state) {
281
+ if (stream.sol()) {
282
+ state.startOfLine = true;
283
+ state.indented = stream.indentation();
284
+ }
285
+ if (stream.eatSpace()) return null;
286
+
287
+ setStyle = type = tagName = null;
288
+ var style = state.tokenize(stream, state);
289
+ state.type = type;
290
+ if ((style || type) && style != "comment") {
291
+ curState = state;
292
+ while (true) {
293
+ var comb = state.cc.pop() || element;
294
+ if (comb(type || style)) break;
295
+ }
296
+ }
297
+ state.startOfLine = false;
298
+ return setStyle || style;
299
+ },
300
+
301
+ indent: function(state, textAfter, fullLine) {
302
+ var context = state.context;
303
+ if ((state.tokenize != inTag && state.tokenize != inText) ||
304
+ context && context.noIndent)
305
+ return fullLine ? fullLine.match(/^(\s*)/)[0].length : 0;
306
+ if (alignCDATA && /<!\[CDATA\[/.test(textAfter)) return 0;
307
+ if (context && /^<\//.test(textAfter))
308
+ context = context.prev;
309
+ while (context && !context.startOfLine)
310
+ context = context.prev;
311
+ if (context) return context.indent + indentUnit;
312
+ else return 0;
313
+ },
314
+
315
+ electricChars: "/",
316
+
317
+ configuration: parserConfig.htmlMode ? "html" : "xml"
318
+ };
319
+ });
320
+
321
+ CodeMirror.defineMIME("text/xml", "xml");
322
+ CodeMirror.defineMIME("application/xml", "xml");
323
+ if (!CodeMirror.mimeModes.hasOwnProperty("text/html"))
324
+ CodeMirror.defineMIME("text/html", {name: "xml", htmlMode: true});