ace-rails-ap 0.0.3 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (267) hide show
  1. data/lib/ace/rails/version.rb +1 -1
  2. data/vendor/assets/javascripts/ace.js +15680 -1
  3. data/vendor/assets/javascripts/keybinding-emacs.js +367 -1
  4. data/vendor/assets/javascripts/keybinding-vim.js +1635 -1
  5. data/vendor/assets/javascripts/mode-c9search.js +275 -0
  6. data/vendor/assets/javascripts/mode-c_cpp.js +744 -1
  7. data/vendor/assets/javascripts/mode-clojure.js +364 -1
  8. data/vendor/assets/javascripts/mode-coffee.js +527 -1
  9. data/vendor/assets/javascripts/mode-coldfusion.js +1966 -1
  10. data/vendor/assets/javascripts/mode-csharp.js +633 -1
  11. data/vendor/assets/javascripts/mode-css.js +499 -1
  12. data/vendor/assets/javascripts/mode-diff.js +250 -0
  13. data/vendor/assets/javascripts/{mode-c_cpp-uncompressed.js → mode-glsl.js} +147 -244
  14. data/vendor/assets/javascripts/mode-golang.js +681 -1
  15. data/vendor/assets/javascripts/mode-groovy.js +1240 -1
  16. data/vendor/assets/javascripts/mode-haxe.js +633 -1
  17. data/vendor/assets/javascripts/mode-html.js +2064 -1
  18. data/vendor/assets/javascripts/mode-java.js +1202 -1
  19. data/vendor/assets/javascripts/mode-javascript.js +1069 -1
  20. data/vendor/assets/javascripts/mode-json.js +588 -1
  21. data/vendor/assets/javascripts/{mode-haxe-uncompressed.js → mode-jsx.js} +189 -312
  22. data/vendor/assets/javascripts/mode-latex.js +95 -1
  23. data/vendor/assets/javascripts/mode-less.js +512 -1
  24. data/vendor/assets/javascripts/mode-liquid.js +1125 -1
  25. data/vendor/assets/javascripts/mode-lua.js +551 -1
  26. data/vendor/assets/javascripts/{mode-html-uncompressed.js → mode-luahtml.js} +544 -604
  27. data/vendor/assets/javascripts/{mode-coldfusion-uncompressed.js → mode-luapage.js} +2326 -2180
  28. data/vendor/assets/javascripts/mode-markdown.js +2369 -1
  29. data/vendor/assets/javascripts/mode-ocaml.js +464 -1
  30. data/vendor/assets/javascripts/mode-perl.js +432 -1
  31. data/vendor/assets/javascripts/mode-pgsql.js +970 -1
  32. data/vendor/assets/javascripts/mode-php.js +1718 -1
  33. data/vendor/assets/javascripts/mode-powershell.js +610 -1
  34. data/vendor/assets/javascripts/mode-python.js +397 -1
  35. data/vendor/assets/javascripts/mode-ruby.js +318 -1
  36. data/vendor/assets/javascripts/mode-scad.js +732 -1
  37. data/vendor/assets/javascripts/mode-scala.js +1237 -1
  38. data/vendor/assets/javascripts/mode-scss.js +537 -1
  39. data/vendor/assets/javascripts/mode-sh.js +250 -1
  40. data/vendor/assets/javascripts/mode-sql.js +140 -1
  41. data/vendor/assets/javascripts/mode-svg.js +1681 -1
  42. data/vendor/assets/javascripts/mode-tcl.js +320 -0
  43. data/vendor/assets/javascripts/mode-textile.js +182 -1
  44. data/vendor/assets/javascripts/mode-xml.js +829 -1
  45. data/vendor/assets/javascripts/mode-xquery.js +605 -1
  46. data/vendor/assets/javascripts/mode-yaml.js +189 -0
  47. data/vendor/assets/javascripts/theme-chrome.js +213 -1
  48. data/vendor/assets/javascripts/theme-clouds.js +167 -1
  49. data/vendor/assets/javascripts/theme-clouds_midnight.js +168 -1
  50. data/vendor/assets/javascripts/theme-cobalt.js +194 -1
  51. data/vendor/assets/javascripts/theme-crimson_editor.js +200 -1
  52. data/vendor/assets/javascripts/theme-dawn.js +198 -1
  53. data/vendor/assets/javascripts/theme-dreamweaver.js +230 -1
  54. data/vendor/assets/javascripts/theme-eclipse.js +157 -1
  55. data/vendor/assets/javascripts/theme-github.js +182 -0
  56. data/vendor/assets/javascripts/theme-idle_fingers.js +186 -1
  57. data/vendor/assets/javascripts/theme-kr_theme.js +189 -1
  58. data/vendor/assets/javascripts/theme-merbivore.js +189 -1
  59. data/vendor/assets/javascripts/theme-merbivore_soft.js +195 -1
  60. data/vendor/assets/javascripts/theme-mono_industrial.js +197 -1
  61. data/vendor/assets/javascripts/theme-monokai.js +194 -1
  62. data/vendor/assets/javascripts/theme-pastel_on_dark.js +199 -1
  63. data/vendor/assets/javascripts/theme-solarized_dark.js +180 -1
  64. data/vendor/assets/javascripts/theme-solarized_light.js +179 -1
  65. data/vendor/assets/javascripts/theme-textmate.js +216 -0
  66. data/vendor/assets/javascripts/theme-tomorrow.js +213 -1
  67. data/vendor/assets/javascripts/theme-tomorrow_night.js +213 -1
  68. data/vendor/assets/javascripts/theme-tomorrow_night_blue.js +213 -1
  69. data/vendor/assets/javascripts/theme-tomorrow_night_bright.js +213 -1
  70. data/vendor/assets/javascripts/theme-tomorrow_night_eighties.js +209 -1
  71. data/vendor/assets/javascripts/theme-twilight.js +211 -1
  72. data/vendor/assets/javascripts/theme-vibrant_ink.js +190 -1
  73. data/vendor/assets/javascripts/worker-coffee.js +83 -893
  74. data/vendor/assets/javascripts/worker-css.js +88 -1402
  75. data/vendor/assets/javascripts/worker-javascript.js +97 -812
  76. data/vendor/assets/javascripts/worker-json.js +84 -761
  77. data/vendor/assets/javascripts/worker-xquery.js +66464 -0
  78. metadata +12 -195
  79. data/vendor/assets/javascripts/ace-compat-noconflict.js +0 -1
  80. data/vendor/assets/javascripts/ace-compat-uncompressed-noconflict.js +0 -480
  81. data/vendor/assets/javascripts/ace-compat-uncompressed.js +0 -480
  82. data/vendor/assets/javascripts/ace-compat.js +0 -1
  83. data/vendor/assets/javascripts/ace-noconflict.js +0 -10
  84. data/vendor/assets/javascripts/ace-uncompressed-noconflict.js +0 -19976
  85. data/vendor/assets/javascripts/ace-uncompressed.js +0 -19976
  86. data/vendor/assets/javascripts/keybinding-emacs-noconflict.js +0 -1
  87. data/vendor/assets/javascripts/keybinding-emacs-uncompressed-noconflict.js +0 -150
  88. data/vendor/assets/javascripts/keybinding-emacs-uncompressed.js +0 -150
  89. data/vendor/assets/javascripts/keybinding-vim-noconflict.js +0 -1
  90. data/vendor/assets/javascripts/keybinding-vim-uncompressed-noconflict.js +0 -138
  91. data/vendor/assets/javascripts/keybinding-vim-uncompressed.js +0 -138
  92. data/vendor/assets/javascripts/mode-c_cpp-noconflict.js +0 -1
  93. data/vendor/assets/javascripts/mode-c_cpp-uncompressed-noconflict.js +0 -919
  94. data/vendor/assets/javascripts/mode-clojure-noconflict.js +0 -1
  95. data/vendor/assets/javascripts/mode-clojure-uncompressed-noconflict.js +0 -422
  96. data/vendor/assets/javascripts/mode-clojure-uncompressed.js +0 -422
  97. data/vendor/assets/javascripts/mode-coffee-noconflict.js +0 -1
  98. data/vendor/assets/javascripts/mode-coffee-uncompressed-noconflict.js +0 -607
  99. data/vendor/assets/javascripts/mode-coffee-uncompressed.js +0 -607
  100. data/vendor/assets/javascripts/mode-coldfusion-noconflict.js +0 -1
  101. data/vendor/assets/javascripts/mode-coldfusion-uncompressed-noconflict.js +0 -2458
  102. data/vendor/assets/javascripts/mode-csharp-noconflict.js +0 -1
  103. data/vendor/assets/javascripts/mode-csharp-uncompressed-noconflict.js +0 -769
  104. data/vendor/assets/javascripts/mode-csharp-uncompressed.js +0 -769
  105. data/vendor/assets/javascripts/mode-css-noconflict.js +0 -1
  106. data/vendor/assets/javascripts/mode-css-uncompressed-noconflict.js +0 -641
  107. data/vendor/assets/javascripts/mode-css-uncompressed.js +0 -641
  108. data/vendor/assets/javascripts/mode-golang-noconflict.js +0 -1
  109. data/vendor/assets/javascripts/mode-golang-uncompressed-noconflict.js +0 -378
  110. data/vendor/assets/javascripts/mode-golang-uncompressed.js +0 -378
  111. data/vendor/assets/javascripts/mode-groovy-noconflict.js +0 -1
  112. data/vendor/assets/javascripts/mode-groovy-uncompressed-noconflict.js +0 -1393
  113. data/vendor/assets/javascripts/mode-groovy-uncompressed.js +0 -1393
  114. data/vendor/assets/javascripts/mode-haxe-noconflict.js +0 -1
  115. data/vendor/assets/javascripts/mode-haxe-uncompressed-noconflict.js +0 -769
  116. data/vendor/assets/javascripts/mode-html-noconflict.js +0 -1
  117. data/vendor/assets/javascripts/mode-html-uncompressed-noconflict.js +0 -2475
  118. data/vendor/assets/javascripts/mode-java-noconflict.js +0 -1
  119. data/vendor/assets/javascripts/mode-java-uncompressed-noconflict.js +0 -1395
  120. data/vendor/assets/javascripts/mode-java-uncompressed.js +0 -1395
  121. data/vendor/assets/javascripts/mode-javascript-noconflict.js +0 -1
  122. data/vendor/assets/javascripts/mode-javascript-uncompressed-noconflict.js +0 -1226
  123. data/vendor/assets/javascripts/mode-javascript-uncompressed.js +0 -1226
  124. data/vendor/assets/javascripts/mode-json-noconflict.js +0 -1
  125. data/vendor/assets/javascripts/mode-json-uncompressed-noconflict.js +0 -701
  126. data/vendor/assets/javascripts/mode-json-uncompressed.js +0 -701
  127. data/vendor/assets/javascripts/mode-latex-noconflict.js +0 -1
  128. data/vendor/assets/javascripts/mode-latex-uncompressed-noconflict.js +0 -95
  129. data/vendor/assets/javascripts/mode-latex-uncompressed.js +0 -95
  130. data/vendor/assets/javascripts/mode-less-noconflict.js +0 -1
  131. data/vendor/assets/javascripts/mode-less-uncompressed-noconflict.js +0 -655
  132. data/vendor/assets/javascripts/mode-less-uncompressed.js +0 -655
  133. data/vendor/assets/javascripts/mode-liquid-noconflict.js +0 -1
  134. data/vendor/assets/javascripts/mode-liquid-uncompressed-noconflict.js +0 -1353
  135. data/vendor/assets/javascripts/mode-liquid-uncompressed.js +0 -1353
  136. data/vendor/assets/javascripts/mode-lua-noconflict.js +0 -1
  137. data/vendor/assets/javascripts/mode-lua-uncompressed-noconflict.js +0 -523
  138. data/vendor/assets/javascripts/mode-lua-uncompressed.js +0 -523
  139. data/vendor/assets/javascripts/mode-markdown-noconflict.js +0 -1
  140. data/vendor/assets/javascripts/mode-markdown-uncompressed-noconflict.js +0 -2925
  141. data/vendor/assets/javascripts/mode-markdown-uncompressed.js +0 -2925
  142. data/vendor/assets/javascripts/mode-ocaml-noconflict.js +0 -1
  143. data/vendor/assets/javascripts/mode-ocaml-uncompressed-noconflict.js +0 -539
  144. data/vendor/assets/javascripts/mode-ocaml-uncompressed.js +0 -539
  145. data/vendor/assets/javascripts/mode-perl-noconflict.js +0 -1
  146. data/vendor/assets/javascripts/mode-perl-uncompressed-noconflict.js +0 -574
  147. data/vendor/assets/javascripts/mode-perl-uncompressed.js +0 -574
  148. data/vendor/assets/javascripts/mode-pgsql-noconflict.js +0 -1
  149. data/vendor/assets/javascripts/mode-pgsql-uncompressed-noconflict.js +0 -1104
  150. data/vendor/assets/javascripts/mode-pgsql-uncompressed.js +0 -1104
  151. data/vendor/assets/javascripts/mode-php-noconflict.js +0 -1
  152. data/vendor/assets/javascripts/mode-php-uncompressed-noconflict.js +0 -1885
  153. data/vendor/assets/javascripts/mode-php-uncompressed.js +0 -1885
  154. data/vendor/assets/javascripts/mode-powershell-noconflict.js +0 -1
  155. data/vendor/assets/javascripts/mode-powershell-uncompressed-noconflict.js +0 -710
  156. data/vendor/assets/javascripts/mode-powershell-uncompressed.js +0 -710
  157. data/vendor/assets/javascripts/mode-python-noconflict.js +0 -1
  158. data/vendor/assets/javascripts/mode-python-uncompressed-noconflict.js +0 -507
  159. data/vendor/assets/javascripts/mode-python-uncompressed.js +0 -507
  160. data/vendor/assets/javascripts/mode-ruby-noconflict.js +0 -1
  161. data/vendor/assets/javascripts/mode-ruby-uncompressed-noconflict.js +0 -391
  162. data/vendor/assets/javascripts/mode-ruby-uncompressed.js +0 -391
  163. data/vendor/assets/javascripts/mode-scad-noconflict.js +0 -1
  164. data/vendor/assets/javascripts/mode-scad-uncompressed-noconflict.js +0 -907
  165. data/vendor/assets/javascripts/mode-scad-uncompressed.js +0 -907
  166. data/vendor/assets/javascripts/mode-scala-noconflict.js +0 -1
  167. data/vendor/assets/javascripts/mode-scala-uncompressed-noconflict.js +0 -1395
  168. data/vendor/assets/javascripts/mode-scala-uncompressed.js +0 -1395
  169. data/vendor/assets/javascripts/mode-scss-noconflict.js +0 -1
  170. data/vendor/assets/javascripts/mode-scss-uncompressed-noconflict.js +0 -679
  171. data/vendor/assets/javascripts/mode-scss-uncompressed.js +0 -679
  172. data/vendor/assets/javascripts/mode-sh-noconflict.js +0 -1
  173. data/vendor/assets/javascripts/mode-sh-uncompressed-noconflict.js +0 -289
  174. data/vendor/assets/javascripts/mode-sh-uncompressed.js +0 -289
  175. data/vendor/assets/javascripts/mode-sql-noconflict.js +0 -1
  176. data/vendor/assets/javascripts/mode-sql-uncompressed-noconflict.js +0 -159
  177. data/vendor/assets/javascripts/mode-sql-uncompressed.js +0 -159
  178. data/vendor/assets/javascripts/mode-svg-noconflict.js +0 -1
  179. data/vendor/assets/javascripts/mode-svg-uncompressed-noconflict.js +0 -2137
  180. data/vendor/assets/javascripts/mode-svg-uncompressed.js +0 -2137
  181. data/vendor/assets/javascripts/mode-text-noconflict.js +0 -0
  182. data/vendor/assets/javascripts/mode-text-uncompressed-noconflict.js +0 -0
  183. data/vendor/assets/javascripts/mode-text-uncompressed.js +0 -0
  184. data/vendor/assets/javascripts/mode-textile-noconflict.js +0 -1
  185. data/vendor/assets/javascripts/mode-textile-uncompressed-noconflict.js +0 -254
  186. data/vendor/assets/javascripts/mode-textile-uncompressed.js +0 -254
  187. data/vendor/assets/javascripts/mode-xml-noconflict.js +0 -1
  188. data/vendor/assets/javascripts/mode-xml-uncompressed-noconflict.js +0 -1012
  189. data/vendor/assets/javascripts/mode-xml-uncompressed.js +0 -1012
  190. data/vendor/assets/javascripts/mode-xquery-noconflict.js +0 -1
  191. data/vendor/assets/javascripts/mode-xquery-uncompressed-noconflict.js +0 -540
  192. data/vendor/assets/javascripts/mode-xquery-uncompressed.js +0 -540
  193. data/vendor/assets/javascripts/theme-chrome-noconflict.js +0 -1
  194. data/vendor/assets/javascripts/theme-chrome-uncompressed-noconflict.js +0 -207
  195. data/vendor/assets/javascripts/theme-chrome-uncompressed.js +0 -207
  196. data/vendor/assets/javascripts/theme-clouds-noconflict.js +0 -1
  197. data/vendor/assets/javascripts/theme-clouds-uncompressed-noconflict.js +0 -160
  198. data/vendor/assets/javascripts/theme-clouds-uncompressed.js +0 -160
  199. data/vendor/assets/javascripts/theme-clouds_midnight-noconflict.js +0 -1
  200. data/vendor/assets/javascripts/theme-clouds_midnight-uncompressed-noconflict.js +0 -161
  201. data/vendor/assets/javascripts/theme-clouds_midnight-uncompressed.js +0 -161
  202. data/vendor/assets/javascripts/theme-cobalt-noconflict.js +0 -1
  203. data/vendor/assets/javascripts/theme-cobalt-uncompressed-noconflict.js +0 -187
  204. data/vendor/assets/javascripts/theme-cobalt-uncompressed.js +0 -187
  205. data/vendor/assets/javascripts/theme-crimson_editor-noconflict.js +0 -1
  206. data/vendor/assets/javascripts/theme-crimson_editor-uncompressed-noconflict.js +0 -198
  207. data/vendor/assets/javascripts/theme-crimson_editor-uncompressed.js +0 -198
  208. data/vendor/assets/javascripts/theme-dawn-noconflict.js +0 -1
  209. data/vendor/assets/javascripts/theme-dawn-uncompressed-noconflict.js +0 -191
  210. data/vendor/assets/javascripts/theme-dawn-uncompressed.js +0 -191
  211. data/vendor/assets/javascripts/theme-dreamweaver-noconflict.js +0 -1
  212. data/vendor/assets/javascripts/theme-dreamweaver-uncompressed-noconflict.js +0 -227
  213. data/vendor/assets/javascripts/theme-dreamweaver-uncompressed.js +0 -227
  214. data/vendor/assets/javascripts/theme-eclipse-noconflict.js +0 -1
  215. data/vendor/assets/javascripts/theme-eclipse-uncompressed-noconflict.js +0 -147
  216. data/vendor/assets/javascripts/theme-eclipse-uncompressed.js +0 -147
  217. data/vendor/assets/javascripts/theme-idle_fingers-noconflict.js +0 -1
  218. data/vendor/assets/javascripts/theme-idle_fingers-uncompressed-noconflict.js +0 -179
  219. data/vendor/assets/javascripts/theme-idle_fingers-uncompressed.js +0 -179
  220. data/vendor/assets/javascripts/theme-kr_theme-noconflict.js +0 -1
  221. data/vendor/assets/javascripts/theme-kr_theme-uncompressed-noconflict.js +0 -182
  222. data/vendor/assets/javascripts/theme-kr_theme-uncompressed.js +0 -182
  223. data/vendor/assets/javascripts/theme-merbivore-noconflict.js +0 -1
  224. data/vendor/assets/javascripts/theme-merbivore-uncompressed-noconflict.js +0 -182
  225. data/vendor/assets/javascripts/theme-merbivore-uncompressed.js +0 -182
  226. data/vendor/assets/javascripts/theme-merbivore_soft-noconflict.js +0 -1
  227. data/vendor/assets/javascripts/theme-merbivore_soft-uncompressed-noconflict.js +0 -188
  228. data/vendor/assets/javascripts/theme-merbivore_soft-uncompressed.js +0 -188
  229. data/vendor/assets/javascripts/theme-mono_industrial-noconflict.js +0 -1
  230. data/vendor/assets/javascripts/theme-mono_industrial-uncompressed-noconflict.js +0 -190
  231. data/vendor/assets/javascripts/theme-mono_industrial-uncompressed.js +0 -190
  232. data/vendor/assets/javascripts/theme-monokai-noconflict.js +0 -1
  233. data/vendor/assets/javascripts/theme-monokai-uncompressed-noconflict.js +0 -191
  234. data/vendor/assets/javascripts/theme-monokai-uncompressed.js +0 -191
  235. data/vendor/assets/javascripts/theme-pastel_on_dark-noconflict.js +0 -1
  236. data/vendor/assets/javascripts/theme-pastel_on_dark-uncompressed-noconflict.js +0 -192
  237. data/vendor/assets/javascripts/theme-pastel_on_dark-uncompressed.js +0 -192
  238. data/vendor/assets/javascripts/theme-solarized_dark-noconflict.js +0 -1
  239. data/vendor/assets/javascripts/theme-solarized_dark-uncompressed-noconflict.js +0 -176
  240. data/vendor/assets/javascripts/theme-solarized_dark-uncompressed.js +0 -176
  241. data/vendor/assets/javascripts/theme-solarized_light-noconflict.js +0 -1
  242. data/vendor/assets/javascripts/theme-solarized_light-uncompressed-noconflict.js +0 -172
  243. data/vendor/assets/javascripts/theme-solarized_light-uncompressed.js +0 -172
  244. data/vendor/assets/javascripts/theme-textmate-noconflict.js +0 -0
  245. data/vendor/assets/javascripts/theme-textmate-uncompressed-noconflict.js +0 -0
  246. data/vendor/assets/javascripts/theme-textmate-uncompressed.js +0 -0
  247. data/vendor/assets/javascripts/theme-tomorrow-noconflict.js +0 -1
  248. data/vendor/assets/javascripts/theme-tomorrow-uncompressed-noconflict.js +0 -206
  249. data/vendor/assets/javascripts/theme-tomorrow-uncompressed.js +0 -206
  250. data/vendor/assets/javascripts/theme-tomorrow_night-noconflict.js +0 -1
  251. data/vendor/assets/javascripts/theme-tomorrow_night-uncompressed-noconflict.js +0 -206
  252. data/vendor/assets/javascripts/theme-tomorrow_night-uncompressed.js +0 -206
  253. data/vendor/assets/javascripts/theme-tomorrow_night_blue-noconflict.js +0 -1
  254. data/vendor/assets/javascripts/theme-tomorrow_night_blue-uncompressed-noconflict.js +0 -209
  255. data/vendor/assets/javascripts/theme-tomorrow_night_blue-uncompressed.js +0 -209
  256. data/vendor/assets/javascripts/theme-tomorrow_night_bright-noconflict.js +0 -1
  257. data/vendor/assets/javascripts/theme-tomorrow_night_bright-uncompressed-noconflict.js +0 -206
  258. data/vendor/assets/javascripts/theme-tomorrow_night_bright-uncompressed.js +0 -206
  259. data/vendor/assets/javascripts/theme-tomorrow_night_eighties-noconflict.js +0 -1
  260. data/vendor/assets/javascripts/theme-tomorrow_night_eighties-uncompressed-noconflict.js +0 -202
  261. data/vendor/assets/javascripts/theme-tomorrow_night_eighties-uncompressed.js +0 -202
  262. data/vendor/assets/javascripts/theme-twilight-noconflict.js +0 -1
  263. data/vendor/assets/javascripts/theme-twilight-uncompressed-noconflict.js +0 -204
  264. data/vendor/assets/javascripts/theme-twilight-uncompressed.js +0 -204
  265. data/vendor/assets/javascripts/theme-vibrant_ink-noconflict.js +0 -1
  266. data/vendor/assets/javascripts/theme-vibrant_ink-uncompressed-noconflict.js +0 -183
  267. data/vendor/assets/javascripts/theme-vibrant_ink-uncompressed.js +0 -183
