ace-rails-ap 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (260) hide show
  1. data/.gitmodules +3 -0
  2. data/lib/ace/rails/version.rb +1 -1
  3. data/update.sh +3 -0
  4. data/vendor/assets/javascripts/ace-compat-noconflict.js +1 -0
  5. data/vendor/assets/javascripts/ace-compat-uncompressed-noconflict.js +480 -0
  6. data/vendor/assets/javascripts/ace-compat-uncompressed.js +480 -0
  7. data/vendor/assets/javascripts/ace-compat.js +1 -0
  8. data/vendor/assets/javascripts/ace-noconflict.js +10 -0
  9. data/vendor/assets/javascripts/ace-uncompressed-noconflict.js +19976 -0
  10. data/vendor/assets/javascripts/ace-uncompressed.js +6568 -998
  11. data/vendor/assets/javascripts/ace.js +1 -1
  12. data/vendor/assets/javascripts/keybinding-emacs-noconflict.js +1 -0
  13. data/vendor/assets/javascripts/keybinding-emacs-uncompressed-noconflict.js +150 -0
  14. data/vendor/assets/javascripts/keybinding-emacs-uncompressed.js +150 -0
  15. data/vendor/assets/javascripts/keybinding-emacs.js +1 -1
  16. data/vendor/assets/javascripts/keybinding-vim-noconflict.js +1 -0
  17. data/vendor/assets/javascripts/keybinding-vim-uncompressed-noconflict.js +138 -0
  18. data/vendor/assets/javascripts/keybinding-vim-uncompressed.js +138 -0
  19. data/vendor/assets/javascripts/keybinding-vim.js +1 -1
  20. data/vendor/assets/javascripts/mode-c_cpp-noconflict.js +1 -0
  21. data/vendor/assets/javascripts/mode-c_cpp-uncompressed-noconflict.js +919 -0
  22. data/vendor/assets/javascripts/mode-c_cpp-uncompressed.js +919 -0
  23. data/vendor/assets/javascripts/mode-c_cpp.js +1 -1
  24. data/vendor/assets/javascripts/mode-clojure-noconflict.js +1 -0
  25. data/vendor/assets/javascripts/mode-clojure-uncompressed-noconflict.js +422 -0
  26. data/vendor/assets/javascripts/mode-clojure-uncompressed.js +422 -0
  27. data/vendor/assets/javascripts/mode-clojure.js +1 -1
  28. data/vendor/assets/javascripts/mode-coffee-noconflict.js +1 -0
  29. data/vendor/assets/javascripts/mode-coffee-uncompressed-noconflict.js +607 -0
  30. data/vendor/assets/javascripts/mode-coffee-uncompressed.js +607 -0
  31. data/vendor/assets/javascripts/mode-coffee.js +1 -1
  32. data/vendor/assets/javascripts/mode-coldfusion-noconflict.js +1 -0
  33. data/vendor/assets/javascripts/mode-coldfusion-uncompressed-noconflict.js +2458 -0
  34. data/vendor/assets/javascripts/mode-coldfusion-uncompressed.js +2458 -0
  35. data/vendor/assets/javascripts/mode-coldfusion.js +1 -0
  36. data/vendor/assets/javascripts/mode-csharp-noconflict.js +1 -0
  37. data/vendor/assets/javascripts/mode-csharp-uncompressed-noconflict.js +769 -0
  38. data/vendor/assets/javascripts/mode-csharp-uncompressed.js +769 -0
  39. data/vendor/assets/javascripts/mode-csharp.js +1 -1
  40. data/vendor/assets/javascripts/mode-css-noconflict.js +1 -0
  41. data/vendor/assets/javascripts/mode-css-uncompressed-noconflict.js +641 -0
  42. data/vendor/assets/javascripts/mode-css-uncompressed.js +641 -0
  43. data/vendor/assets/javascripts/mode-css.js +1 -1
  44. data/vendor/assets/javascripts/mode-golang-noconflict.js +1 -0
  45. data/vendor/assets/javascripts/mode-golang-uncompressed-noconflict.js +378 -0
  46. data/vendor/assets/javascripts/mode-golang-uncompressed.js +378 -0
  47. data/vendor/assets/javascripts/mode-golang.js +1 -0
  48. data/vendor/assets/javascripts/mode-groovy-noconflict.js +1 -0
  49. data/vendor/assets/javascripts/mode-groovy-uncompressed-noconflict.js +1393 -0
  50. data/vendor/assets/javascripts/mode-groovy-uncompressed.js +1393 -0
  51. data/vendor/assets/javascripts/mode-groovy.js +1 -1
  52. data/vendor/assets/javascripts/mode-haxe-noconflict.js +1 -0
  53. data/vendor/assets/javascripts/mode-haxe-uncompressed-noconflict.js +769 -0
  54. data/vendor/assets/javascripts/mode-haxe-uncompressed.js +769 -0
  55. data/vendor/assets/javascripts/mode-haxe.js +1 -0
  56. data/vendor/assets/javascripts/mode-html-noconflict.js +1 -0
  57. data/vendor/assets/javascripts/mode-html-uncompressed-noconflict.js +2475 -0
  58. data/vendor/assets/javascripts/mode-html-uncompressed.js +2475 -0
  59. data/vendor/assets/javascripts/mode-html.js +1 -1
  60. data/vendor/assets/javascripts/mode-java-noconflict.js +1 -0
  61. data/vendor/assets/javascripts/mode-java-uncompressed-noconflict.js +1395 -0
  62. data/vendor/assets/javascripts/mode-java-uncompressed.js +1395 -0
  63. data/vendor/assets/javascripts/mode-java.js +1 -1
  64. data/vendor/assets/javascripts/mode-javascript-noconflict.js +1 -0
  65. data/vendor/assets/javascripts/mode-javascript-uncompressed-noconflict.js +1226 -0
  66. data/vendor/assets/javascripts/mode-javascript-uncompressed.js +1226 -0
  67. data/vendor/assets/javascripts/mode-javascript.js +1 -1
  68. data/vendor/assets/javascripts/mode-json-noconflict.js +1 -0
  69. data/vendor/assets/javascripts/mode-json-uncompressed-noconflict.js +701 -0
  70. data/vendor/assets/javascripts/mode-json-uncompressed.js +701 -0
  71. data/vendor/assets/javascripts/mode-json.js +1 -1
  72. data/vendor/assets/javascripts/mode-latex-noconflict.js +1 -0
  73. data/vendor/assets/javascripts/mode-latex-uncompressed-noconflict.js +95 -0
  74. data/vendor/assets/javascripts/mode-latex-uncompressed.js +95 -0
  75. data/vendor/assets/javascripts/mode-less-noconflict.js +1 -0
  76. data/vendor/assets/javascripts/mode-less-uncompressed-noconflict.js +655 -0
  77. data/vendor/assets/javascripts/mode-less-uncompressed.js +655 -0
  78. data/vendor/assets/javascripts/mode-less.js +1 -0
  79. data/vendor/assets/javascripts/mode-liquid-noconflict.js +1 -0
  80. data/vendor/assets/javascripts/mode-liquid-uncompressed-noconflict.js +1353 -0
  81. data/vendor/assets/javascripts/mode-liquid-uncompressed.js +1353 -0
  82. data/vendor/assets/javascripts/mode-liquid.js +1 -0
  83. data/vendor/assets/javascripts/mode-lua-noconflict.js +1 -0
  84. data/vendor/assets/javascripts/mode-lua-uncompressed-noconflict.js +523 -0
  85. data/vendor/assets/javascripts/mode-lua-uncompressed.js +523 -0
  86. data/vendor/assets/javascripts/mode-markdown-noconflict.js +1 -0
  87. data/vendor/assets/javascripts/mode-markdown-uncompressed-noconflict.js +2925 -0
  88. data/vendor/assets/javascripts/mode-markdown-uncompressed.js +2925 -0
  89. data/vendor/assets/javascripts/mode-markdown.js +1 -1
  90. data/vendor/assets/javascripts/mode-ocaml-noconflict.js +1 -0
  91. data/vendor/assets/javascripts/mode-ocaml-uncompressed-noconflict.js +539 -0
  92. data/vendor/assets/javascripts/mode-ocaml-uncompressed.js +539 -0
  93. data/vendor/assets/javascripts/mode-ocaml.js +1 -1
  94. data/vendor/assets/javascripts/mode-perl-noconflict.js +1 -0
  95. data/vendor/assets/javascripts/mode-perl-uncompressed-noconflict.js +574 -0
  96. data/vendor/assets/javascripts/mode-perl-uncompressed.js +574 -0
  97. data/vendor/assets/javascripts/mode-perl.js +1 -1
  98. data/vendor/assets/javascripts/mode-pgsql-noconflict.js +1 -0
  99. data/vendor/assets/javascripts/mode-pgsql-uncompressed-noconflict.js +1104 -0
  100. data/vendor/assets/javascripts/mode-pgsql-uncompressed.js +1104 -0
  101. data/vendor/assets/javascripts/mode-pgsql.js +1 -0
  102. data/vendor/assets/javascripts/mode-php-noconflict.js +1 -0
  103. data/vendor/assets/javascripts/mode-php-uncompressed-noconflict.js +1885 -0
  104. data/vendor/assets/javascripts/mode-php-uncompressed.js +1885 -0
  105. data/vendor/assets/javascripts/mode-php.js +1 -1
  106. data/vendor/assets/javascripts/mode-powershell-noconflict.js +1 -0
  107. data/vendor/assets/javascripts/mode-powershell-uncompressed-noconflict.js +710 -0
  108. data/vendor/assets/javascripts/mode-powershell-uncompressed.js +710 -0
  109. data/vendor/assets/javascripts/mode-powershell.js +1 -0
  110. data/vendor/assets/javascripts/mode-python-noconflict.js +1 -0
  111. data/vendor/assets/javascripts/mode-python-uncompressed-noconflict.js +507 -0
  112. data/vendor/assets/javascripts/mode-python-uncompressed.js +507 -0
  113. data/vendor/assets/javascripts/mode-python.js +1 -1
  114. data/vendor/assets/javascripts/mode-ruby-noconflict.js +1 -0
  115. data/vendor/assets/javascripts/mode-ruby-uncompressed-noconflict.js +391 -0
  116. data/vendor/assets/javascripts/mode-ruby-uncompressed.js +391 -0
  117. data/vendor/assets/javascripts/mode-ruby.js +1 -1
  118. data/vendor/assets/javascripts/mode-scad-noconflict.js +1 -0
  119. data/vendor/assets/javascripts/mode-scad-uncompressed-noconflict.js +907 -0
  120. data/vendor/assets/javascripts/mode-scad-uncompressed.js +907 -0
  121. data/vendor/assets/javascripts/mode-scad.js +1 -1
  122. data/vendor/assets/javascripts/mode-scala-noconflict.js +1 -0
  123. data/vendor/assets/javascripts/mode-scala-uncompressed-noconflict.js +1395 -0
  124. data/vendor/assets/javascripts/mode-scala-uncompressed.js +1395 -0
  125. data/vendor/assets/javascripts/mode-scala.js +1 -1
  126. data/vendor/assets/javascripts/mode-scss-noconflict.js +1 -0
  127. data/vendor/assets/javascripts/mode-scss-uncompressed-noconflict.js +679 -0
  128. data/vendor/assets/javascripts/mode-scss-uncompressed.js +679 -0
  129. data/vendor/assets/javascripts/mode-scss.js +1 -1
  130. data/vendor/assets/javascripts/mode-sh-noconflict.js +1 -0
  131. data/vendor/assets/javascripts/mode-sh-uncompressed-noconflict.js +289 -0
  132. data/vendor/assets/javascripts/mode-sh-uncompressed.js +289 -0
  133. data/vendor/assets/javascripts/mode-sh.js +1 -0
  134. data/vendor/assets/javascripts/mode-sql-noconflict.js +1 -0
  135. data/vendor/assets/javascripts/mode-sql-uncompressed-noconflict.js +159 -0
  136. data/vendor/assets/javascripts/mode-sql-uncompressed.js +159 -0
  137. data/vendor/assets/javascripts/mode-sql.js +1 -0
  138. data/vendor/assets/javascripts/mode-svg-noconflict.js +1 -0
  139. data/vendor/assets/javascripts/mode-svg-uncompressed-noconflict.js +2137 -0
  140. data/vendor/assets/javascripts/mode-svg-uncompressed.js +2137 -0
  141. data/vendor/assets/javascripts/mode-svg.js +1 -1
  142. data/vendor/assets/javascripts/mode-text-noconflict.js +0 -0
  143. data/vendor/assets/javascripts/mode-text-uncompressed-noconflict.js +0 -0
  144. data/vendor/assets/javascripts/mode-text-uncompressed.js +0 -0
  145. data/vendor/assets/javascripts/mode-text.js +0 -0
  146. data/vendor/assets/javascripts/mode-textile-noconflict.js +1 -0
  147. data/vendor/assets/javascripts/mode-textile-uncompressed-noconflict.js +254 -0
  148. data/vendor/assets/javascripts/mode-textile-uncompressed.js +254 -0
  149. data/vendor/assets/javascripts/mode-textile.js +1 -1
  150. data/vendor/assets/javascripts/mode-xml-noconflict.js +1 -0
  151. data/vendor/assets/javascripts/mode-xml-uncompressed-noconflict.js +1012 -0
  152. data/vendor/assets/javascripts/mode-xml-uncompressed.js +1012 -0
  153. data/vendor/assets/javascripts/mode-xml.js +1 -1
  154. data/vendor/assets/javascripts/mode-xquery-noconflict.js +1 -0
  155. data/vendor/assets/javascripts/mode-xquery-uncompressed-noconflict.js +540 -0
  156. data/vendor/assets/javascripts/mode-xquery-uncompressed.js +540 -0
  157. data/vendor/assets/javascripts/mode-xquery.js +1 -0
  158. data/vendor/assets/javascripts/theme-chrome-noconflict.js +1 -0
  159. data/vendor/assets/javascripts/theme-chrome-uncompressed-noconflict.js +207 -0
  160. data/vendor/assets/javascripts/theme-chrome-uncompressed.js +207 -0
  161. data/vendor/assets/javascripts/theme-chrome.js +1 -0
  162. data/vendor/assets/javascripts/theme-clouds-noconflict.js +1 -0
  163. data/vendor/assets/javascripts/theme-clouds-uncompressed-noconflict.js +160 -0
  164. data/vendor/assets/javascripts/theme-clouds-uncompressed.js +160 -0
  165. data/vendor/assets/javascripts/theme-clouds.js +1 -1
  166. data/vendor/assets/javascripts/theme-clouds_midnight-noconflict.js +1 -0
  167. data/vendor/assets/javascripts/theme-clouds_midnight-uncompressed-noconflict.js +161 -0
  168. data/vendor/assets/javascripts/theme-clouds_midnight-uncompressed.js +161 -0
  169. data/vendor/assets/javascripts/theme-clouds_midnight.js +1 -1
  170. data/vendor/assets/javascripts/theme-cobalt-noconflict.js +1 -0
  171. data/vendor/assets/javascripts/theme-cobalt-uncompressed-noconflict.js +187 -0
  172. data/vendor/assets/javascripts/theme-cobalt-uncompressed.js +187 -0
  173. data/vendor/assets/javascripts/theme-cobalt.js +1 -1
  174. data/vendor/assets/javascripts/theme-crimson_editor-noconflict.js +1 -0
  175. data/vendor/assets/javascripts/theme-crimson_editor-uncompressed-noconflict.js +198 -0
  176. data/vendor/assets/javascripts/theme-crimson_editor-uncompressed.js +198 -0
  177. data/vendor/assets/javascripts/theme-dawn-noconflict.js +1 -0
  178. data/vendor/assets/javascripts/theme-dawn-uncompressed-noconflict.js +191 -0
  179. data/vendor/assets/javascripts/theme-dawn-uncompressed.js +191 -0
  180. data/vendor/assets/javascripts/theme-dawn.js +1 -1
  181. data/vendor/assets/javascripts/theme-dreamweaver-noconflict.js +1 -0
  182. data/vendor/assets/javascripts/theme-dreamweaver-uncompressed-noconflict.js +227 -0
  183. data/vendor/assets/javascripts/theme-dreamweaver-uncompressed.js +227 -0
  184. data/vendor/assets/javascripts/theme-dreamweaver.js +1 -0
  185. data/vendor/assets/javascripts/theme-eclipse-noconflict.js +1 -0
  186. data/vendor/assets/javascripts/theme-eclipse-uncompressed-noconflict.js +147 -0
  187. data/vendor/assets/javascripts/theme-eclipse-uncompressed.js +147 -0
  188. data/vendor/assets/javascripts/theme-eclipse.js +1 -1
  189. data/vendor/assets/javascripts/theme-idle_fingers-noconflict.js +1 -0
  190. data/vendor/assets/javascripts/theme-idle_fingers-uncompressed-noconflict.js +179 -0
  191. data/vendor/assets/javascripts/theme-idle_fingers-uncompressed.js +179 -0
  192. data/vendor/assets/javascripts/theme-idle_fingers.js +1 -1
  193. data/vendor/assets/javascripts/theme-kr_theme-noconflict.js +1 -0
  194. data/vendor/assets/javascripts/theme-kr_theme-uncompressed-noconflict.js +182 -0
  195. data/vendor/assets/javascripts/theme-kr_theme-uncompressed.js +182 -0
  196. data/vendor/assets/javascripts/theme-kr_theme.js +1 -1
  197. data/vendor/assets/javascripts/theme-merbivore-noconflict.js +1 -0
  198. data/vendor/assets/javascripts/theme-merbivore-uncompressed-noconflict.js +182 -0
  199. data/vendor/assets/javascripts/theme-merbivore-uncompressed.js +182 -0
  200. data/vendor/assets/javascripts/theme-merbivore.js +1 -1
  201. data/vendor/assets/javascripts/theme-merbivore_soft-noconflict.js +1 -0
  202. data/vendor/assets/javascripts/theme-merbivore_soft-uncompressed-noconflict.js +188 -0
  203. data/vendor/assets/javascripts/theme-merbivore_soft-uncompressed.js +188 -0
  204. data/vendor/assets/javascripts/theme-merbivore_soft.js +1 -1
  205. data/vendor/assets/javascripts/theme-mono_industrial-noconflict.js +1 -0
  206. data/vendor/assets/javascripts/theme-mono_industrial-uncompressed-noconflict.js +190 -0
  207. data/vendor/assets/javascripts/theme-mono_industrial-uncompressed.js +190 -0
  208. data/vendor/assets/javascripts/theme-mono_industrial.js +1 -1
  209. data/vendor/assets/javascripts/theme-monokai-noconflict.js +1 -0
  210. data/vendor/assets/javascripts/theme-monokai-uncompressed-noconflict.js +191 -0
  211. data/vendor/assets/javascripts/theme-monokai-uncompressed.js +191 -0
  212. data/vendor/assets/javascripts/theme-monokai.js +1 -1
  213. data/vendor/assets/javascripts/theme-pastel_on_dark-noconflict.js +1 -0
  214. data/vendor/assets/javascripts/theme-pastel_on_dark-uncompressed-noconflict.js +192 -0
  215. data/vendor/assets/javascripts/theme-pastel_on_dark-uncompressed.js +192 -0
  216. data/vendor/assets/javascripts/theme-pastel_on_dark.js +1 -1
  217. data/vendor/assets/javascripts/theme-solarized_dark-noconflict.js +1 -0
  218. data/vendor/assets/javascripts/theme-solarized_dark-uncompressed-noconflict.js +176 -0
  219. data/vendor/assets/javascripts/theme-solarized_dark-uncompressed.js +176 -0
  220. data/vendor/assets/javascripts/theme-solarized_dark.js +1 -1
  221. data/vendor/assets/javascripts/theme-solarized_light-noconflict.js +1 -0
  222. data/vendor/assets/javascripts/theme-solarized_light-uncompressed-noconflict.js +172 -0
  223. data/vendor/assets/javascripts/theme-solarized_light-uncompressed.js +172 -0
  224. data/vendor/assets/javascripts/theme-solarized_light.js +1 -1
  225. data/vendor/assets/javascripts/theme-textmate-noconflict.js +0 -0
  226. data/vendor/assets/javascripts/theme-textmate-uncompressed-noconflict.js +0 -0
  227. data/vendor/assets/javascripts/theme-textmate-uncompressed.js +0 -0
  228. data/vendor/assets/javascripts/theme-tomorrow-noconflict.js +1 -0
  229. data/vendor/assets/javascripts/theme-tomorrow-uncompressed-noconflict.js +206 -0
  230. data/vendor/assets/javascripts/theme-tomorrow-uncompressed.js +206 -0
  231. data/vendor/assets/javascripts/theme-tomorrow.js +1 -1
  232. data/vendor/assets/javascripts/theme-tomorrow_night-noconflict.js +1 -0
  233. data/vendor/assets/javascripts/theme-tomorrow_night-uncompressed-noconflict.js +206 -0
  234. data/vendor/assets/javascripts/theme-tomorrow_night-uncompressed.js +206 -0
  235. data/vendor/assets/javascripts/theme-tomorrow_night.js +1 -1
  236. data/vendor/assets/javascripts/theme-tomorrow_night_blue-noconflict.js +1 -0
  237. data/vendor/assets/javascripts/theme-tomorrow_night_blue-uncompressed-noconflict.js +209 -0
  238. data/vendor/assets/javascripts/theme-tomorrow_night_blue-uncompressed.js +209 -0
  239. data/vendor/assets/javascripts/theme-tomorrow_night_blue.js +1 -1
  240. data/vendor/assets/javascripts/theme-tomorrow_night_bright-noconflict.js +1 -0
  241. data/vendor/assets/javascripts/theme-tomorrow_night_bright-uncompressed-noconflict.js +206 -0
  242. data/vendor/assets/javascripts/theme-tomorrow_night_bright-uncompressed.js +206 -0
  243. data/vendor/assets/javascripts/theme-tomorrow_night_bright.js +1 -1
  244. data/vendor/assets/javascripts/theme-tomorrow_night_eighties-noconflict.js +1 -0
  245. data/vendor/assets/javascripts/theme-tomorrow_night_eighties-uncompressed-noconflict.js +202 -0
  246. data/vendor/assets/javascripts/theme-tomorrow_night_eighties-uncompressed.js +202 -0
  247. data/vendor/assets/javascripts/theme-tomorrow_night_eighties.js +1 -1
  248. data/vendor/assets/javascripts/theme-twilight-noconflict.js +1 -0
  249. data/vendor/assets/javascripts/theme-twilight-uncompressed-noconflict.js +204 -0
  250. data/vendor/assets/javascripts/theme-twilight-uncompressed.js +204 -0
  251. data/vendor/assets/javascripts/theme-twilight.js +1 -1
  252. data/vendor/assets/javascripts/theme-vibrant_ink-noconflict.js +1 -0
  253. data/vendor/assets/javascripts/theme-vibrant_ink-uncompressed-noconflict.js +183 -0
  254. data/vendor/assets/javascripts/theme-vibrant_ink-uncompressed.js +183 -0
  255. data/vendor/assets/javascripts/theme-vibrant_ink.js +1 -1
  256. data/vendor/assets/javascripts/worker-coffee.js +2367 -1425
  257. data/vendor/assets/javascripts/worker-css.js +3271 -582
  258. data/vendor/assets/javascripts/worker-javascript.js +4313 -2934
  259. data/vendor/assets/javascripts/worker-json.js +3597 -0
  260. metadata +225 -7
