ace-rails-ap 4.3 → 4.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (249) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +2 -2
  3. data/ace-rails-ap.gemspec +0 -2
  4. data/lib/ace/rails/version.rb +1 -1
  5. data/vendor/assets/javascripts/ace/ace.js +659 -1137
  6. data/vendor/assets/javascripts/ace/ext-beautify.js +5 -2
  7. data/vendor/assets/javascripts/ace/ext-code_lens.js +238 -0
  8. data/vendor/assets/javascripts/ace/ext-emmet.js +36 -28
  9. data/vendor/assets/javascripts/ace/ext-language_tools.js +63 -48
  10. data/vendor/assets/javascripts/ace/ext-modelist.js +12 -6
  11. data/vendor/assets/javascripts/ace/ext-options.js +46 -19
  12. data/vendor/assets/javascripts/ace/ext-prompt.js +57 -38
  13. data/vendor/assets/javascripts/ace/ext-settings_menu.js +46 -19
  14. data/vendor/assets/javascripts/ace/ext-spellcheck.js +0 -1
  15. data/vendor/assets/javascripts/ace/ext-themelist.js +2 -1
  16. data/vendor/assets/javascripts/ace/keybinding-emacs.js +21 -22
  17. data/vendor/assets/javascripts/ace/keybinding-sublime.js +2 -5
  18. data/vendor/assets/javascripts/ace/keybinding-vim.js +45 -9
  19. data/vendor/assets/javascripts/ace/keybinding-vscode.js +262 -0
  20. data/vendor/assets/javascripts/ace/mode-abc.js +3 -0
  21. data/vendor/assets/javascripts/ace/mode-actionscript.js +1 -0
  22. data/vendor/assets/javascripts/ace/mode-alda.js +311 -0
  23. data/vendor/assets/javascripts/ace/mode-asl.js +17 -16
  24. data/vendor/assets/javascripts/ace/mode-c_cpp.js +1 -0
  25. data/vendor/assets/javascripts/ace/mode-clojure.js +1 -0
  26. data/vendor/assets/javascripts/ace/mode-coffee.js +1 -0
  27. data/vendor/assets/javascripts/ace/mode-coldfusion.js +3 -0
  28. data/vendor/assets/javascripts/ace/mode-csound_document.js +40 -5
  29. data/vendor/assets/javascripts/ace/mode-csound_orchestra.js +37 -5
  30. data/vendor/assets/javascripts/ace/mode-csound_score.js +1 -0
  31. data/vendor/assets/javascripts/ace/mode-css.js +1 -0
  32. data/vendor/assets/javascripts/ace/mode-curly.js +3 -0
  33. data/vendor/assets/javascripts/ace/mode-d.js +1 -1
  34. data/vendor/assets/javascripts/ace/mode-dart.js +2 -0
  35. data/vendor/assets/javascripts/ace/mode-diff.js +1 -0
  36. data/vendor/assets/javascripts/ace/mode-django.js +4 -0
  37. data/vendor/assets/javascripts/ace/mode-dockerfile.js +1 -0
  38. data/vendor/assets/javascripts/ace/mode-drools.js +1 -0
  39. data/vendor/assets/javascripts/ace/mode-edifact.js +1 -0
  40. data/vendor/assets/javascripts/ace/mode-ejs.js +673 -165
  41. data/vendor/assets/javascripts/ace/mode-erlang.js +1 -0
  42. data/vendor/assets/javascripts/ace/mode-fsl.js +1 -0
  43. data/vendor/assets/javascripts/ace/mode-glsl.js +1 -0
  44. data/vendor/assets/javascripts/ace/mode-gobstones.js +2 -0
  45. data/vendor/assets/javascripts/ace/mode-graphqlschema.js +1 -0
  46. data/vendor/assets/javascripts/ace/mode-groovy.js +1 -0
  47. data/vendor/assets/javascripts/ace/mode-haml.js +419 -104
  48. data/vendor/assets/javascripts/ace/mode-handlebars.js +3 -0
  49. data/vendor/assets/javascripts/ace/mode-haskell.js +1 -0
  50. data/vendor/assets/javascripts/ace/mode-html.js +3 -0
  51. data/vendor/assets/javascripts/ace/mode-html_elixir.js +3 -0
  52. data/vendor/assets/javascripts/ace/mode-html_ruby.js +673 -165
  53. data/vendor/assets/javascripts/ace/mode-io.js +1 -0
  54. data/vendor/assets/javascripts/ace/mode-java.js +2 -0
  55. data/vendor/assets/javascripts/ace/mode-javascript.js +1 -0
  56. data/vendor/assets/javascripts/ace/mode-json.js +3 -0
  57. data/vendor/assets/javascripts/ace/mode-json5.js +360 -0
  58. data/vendor/assets/javascripts/ace/mode-jsoniq.js +1 -0
  59. data/vendor/assets/javascripts/ace/mode-jsp.js +1 -0
  60. data/vendor/assets/javascripts/ace/mode-kotlin.js +2 -0
  61. data/vendor/assets/javascripts/ace/mode-liquid.js +4 -0
  62. data/vendor/assets/javascripts/ace/mode-lsl.js +1 -0
  63. data/vendor/assets/javascripts/ace/mode-lua.js +1 -0
  64. data/vendor/assets/javascripts/ace/mode-luapage.js +4 -0
  65. data/vendor/assets/javascripts/ace/mode-makefile.js +1 -0
  66. data/vendor/assets/javascripts/ace/mode-markdown.js +5 -0
  67. data/vendor/assets/javascripts/ace/mode-maze.js +1 -0
  68. data/vendor/assets/javascripts/ace/mode-mediawiki.js +592 -0
  69. data/vendor/assets/javascripts/ace/mode-nix.js +1 -0
  70. data/vendor/assets/javascripts/ace/mode-nsis.js +1 -1
  71. data/vendor/assets/javascripts/ace/mode-nunjucks.js +2698 -0
  72. data/vendor/assets/javascripts/ace/mode-perl.js +1 -0
  73. data/vendor/assets/javascripts/ace/mode-pgsql.js +2 -2
  74. data/vendor/assets/javascripts/ace/mode-php.js +4 -0
  75. data/vendor/assets/javascripts/ace/mode-php_laravel_blade.js +4 -0
  76. data/vendor/assets/javascripts/ace/mode-prisma.js +489 -0
  77. data/vendor/assets/javascripts/ace/mode-protobuf.js +1 -0
  78. data/vendor/assets/javascripts/ace/mode-puppet.js +5 -6
  79. data/vendor/assets/javascripts/ace/mode-python.js +3 -2
  80. data/vendor/assets/javascripts/ace/mode-qml.js +381 -0
  81. data/vendor/assets/javascripts/ace/mode-r.js +1 -0
  82. data/vendor/assets/javascripts/ace/mode-razor.js +4 -0
  83. data/vendor/assets/javascripts/ace/mode-rhtml.js +3 -0
  84. data/vendor/assets/javascripts/ace/mode-rst.js +1 -0
  85. data/vendor/assets/javascripts/ace/mode-ruby.js +670 -165
  86. data/vendor/assets/javascripts/ace/mode-rust.js +1 -1
  87. data/vendor/assets/javascripts/ace/mode-scala.js +1 -0
  88. data/vendor/assets/javascripts/ace/mode-sh.js +1 -0
  89. data/vendor/assets/javascripts/ace/mode-sjs.js +1 -0
  90. data/vendor/assets/javascripts/ace/mode-slim.js +708 -110
  91. data/vendor/assets/javascripts/ace/mode-smarty.js +3 -0
  92. data/vendor/assets/javascripts/ace/mode-snippets.js +1 -0
  93. data/vendor/assets/javascripts/ace/mode-soy_template.js +3 -0
  94. data/vendor/assets/javascripts/ace/mode-sql.js +1 -0
  95. data/vendor/assets/javascripts/ace/mode-sqlserver.js +2 -1
  96. data/vendor/assets/javascripts/ace/mode-svg.js +1 -0
  97. data/vendor/assets/javascripts/ace/mode-swift.js +6 -0
  98. data/vendor/assets/javascripts/ace/mode-tcl.js +1 -0
  99. data/vendor/assets/javascripts/ace/mode-terraform.js +10 -7
  100. data/vendor/assets/javascripts/ace/mode-tex.js +1 -0
  101. data/vendor/assets/javascripts/ace/mode-textile.js +1 -0
  102. data/vendor/assets/javascripts/ace/mode-tsx.js +1 -0
  103. data/vendor/assets/javascripts/ace/mode-twig.js +3 -0
  104. data/vendor/assets/javascripts/ace/mode-typescript.js +1 -0
  105. data/vendor/assets/javascripts/ace/mode-vala.js +1 -0
  106. data/vendor/assets/javascripts/ace/mode-vbscript.js +444 -15
  107. data/vendor/assets/javascripts/ace/mode-velocity.js +4 -0
  108. data/vendor/assets/javascripts/ace/mode-vhdl.js +5 -6
  109. data/vendor/assets/javascripts/ace/mode-visualforce.js +3 -0
  110. data/vendor/assets/javascripts/ace/mode-wollok.js +2 -0
  111. data/vendor/assets/javascripts/ace/mode-xquery.js +1 -0
  112. data/vendor/assets/javascripts/ace/snippets/abap.js +1 -6
  113. data/vendor/assets/javascripts/ace/snippets/ada.js +1 -6
  114. data/vendor/assets/javascripts/ace/snippets/alda.js +9 -0
  115. data/vendor/assets/javascripts/ace/snippets/apache_conf.js +1 -6
  116. data/vendor/assets/javascripts/ace/snippets/apex.js +1 -6
  117. data/vendor/assets/javascripts/ace/snippets/applescript.js +1 -6
  118. data/vendor/assets/javascripts/ace/snippets/aql.js +1 -6
  119. data/vendor/assets/javascripts/ace/snippets/asciidoc.js +1 -6
  120. data/vendor/assets/javascripts/ace/snippets/asl.js +1 -5
  121. data/vendor/assets/javascripts/ace/snippets/assembly_x86.js +1 -6
  122. data/vendor/assets/javascripts/ace/snippets/autohotkey.js +1 -6
  123. data/vendor/assets/javascripts/ace/snippets/batchfile.js +1 -6
  124. data/vendor/assets/javascripts/ace/snippets/c9search.js +1 -6
  125. data/vendor/assets/javascripts/ace/snippets/cirru.js +1 -6
  126. data/vendor/assets/javascripts/ace/snippets/cobol.js +1 -6
  127. data/vendor/assets/javascripts/ace/snippets/coldfusion.js +1 -6
  128. data/vendor/assets/javascripts/ace/snippets/crystal.js +1 -6
  129. data/vendor/assets/javascripts/ace/snippets/csharp.js +1 -6
  130. data/vendor/assets/javascripts/ace/snippets/csound_score.js +1 -6
  131. data/vendor/assets/javascripts/ace/snippets/csp.js +1 -6
  132. data/vendor/assets/javascripts/ace/snippets/curly.js +1 -6
  133. data/vendor/assets/javascripts/ace/snippets/d.js +1 -6
  134. data/vendor/assets/javascripts/ace/snippets/dockerfile.js +1 -6
  135. data/vendor/assets/javascripts/ace/snippets/dot.js +1 -6
  136. data/vendor/assets/javascripts/ace/snippets/eiffel.js +1 -6
  137. data/vendor/assets/javascripts/ace/snippets/ejs.js +1 -6
  138. data/vendor/assets/javascripts/ace/snippets/elixir.js +1 -6
  139. data/vendor/assets/javascripts/ace/snippets/elm.js +1 -6
  140. data/vendor/assets/javascripts/ace/snippets/forth.js +1 -6
  141. data/vendor/assets/javascripts/ace/snippets/fortran.js +1 -6
  142. data/vendor/assets/javascripts/ace/snippets/fsharp.js +1 -6
  143. data/vendor/assets/javascripts/ace/snippets/ftl.js +1 -6
  144. data/vendor/assets/javascripts/ace/snippets/gcode.js +1 -6
  145. data/vendor/assets/javascripts/ace/snippets/gherkin.js +1 -6
  146. data/vendor/assets/javascripts/ace/snippets/gitignore.js +1 -6
  147. data/vendor/assets/javascripts/ace/snippets/glsl.js +1 -6
  148. data/vendor/assets/javascripts/ace/snippets/golang.js +1 -6
  149. data/vendor/assets/javascripts/ace/snippets/groovy.js +1 -6
  150. data/vendor/assets/javascripts/ace/snippets/handlebars.js +1 -6
  151. data/vendor/assets/javascripts/ace/snippets/haskell_cabal.js +1 -6
  152. data/vendor/assets/javascripts/ace/snippets/haxe.js +1 -6
  153. data/vendor/assets/javascripts/ace/snippets/hjson.js +1 -6
  154. data/vendor/assets/javascripts/ace/snippets/html_elixir.js +1 -6
  155. data/vendor/assets/javascripts/ace/snippets/html_ruby.js +1 -6
  156. data/vendor/assets/javascripts/ace/snippets/ini.js +1 -6
  157. data/vendor/assets/javascripts/ace/snippets/jack.js +1 -6
  158. data/vendor/assets/javascripts/ace/snippets/jade.js +1 -6
  159. data/vendor/assets/javascripts/ace/snippets/json.js +1 -6
  160. data/vendor/assets/javascripts/ace/snippets/json5.js +9 -0
  161. data/vendor/assets/javascripts/ace/snippets/jssm.js +1 -6
  162. data/vendor/assets/javascripts/ace/snippets/jsx.js +1 -6
  163. data/vendor/assets/javascripts/ace/snippets/julia.js +1 -6
  164. data/vendor/assets/javascripts/ace/snippets/kotlin.js +1 -6
  165. data/vendor/assets/javascripts/ace/snippets/latex.js +1 -6
  166. data/vendor/assets/javascripts/ace/snippets/less.js +1 -6
  167. data/vendor/assets/javascripts/ace/snippets/lisp.js +1 -6
  168. data/vendor/assets/javascripts/ace/snippets/livescript.js +1 -6
  169. data/vendor/assets/javascripts/ace/snippets/logiql.js +1 -6
  170. data/vendor/assets/javascripts/ace/snippets/logtalk.js +1 -6
  171. data/vendor/assets/javascripts/ace/snippets/luapage.js +1 -6
  172. data/vendor/assets/javascripts/ace/snippets/lucene.js +1 -6
  173. data/vendor/assets/javascripts/ace/snippets/mask.js +1 -6
  174. data/vendor/assets/javascripts/ace/snippets/matlab.js +1 -6
  175. data/vendor/assets/javascripts/ace/snippets/mediawiki.js +9 -0
  176. data/vendor/assets/javascripts/ace/snippets/mel.js +1 -6
  177. data/vendor/assets/javascripts/ace/snippets/mixal.js +1 -6
  178. data/vendor/assets/javascripts/ace/snippets/mushcode.js +1 -6
  179. data/vendor/assets/javascripts/ace/snippets/mysql.js +1 -6
  180. data/vendor/assets/javascripts/ace/snippets/nginx.js +1 -6
  181. data/vendor/assets/javascripts/ace/snippets/nim.js +1 -6
  182. data/vendor/assets/javascripts/ace/snippets/nix.js +1 -6
  183. data/vendor/assets/javascripts/ace/snippets/nsis.js +1 -6
  184. data/vendor/assets/javascripts/ace/snippets/nunjucks.js +9 -0
  185. data/vendor/assets/javascripts/ace/snippets/objectivec.js +1 -6
  186. data/vendor/assets/javascripts/ace/snippets/ocaml.js +1 -6
  187. data/vendor/assets/javascripts/ace/snippets/pascal.js +1 -6
  188. data/vendor/assets/javascripts/ace/snippets/perl6.js +1 -6
  189. data/vendor/assets/javascripts/ace/snippets/pgsql.js +1 -6
  190. data/vendor/assets/javascripts/ace/snippets/php_laravel_blade.js +1 -6
  191. data/vendor/assets/javascripts/ace/snippets/pig.js +1 -6
  192. data/vendor/assets/javascripts/ace/snippets/plain_text.js +1 -6
  193. data/vendor/assets/javascripts/ace/snippets/powershell.js +1 -6
  194. data/vendor/assets/javascripts/ace/snippets/praat.js +1 -6
  195. data/vendor/assets/javascripts/ace/snippets/prisma.js +9 -0
  196. data/vendor/assets/javascripts/ace/snippets/prolog.js +1 -6
  197. data/vendor/assets/javascripts/ace/snippets/properties.js +1 -6
  198. data/vendor/assets/javascripts/ace/snippets/protobuf.js +1 -6
  199. data/vendor/assets/javascripts/ace/snippets/puppet.js +1 -6
  200. data/vendor/assets/javascripts/ace/snippets/qml.js +9 -0
  201. data/vendor/assets/javascripts/ace/snippets/rdoc.js +1 -6
  202. data/vendor/assets/javascripts/ace/snippets/red.js +1 -6
  203. data/vendor/assets/javascripts/ace/snippets/redshift.js +1 -6
  204. data/vendor/assets/javascripts/ace/snippets/rhtml.js +1 -6
  205. data/vendor/assets/javascripts/ace/snippets/rust.js +1 -6
  206. data/vendor/assets/javascripts/ace/snippets/sass.js +1 -6
  207. data/vendor/assets/javascripts/ace/snippets/scad.js +1 -6
  208. data/vendor/assets/javascripts/ace/snippets/scala.js +1 -6
  209. data/vendor/assets/javascripts/ace/snippets/scheme.js +1 -6
  210. data/vendor/assets/javascripts/ace/snippets/scss.js +1 -6
  211. data/vendor/assets/javascripts/ace/snippets/sjs.js +1 -6
  212. data/vendor/assets/javascripts/ace/snippets/slim.js +1 -6
  213. data/vendor/assets/javascripts/ace/snippets/smarty.js +1 -6
  214. data/vendor/assets/javascripts/ace/snippets/soy_template.js +1 -6
  215. data/vendor/assets/javascripts/ace/snippets/space.js +1 -6
  216. data/vendor/assets/javascripts/ace/snippets/sparql.js +1 -6
  217. data/vendor/assets/javascripts/ace/snippets/stylus.js +1 -6
  218. data/vendor/assets/javascripts/ace/snippets/svg.js +1 -6
  219. data/vendor/assets/javascripts/ace/snippets/swift.js +1 -6
  220. data/vendor/assets/javascripts/ace/snippets/terraform.js +1 -6
  221. data/vendor/assets/javascripts/ace/snippets/text.js +1 -6
  222. data/vendor/assets/javascripts/ace/snippets/toml.js +1 -6
  223. data/vendor/assets/javascripts/ace/snippets/tsx.js +1 -6
  224. data/vendor/assets/javascripts/ace/snippets/turtle.js +1 -6
  225. data/vendor/assets/javascripts/ace/snippets/twig.js +1 -6
  226. data/vendor/assets/javascripts/ace/snippets/typescript.js +1 -6
  227. data/vendor/assets/javascripts/ace/snippets/vbscript.js +1 -6
  228. data/vendor/assets/javascripts/ace/snippets/verilog.js +1 -6
  229. data/vendor/assets/javascripts/ace/snippets/vhdl.js +1 -6
  230. data/vendor/assets/javascripts/ace/snippets/visualforce.js +1 -6
  231. data/vendor/assets/javascripts/ace/snippets/xml.js +1 -6
  232. data/vendor/assets/javascripts/ace/snippets/yaml.js +1 -6
  233. data/vendor/assets/javascripts/ace/snippets/zeek.js +1 -6
  234. data/vendor/assets/javascripts/ace/theme-ambiance.js +3 -2
  235. data/vendor/assets/javascripts/ace/theme-chaos.js +1 -1
  236. data/vendor/assets/javascripts/ace/theme-nord_dark.js +102 -0
  237. data/vendor/assets/javascripts/ace/worker-base.js +1421 -0
  238. data/vendor/assets/javascripts/ace/worker-coffee.js +17 -703
  239. data/vendor/assets/javascripts/ace/worker-css.js +17 -703
  240. data/vendor/assets/javascripts/ace/worker-html.js +17 -703
  241. data/vendor/assets/javascripts/ace/worker-javascript.js +7833 -5352
  242. data/vendor/assets/javascripts/ace/worker-json.js +17 -703
  243. data/vendor/assets/javascripts/ace/worker-lua.js +17 -703
  244. data/vendor/assets/javascripts/ace/worker-php.js +857 -1475
  245. data/vendor/assets/javascripts/ace/worker-xml.js +26 -707
  246. data/vendor/assets/javascripts/ace/worker-xquery.js +17 -703
  247. metadata +18 -4
  248. data/vendor/assets/javascripts/ace/mode-bro.js +0 -334
  249. data/vendor/assets/javascripts/ace/snippets/bro.js +0 -14