@@ -0,0 +1,250 @@
1
+ /* ***** BEGIN LICENSE BLOCK *****
2
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
3
+ *
4
+ * The contents of this file are subject to the Mozilla Public License Version
5
+ * 1.1 (the "License"); you may not use this file except in compliance with
6
+ * the License. You may obtain a copy of the License at
7
+ * http://www.mozilla.org/MPL/
8
+ *
9
+ * Software distributed under the License is distributed on an "AS IS" basis,
10
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
11
+ * for the specific language governing rights and limitations under the
12
+ * License.
13
+ *
14
+ * The Original Code is Ajax.org Code Editor (ACE).
15
+ *
16
+ * The Initial Developer of the Original Code is
17
+ * Ajax.org B.V.
18
+ * Portions created by the Initial Developer are Copyright (C) 2010
19
+ * the Initial Developer. All Rights Reserved.
20
+ *
21
+ * Contributor(s):
22
+ *
23
+ * Alternatively, the contents of this file may be used under the terms of
24
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
25
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
26
+ * in which case the provisions of the GPL or the LGPL are applicable instead
27
+ * of those above. If you wish to allow use of your version of this file only
28
+ * under the terms of either the GPL or the LGPL, and not to allow others to
29
+ * use your version of this file under the terms of the MPL, indicate your
30
+ * decision by deleting the provisions above and replace them with the notice
31
+ * and other provisions required by the GPL or the LGPL. If you do not delete
32
+ * the provisions above, a recipient may use your version of this file under
33
+ * the terms of any one of the MPL, the GPL or the LGPL.
34
+ *
35
+ * ***** END LICENSE BLOCK ***** */
36
+
37
+ define('ace/mode/diff', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/mode/text', 'ace/tokenizer', 'ace/mode/diff_highlight_rules', 'ace/mode/folding/diff'], function(require, exports, module) {
38
+
39
+
40
+ var oop = require("../lib/oop");
41
+ var TextMode = require("./text").Mode;
42
+ var Tokenizer = require("../tokenizer").Tokenizer;
43
+ var HighlightRules = require("./diff_highlight_rules").DiffHighlightRules;
44
+ var FoldMode = require("./folding/diff").FoldMode;
45
+
46
+ var Mode = function() {
47
+ this.$tokenizer = new Tokenizer(new HighlightRules().getRules(), "i");
48
+ this.foldingRules = new FoldMode(["diff", "index", "\\+{3}", "@@|\\*{5}"], "i");
49
+ };
50
+ oop.inherits(Mode, TextMode);
51
+
52
+ (function() {
53
+
54
+ }).call(Mode.prototype);
55
+
56
+ exports.Mode = Mode;
57
+
58
+ });
59
+
60
+ define('ace/mode/diff_highlight_rules', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/mode/text_highlight_rules'], function(require, exports, module) {
61
+
62
+
63
+ var oop = require("../lib/oop");
64
+ var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;
65
+
66
+ var DiffHighlightRules = function() {
67
+ // regexp must not have capturing parentheses. Use (?:) instead.
68
+ // regexps are ordered -> the first match is used
69
+
70
+ this.$rules = {
71
+ "start" : [{
72
+ "regex": "^(?:\\*{15}|={67}|-{3}|\\+{3})$",
73
+ "token": "punctuation.definition.separator.diff",
74
+ "name": "keyword"
75
+ }, { //diff.range.unified
76
+ "regex": "^(@@)(\\s*.+?\\s*)(@@)(.*)$",
77
+ "token": [
78
+ "constant",
79
+ "constant.numeric",
80
+ "constant",
81
+ "comment.doc.tag"
82
+ ]
83
+ }, { //diff.range.normal
84
+ "regex": "^(\\d+)([,\\d]+)(a|d|c)(\\d+)([,\\d]+)(.*)$",
85
+ "token": [
86
+ "constant.numeric",
87
+ "punctuation.definition.range.diff",
88
+ "constant.function",
89
+ "constant.numeric",
90
+ "punctuation.definition.range.diff",
91
+ "invalid"
92
+ ],
93
+ "name": "meta."
94
+ }, {
95
+ "regex": "^(?:(\\-{3}|\\+{3}|\\*{3})( .+))$",
96
+ "token": [
97
+ "constant.numeric",
98
+ "meta.tag"
99
+ ]
100
+ }, { // added
101
+ "regex": "^([!+>])(.*?)(\\s*)$",
102
+ "token": [
103
+ "support.constant",
104
+ "text",
105
+ "invalid"
106
+ ],
107
+ }, { // removed
108
+ "regex": "^([<\\-])(.*?)(\\s*)$",
109
+ "token": [
110
+ "support.function",
111
+ "string",
112
+ "invalid"
113
+ ],
114
+ }, {
115
+ "regex": "^(diff)(\\s+--\\w+)?(.+?)( .+)?$",
116
+ "token": ["variable", "variable", "keyword", "variable"]
117
+ }, {
118
+ "regex": "^Index.+$",
119
+ "token": "variable"
120
+ }, {
121
+ "regex": "^(.*?)(\\s*)$",
122
+ "token": ["invisible", "invalid"]
123
+ }
124
+ ]
125
+ };
126
+ };
127
+
128
+ oop.inherits(DiffHighlightRules, TextHighlightRules);
129
+
130
+ exports.DiffHighlightRules = DiffHighlightRules;
131
+ });
132
+
133
+ define('ace/mode/folding/diff', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/mode/folding/fold_mode', 'ace/range'], function(require, exports, module) {
134
+
135
+
136
+ var oop = require("../../lib/oop");
137
+ var BaseFoldMode = require("./fold_mode").FoldMode;
138
+ var Range = require("../../range").Range;
139
+
140
+ var FoldMode = exports.FoldMode = function(levels, flag) {
141
+ this.regExpList = levels;
142
+ this.flag = flag;
143
+ this.foldingStartMarker = RegExp("^(" + levels.join("|") + ")", this.flag);
144
+ };
145
+ oop.inherits(FoldMode, BaseFoldMode);
146
+
147
+ (function() {
148
+ this.getFoldWidgetRange = function(session, foldStyle, row) {
149
+ var line = session.getLine(row);
150
+ var start = {row: row, column: line.length};
151
+
152
+ var regList = this.regExpList;
153
+ for (var i = 1; i <= regList.length; i++) {
154
+ var re = RegExp("^(" + regList.slice(0, i).join("|") + ")", this.flag);
155
+ if (re.test(line))
156
+ break;
157
+ }
158
+
159
+ for (var l = session.getLength(); ++row < l; ) {
160
+ line = session.getLine(row);
161
+ if (re.test(line))
162
+ break;
163
+ }
164
+ if (row == start.row + 1)
165
+ return;
166
+ return Range.fromPoints(start, {row: row - 1, column: line.length});
167
+ };
168
+
169
+ }).call(FoldMode.prototype);
170
+
171
+ });
172
+
173
+ define('ace/mode/folding/fold_mode', ['require', 'exports', 'module' , 'ace/range'], function(require, exports, module) {
174
+
175
+
176
+ var Range = require("../../range").Range;
177
+
178
+ var FoldMode = exports.FoldMode = function() {};
179
+
180
+ (function() {
181
+
182
+ this.foldingStartMarker = null;
183
+ this.foldingStopMarker = null;
184
+
185
+ // must return "" if there's no fold, to enable caching
186
+ this.getFoldWidget = function(session, foldStyle, row) {
187
+ var line = session.getLine(row);
188
+ if (this.foldingStartMarker.test(line))
189
+ return "start";
190
+ if (foldStyle == "markbeginend"
191
+ && this.foldingStopMarker
192
+ && this.foldingStopMarker.test(line))
193
+ return "end";
194
+ return "";
195
+ };
196
+
197
+ this.getFoldWidgetRange = function(session, foldStyle, row) {
198
+ return null;
199
+ };
200
+
201
+ this.indentationBlock = function(session, row, column) {
202
+ var re = /\S/;
203
+ var line = session.getLine(row);
204
+ var startLevel = line.search(re);
205
+ if (startLevel == -1)
206
+ return;
207
+
208
+ var startColumn = column || line.length;
209
+ var maxRow = session.getLength();
210
+ var startRow = row;
211
+ var endRow = row;
212
+
213
+ while (++row < maxRow) {
214
+ var level = session.getLine(row).search(re);
215
+
216
+ if (level == -1)
217
+ continue;
218
+
219
+ if (level <= startLevel)
220
+ break;
221
+
222
+ endRow = row;
223
+ }
224
+
225
+ if (endRow > startRow) {
226
+ var endColumn = session.getLine(endRow).length;
227
+ return new Range(startRow, startColumn, endRow, endColumn);
228
+ }
229
+ };
230
+
231
+ this.openingBracketBlock = function(session, bracket, row, column, typeRe) {
232
+ var start = {row: row, column: column + 1};
233
+ var end = session.$findClosingBracket(bracket, start, typeRe);
234
+ if (!end)
235
+ return;
236
+
237
+ var fw = session.foldWidgets[end.row];
238
+ if (fw == null)
239
+ fw = this.getFoldWidget(session, end.row);
240
+
241
+ if (fw == "start" && end.row > start.row) {
242
+ end.row --;
243
+ end.column = session.getLine(end.row).length;
244
+ }
245
+ return Range.fromPoints(start, end);
246
+ };
247
+
248
+ }).call(FoldMode.prototype);
249
+
250
+ });
@@ -19,8 +19,7 @@
19
19
  * the Initial Developer. All Rights Reserved.