@@ -0,0 +1,523 @@
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
+ * Fabian Jakobs <fabian AT ajax DOT org>
23
+ * Colin Gourlay <colin DOT j DOT gourlay AT gmail DOT com>
24
+ * Lee Gao
25
+ *
26
+ * Alternatively, the contents of this file may be used under the terms of
27
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
28
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
29
+ * in which case the provisions of the GPL or the LGPL are applicable instead
30
+ * of those above. If you wish to allow use of your version of this file only
31
+ * under the terms of either the GPL or the LGPL, and not to allow others to
32
+ * use your version of this file under the terms of the MPL, indicate your
33
+ * decision by deleting the provisions above and replace them with the notice
34
+ * and other provisions required by the GPL or the LGPL. If you do not delete
35
+ * the provisions above, a recipient may use your version of this file under
36
+ * the terms of any one of the MPL, the GPL or the LGPL.
37
+ *
38
+ * ***** END LICENSE BLOCK ***** */
39
+
40
+ define('ace/mode/lua', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/mode/text', 'ace/tokenizer', 'ace/mode/lua_highlight_rules'], function(require, exports, module) {
41
+ "use strict";
42
+
43
+ var oop = require("../lib/oop");
44
+ var TextMode = require("./text").Mode;
45
+ var Tokenizer = require("../tokenizer").Tokenizer;
46
+ var LuaHighlightRules = require("./lua_highlight_rules").LuaHighlightRules;
47
+
48
+ var Mode = function() {
49
+ this.$tokenizer = new Tokenizer(new LuaHighlightRules().getRules());
50
+ };
51
+ oop.inherits(Mode, TextMode);
52
+
53
+ (function() {
54
+ this.getNextLineIndent = function(state, line, tab) {
55
+ var indent = this.$getIndent(line);
56
+
57
+ var tokenizedLine = this.$tokenizer.getLineTokens(line, state);
58
+ var tokens = tokenizedLine.tokens;
59
+
60
+ var chunks = ["function", "then", "do", "repeat"];
61
+
62
+ if (state == "start") {
63
+ var match = line.match(/^.*[\{\(\[]\s*$/);
64
+ if (match) {
65
+ indent += tab;
66
+ } else {
67
+ for (var i in tokens){
68
+ var token = tokens[i];
69
+ if (token.type != "keyword") continue;
70
+ var chunk_i = chunks.indexOf(token.value);
71
+ if (chunk_i != -1){
72
+ indent += tab;
73
+ break;
74
+ }
75
+ }
76
+ }
77
+ }
78
+
79
+ return indent;
80
+ };
81
+
82
+ }).call(Mode.prototype);
83
+
84
+ exports.Mode = Mode;
85
+ });
86
+
87
+
88
+ /* ***** BEGIN LICENSE BLOCK *****
89
+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
90
+ *
91
+ * The contents of this file are subject to the Mozilla Public License Version
92
+ * 1.1 (the "License"); you may not use this file except in compliance with
93
+ * the License. You may obtain a copy of the License at
94
+ * http://www.mozilla.org/MPL/
95
+ *
96
+ * Software distributed under the License is distributed on an "AS IS" basis,
97
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
98
+ * for the specific language governing rights and limitations under the
99
+ * License.
100
+ *
101
+ * The Original Code is Ajax.org Code Editor (ACE).
102
+ *
103
+ * The Initial Developer of the Original Code is
104
+ * Ajax.org B.V.
105
+ * Portions created by the Initial Developer are Copyright (C) 2010
106
+ * the Initial Developer. All Rights Reserved.
107
+ *
108
+ * Contributor(s):
109
+ * Fabian Jakobs <fabian AT ajax DOT org>
110
+ * Colin Gourlay <colin DOT j DOT gourlay AT gmail DOT com>
111
+ * Lee Gao
112
+ *
113
+ * Alternatively, the contents of this file may be used under the terms of
114
+ * either the GNU General Public License Version 2 or later (the "GPL"), or
115
+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
116
+ * in which case the provisions of the GPL or the LGPL are applicable instead
117
+ * of those above. If you wish to allow use of your version of this file only
118
+ * under the terms of either the GPL or the LGPL, and not to allow others to
119
+ * use your version of this file under the terms of the MPL, indicate your
120
+ * decision by deleting the provisions above and replace them with the notice
121
+ * and other provisions required by the GPL or the LGPL. If you do not delete
122
+ * the provisions above, a recipient may use your version of this file under
123
+ * the terms of any one of the MPL, the GPL or the LGPL.
124
+ *
125
+ * ***** END LICENSE BLOCK ***** */
126
+
127
+ define('ace/mode/lua_highlight_rules', ['require', 'exports', 'module' , 'ace/lib/oop', 'ace/lib/lang', 'ace/mode/text_highlight_rules'], function(require, exports, module) {
128
+ "use strict";
129
+
130
+ var oop = require("../lib/oop");
131
+ var lang = require("../lib/lang");
132
+ var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules;
133
+
134
+ var LuaHighlightRules = function() {
135
+
136
+ var keywords = lang.arrayToMap(
137
+ ("break|do|else|elseif|end|for|function|if|in|local|repeat|"+
138
+ "return|then|until|while|or|and|not").split("|")
139
+ );
140
+
141
+ var builtinConstants = lang.arrayToMap(
142
+ ("true|false|nil|_G|_VERSION").split("|")
143
+ );
144
+
145
+ var builtinFunctions = lang.arrayToMap(
146
+ ("string|xpcall|package|tostring|print|os|unpack|require|"+
147
+ "getfenv|setmetatable|next|assert|tonumber|io|rawequal|"+
148
+ "collectgarbage|getmetatable|module|rawset|math|debug|"+
149
+ "pcall|table|newproxy|type|coroutine|_G|select|gcinfo|"+
150
+ "pairs|rawget|loadstring|ipairs|_VERSION|dofile|setfenv|"+
151
+ "load|error|loadfile|"+
152
+
153
+ "sub|upper|len|gfind|rep|find|match|char|dump|gmatch|"+
154
+ "reverse|byte|format|gsub|lower|preload|loadlib|loaded|"+
155
+ "loaders|cpath|config|path|seeall|exit|setlocale|date|"+
156
+ "getenv|difftime|remove|time|clock|tmpname|rename|execute|"+
157
+ "lines|write|close|flush|open|output|type|read|stderr|"+
158
+ "stdin|input|stdout|popen|tmpfile|log|max|acos|huge|"+
159
+ "ldexp|pi|cos|tanh|pow|deg|tan|cosh|sinh|random|randomseed|"+
160
+ "frexp|ceil|floor|rad|abs|sqrt|modf|asin|min|mod|fmod|log10|"+
161
+ "atan2|exp|sin|atan|getupvalue|debug|sethook|getmetatable|"+
162
+ "gethook|setmetatable|setlocal|traceback|setfenv|getinfo|"+
163
+ "setupvalue|getlocal|getregistry|getfenv|setn|insert|getn|"+
164
+ "foreachi|maxn|foreach|concat|sort|remove|resume|yield|"+
165
+ "status|wrap|create|running").split("|")
166
+ );
167
+
168
+ var stdLibaries = lang.arrayToMap(
169
+ ("string|package|os|io|math|debug|table|coroutine").split("|")
170
+ );
171
+
172
+ var metatableMethods = lang.arrayToMap(
173
+ ("__add|__sub|__mod|__unm|__concat|__lt|__index|__call|__gc|__metatable|"+
174
+ "__mul|__div|__pow|__len|__eq|__le|__newindex|__tostring|__mode|__tonumber").split("|")
175
+ );
176
+
177
+ var futureReserved = lang.arrayToMap(
178
+ ("").split("|")
179
+ );
180
+
181
+ var deprecatedIn5152 = lang.arrayToMap(
182
+ ("setn|foreach|foreachi|gcinfo|log10|maxn").split("|")
183
+ );
184
+
185
+ var strPre = "";
186
+
187
+ var decimalInteger = "(?:(?:[1-9]\\d*)|(?:0))";
188
+ var hexInteger = "(?:0[xX][\\dA-Fa-f]+)";
189
+ var integer = "(?:" + decimalInteger + "|" + hexInteger + ")";
190
+
191
+ var fraction = "(?:\\.\\d+)";
192
+ var intPart = "(?:\\d+)";
193
+ var pointFloat = "(?:(?:" + intPart + "?" + fraction + ")|(?:" + intPart + "\\.))";
194
+ var floatNumber = "(?:" + pointFloat + ")";
195
+
196
+ var comment_stack = [];
197
+
198
+ this.$rules = {
199
+ "start" :
200
+
201
+
202
+ // bracketed comments
203
+ [{
204
+ token : "comment", // --[[ comment
205
+ regex : strPre + '\\-\\-\\[\\[.*\\]\\]'
206
+ }, {
207
+ token : "comment", // --[=[ comment
208
+ regex : strPre + '\\-\\-\\[\\=\\[.*\\]\\=\\]'
209
+ }, {
210
+ token : "comment", // --[==[ comment
211
+ regex : strPre + '\\-\\-\\[\\={2}\\[.*\\]\\={2}\\]'
212
+ }, {
213
+ token : "comment", // --[===[ comment
214
+ regex : strPre + '\\-\\-\\[\\={3}\\[.*\\]\\={3}\\]'
215
+ }, {
216
+ token : "comment", // --[====[ comment
217
+ regex : strPre + '\\-\\-\\[\\={4}\\[.*\\]\\={4}\\]'
218
+ }, {
219
+ token : "comment", // --[====+[ comment
220
+ regex : strPre + '\\-\\-\\[\\={5}\\=*\\[.*\\]\\={5}\\=*\\]'
221
+ },
222
+
223
+ // multiline bracketed comments
224
+ {
225
+ token : "comment", // --[[ comment
226
+ regex : strPre + '\\-\\-\\[\\[.*$',
227
+ merge : true,
228
+ next : "qcomment"
229
+ }, {
230
+ token : "comment", // --[=[ comment
231
+ regex : strPre + '\\-\\-\\[\\=\\[.*$',
232
+ merge : true,
233
+ next : "qcomment1"
234
+ }, {
235
+ token : "comment", // --[==[ comment
236
+ regex : strPre + '\\-\\-\\[\\={2}\\[.*$',
237
+ merge : true,
238
+ next : "qcomment2"
239
+ }, {
240
+ token : "comment", // --[===[ comment
241
+ regex : strPre + '\\-\\-\\[\\={3}\\[.*$',
242
+ merge : true,
243
+ next : "qcomment3"
244
+ }, {
245
+ token : "comment", // --[====[ comment
246
+ regex : strPre + '\\-\\-\\[\\={4}\\[.*$',
247
+ merge : true,
248
+ next : "qcomment4"
249
+ }, {
250
+ token : function(value){ // --[====+[ comment
251
+ // WARNING: EXTREMELY SLOW, but this is the only way to circumvent the
252
+ // limits imposed by the current automaton.
253
+ // I've never personally seen any practical code where 5 or more '='s are
254
+ // used for string or commenting, so this will rarely be invoked.
255
+ var pattern = /\-\-\[(\=+)\[/, match;
256
+ // you can never be too paranoid ;)
257
+ if ((match = pattern.exec(value)) != null && (match = match[1]) != undefined)
258
+ comment_stack.push(match.length);
259
+
260
+ return "comment";
261
+ },
262
+ regex : strPre + '\\-\\-\\[\\={5}\\=*\\[.*$',
263
+ merge : true,
264
+ next : "qcomment5"
265
+ },
266
+
267
+ // single line comments
268
+ {
269
+ token : "comment",
270
+ regex : "\\-\\-.*$"
271
+ },
272
+
273
+ // bracketed strings
274
+ {
275
+ token : "string", // [[ string
276
+ regex : strPre + '\\[\\[.*\\]\\]'
277
+ }, {
278
+ token : "string", // [=[ string
279
+ regex : strPre + '\\[\\=\\[.*\\]\\=\\]'
280
+ }, {
281
+ token : "string", // [==[ string
282
+ regex : strPre + '\\[\\={2}\\[.*\\]\\={2}\\]'
283
+ }, {
284
+ token : "string", // [===[ string
285
+ regex : strPre + '\\[\\={3}\\[.*\\]\\={3}\\]'
286
+ }, {
287
+ token : "string", // [====[ string
288
+ regex : strPre + '\\[\\={4}\\[.*\\]\\={4}\\]'
289
+ }, {
290
+ token : "string", // [====+[ string
291
+ regex : strPre + '\\[\\={5}\\=*\\[.*\\]\\={5}\\=*\\]'
292
+ },
293
+
294
+ // multiline bracketed strings
295
+ {
296
+ token : "string", // [[ string
297
+ regex : strPre + '\\[\\[.*$',
298
+ merge : true,
299
+ next : "qstring"
300
+ }, {
301
+ token : "string", // [=[ string
302
+ regex : strPre + '\\[\\=\\[.*$',
303
+ merge : true,
304
+ next : "qstring1"
305
+ }, {
306
+ token : "string", // [==[ string
307
+ regex : strPre + '\\[\\={2}\\[.*$',
308
+ merge : true,
309
+ next : "qstring2"
310
+ }, {
311
+ token : "string", // [===[ string
312
+ regex : strPre + '\\[\\={3}\\[.*$',
313
+ merge : true,
314
+ next : "qstring3"
315
+ }, {
316
+ token : "string", // [====[ string
317
+ regex : strPre + '\\[\\={4}\\[.*$',
318
+ merge : true,
319
+ next : "qstring4"
320
+ }, {
321
+ token : function(value){ // --[====+[ string
322
+ // WARNING: EXTREMELY SLOW, see above.
323
+ var pattern = /\[(\=+)\[/, match;
324
+ if ((match = pattern.exec(value)) != null && (match = match[1]) != undefined)
325
+ comment_stack.push(match.length);
326
+
327
+ return "string";
328
+ },
329
+ regex : strPre + '\\[\\={5}\\=*\\[.*$',
330
+ merge : true,
331
+ next : "qstring5"
332
+ },
333
+
334
+ {
335
+ token : "string", // " string
336
+ regex : strPre + '"(?:[^\\\\]|\\\\.)*?"'
337
+ }, {
338
+ token : "string", // ' string
339
+ regex : strPre + "'(?:[^\\\\]|\\\\.)*?'"
340
+ }, {
341
+ token : "constant.numeric", // float
342
+ regex : floatNumber
343
+ }, {
344
+ token : "constant.numeric", // integer
345
+ regex : integer + "\\b"
346
+ }, {
347
+ token : function(value) {
348
+ if (keywords.hasOwnProperty(value))
349
+ return "keyword";
350
+ else if (builtinConstants.hasOwnProperty(value))
351
+ return "constant.language";
352
+ else if (futureReserved.hasOwnProperty(value))
353
+ return "invalid.illegal";
354
+ else if (stdLibaries.hasOwnProperty(value))
355
+ return "constant.library";
356
+ else if (deprecatedIn5152.hasOwnProperty(value))
357
+ return "invalid.deprecated";
358
+ else if (builtinFunctions.hasOwnProperty(value))
359
+ return "support.function";
360
+ else if (metatableMethods.hasOwnProperty(value))
361
+ return "support.function";
362
+ else
363
+ return "identifier";
364
+ },
365
+ regex : "[a-zA-Z_$][a-zA-Z0-9_$]*\\b"
366
+ }, {
367
+ token : "keyword.operator",
368
+ regex : "\\+|\\-|\\*|\\/|%|\\#|\\^|~|<|>|<=|=>|==|~=|=|\\:|\\.\\.\\.|\\.\\."
369
+ }, {
370
+ token : "paren.lparen",
371
+ regex : "[\\[\\(\\{]"
372
+ }, {
373
+ token : "paren.rparen",
374
+ regex : "[\\]\\)\\}]"
375
+ }, {
376
+ token : "text",
377
+ regex : "\\s+"
378
+ } ],
379
+
380
+ "qcomment": [ {
381
+ token : "comment",
382
+ regex : "(?:[^\\\\]|\\\\.)*?\\]\\]",
383
+ next : "start"
384
+ }, {
385
+ token : "comment",
386
+ merge : true,
387
+ regex : '.+'
388
+ } ],
389
+ "qcomment1": [ {
390
+ token : "comment",
391
+ regex : "(?:[^\\\\]|\\\\.)*?\\]\\=\\]",
392
+ next : "start"
393
+ }, {
394
+ token : "comment",
395
+ merge : true,
396
+ regex : '.+'
397
+ } ],
398
+ "qcomment2": [ {
399
+ token : "comment",
400
+ regex : "(?:[^\\\\]|\\\\.)*?\\]\\={2}\\]",
401
+ next : "start"
402
+ }, {
403
+ token : "comment",
404
+ merge : true,
405
+ regex : '.+'
406
+ } ],
407
+ "qcomment3": [ {
408
+ token : "comment",
409
+ regex : "(?:[^\\\\]|\\\\.)*?\\]\\={3}\\]",
410
+ next : "start"
411
+ }, {
412
+ token : "comment",
413
+ merge : true,
414
+ regex : '.+'
415
+ } ],
416
+ "qcomment4": [ {
417
+ token : "comment",
418
+ regex : "(?:[^\\\\]|\\\\.)*?\\]\\={4}\\]",
419
+ next : "start"
420
+ }, {
421
+ token : "comment",
422
+ merge : true,
423
+ regex : '.+'
424
+ } ],
425
+ "qcomment5": [ {
426
+ token : function(value){
427
+ // very hackish, mutates the qcomment5 field on the fly.
428
+ var pattern = /\](\=+)\]/, rule = this.rules.qcomment5[0], match;
429
+ rule.next = "start";
430
+ if ((match = pattern.exec(value)) != null && (match = match[1]) != undefined){
431
+ var found = match.length, expected;
432
+ if ((expected = comment_stack.pop()) != found){
433
+ comment_stack.push(expected);
434
+ rule.next = "qcomment5";
435
+ }
436
+ }
437
+
438
+ return "comment";
439
+ },
440
+ regex : "(?:[^\\\\]|\\\\.)*?\\]\\={5}\\=*\\]",
441
+ next : "start"
442
+ }, {
443
+ token : "comment",
444
+ merge : true,
445
+ regex : '.+'
446
+ } ],
447
+
448
+ "qstring": [ {
449
+ token : "string",
450
+ regex : "(?:[^\\\\]|\\\\.)*?\\]\\]",
451
+ next : "start"
452
+ }, {
453
+ token : "string",
454
+ merge : true,
455
+ regex : '.+'
456
+ } ],
457
+ "qstring1": [ {
458
+ token : "string",
459
+ regex : "(?:[^\\\\]|\\\\.)*?\\]\\=\\]",
460
+ next : "start"
461
+ }, {
462
+ token : "string",
463
+ merge : true,
464
+ regex : '.+'
465
+ } ],
466
+ "qstring2": [ {
467
+ token : "string",
468
+ regex : "(?:[^\\\\]|\\\\.)*?\\]\\={2}\\]",
469
+ next : "start"
470
+ }, {
471
+ token : "string",
472
+ merge : true,
473
+ regex : '.+'
474
+ } ],
475
+ "qstring3": [ {
476
+ token : "string",
477
+ regex : "(?:[^\\\\]|\\\\.)*?\\]\\={3}\\]",
478
+ next : "start"
479
+ }, {
480
+ token : "string",
481
+ merge : true,
482
+ regex : '.+'
483
+ } ],
484
+ "qstring4": [ {
485
+ token : "string",
486
+ regex : "(?:[^\\\\]|\\\\.)*?\\]\\={4}\\]",
487
+ next : "start"
488
+ }, {
489
+ token : "string",
490
+ merge : true,
491
+ regex : '.+'
492
+ } ],
493
+ "qstring5": [ {
494
+ token : function(value){
495
+ // very hackish, mutates the qstring5 field on the fly.
496
+ var pattern = /\](\=+)\]/, rule = this.rules.qstring5[0], match;
497
+ rule.next = "start";
498
+ if ((match = pattern.exec(value)) != null && (match = match[1]) != undefined){
499
+ var found = match.length, expected;
500
+ if ((expected = comment_stack.pop()) != found){
501
+ comment_stack.push(expected);
502
+ rule.next = "qstring5";
503
+ }
504
+ }
505
+
506
+ return "string";
507
+ },
508
+ regex : "(?:[^\\\\]|\\\\.)*?\\]\\={5}\\=*\\]",
509
+ next : "start"
510
+ }, {
511
+ token : "string",
512
+ merge : true,
513
+ regex : '.+'
514
+ } ]
515
+
516
+ };
517
+
518
+ }
519
+
520
+ oop.inherits(LuaHighlightRules, TextHighlightRules);
521
+
522
+ exports.LuaHighlightRules = LuaHighlightRules;
523
+ });