@@ -39,22 +39,23 @@ var supportedModes = {
39
39
  ABC: ["abc"],
40
40
  ActionScript:["as"],
41
41
  ADA: ["ada|adb"],
42
+ Alda: ["alda"],
42
43
  Apache_Conf: ["^htaccess|^htgroups|^htpasswd|^conf|htaccess|htgroups|htpasswd"],
44
+ Apex: ["apex|cls|trigger|tgr"],
45
+ AQL: ["aql"],
43
46
  AsciiDoc: ["asciidoc|adoc"],
44
47
  ASL: ["dsl|asl"],
45
48
  Assembly_x86:["asm|a"],
46
49
  AutoHotKey: ["ahk"],
47
- Apex: ["apex|cls|trigger|tgr"],
48
- AQL: ["aql"],
49
50
  BatchFile: ["bat|cmd"],
50
51
  C_Cpp: ["cpp|c|cc|cxx|h|hh|hpp|ino"],
51
52
  C9Search: ["c9search_results"],
52
- Crystal: ["cr"],
53
53
  Cirru: ["cirru|cr"],
54
54
  Clojure: ["clj|cljs"],
55
55
  Cobol: ["CBL|COB"],
56
56
  coffee: ["coffee|cf|cson|^Cakefile"],
57
57
  ColdFusion: ["cfm"],
58
+ Crystal: ["cr"],
58
59
  CSharp: ["cs"],
59
60
  Csound_Document: ["csd"],
60
61
  Csound_Orchestra: ["orc"],
@@ -102,6 +103,7 @@ var supportedModes = {
102
103
  Java: ["java"],
103
104
  JavaScript: ["js|jsm|jsx"],
104
105
  JSON: ["json"],
106
+ JSON5: ["json5"],
105
107
  JSONiq: ["jq"],
106
108
  JSP: ["jsp"],
107
109
  JSSM: ["jssm|jssm_state"],
@@ -123,30 +125,34 @@ var supportedModes = {
123
125
  Mask: ["mask"],
124
126
  MATLAB: ["matlab"],
125
127
  Maze: ["mz"],
128
+ MediaWiki: ["wiki|mediawiki"],
126
129
  MEL: ["mel"],
127
130
  MIXAL: ["mixal"],
128
131
  MUSHCode: ["mc|mush"],
129
132
  MySQL: ["mysql"],
130
133
  Nginx: ["nginx|conf"],
131
- Nix: ["nix"],
132
134
  Nim: ["nim"],
135
+ Nix: ["nix"],
133
136
  NSIS: ["nsi|nsh"],
137
+ Nunjucks: ["nunjucks|nunjs|nj|njk"],
134
138
  ObjectiveC: ["m|mm"],
135
139
  OCaml: ["ml|mli"],
136
140
  Pascal: ["pas|p"],
137
141
  Perl: ["pl|pm"],
138
142
  Perl6: ["p6|pl6|pm6"],
139
143
  pgSQL: ["pgsql"],
140
- PHP_Laravel_blade: ["blade.php"],
141
144
  PHP: ["php|inc|phtml|shtml|php3|php4|php5|phps|phpt|aw|ctp|module"],
142
- Puppet: ["epp|pp"],
145
+ PHP_Laravel_blade: ["blade.php"],
143
146
  Pig: ["pig"],
144
147
  Powershell: ["ps1"],
145
148
  Praat: ["praat|praatscript|psc|proc"],
149
+ Prisma: ["prisma"],
146
150
  Prolog: ["plg|prolog"],
147
151
  Properties: ["properties"],
148
152
  Protobuf: ["proto"],
153
+ Puppet: ["epp|pp"],
149
154
  Python: ["py"],
155
+ QML: ["qml"],
150
156
  R: ["r"],
151
157
  Razor: ["cshtml|asp"],
152
158
  RDoc: ["Rd"],
@@ -160,22 +160,23 @@ var supportedModes = {
160
160
  ABC: ["abc"],
161
161
  ActionScript:["as"],
162
162
  ADA: ["ada|adb"],
163
+ Alda: ["alda"],
163
164
  Apache_Conf: ["^htaccess|^htgroups|^htpasswd|^conf|htaccess|htgroups|htpasswd"],
165
+ Apex: ["apex|cls|trigger|tgr"],
166
+ AQL: ["aql"],
164
167
  AsciiDoc: ["asciidoc|adoc"],
165
168
  ASL: ["dsl|asl"],
166
169
  Assembly_x86:["asm|a"],
167
170
  AutoHotKey: ["ahk"],
168
- Apex: ["apex|cls|trigger|tgr"],
169
- AQL: ["aql"],
170
171
  BatchFile: ["bat|cmd"],
171
172
  C_Cpp: ["cpp|c|cc|cxx|h|hh|hpp|ino"],
172
173
  C9Search: ["c9search_results"],
173
- Crystal: ["cr"],
174
174
  Cirru: ["cirru|cr"],
175
175
  Clojure: ["clj|cljs"],
176
176
  Cobol: ["CBL|COB"],
177
177
  coffee: ["coffee|cf|cson|^Cakefile"],
178
178
  ColdFusion: ["cfm"],
179
+ Crystal: ["cr"],
179
180
  CSharp: ["cs"],
180
181
  Csound_Document: ["csd"],
181
182
  Csound_Orchestra: ["orc"],
@@ -223,6 +224,7 @@ var supportedModes = {
223
224
  Java: ["java"],
224
225
  JavaScript: ["js|jsm|jsx"],
225
226
  JSON: ["json"],
227
+ JSON5: ["json5"],
226
228
  JSONiq: ["jq"],
227
229
  JSP: ["jsp"],
228
230
  JSSM: ["jssm|jssm_state"],
@@ -244,30 +246,34 @@ var supportedModes = {
244
246
  Mask: ["mask"],
245
247
  MATLAB: ["matlab"],
246
248
  Maze: ["mz"],
249
+ MediaWiki: ["wiki|mediawiki"],
247
250
  MEL: ["mel"],
248
251
  MIXAL: ["mixal"],
249
252
  MUSHCode: ["mc|mush"],
250
253
  MySQL: ["mysql"],
251
254
  Nginx: ["nginx|conf"],
252
- Nix: ["nix"],
253
255
  Nim: ["nim"],
256
+ Nix: ["nix"],
254
257
  NSIS: ["nsi|nsh"],
258
+ Nunjucks: ["nunjucks|nunjs|nj|njk"],
255
259
  ObjectiveC: ["m|mm"],
256
260
  OCaml: ["ml|mli"],
257
261
  Pascal: ["pas|p"],
258
262
  Perl: ["pl|pm"],
259
263
  Perl6: ["p6|pl6|pm6"],
260
264
  pgSQL: ["pgsql"],
261
- PHP_Laravel_blade: ["blade.php"],
262
265
  PHP: ["php|inc|phtml|shtml|php3|php4|php5|phps|phpt|aw|ctp|module"],
263
- Puppet: ["epp|pp"],
266
+ PHP_Laravel_blade: ["blade.php"],
264
267
  Pig: ["pig"],
265
268
  Powershell: ["ps1"],
266
269
  Praat: ["praat|praatscript|psc|proc"],
270
+ Prisma: ["prisma"],
267
271
  Prolog: ["plg|prolog"],
268
272
  Properties: ["properties"],
269
273
  Protobuf: ["proto"],
274
+ Puppet: ["epp|pp"],
270
275
  Python: ["py"],
276
+ QML: ["qml"],
271
277
  R: ["r"],
272
278
  Razor: ["cshtml|asp"],
273
279
  RDoc: ["Rd"],
@@ -365,7 +371,7 @@ var themeData = [
365
371
  ["Solarized Light"],
366
372
  ["TextMate" ],
367
373
  ["Tomorrow" ],
368
- ["XCode" ],
374
+ ["Xcode" ],
369
375
  ["Kuroir"],
370
376
  ["KatzenMilch"],
371
377
  ["SQL Server" ,"sqlserver" , "light"],
@@ -382,6 +388,7 @@ var themeData = [
382
388
  ["Merbivore Soft" ,"merbivore_soft" , "dark"],
383
389
  ["Mono Industrial" ,"mono_industrial" , "dark"],
384
390
  ["Monokai" ,"monokai" , "dark"],
391
+ ["Nord Dark" ,"nord_dark" , "dark"],
385
392
  ["Pastel on dark" ,"pastel_on_dark" , "dark"],
386
393
  ["Solarized Dark" ,"solarized_dark" , "dark"],
387
394
  ["Terminal" ,"terminal" , "dark"],
@@ -411,9 +418,9 @@ exports.themes = themeData.map(function(data) {
411
418
 
412
419
  define("ace/ext/options",["require","exports","module","ace/ext/menu_tools/overlay_page","ace/lib/dom","ace/lib/oop","ace/config","ace/lib/event_emitter","ace/ext/modelist","ace/ext/themelist"], function(require, exports, module) {
413
420
  "use strict";
414
- var overlayPage = require('./menu_tools/overlay_page').overlayPage;
415
421
 
416
-
422
+ require("./menu_tools/overlay_page");
423
+
417
424
  var dom = require("../lib/dom");
418
425
  var oop = require("../lib/oop");
419
426
  var config = require("../config");
@@ -452,7 +459,8 @@ var optionGroups = {
452
459
  { caption : "Ace", value : null },
453
460
  { caption : "Vim", value : "ace/keyboard/vim" },
454
461
  { caption : "Emacs", value : "ace/keyboard/emacs" },
455
- { caption : "Sublime", value : "ace/keyboard/sublime" }
462
+ { caption : "Sublime", value : "ace/keyboard/sublime" },
463
+ { caption : "VSCode", value : "ace/keyboard/vscode" }
456
464
  ]
457
465
  },
458
466
  "Font Size": {
@@ -495,6 +503,7 @@ var optionGroups = {
495
503
  "Soft Tabs": [{
496
504
  path: "useSoftTabs"
497
505
  }, {
506
+ ariaLabel: "Tab Size",
498
507
  path: "tabSize",
499
508
  type: "number",
500
509
  values: [2, 3, 4, 8, 16]
@@ -516,6 +525,12 @@ var optionGroups = {
516
525
  "Enable Behaviours": {
517
526
  path: "behavioursEnabled"
518
527
  },
528
+ "Wrap with quotes": {
529
+ path: "wrapBehavioursEnabled"
530
+ },
531
+ "Enable Auto Indent": {
532
+ path: "enableAutoIndent"
533
+ },
519
534
  "Full Line Selection": {
520
535
  type: "checkbox",
521
536
  values: "text|line",
@@ -530,11 +545,12 @@ var optionGroups = {
530
545
  "Show Indent Guides": {
531
546
  path: "displayIndentGuides"
532
547
  },
533
- "Persistent Scrollbar": [{
548
+ "Persistent HScrollbar": {
534
549
  path: "hScrollBarAlwaysVisible"
535
- }, {
550
+ },
551
+ "Persistent VScrollbar": {
536
552
  path: "vScrollBarAlwaysVisible"
537
- }],
553
+ },
538
554
  "Animate scrolling": {
539
555
  path: "animatedScroll"
540
556
  },
@@ -553,6 +569,7 @@ var optionGroups = {
553
569
  "Show Print Margin": [{
554
570
  path: "showPrintMargin"
555
571
  }, {
572
+ ariaLabel: "Print Margin",
556
573
  type: "number",
557
574
  path: "printMarginColumn"
558
575
  }],
@@ -615,10 +632,10 @@ var OptionPanel = function(editor, element) {
615
632
 
616
633
  this.render = function() {
617
634
  this.container.innerHTML = "";
618
- buildDom(["table", {id: "controls"},
635
+ buildDom(["table", {role: "presentation", id: "controls"},
619
636
  this.renderOptionGroup(optionGroups.Main),
620
637
  ["tr", null, ["td", {colspan: 2},
621
- ["table", {id: "more-controls"},
638
+ ["table", {role: "presentation", id: "more-controls"},
622
639
  this.renderOptionGroup(optionGroups.More)
623
640
  ]
624
641
  ]],
@@ -661,17 +678,20 @@ var OptionPanel = function(editor, element) {
661
678
  }
662
679
 
663
680
  if (option.type == "buttonBar") {
664
- control = ["div", option.items.map(function(item) {
681
+ control = ["div", {role: "group", "aria-labelledby": option.path + "-label"}, option.items.map(function(item) {
665
682
  return ["button", {
666
683
  value: item.value,
667
684
  ace_selected_button: value == item.value,
685
+ 'aria-pressed': value == item.value,
668
686
  onclick: function() {
669
687
  self.setOption(option, item.value);
670
688
  var nodes = this.parentNode.querySelectorAll("[ace_selected_button]");
671
689
  for (var i = 0; i < nodes.length; i++) {
672
690
  nodes[i].removeAttribute("ace_selected_button");
691
+ nodes[i].setAttribute("aria-pressed", false);
673
692
  }
674
693
  this.setAttribute("ace_selected_button", true);
694
+ this.setAttribute("aria-pressed", true);
675
695
  }
676
696
  }, item.desc || item.caption || item.name];
677
697
  })];
@@ -679,6 +699,11 @@ var OptionPanel = function(editor, element) {
679
699
  control = ["input", {type: "number", value: value || option.defaultValue, style:"width:3em", oninput: function() {
680
700
  self.setOption(option, parseInt(this.value));
681
701
  }}];
702
+ if (option.ariaLabel) {
703
+ control[1]["aria-label"] = option.ariaLabel;
704
+ } else {
705
+ control[1].id = key;
706
+ }
682
707
  if (option.defaults) {
683
708
  control = [control, option.defaults.map(function(item) {
684
709
  return ["button", {onclick: function() {
@@ -722,11 +747,13 @@ var OptionPanel = function(editor, element) {
722
747
  this.renderOption = function(key, option) {
723
748
  if (option.path && !option.onchange && !this.editor.$options[option.path])
724
749
  return;
725
- this.options[option.path] = option;
726
- var safeKey = "-" + option.path;
750
+ var path = Array.isArray(option) ? option[0].path : option.path;
751
+ this.options[path] = option;
752
+ var safeKey = "-" + path;
753
+ var safeId = path + "-label";
727
754
  var control = this.renderOptionControl(safeKey, option);
728
755
  return ["tr", {class: "ace_optionsMenuEntry"}, ["td",
729
- ["label", {for: safeKey}, key]
756
+ ["label", {for: safeKey, id: safeId}, key]
730
757
  ], ["td", control]];
731
758
  };
732
759
 
@@ -387,7 +387,7 @@ exports.parForEach = function(array, fn, callback) {
387
387
  }
388
388
  };
389
389
 
390
- var ID_REGEX = /[a-zA-Z_0-9\$\-\u00A2-\uFFFF]/;
390
+ var ID_REGEX = /[a-zA-Z_0-9\$\-\u00A2-\u2000\u2070-\uFFFF]/;
391
391
 
392
392
  exports.retrievePrecedingIdentifier = function(text, pos, regex) {
393
393
  regex = regex || ID_REGEX;
@@ -576,7 +576,9 @@ var SnippetManager = function() {
576
576
  {regex: "\\|" + escape("\\|") + "*\\|", onMatch: function(val, state, stack) {
577
577
  var choices = val.slice(1, -1).replace(/\\[,|\\]|,/g, function(operator) {
578
578
  return operator.length == 2 ? operator[1] : "\x00";
579
- }).split("\x00");
579
+ }).split("\x00").map(function(value){
580
+ return {value: value};
581
+ });
580
582
  stack[0].choices = choices;
581
583
  return [choices[0]];
582
584
  }, next: "start"},
@@ -1047,6 +1049,12 @@ var SnippetManager = function() {
1047
1049
  }
1048
1050
  snippetMap[scope].push(s);
1049
1051
 
1052
+ if (s.prefix)
1053
+ s.tabTrigger = s.prefix;
1054
+
1055
+ if (!s.content && s.body)
1056
+ s.content = Array.isArray(s.body) ? s.body.join("\n") : s.body;
1057
+
1050
1058
  if (s.tabTrigger && !s.trigger) {
1051
1059
  if (!s.guard && /^\w/.test(s.tabTrigger))
1052
1060
  s.guard = "\\b";
@@ -1063,10 +1071,13 @@ var SnippetManager = function() {
1063
1071
  s.endTriggerRe = new RegExp(s.endTrigger);
1064
1072
  }
1065
1073
 
1066
- if (snippets && snippets.content)
1067
- addSnippet(snippets);
1068
- else if (Array.isArray(snippets))
1074
+ if (Array.isArray(snippets)) {
1069
1075
  snippets.forEach(addSnippet);
1076
+ } else {
1077
+ Object.keys(snippets).forEach(function(key) {
1078
+ addSnippet(snippets[key]);
1079
+ });
1080
+ }
1070
1081
 
1071
1082
  this._signal("registerSnippets", {scope: scope});
1072
1083
  };
@@ -1116,7 +1127,7 @@ var SnippetManager = function() {
1116
1127
  snippet.tabTrigger = val.match(/^\S*/)[0];
1117
1128
  if (!snippet.name)
1118
1129
  snippet.name = val;
1119
- } else {
1130
+ } else if (key) {
1120
1131
  snippet[key] = val;
1121
1132
  }
1122
1133
  }
@@ -1179,15 +1190,16 @@ var TabstopManager = function(editor) {
1179
1190
 
1180
1191
  this.onChange = function(delta) {
1181
1192
  var isRemove = delta.action[0] == "r";
1182
- var parents = this.selectedTabstop && this.selectedTabstop.parents || {};
1193
+ var selectedTabstop = this.selectedTabstop || {};
1194
+ var parents = selectedTabstop.parents || {};
1183
1195
  var tabstops = (this.tabstops || []).slice();
1184
1196
  for (var i = 0; i < tabstops.length; i++) {
1185
1197
  var ts = tabstops[i];
1186
- var active = ts == this.selectedTabstop || parents[ts.index];
1198
+ var active = ts == selectedTabstop || parents[ts.index];
1187
1199
  ts.rangeList.$bias = active ? 0 : 1;
1188
1200
 
1189
- if (delta.action == "remove" && ts !== this.selectedTabstop) {
1190
- var parentActive = ts.parents && ts.parents[this.selectedTabstop.index];
1201
+ if (delta.action == "remove" && ts !== selectedTabstop) {
1202
+ var parentActive = ts.parents && ts.parents[selectedTabstop.index];
1191
1203
  var startIndex = ts.rangeList.pointIndex(delta.start, parentActive);
1192
1204
  startIndex = startIndex < 0 ? -startIndex - 1 : startIndex + 1;
1193
1205
  var endIndex = ts.rangeList.pointIndex(delta.end, parentActive);
@@ -1264,18 +1276,17 @@ var TabstopManager = function(editor) {
1264
1276
 
1265
1277
  this.selectedTabstop = ts;
1266
1278
  var range = ts.firstNonLinked || ts;
1279
+ if (ts.choices) range.cursor = range.start;
1267
1280
  if (!this.editor.inVirtualSelectionMode) {
1268
1281
  var sel = this.editor.multiSelect;
1269
- sel.toSingleRange(range.clone());
1282
+ sel.toSingleRange(range);
1270
1283
  for (var i = 0; i < ts.length; i++) {
1271
1284
  if (ts.hasLinkedRanges && ts[i].linked)
1272
1285
  continue;
1273
1286
  sel.addRange(ts[i].clone(), true);
1274
1287
  }
1275
- if (sel.ranges[0])
1276
- sel.addRange(sel.ranges[0].clone());
1277
1288
  } else {
1278
- this.editor.selection.setRange(range);
1289
+ this.editor.selection.fromOrientedRange(range);
1279
1290
  }
1280
1291
 
1281
1292
  this.editor.keyBinding.addKeyboardHandler(this.keyboardHandler);
@@ -1300,8 +1311,6 @@ var TabstopManager = function(editor) {
1300
1311
  var ranges = this.ranges;
1301
1312
  tabstops.forEach(function(ts, index) {
1302
1313
  var dest = this.$openTabstops[index] || ts;
1303
- ts.rangeList = new RangeList();
1304
- ts.rangeList.$bias = 0;
1305
1314
 
1306
1315
  for (var i = 0; i < ts.length; i++) {
1307
1316
  var p = ts[i];
@@ -1311,7 +1320,6 @@ var TabstopManager = function(editor) {
1311
1320
  range.original = p;
1312
1321
  range.tabstop = dest;
1313
1322
  ranges.push(range);
1314
- ts.rangeList.ranges.push(range);
1315
1323
  if (dest != ts)
1316
1324
  dest.unshift(range);
1317
1325
  else
@@ -1329,6 +1337,9 @@ var TabstopManager = function(editor) {
1329
1337
  this.$openTabstops[index] = dest;
1330
1338
  }
1331
1339
  this.addTabstopMarkers(dest);
1340
+ dest.rangeList = dest.rangeList || new RangeList();
1341
+ dest.rangeList.$bias = 0;
1342
+ dest.rangeList.addList(dest);
1332
1343
  }, this);
1333
1344
 
1334
1345
  if (arg.length > 2) {
@@ -1371,21 +1382,18 @@ var TabstopManager = function(editor) {
1371
1382
 
1372
1383
  this.keyboardHandler = new HashHandler();
1373
1384
  this.keyboardHandler.bindKeys({
1374
- "Tab": function(ed) {
1375
- if (exports.snippetManager && exports.snippetManager.expandWithTab(ed)) {
1385
+ "Tab": function(editor) {
1386
+ if (exports.snippetManager && exports.snippetManager.expandWithTab(editor))
1376
1387
  return;
1377
- }
1378
-
1379
- ed.tabstopManager.tabNext(1);
1388
+ editor.tabstopManager.tabNext(1);
1389
+ editor.renderer.scrollCursorIntoView();
1380
1390
  },
1381
- "Shift-Tab": function(ed) {
1382
- ed.tabstopManager.tabNext(-1);
1391
+ "Shift-Tab": function(editor) {
1392
+ editor.tabstopManager.tabNext(-1);
1393
+ editor.renderer.scrollCursorIntoView();
1383
1394
  },
1384
- "Esc": function(ed) {
1385
- ed.tabstopManager.detach();
1386
- },
1387
- "Return": function(ed) {
1388
- return false;
1395
+ "Esc": function(editor) {
1396
+ editor.tabstopManager.detach();
1389
1397
  }
1390
1398
  });
1391
1399
  }).call(TabstopManager.prototype);
@@ -1509,6 +1517,7 @@ var Autocomplete = function() {
1509
1517
  } else if (keepPopupPosition && !prefix) {
1510
1518
  this.detach();
1511
1519
  }
1520
+ this.changeTimer.cancel();
1512
1521
  };
1513
1522
 
1514
1523
  this.detach = function() {
@@ -1571,13 +1580,15 @@ var Autocomplete = function() {
1571
1580
  if (!data)
1572
1581
  return false;
1573
1582
 
1583
+ var completions = this.completions;
1584
+ this.editor.startOperation({command: {name: "insertMatch"}});
1574
1585
  if (data.completer && data.completer.insertMatch) {
1575
1586
  data.completer.insertMatch(this.editor, data);
1576
1587
  } else {
1577
- if (this.completions.filterText) {
1588
+ if (completions.filterText) {
1578
1589
  var ranges = this.editor.selection.getAllRanges();
1579
1590
  for (var i = 0, range; range = ranges[i]; i++) {
1580
- range.start.column -= this.completions.filterText.length;
1591
+ range.start.column -= completions.filterText.length;
1581
1592
  this.editor.session.remove(range);
1582
1593
  }
1583
1594
  }
@@ -1586,7 +1597,9 @@ var Autocomplete = function() {
1586
1597
  else
1587
1598
  this.editor.execCommand("insertstring", data.value || data);
1588
1599
  }
1589
- this.detach();
1600
+ if (this.completions == completions)
1601
+ this.detach();
1602
+ this.editor.endOperation();
1590
1603
  };
1591
1604
 
1592
1605
 
@@ -2099,22 +2112,23 @@ var supportedModes = {
2099
2112
  ABC: ["abc"],
2100
2113
  ActionScript:["as"],
2101
2114
  ADA: ["ada|adb"],
2115
+ Alda: ["alda"],
2102
2116
  Apache_Conf: ["^htaccess|^htgroups|^htpasswd|^conf|htaccess|htgroups|htpasswd"],
2117
+ Apex: ["apex|cls|trigger|tgr"],
2118
+ AQL: ["aql"],
2103
2119
  AsciiDoc: ["asciidoc|adoc"],
2104
2120
  ASL: ["dsl|asl"],
2105
2121
  Assembly_x86:["asm|a"],
2106
2122
  AutoHotKey: ["ahk"],
2107
- Apex: ["apex|cls|trigger|tgr"],
2108
- AQL: ["aql"],
2109
2123
  BatchFile: ["bat|cmd"],
2110
2124
  C_Cpp: ["cpp|c|cc|cxx|h|hh|hpp|ino"],
2111
2125
  C9Search: ["c9search_results"],
2112
- Crystal: ["cr"],
2113
2126
  Cirru: ["cirru|cr"],
2114
2127
  Clojure: ["clj|cljs"],
2115
2128
  Cobol: ["CBL|COB"],
2116
2129
  coffee: ["coffee|cf|cson|^Cakefile"],
2117
2130
  ColdFusion: ["cfm"],
2131
+ Crystal: ["cr"],
2118
2132
  CSharp: ["cs"],
2119
2133
  Csound_Document: ["csd"],
2120
2134
  Csound_Orchestra: ["orc"],
@@ -2162,6 +2176,7 @@ var supportedModes = {
2162
2176
  Java: ["java"],
2163
2177
  JavaScript: ["js|jsm|jsx"],
2164
2178
  JSON: ["json"],
2179
+ JSON5: ["json5"],
2165
2180
  JSONiq: ["jq"],
2166
2181
  JSP: ["jsp"],
2167
2182
  JSSM: ["jssm|jssm_state"],
@@ -2183,30 +2198,34 @@ var supportedModes = {
2183
2198
  Mask: ["mask"],
2184
2199
  MATLAB: ["matlab"],
2185
2200
  Maze: ["mz"],
2201
+ MediaWiki: ["wiki|mediawiki"],
2186
2202
  MEL: ["mel"],
2187
2203
  MIXAL: ["mixal"],
2188
2204
  MUSHCode: ["mc|mush"],
2189
2205
  MySQL: ["mysql"],
2190
2206
  Nginx: ["nginx|conf"],
2191
- Nix: ["nix"],
2192
2207
  Nim: ["nim"],
2208
+ Nix: ["nix"],
2193
2209
  NSIS: ["nsi|nsh"],
2210
+ Nunjucks: ["nunjucks|nunjs|nj|njk"],
2194
2211
  ObjectiveC: ["m|mm"],
2195
2212
  OCaml: ["ml|mli"],
2196
2213
  Pascal: ["pas|p"],
2197
2214
  Perl: ["pl|pm"],
2198
2215
  Perl6: ["p6|pl6|pm6"],
2199
2216
  pgSQL: ["pgsql"],
2200
- PHP_Laravel_blade: ["blade.php"],
2201
2217
  PHP: ["php|inc|phtml|shtml|php3|php4|php5|phps|phpt|aw|ctp|module"],
2202
- Puppet: ["epp|pp"],
2218
+ PHP_Laravel_blade: ["blade.php"],
2203
2219
  Pig: ["pig"],
2204
2220
  Powershell: ["ps1"],
2205
2221
  Praat: ["praat|praatscript|psc|proc"],
2222
+ Prisma: ["prisma"],
2206
2223
  Prolog: ["plg|prolog"],
2207
2224
  Properties: ["properties"],
2208
2225
  Protobuf: ["proto"],
2226
+ Puppet: ["epp|pp"],
2209
2227
  Python: ["py"],
2228
+ QML: ["qml"],
2210
2229
  R: ["r"],
2211
2230
  Razor: ["cshtml|asp"],
2212
2231
  RDoc: ["Rd"],