20
20
  *
21
21
  * Contributor(s):
22
- * Fabian Jakobs <fabian AT ajax DOT org>
23
- * Gastón Kleiman <gaston.kleiman AT gmail DOT com>
22
+ *
24
23
  *
25
24
  * Alternatively, the contents of this file may be used under the terms of
26
25
  * either the GNU General Public License Version 2 or later (the "GPL"), or
@@ -36,8 +35,31 @@
36
35
  *
37
36
  * ***** END LICENSE BLOCK ***** */
38
37
 
38
+ define('ace/mode/glsl', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/mode/c_cpp', 'ace/tokenizer', 'ace/mode/glsl_highlight_rules', 'ace/mode/matching_brace_outdent', 'ace/range', 'ace/mode/behaviour/cstyle', 'ace/mode/folding/cstyle'], function(require, exports, module) {
39
+
40
+
41
+ var oop = require("../lib/oop");
42
+ var CMode = require("./c_cpp").Mode;
43
+ var Tokenizer = require("../tokenizer").Tokenizer;
44
+ var glslHighlightRules = require("./glsl_highlight_rules").glslHighlightRules;
45
+ var MatchingBraceOutdent = require("./matching_brace_outdent").MatchingBraceOutdent;
46
+ var Range = require("../range").Range;
47
+ var CstyleBehaviour = require("./behaviour/cstyle").CstyleBehaviour;
48
+ var CStyleFoldMode = require("./folding/cstyle").FoldMode;
49
+
50
+ var Mode = function() {
51
+ this.$tokenizer = new Tokenizer(new glslHighlightRules().getRules());
52
+ this.$outdent = new MatchingBraceOutdent();
53
+ this.$behaviour = new CstyleBehaviour();
54
+ this.foldingRules = new CStyleFoldMode();
55
+ };
56
+ oop.inherits(Mode, CMode);
57
+
58
+ exports.Mode = Mode;
59
+ });
60
+
39
61
  define('ace/mode/c_cpp', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/mode/text', 'ace/tokenizer', 'ace/mode/c_cpp_highlight_rules', 'ace/mode/matching_brace_outdent', 'ace/range', 'ace/mode/behaviour/cstyle', 'ace/mode/folding/cstyle'], function(require, exports, module) {
40
- "use strict";
62
+
41
63
 
42
64
  var oop = require("../lib/oop");
43
65
  var TextMode = require("./text").Mode;
@@ -130,48 +152,9 @@ oop.inherits(Mode, TextMode);
130
152
 
131
153
  exports.Mode = Mode;
132
154
  });
133
- /* ***** BEGIN LICENSE BLOCK *****
134
- * Version: MPL 1.1/GPL 2.0/LGPL 2.1
135
- *
136
- * The contents of this file are subject to the Mozilla Public License Version
137
- * 1.1 (the "License"); you may not use this file except in compliance with
138
- * the License. You may obtain a copy of the License at
139
- * http://www.mozilla.org/MPL/
140
- *
141
- * Software distributed under the License is distributed on an "AS IS" basis,
142
- * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
143
- * for the specific language governing rights and limitations under the
144
- * License.
145
- *
146
- * The Original Code is Ajax.org Code Editor (ACE).
147
- *
148
- * The Initial Developer of the Original Code is
149
- * Ajax.org B.V.
150
- * Portions created by the Initial Developer are Copyright (C) 2010
151
- * the Initial Developer. All Rights Reserved.
152
- *
153
- * Contributor(s):
154
- * Fabian Jakobs <fabian AT ajax DOT org>
155
- * Gastón Kleiman <gaston.kleiman AT gmail DOT com>
156
- *
157
- * Based on Bespin's C/C++ Syntax Plugin by Marc McIntyre.
158
- *
159
- * Alternatively, the contents of this file may be used under the terms of
160
- * either the GNU General Public License Version 2 or later (the "GPL"), or
161
- * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
162
- * in which case the provisions of the GPL or the LGPL are applicable instead
163
- * of those above. If you wish to allow use of your version of this file only
164
- * under the terms of either the GPL or the LGPL, and not to allow others to
165
- * use your version of this file under the terms of the MPL, indicate your
166
- * decision by deleting the provisions above and replace them with the notice
167
- * and other provisions required by the GPL or the LGPL. If you do not delete
168
- * the provisions above, a recipient may use your version of this file under
169
- * the terms of any one of the MPL, the GPL or the LGPL.
170
- *
171
- * ***** END LICENSE BLOCK ***** */
172
155
 
173
156
  define('ace/mode/c_cpp_highlight_rules', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/lib/lang', 'ace/mode/doc_comment_highlight_rules', 'ace/mode/text_highlight_rules'], function(require, exports, module) {
174
- "use strict";
157
+
175
158
 
176
159
  var oop = require("../lib/oop");
177
160
  var lang = require("../lib/lang");
@@ -310,45 +293,9 @@ oop.inherits(c_cppHighlightRules, TextHighlightRules);
310
293
 
311
294
  exports.c_cppHighlightRules = c_cppHighlightRules;
312
295
  });
313
- /* ***** BEGIN LICENSE BLOCK *****
314
- * Version: MPL 1.1/GPL 2.0/LGPL 2.1
315
- *
316
- * The contents of this file are subject to the Mozilla Public License Version
317
- * 1.1 (the "License"); you may not use this file except in compliance with
318
- * the License. You may obtain a copy of the License at
319
- * http://www.mozilla.org/MPL/
320
- *
321
- * Software distributed under the License is distributed on an "AS IS" basis,
322
- * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
323
- * for the specific language governing rights and limitations under the
324
- * License.
325
- *
326
- * The Original Code is Ajax.org Code Editor (ACE).
327
- *
328
- * The Initial Developer of the Original Code is
329
- * Ajax.org B.V.
330
- * Portions created by the Initial Developer are Copyright (C) 2010
331
- * the Initial Developer. All Rights Reserved.
332
- *
333
- * Contributor(s):
334
- * Fabian Jakobs <fabian AT ajax DOT org>
335
- *
336
- * Alternatively, the contents of this file may be used under the terms of
337
- * either the GNU General Public License Version 2 or later (the "GPL"), or
338
- * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
339
- * in which case the provisions of the GPL or the LGPL are applicable instead
340
- * of those above. If you wish to allow use of your version of this file only
341
- * under the terms of either the GPL or the LGPL, and not to allow others to
342
- * use your version of this file under the terms of the MPL, indicate your
343
- * decision by deleting the provisions above and replace them with the notice
344
- * and other provisions required by the GPL or the LGPL. If you do not delete
345
- * the provisions above, a recipient may use your version of this file under
346
- * the terms of any one of the MPL, the GPL or the LGPL.
347
- *
348
- * ***** END LICENSE BLOCK ***** */
349
296
 
350
297
  define('ace/mode/doc_comment_highlight_rules', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/mode/text_highlight_rules'], function(require, exports, module) {
351
- "use strict";
298
+
352
299
 
353
300
  var oop = require("../lib/oop");
354
301
  var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;
@@ -403,45 +350,9 @@ DocCommentHighlightRules.getEndRule = function (start) {
403
350
  exports.DocCommentHighlightRules = DocCommentHighlightRules;
404
351
 
405
352
  });
406
- /* ***** BEGIN LICENSE BLOCK *****
407
- * Version: MPL 1.1/GPL 2.0/LGPL 2.1
408
- *
409
- * The contents of this file are subject to the Mozilla Public License Version
410
- * 1.1 (the "License"); you may not use this file except in compliance with
411
- * the License. You may obtain a copy of the License at
412
- * http://www.mozilla.org/MPL/
413
- *
414
- * Software distributed under the License is distributed on an "AS IS" basis,
415
- * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
416
- * for the specific language governing rights and limitations under the
417
- * License.
418
- *
419
- * The Original Code is Ajax.org Code Editor (ACE).
420
- *
421
- * The Initial Developer of the Original Code is
422
- * Ajax.org B.V.
423
- * Portions created by the Initial Developer are Copyright (C) 2010
424
- * the Initial Developer. All Rights Reserved.
425
- *
426
- * Contributor(s):
427
- * Fabian Jakobs <fabian AT ajax DOT org>
428
- *
429
- * Alternatively, the contents of this file may be used under the terms of
430
- * either the GNU General Public License Version 2 or later (the "GPL"), or
431
- * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
432
- * in which case the provisions of the GPL or the LGPL are applicable instead
433
- * of those above. If you wish to allow use of your version of this file only
434
- * under the terms of either the GPL or the LGPL, and not to allow others to
435
- * use your version of this file under the terms of the MPL, indicate your
436
- * decision by deleting the provisions above and replace them with the notice
437
- * and other provisions required by the GPL or the LGPL. If you do not delete
438
- * the provisions above, a recipient may use your version of this file under
439
- * the terms of any one of the MPL, the GPL or the LGPL.
440
- *
441
- * ***** END LICENSE BLOCK ***** */
442
353
 
443
354
  define('ace/mode/matching_brace_outdent', ['require', 'exports', 'module' , 'ace/range'], function(require, exports, module) {
444
- "use strict";
355
+
445
356
 
446
357
  var Range = require("../range").Range;
447
358
 
@@ -484,49 +395,12 @@ var MatchingBraceOutdent = function() {};
484
395
 
485
396
  exports.MatchingBraceOutdent = MatchingBraceOutdent;
486
397
  });
487
- /* vim:ts=4:sts=4:sw=4:
488
- * ***** BEGIN LICENSE BLOCK *****
489
- * Version: MPL 1.1/GPL 2.0/LGPL 2.1
490
- *
491
- * The contents of this file are subject to the Mozilla Public License Version
492
- * 1.1 (the "License"); you may not use this file except in compliance with
493
- * the License. You may obtain a copy of the License at
494
- * http://www.mozilla.org/MPL/
495
- *
496
- * Software distributed under the License is distributed on an "AS IS" basis,
497
- * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
498
- * for the specific language governing rights and limitations under the
499
- * License.
500
- *
501
- * The Original Code is Ajax.org Code Editor (ACE).
502
- *
503
- * The Initial Developer of the Original Code is
504
- * Ajax.org B.V.
505
- * Portions created by the Initial Developer are Copyright (C) 2010
506
- * the Initial Developer. All Rights Reserved.
507
- *
508
- * Contributor(s):
509
- * Chris Spencer <chris.ag.spencer AT googlemail DOT com>
510
- *
511
- * Alternatively, the contents of this file may be used under the terms of
512
- * either the GNU General Public License Version 2 or later (the "GPL"), or
513
- * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
514
- * in which case the provisions of the GPL or the LGPL are applicable instead
515
- * of those above. If you wish to allow use of your version of this file only
516
- * under the terms of either the GPL or the LGPL, and not to allow others to
517
- * use your version of this file under the terms of the MPL, indicate your
518
- * decision by deleting the provisions above and replace them with the notice
519
- * and other provisions required by the GPL or the LGPL. If you do not delete
520
- * the provisions above, a recipient may use your version of this file under
521
- * the terms of any one of the MPL, the GPL or the LGPL.
522
- *
523
- * ***** END LICENSE BLOCK ***** */
524
398
 
525
399
  define('ace/mode/behaviour/cstyle', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/mode/behaviour'], function(require, exports, module) {
526
- "use strict";
400
+
527
401
 
528
402
  var oop = require("../../lib/oop");
529
- var Behaviour = require('../behaviour').Behaviour;
403
+ var Behaviour = require("../behaviour").Behaviour;
530
404
 
531
405
  var CstyleBehaviour = function () {
532
406
 
@@ -633,6 +507,49 @@ var CstyleBehaviour = function () {
633
507
  }
634
508
  });
635
509
 
510
+ this.add("brackets", "insertion", function (state, action, editor, session, text) {
511
+ if (text == '[') {
512
+ var selection = editor.getSelectionRange();
513
+ var selected = session.doc.getTextRange(selection);
514
+ if (selected !== "") {
515
+ return {
516
+ text: '[' + selected + ']',
517
+ selection: false
518
+ };
519
+ } else {
520
+ return {
521
+ text: '[]',
522
+ selection: [1, 1]
523
+ };
524
+ }
525
+ } else if (text == ']') {
526
+ var cursor = editor.getCursorPosition();
527
+ var line = session.doc.getLine(cursor.row);
528
+ var rightChar = line.substring(cursor.column, cursor.column + 1);
529
+ if (rightChar == ']') {
530
+ var matching = session.$findOpeningBracket(']', {column: cursor.column + 1, row: cursor.row});
531
+ if (matching !== null) {
532
+ return {
533
+ text: '',
534
+ selection: [1, 1]
535
+ };
536
+ }
537
+ }
538
+ }
539
+ });
540
+
541
+ this.add("brackets", "deletion", function (state, action, editor, session, range) {
542
+ var selected = session.doc.getTextRange(range);
543
+ if (!range.isMultiLine() && selected == '[') {
544
+ var line = session.doc.getLine(range.start.row);
545
+ var rightChar = line.substring(range.start.column + 1, range.start.column + 2);
546
+ if (rightChar == ']') {
547
+ range.end.column++;
548
+ return range;
549
+ }
550
+ }
551
+ });
552
+
636
553
  this.add("string_dquotes", "insertion", function (state, action, editor, session, text) {
637
554
  if (text == '"' || text == "'") {
638
555
  var quote = text;
@@ -654,7 +571,7 @@ var CstyleBehaviour = function () {
654
571
  }
655
572
 
656
573
  // Find what token we're inside.
657
- var tokens = session.getTokens(selection.start.row, selection.start.row)[0].tokens;
574
+ var tokens = session.getTokens(selection.start.row);
658
575
  var col = 0, token;
659
576
  var quotepos = -1; // Track whether we're inside an open quote.
660
577
 
@@ -709,45 +626,9 @@ oop.inherits(CstyleBehaviour, Behaviour);
709
626
 
710
627
  exports.CstyleBehaviour = CstyleBehaviour;
711
628
  });
712
- /* ***** BEGIN LICENSE BLOCK *****
713
- * Version: MPL 1.1/GPL 2.0/LGPL 2.1
714
- *
715
- * The contents of this file are subject to the Mozilla Public License Version
716
- * 1.1 (the "License"); you may not use this file except in compliance with
717
- * the License. You may obtain a copy of the License at
718
- * http://www.mozilla.org/MPL/
719
- *
720
- * Software distributed under the License is distributed on an "AS IS" basis,
721
- * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
722
- * for the specific language governing rights and limitations under the
723
- * License.
724
- *
725
- * The Original Code is Ajax.org Code Editor (ACE).
726
- *
727
- * The Initial Developer of the Original Code is
728
- * Ajax.org B.V.
729
- * Portions created by the Initial Developer are Copyright (C) 2010
730
- * the Initial Developer. All Rights Reserved.
731
- *
732
- * Contributor(s):
733
- * Fabian Jakobs <fabian AT ajax DOT org>
734
- *
735
- * Alternatively, the contents of this file may be used under the terms of
736
- * either the GNU General Public License Version 2 or later (the "GPL"), or
737
- * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
738
- * in which case the provisions of the GPL or the LGPL are applicable instead
739
- * of those above. If you wish to allow use of your version of this file only
740
- * under the terms of either the GPL or the LGPL, and not to allow others to
741
- * use your version of this file under the terms of the MPL, indicate your
742
- * decision by deleting the provisions above and replace them with the notice
743
- * and other provisions required by the GPL or the LGPL. If you do not delete
744
- * the provisions above, a recipient may use your version of this file under
745
- * the terms of any one of the MPL, the GPL or the LGPL.
746
- *
747
- * ***** END LICENSE BLOCK ***** */
748
629
 
749
630
  define('ace/mode/folding/cstyle', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/range', 'ace/mode/folding/fold_mode'], function(require, exports, module) {
750
- "use strict";
631
+
751
632
 
752
633
  var oop = require("../../lib/oop");
753
634
  var Range = require("../../range").Range;
@@ -804,45 +685,9 @@ oop.inherits(FoldMode, BaseFoldMode);
804
685
  }).call(FoldMode.prototype);
805
686
 
806
687
  });
807
- /* ***** BEGIN LICENSE BLOCK *****
808
- * Version: MPL 1.1/GPL 2.0/LGPL 2.1
809
- *
810
- * The contents of this file are subject to the Mozilla Public License Version
811
- * 1.1 (the "License"); you may not use this file except in compliance with
812
- * the License. You may obtain a copy of the License at
813
- * http://www.mozilla.org/MPL/
814
- *
815
- * Software distributed under the License is distributed on an "AS IS" basis,
816
- * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
817
- * for the specific language governing rights and limitations under the
818
- * License.
819
- *
820
- * The Original Code is Ajax.org Code Editor (ACE).
821
- *
822
- * The Initial Developer of the Original Code is
823
- * Ajax.org B.V.
824
- * Portions created by the Initial Developer are Copyright (C) 2010
825
- * the Initial Developer. All Rights Reserved.
826
- *
827
- * Contributor(s):
828
- * Fabian Jakobs <fabian AT ajax DOT org>
829
- *
830
- * Alternatively, the contents of this file may be used under the terms of
831
- * either the GNU General Public License Version 2 or later (the "GPL"), or
832
- * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
833
- * in which case the provisions of the GPL or the LGPL are applicable instead
834
- * of those above. If you wish to allow use of your version of this file only
835
- * under the terms of either the GPL or the LGPL, and not to allow others to
836
- * use your version of this file under the terms of the MPL, indicate your
837
- * decision by deleting the provisions above and replace them with the notice
838
- * and other provisions required by the GPL or the LGPL. If you do not delete
839
- * the provisions above, a recipient may use your version of this file under
840
- * the terms of any one of the MPL, the GPL or the LGPL.
841
- *
842
- * ***** END LICENSE BLOCK ***** */
843
688
 
844
689
  define('ace/mode/folding/fold_mode', ['require', 'exports', 'module' , 'ace/range'], function(require, exports, module) {
845
- "use strict";
690
+
846
691
 
847
692
  var Range = require("../../range").Range;
848
693
 
@@ -864,25 +709,27 @@ var FoldMode = exports.FoldMode = function() {};
864
709
  return "end";
865
710
  return "";
866
711
  };
867
-
712
+
868
713
  this.getFoldWidgetRange = function(session, foldStyle, row) {
869
714
  return null;
870
715
  };
871
716
 
872
717
  this.indentationBlock = function(session, row, column) {
873
- var re = /^\s*/;
874
- var startRow = row;
875
- var endRow = row;
718
+ var re = /\S/;
876
719
  var line = session.getLine(row);
720
+ var startLevel = line.search(re);
721
+ if (startLevel == -1)
722
+ return;
723
+
877
724
  var startColumn = column || line.length;
878
- var startLevel = line.match(re)[0].length;
879
- var maxRow = session.getLength()
880
-
725
+ var maxRow = session.getLength();
726
+ var startRow = row;
727
+ var endRow = row;
728
+
881
729
  while (++row < maxRow) {
882
- line = session.getLine(row);
883
- var level = line.match(re)[0].length;
730
+ var level = session.getLine(row).search(re);
884
731
 
885
- if (level == line.length)
732
+ if (level == -1)
886
733
  continue;
887
734
 
888
735
  if (level <= startLevel)
@@ -897,9 +744,9 @@ var FoldMode = exports.FoldMode = function() {};
897
744
  }
898
745
  };
899
746
 
900
- this.openingBracketBlock = function(session, bracket, row, column) {
747
+ this.openingBracketBlock = function(session, bracket, row, column, typeRe) {
901
748
  var start = {row: row, column: column + 1};
902
- var end = session.$findClosingBracket(bracket, start);
749
+ var end = session.$findClosingBracket(bracket, start, typeRe);
903
750
  if (!end)
904
751
  return;
905
752
 
@@ -907,7 +754,7 @@ var FoldMode = exports.FoldMode = function() {};
907
754
  if (fw == null)
908
755
  fw = this.getFoldWidget(session, end.row);
909
756
 
910
- if (fw == "start") {
757
+ if (fw == "start" && end.row > start.row) {
911
758
  end.row --;
912
759
  end.column = session.getLine(end.row).length;
913
760
  }
@@ -917,3 +764,59 @@ var FoldMode = exports.FoldMode = function() {};
917
764
  }).call(FoldMode.prototype);
918
765
 
919
766
  });
767
+
768
+ define('ace/mode/glsl_highlight_rules', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/lib/lang', 'ace/mode/c_cpp_highlight_rules'], function(require, exports, module) {
769
+
770
+
771
+ var oop = require("../lib/oop");
772
+ var lang = require("../lib/lang");
773
+ var c_cppHighlightRules = require("./c_cpp_highlight_rules").c_cppHighlightRules;
774
+
775
+ var glslHighlightRules = function() {
776
+
777
+ var keywords = lang.arrayToMap(
778
+ ("attribute|const|uniform|varying|break|continue|do|for|while|" +
779
+ "if|else|in|out|inout|float|int|void|bool|true|false|" +
780
+ "lowp|mediump|highp|precision|invariant|discard|return|mat2|mat3|" +
781
+ "mat4|vec2|vec3|vec4|ivec2|ivec3|ivec4|bvec2|bvec3|bvec4|sampler2D|" +
782
+ "samplerCube|struct").split("|")
783
+ );
784
+
785
+ var buildinConstants = lang.arrayToMap(
786
+ ("radians|degrees|sin|cos|tan|asin|acos|atan|pow|" +
787
+ "exp|log|exp2|log2|sqrt|inversesqrt|abs|sign|floor|ceil|fract|mod|" +
788
+ "min|max|clamp|mix|step|smoothstep|length|distance|dot|cross|" +
789
+ "normalize|faceforward|reflect|refract|matrixCompMult|lessThan|" +
790
+ "lessThanEqual|greaterThan|greaterThanEqual|equal|notEqual|any|all|" +
791
+ "not|dFdx|dFdy|fwidth|texture2D|texture2DProj|texture2DLod|" +
792
+ "texture2DProjLod|textureCube|textureCubeLod|" +
793
+ "gl_MaxVertexAttribs|gl_MaxVertexUniformVectors|gl_MaxVaryingVectors|" +
794
+ "gl_MaxVertexTextureImageUnits|gl_MaxCombinedTextureImageUnits|" +
795
+ "gl_MaxTextureImageUnits|gl_MaxFragmentUniformVectors|gl_MaxDrawBuffers|" +
796
+ "gl_DepthRangeParameters|gl_DepthRange|" +
797
+ // The following two are only for MIME x-shader/x-vertex.
798
+ "gl_Position|gl_PointSize|" +
799
+ // The following five are only for MIME x-shader/x-fragment.
800
+ "gl_FragCoord|gl_FrontFacing|gl_PointCoord|gl_FragColor|gl_FragData").split("|")
801
+ );
802
+
803
+ this.$rules = new c_cppHighlightRules().$rules;
804
+ this.$rules.start.forEach(function(rule) {
805
+ if (typeof rule.token == "function")
806
+ rule.token = function(value) {
807
+ if (value == "this")
808
+ return "variable.language";
809
+ else if (keywords.hasOwnProperty(value))
810
+ return "keyword";
811
+ else if (buildinConstants.hasOwnProperty(value))
812
+ return "constant.language";
813
+ else
814
+ return "identifier";
815
+ };
816
+ })
817
+ };
818
+
819
+ oop.inherits(glslHighlightRules, c_cppHighlightRules);
820
+
821
+ exports.glslHighlightRules = glslHighlightRules;
822
+ });