ver 2010.02 → 2010.08

Sign up to get free protection for your applications and to get access to all the features.
Files changed (651) hide show
  1. data/.gitignore +1 -0
  2. data/.yardopts +1 -1
  3. data/AUTHORS +2 -2
  4. data/CHANGELOG +1160 -0
  5. data/MANIFEST +212 -62
  6. data/README.textile +68 -9
  7. data/Rakefile +2 -2
  8. data/bin/ver +33 -8
  9. data/config/commands/ANTLR.rb +11 -0
  10. data/config/commands/ActionScript.rb +102 -0
  11. data/config/commands/Active4D.rb +30 -0
  12. data/config/commands/Ada.rb +11 -0
  13. data/config/commands/Ant.rb +90 -0
  14. data/config/commands/Apache.rb +98 -0
  15. data/config/commands/AppleScript.rb +169 -0
  16. data/config/commands/Blogging.rb +72 -0
  17. data/config/commands/Bulletin Board.rb +10 -0
  18. data/config/commands/Bundle Development.rb +83 -0
  19. data/config/commands/C++ Qt.rb +158 -0
  20. data/config/commands/C.rb +82 -0
  21. data/config/commands/CMake.rb +32 -0
  22. data/config/commands/CSS.rb +76 -0
  23. data/config/commands/CTags.rb +29 -0
  24. data/config/commands/CVS.rb +114 -0
  25. data/config/commands/CoffeeScript.rb +58 -0
  26. data/config/commands/Context Free.rb +20 -0
  27. data/config/commands/Cucumber.rb +94 -0
  28. data/config/commands/D.rb +47 -0
  29. data/config/commands/Darcs.rb +72 -0
  30. data/config/commands/Diff.rb +76 -0
  31. data/config/commands/Doxygen.rb +9 -0
  32. data/config/commands/Experimental Wiki.rb +9 -0
  33. data/config/commands/Experimental.rb +172 -0
  34. data/config/commands/F-Script.rb +13 -0
  35. data/config/commands/FXScript.rb +11 -0
  36. data/config/commands/FileMerge.rb +42 -0
  37. data/config/commands/Fortran.rb +58 -0
  38. data/config/commands/GTD2.rb +134 -0
  39. data/config/commands/GTDAlt.rb +225 -0
  40. data/config/commands/GetBundle.rb +41 -0
  41. data/config/commands/Go.rb +29 -0
  42. data/config/commands/Graphviz.rb +11 -0
  43. data/config/commands/Greasemonkey.rb +158 -0
  44. data/config/commands/Gri.rb +11 -0
  45. data/config/commands/Groovy Grails.rb +174 -0
  46. data/config/commands/Groovy.rb +66 -0
  47. data/config/commands/HTML.rb +206 -0
  48. data/config/commands/Haskell.rb +48 -0
  49. data/config/commands/Hotkey.rb +50 -0
  50. data/config/commands/Hyperlink Helper.rb +81 -0
  51. data/config/commands/ImageBrowser.rb +10 -0
  52. data/config/commands/Io.rb +11 -0
  53. data/config/commands/JSFL.rb +29 -0
  54. data/config/commands/JSON.rb +11 -0
  55. data/config/commands/Java.rb +45 -0
  56. data/config/commands/JavaDoc.rb +12 -0
  57. data/config/commands/JavaScript Prototype & Script.aculo.us.rb +51 -0
  58. data/config/commands/JavaScript YUI.rb +12 -0
  59. data/config/commands/JavaScript jQuery.rb +12 -0
  60. data/config/commands/JavaScript.rb +50 -0
  61. data/config/commands/LaTeX.rb +423 -0
  62. data/config/commands/Lisp.rb +20 -0
  63. data/config/commands/Logo.rb +10 -0
  64. data/config/commands/Logtalk.rb +34 -0
  65. data/config/commands/Lua.rb +29 -0
  66. data/config/commands/MEL.rb +20 -0
  67. data/config/commands/Mail.rb +73 -0
  68. data/config/commands/Make.rb +20 -0
  69. data/config/commands/Man Pages.rb +20 -0
  70. data/config/commands/Markdown.rb +194 -0
  71. data/config/commands/Math.rb +79 -0
  72. data/config/commands/Matlab.rb +188 -0
  73. data/config/commands/Maven.rb +162 -0
  74. data/config/commands/Mediawiki.rb +12 -0
  75. data/config/commands/Mercurial.rb +185 -0
  76. data/config/commands/MoinMoin.rb +74 -0
  77. data/config/commands/Movable Type.rb +68 -0
  78. data/config/commands/Nemerle.rb +29 -0
  79. data/config/commands/OCaml Experimental Completions.rb +22 -0
  80. data/config/commands/OCaml.rb +99 -0
  81. data/config/commands/Objective-C.rb +181 -0
  82. data/config/commands/Outlines.rb +54 -0
  83. data/config/commands/PHP Smarty.rb +10 -0
  84. data/config/commands/Pascal.rb +11 -0
  85. data/config/commands/Perforce.rb +102 -0
  86. data/config/commands/Perl.rb +78 -0
  87. data/config/commands/Processing.rb +11 -0
  88. data/config/commands/Prolog.rb +11 -0
  89. data/config/commands/Property List.rb +38 -0
  90. data/config/commands/Python Django.rb +11 -0
  91. data/config/commands/Python.rb +131 -0
  92. data/config/commands/R Console (R.app).rb +80 -0
  93. data/config/commands/R Console (Rdaemon).rb +414 -0
  94. data/config/commands/R.rb +337 -0
  95. data/config/commands/Ragel.rb +10 -0
  96. data/config/commands/Regular Expressions.rb +18 -0
  97. data/config/commands/Remind.rb +44 -0
  98. data/config/commands/Ruby RSpec.rb +40 -0
  99. data/config/commands/Ruby on Rails.rb +331 -0
  100. data/config/commands/Ruby.rb +220 -0
  101. data/config/commands/S5 Slide Show.rb +37 -0
  102. data/config/commands/SCons.rb +24 -0
  103. data/config/commands/SQL.rb +60 -0
  104. data/config/commands/SVK.rb +83 -0
  105. data/config/commands/SWeave.rb +63 -0
  106. data/config/commands/Scheme.rb +30 -0
  107. data/config/commands/Scilab.rb +28 -0
  108. data/config/commands/Setext.rb +20 -0
  109. data/config/commands/Shell Script.rb +59 -0
  110. data/config/commands/Slate.rb +9 -0
  111. data/config/commands/Source.rb +84 -0
  112. data/config/commands/Standard ML.rb +38 -0
  113. data/config/commands/Subversion.rb +181 -0
  114. data/config/commands/TODO.rb +32 -0
  115. data/config/commands/Tcl.rb +21 -0
  116. data/config/commands/TerminalMate.rb +30 -0
  117. data/config/commands/Text.rb +137 -0
  118. data/config/commands/TextMate.rb +100 -0
  119. data/config/commands/Textile.rb +58 -0
  120. data/config/commands/Thrift.rb +20 -0
  121. data/config/commands/Transmit.rb +34 -0
  122. data/config/commands/Txt2tags.rb +213 -0
  123. data/config/commands/Vectorscript.rb +19 -0
  124. data/config/commands/Widget Creator.rb +23 -0
  125. data/config/commands/XML.rb +29 -0
  126. data/config/commands/Xcode.rb +106 -0
  127. data/config/commands/YAML.rb +39 -0
  128. data/config/commands/YARD.rb +12 -0
  129. data/config/commands/iTerm.rb +26 -0
  130. data/config/commands/reStructuredText.rb +126 -0
  131. data/config/detect.rb +13 -1
  132. data/config/keymap/diakonos.rb +113 -115
  133. data/config/keymap/emacs.rb +6 -2
  134. data/config/keymap/nano.rb +104 -112
  135. data/config/keymap/vim.rb +329 -258
  136. data/config/plugin/autosave.rb +3 -6
  137. data/config/plugin/git.rb +18 -12
  138. data/config/plugin/soma.rb +1 -1
  139. data/config/preferences/Apache.rb +17 -17
  140. data/config/preferences/AppleScript.rb +5 -5
  141. data/config/preferences/Bundle Development.rb +10 -10
  142. data/config/preferences/C.rb +38 -30
  143. data/config/preferences/CoffeeScript.rb +28 -0
  144. data/config/preferences/ColdFusion.rb +6 -6
  145. data/config/preferences/Cucumber.rb +40 -0
  146. data/config/preferences/Diff.rb +4 -4
  147. data/config/preferences/Eiffel.rb +6 -6
  148. data/config/preferences/Erlang.rb +16 -16
  149. data/config/preferences/F-Script.rb +12 -12
  150. data/config/preferences/FXScript.rb +5 -5
  151. data/config/preferences/Fortran.rb +17 -17
  152. data/config/preferences/Go.rb +23 -0
  153. data/config/preferences/Groovy.rb +29 -0
  154. data/config/preferences/HTML.rb +44 -44
  155. data/config/preferences/Haskell.rb +14 -14
  156. data/config/preferences/Io.rb +11 -11
  157. data/config/preferences/Java.rb +8 -8
  158. data/config/preferences/LaTeX.rb +24 -24
  159. data/config/preferences/Logo.rb +6 -6
  160. data/config/preferences/Logtalk.rb +5 -5
  161. data/config/preferences/Markdown.rb +43 -0
  162. data/config/preferences/Maven.rb +42 -42
  163. data/config/preferences/Mediawiki.rb +8 -8
  164. data/config/preferences/Movable Type.rb +14 -14
  165. data/config/preferences/OCaml.rb +15 -15
  166. data/config/preferences/Objective-C.rb +5 -5
  167. data/config/preferences/PHP.rb +2564 -0
  168. data/config/preferences/Property List.rb +8 -8
  169. data/config/preferences/R.rb +5 -5
  170. data/config/preferences/Ruby.rb +24 -24
  171. data/config/preferences/Source.rb +13 -13
  172. data/config/preferences/Standard ML.rb +9 -9
  173. data/config/preferences/Tcl.rb +5 -5
  174. data/config/preferences/Text.rb +14 -14
  175. data/config/preferences/TextMate.rb +5 -5
  176. data/config/preferences/Textile.rb +8 -8
  177. data/config/preferences/YARD.rb +9 -0
  178. data/config/preferences/iTerm.rb +9 -9
  179. data/config/rc.rb +5 -2
  180. data/config/snippets/ASP vb.NET.rb +203 -54
  181. data/config/snippets/ASP.rb +51 -36
  182. data/config/snippets/ActionScript.rb +332 -205
  183. data/config/snippets/Active4D.rb +325 -256
  184. data/config/snippets/Ada.rb +106 -60
  185. data/config/snippets/Ant.rb +7 -5
  186. data/config/snippets/Apache.rb +24 -20
  187. data/config/snippets/AppleScript.rb +213 -82
  188. data/config/snippets/Blogging.rb +41 -18
  189. data/config/snippets/Bulletin Board.rb +56 -21
  190. data/config/snippets/Bundle Development.rb +108 -63
  191. data/config/snippets/C++ Qt.rb +72 -57
  192. data/config/snippets/C.rb +128 -100
  193. data/config/snippets/CMake.rb +42 -32
  194. data/config/snippets/CSS.rb +515 -115
  195. data/config/snippets/CoffeeScript.rb +85 -0
  196. data/config/snippets/ColdFusion.rb +2228 -1547
  197. data/config/snippets/Context Free.rb +35 -28
  198. data/config/snippets/Cucumber.rb +55 -0
  199. data/config/snippets/D.rb +164 -111
  200. data/config/snippets/DokuWiki.rb +103 -54
  201. data/config/snippets/Doxygen.rb +87 -40
  202. data/config/snippets/Eiffel.rb +121 -18
  203. data/config/snippets/Erlang.rb +109 -68
  204. data/config/snippets/F-Script.rb +30 -24
  205. data/config/snippets/FXScript.rb +364 -210
  206. data/config/snippets/Fortran.rb +462 -280
  207. data/config/snippets/GTDAlt.rb +10 -4
  208. data/config/snippets/Gettext.rb +10 -8
  209. data/config/snippets/Go.rb +52 -0
  210. data/config/snippets/Greasemonkey.rb +52 -42
  211. data/config/snippets/Gri.rb +12 -10
  212. data/config/snippets/Groovy Grails.rb +313 -0
  213. data/config/snippets/Groovy.rb +685 -0
  214. data/config/snippets/HTML.rb +325 -126
  215. data/config/snippets/Haskell.rb +32 -24
  216. data/config/snippets/Io.rb +53 -42
  217. data/config/snippets/Java.rb +204 -92
  218. data/config/snippets/JavaDoc.rb +105 -56
  219. data/config/snippets/JavaScript MooTools.rb +208 -13
  220. data/config/snippets/JavaScript Objective-J.rb +18 -15
  221. data/config/snippets/JavaScript Prototype & Script.aculo.us.rb +362 -107
  222. data/config/snippets/JavaScript YUI.rb +1245 -186
  223. data/config/snippets/JavaScript jQuery.rb +693 -375
  224. data/config/snippets/JavaScript.rb +71 -53
  225. data/config/snippets/LaTeX.rb +188 -0
  226. data/config/snippets/Lisp.rb +59 -40
  227. data/config/snippets/Logo.rb +12 -6
  228. data/config/snippets/Logtalk.rb +131 -60
  229. data/config/snippets/Lua.rb +43 -33
  230. data/config/snippets/MIPS Assembler.rb +7 -5
  231. data/config/snippets/Mail.rb +10 -1
  232. data/config/snippets/Markdown.rb +7 -0
  233. data/config/snippets/Matlab.rb +232 -178
  234. data/config/snippets/Maven.rb +6 -5
  235. data/config/snippets/Mediawiki.rb +43 -12
  236. data/config/snippets/MoinMoin.rb +50 -10
  237. data/config/snippets/Movable Type.rb +368 -53
  238. data/config/snippets/Nemerle.rb +127 -79
  239. data/config/snippets/OCaml Code Completion Misc.rb +1716 -72
  240. data/config/snippets/OCaml Code Completion Unix.rb +2128 -203
  241. data/config/snippets/OCaml.rb +107 -73
  242. data/config/snippets/ODCompletion.rb +169 -118
  243. data/config/snippets/Objective-C.rb +281 -193
  244. data/config/snippets/PHP Smarty.rb +149 -79
  245. data/config/snippets/PHP.rb +186 -0
  246. data/config/snippets/Pascal.rb +47 -33
  247. data/config/snippets/Perl HTML-Template.rb +33 -0
  248. data/config/snippets/Perl Mason.rb +50 -30
  249. data/config/snippets/Perl Template Toolkit.rb +25 -20
  250. data/config/snippets/Perl.rb +91 -72
  251. data/config/snippets/Processing.rb +55 -33
  252. data/config/snippets/Propel.rb +36 -30
  253. data/config/snippets/Property List.rb +57 -24
  254. data/config/snippets/Python Django Templates.rb +381 -95
  255. data/config/snippets/Python Django.rb +159 -132
  256. data/config/snippets/Python.rb +88 -0
  257. data/config/snippets/R Console (Rdaemon).rb +11 -9
  258. data/config/snippets/R.rb +96 -77
  259. data/config/snippets/Remind.rb +18 -15
  260. data/config/snippets/Ruby RSpec.rb +343 -238
  261. data/config/snippets/Ruby on Rails.rb +1116 -765
  262. data/config/snippets/Ruby.rb +770 -545
  263. data/config/snippets/S5 Slide Show.rb +32 -24
  264. data/config/snippets/SSH Config.rb +21 -17
  265. data/config/snippets/SWIG.rb +30 -18
  266. data/config/snippets/Scilab.rb +98 -79
  267. data/config/snippets/Setext.rb +10 -8
  268. data/config/snippets/Shell Script.rb +52 -42
  269. data/config/snippets/Slate.rb +62 -48
  270. data/config/snippets/Source.rb +24 -1
  271. data/config/snippets/Standard ML.rb +37 -27
  272. data/config/snippets/Tcl.rb +32 -26
  273. data/config/snippets/Text.rb +28 -15
  274. data/config/snippets/Textile.rb +130 -45
  275. data/config/snippets/Thrift.rb +22 -18
  276. data/config/snippets/Twiki.rb +158 -105
  277. data/config/snippets/Txt2tags.rb +166 -79
  278. data/config/snippets/Vectorscript.rb +47 -38
  279. data/config/snippets/Widget Creator.rb +5 -5
  280. data/config/snippets/XML.rb +30 -18
  281. data/config/snippets/YAML.rb +5 -4
  282. data/config/snippets/YARD.rb +93 -0
  283. data/config/snippets/reStructuredText.rb +25 -20
  284. data/config/syntax/ANTLR.rb +17 -15
  285. data/config/syntax/ASP vb.NET.rb +27 -24
  286. data/config/syntax/ASP.rb +21 -19
  287. data/config/syntax/ActionScript.rb +16 -16
  288. data/config/syntax/Active4D Config.rb +5 -5
  289. data/config/syntax/Active4D Library.rb +2 -2
  290. data/config/syntax/Active4D.rb +32 -30
  291. data/config/syntax/Ada.rb +13 -10
  292. data/config/syntax/Ant.rb +9 -7
  293. data/config/syntax/Apache.rb +22 -18
  294. data/config/syntax/AppleScript.rb +486 -192
  295. data/config/syntax/AsciiDoc.rb +21 -0
  296. data/config/syntax/BibTeX.rb +7 -7
  297. data/config/syntax/Blog - HTML.rb +7 -7
  298. data/config/syntax/Blog - Markdown.rb +6 -6
  299. data/config/syntax/Blog - Text.rb +2 -2
  300. data/config/syntax/Blog - Textile.rb +2 -2
  301. data/config/syntax/Bulletin Board.rb +33 -32
  302. data/config/syntax/C++ Qt.rb +7 -6
  303. data/config/syntax/C++.rb +31 -28
  304. data/config/syntax/C.rb +55 -51
  305. data/config/syntax/CMake Listfile.rb +12 -11
  306. data/config/syntax/CSS.rb +24 -23
  307. data/config/syntax/CSV.rb +3 -3
  308. data/config/syntax/CoffeeScript.rb +161 -0
  309. data/config/syntax/ColdFusion.rb +8 -8
  310. data/config/syntax/Context Free.rb +18 -16
  311. data/config/syntax/Cucumber Steps.rb +108 -0
  312. data/config/syntax/D.rb +70 -69
  313. data/config/syntax/Diff.rb +13 -10
  314. data/config/syntax/DokuWiki.rb +22 -18
  315. data/config/syntax/Doxygen.rb +1 -1
  316. data/config/syntax/Dylan.rb +8 -8
  317. data/config/syntax/Eiffel.rb +12 -12
  318. data/config/syntax/Erlang.rb +96 -89
  319. data/config/syntax/F-Script.rb +11 -9
  320. data/config/syntax/FXScript.rb +16 -14
  321. data/config/syntax/Fortran - Modern.rb +25 -24
  322. data/config/syntax/Fortran - Punchcard.rb +43 -40
  323. data/config/syntax/GTD.rb +1 -1
  324. data/config/syntax/GTDalt.rb +14 -11
  325. data/config/syntax/Gettext.rb +10 -9
  326. data/config/syntax/Gherkin.rb +65 -0
  327. data/config/syntax/Go.rb +256 -0
  328. data/config/syntax/Grails Server Page.rb +108 -0
  329. data/config/syntax/Graphviz (DOT).rb +6 -6
  330. data/config/syntax/Greasemonkey.rb +3 -3
  331. data/config/syntax/Gri.rb +12 -12
  332. data/config/syntax/Groovy.rb +502 -0
  333. data/config/syntax/HTML (ASP).rb +3 -3
  334. data/config/syntax/HTML (ASP.net).rb +31 -31
  335. data/config/syntax/HTML (Active4D).rb +19 -19
  336. data/config/syntax/HTML (Django).rb +6 -6
  337. data/config/syntax/HTML (Erlang).rb +4 -4
  338. data/config/syntax/HTML (Mason).rb +13 -13
  339. data/config/syntax/HTML (Rails).rb +5 -5
  340. data/config/syntax/HTML (Tcl).rb +3 -3
  341. data/config/syntax/HTML (Template Toolkit).rb +9 -9
  342. data/config/syntax/HTML.rb +27 -27
  343. data/config/syntax/Haskell.rb +31 -28
  344. data/config/syntax/Inform.rb +5 -5
  345. data/config/syntax/Ini.rb +4 -4
  346. data/config/syntax/Installer Distribution Script.rb +19 -18
  347. data/config/syntax/Io.rb +17 -15
  348. data/config/syntax/JSFL.rb +7 -6
  349. data/config/syntax/Java Properties.rb +3 -3
  350. data/config/syntax/Java Server Page (JSP).rb +5 -4
  351. data/config/syntax/Java.rb +40 -33
  352. data/config/syntax/JavaDoc.rb +24 -22
  353. data/config/syntax/JavaScript (Rails).rb +1 -1
  354. data/config/syntax/JavaScript.rb +41 -34
  355. data/config/syntax/Javascript YUI.rb +109 -101
  356. data/config/syntax/LaTeX Beamer.rb +3 -3
  357. data/config/syntax/LaTeX Log.rb +3 -3
  358. data/config/syntax/LaTeX Memoir.rb +7 -5
  359. data/config/syntax/LaTeX Rdaemon.rb +1 -1
  360. data/config/syntax/LaTeX.rb +52 -47
  361. data/config/syntax/Language Grammar.rb +58 -55
  362. data/config/syntax/Lex-Flex.rb +13 -13
  363. data/config/syntax/Lighttpd.rb +7 -7
  364. data/config/syntax/Lisp.rb +6 -5
  365. data/config/syntax/Literate Haskell.rb +2 -2
  366. data/config/syntax/Logo.rb +4 -4
  367. data/config/syntax/Logtalk.rb +64 -49
  368. data/config/syntax/Lua.rb +12 -12
  369. data/config/syntax/MATLAB.rb +71 -70
  370. data/config/syntax/MEL.rb +16 -15
  371. data/config/syntax/MIPS Assembler.rb +11 -11
  372. data/config/syntax/MacPorts Portfile.rb +16 -15
  373. data/config/syntax/Mail.rb +5 -4
  374. data/config/syntax/Makefile.rb +3 -3
  375. data/config/syntax/Man.rb +2 -2
  376. data/config/syntax/Markdown.rb +440 -0
  377. data/config/syntax/Maven POM.rb +17 -16
  378. data/config/syntax/Mediawiki.rb +46 -46
  379. data/config/syntax/Modula-3.rb +7 -6
  380. data/config/syntax/MoinMoin.rb +16 -16
  381. data/config/syntax/MooTools.rb +75 -65
  382. data/config/syntax/Movable Type (MT only).rb +18 -18
  383. data/config/syntax/Movable Type.rb +20 -20
  384. data/config/syntax/MultiMarkdown.rb +35 -0
  385. data/config/syntax/Nemerle.rb +12 -12
  386. data/config/syntax/OCaml.rb +79 -71
  387. data/config/syntax/OCamllex.rb +14 -14
  388. data/config/syntax/OCamlyacc.rb +14 -12
  389. data/config/syntax/Objective-C++.rb +2 -2
  390. data/config/syntax/Objective-C.rb +76 -70
  391. data/config/syntax/Objective-J.rb +30 -29
  392. data/config/syntax/Octave.rb +27 -27
  393. data/config/syntax/OpenGL.rb +4 -4
  394. data/config/syntax/PHP.rb +1154 -0
  395. data/config/syntax/Pascal.rb +8 -8
  396. data/config/syntax/Perl HTML-Template.rb +5 -5
  397. data/config/syntax/Perl.rb +80 -76
  398. data/config/syntax/Plain Text.rb +5 -5
  399. data/config/syntax/Postscript.rb +6 -6
  400. data/config/syntax/Processing.rb +20 -20
  401. data/config/syntax/Prolog.rb +2 -2
  402. data/config/syntax/Property List.rb +50 -47
  403. data/config/syntax/Prototype & Script.aculo.us (JavaScript) Bracketed.rb +15 -13
  404. data/config/syntax/Prototype & Script.aculo.us (JavaScript).rb +9 -8
  405. data/config/syntax/Python Django.rb +6 -6
  406. data/config/syntax/Python.rb +94 -87
  407. data/config/syntax/Quake Style .cfg.rb +4 -4
  408. data/config/syntax/R Console (Rdaemon) Plain.rb +2 -2
  409. data/config/syntax/R Console (Rdaemon).rb +2 -2
  410. data/config/syntax/R.rb +21 -20
  411. data/config/syntax/RSpec.rb +15 -15
  412. data/config/syntax/Ragel.rb +14 -13
  413. data/config/syntax/Rd (R Documentation).rb +4 -4
  414. data/config/syntax/Regular Expressions (Oniguruma).rb +11 -10
  415. data/config/syntax/Regular Expressions (Python).rb +9 -9
  416. data/config/syntax/Release Notes.rb +7 -6
  417. data/config/syntax/Remind.rb +19 -17
  418. data/config/syntax/Rez.rb +10 -9
  419. data/config/syntax/Ruby Haml.rb +11 -11
  420. data/config/syntax/Ruby on Rails.rb +26 -24
  421. data/config/syntax/Ruby.rb +73 -71
  422. data/config/syntax/S5 Slide Show.rb +9 -9
  423. data/config/syntax/SQL.rb +29 -27
  424. data/config/syntax/SSH Config.rb +4 -4
  425. data/config/syntax/SWIG.rb +12 -11
  426. data/config/syntax/SWeave.rb +8 -7
  427. data/config/syntax/Scheme.rb +56 -54
  428. data/config/syntax/Scilab.rb +7 -6
  429. data/config/syntax/Setext.rb +14 -13
  430. data/config/syntax/Shell Script (Bash).rb +42 -42
  431. data/config/syntax/Slate.rb +24 -19
  432. data/config/syntax/Smarty.rb +11 -10
  433. data/config/syntax/Standard ML - CM.rb +2 -2
  434. data/config/syntax/Standard ML.rb +26 -23
  435. data/config/syntax/Strings File.rb +6 -6
  436. data/config/syntax/TSV.rb +2 -2
  437. data/config/syntax/Tcl.rb +10 -9
  438. data/config/syntax/TeX Math.rb +7 -6
  439. data/config/syntax/TeX.rb +7 -7
  440. data/config/syntax/Textile.rb +33 -27
  441. data/config/syntax/Thrift.rb +37 -29
  442. data/config/syntax/Twiki.rb +19 -18
  443. data/config/syntax/Txt2tags.rb +26 -23
  444. data/config/syntax/Vectorscript.rb +9 -7
  445. data/config/syntax/XML strict.rb +6 -4
  446. data/config/syntax/XML.rb +55 -30
  447. data/config/syntax/XSL.rb +5 -5
  448. data/config/syntax/YAML.rb +14 -12
  449. data/config/syntax/camlp4.rb +5 -5
  450. data/config/syntax/iCalendar.rb +3 -3
  451. data/config/syntax/jQuery (JavaScript).rb +9 -9
  452. data/config/syntax/mod_perl.rb +6 -6
  453. data/config/syntax/qmake Project file.rb +16 -15
  454. data/config/syntax/reStructuredText.rb +23 -21
  455. data/config/syntax/svn-commit.tmp.rb +5 -5
  456. data/lib/ver.rb +169 -85
  457. data/lib/ver/action.rb +39 -30
  458. data/lib/ver/buffer.rb +962 -144
  459. data/lib/ver/buffer/frame.rb +23 -0
  460. data/lib/ver/buffer/invalid_trailing_whitespace.rb +17 -0
  461. data/lib/ver/buffer/markup_underline_link.rb +30 -0
  462. data/lib/ver/buffer/matching_brace.rb +22 -0
  463. data/lib/ver/buffer/term.rb +1 -1
  464. data/lib/ver/clipboard.rb +107 -0
  465. data/lib/ver/digraphs.rb +1373 -0
  466. data/lib/ver/entry.rb +54 -43
  467. data/lib/ver/event.rb +335 -0
  468. data/lib/ver/exception_view.rb +3 -1
  469. data/lib/ver/executor.rb +7 -7
  470. data/lib/ver/executor/buffer.rb +4 -4
  471. data/lib/ver/executor/encoding.rb +19 -0
  472. data/lib/ver/executor/entry.rb +9 -9
  473. data/lib/ver/executor/fuzzy_file_finder.rb +1 -1
  474. data/lib/ver/executor/label.rb +2 -0
  475. data/lib/ver/executor/method.rb +2 -3
  476. data/lib/ver/help/describe_key.rb +44 -44
  477. data/lib/ver/hover_completion.rb +11 -6
  478. data/lib/ver/keymap.rb +68 -39
  479. data/lib/ver/layout/paned.rb +56 -44
  480. data/lib/ver/layout/toplevel.rb +68 -0
  481. data/lib/ver/layout/vim.rb +919 -0
  482. data/lib/ver/major_mode.rb +49 -49
  483. data/lib/ver/methods.rb +22 -25
  484. data/lib/ver/methods/basic.rb +49 -20
  485. data/lib/ver/methods/bookmark.rb +33 -33
  486. data/lib/ver/methods/clipboard.rb +186 -49
  487. data/lib/ver/methods/completion.rb +5 -5
  488. data/lib/ver/methods/control.rb +47 -66
  489. data/lib/ver/methods/delete.rb +5 -122
  490. data/lib/ver/methods/help.rb +2 -2
  491. data/lib/ver/methods/insert.rb +101 -29
  492. data/lib/ver/methods/layout.rb +62 -64
  493. data/lib/ver/methods/macro.rb +45 -0
  494. data/lib/ver/methods/move.rb +63 -349
  495. data/lib/ver/methods/nano.rb +99 -71
  496. data/lib/ver/methods/open.rb +8 -7
  497. data/lib/ver/methods/preview.rb +34 -14
  498. data/lib/ver/methods/save.rb +194 -163
  499. data/lib/ver/methods/search.rb +169 -81
  500. data/lib/ver/methods/search_and_replace.rb +62 -49
  501. data/lib/ver/methods/selection.rb +26 -54
  502. data/lib/ver/methods/snippet.rb +79 -54
  503. data/lib/ver/methods/undo.rb +12 -16
  504. data/lib/ver/minibuffer.rb +283 -134
  505. data/lib/ver/minor_mode.rb +36 -47
  506. data/lib/ver/mode_resolving.rb +71 -0
  507. data/lib/ver/platform.rb +41 -0
  508. data/lib/ver/plist.rb +16 -4
  509. data/lib/ver/register.rb +86 -0
  510. data/lib/ver/status.rb +44 -6
  511. data/lib/ver/status/battery.rb +1 -1
  512. data/lib/ver/status/buffer_position.rb +2 -2
  513. data/lib/ver/status/diakonos_position.rb +3 -3
  514. data/lib/ver/status/encoding.rb +1 -1
  515. data/lib/ver/status/filename.rb +1 -1
  516. data/lib/ver/status/label.rb +20 -20
  517. data/lib/ver/status/mode.rb +1 -1
  518. data/lib/ver/status/nano_help.rb +3 -14
  519. data/lib/ver/status/nano_position.rb +6 -6
  520. data/lib/ver/status/percent.rb +2 -2
  521. data/lib/ver/status/position.rb +2 -2
  522. data/lib/ver/status/short_filename.rb +1 -1
  523. data/lib/ver/status/syntax.rb +1 -1
  524. data/lib/ver/struct.rb +28 -0
  525. data/lib/ver/syntax/processor.rb +2 -1
  526. data/lib/ver/text.rb +48 -520
  527. data/lib/ver/text/end.rb +14 -0
  528. data/lib/ver/text/index.rb +16 -101
  529. data/lib/ver/text/insert.rb +138 -0
  530. data/lib/ver/text/mark.rb +559 -0
  531. data/lib/ver/text/position.rb +240 -0
  532. data/lib/ver/text/range.rb +74 -0
  533. data/lib/ver/text/selection.rb +402 -0
  534. data/lib/ver/text/selection/block.rb +69 -0
  535. data/lib/ver/text/selection/char.rb +93 -0
  536. data/lib/ver/text/selection/line.rb +64 -0
  537. data/lib/ver/text/tag.rb +322 -0
  538. data/lib/ver/undo.rb +109 -34
  539. data/lib/ver/vendor/eval_completer.rb +184 -0
  540. data/lib/ver/vendor/json_store.rb +23 -0
  541. data/lib/ver/vendor/open3.rb +729 -0
  542. data/lib/ver/vendor/pathname.rb +73 -0
  543. data/lib/ver/vendor/textpow.rb +1 -1
  544. data/lib/ver/version.rb +1 -1
  545. data/lib/ver/widget_event.rb +9 -5
  546. data/lib/ver/widget_major_mode.rb +69 -23
  547. data/spec/helper.rb +124 -8
  548. data/spec/ver/action.rb +160 -46
  549. data/spec/ver/buffer.rb +23 -0
  550. data/spec/ver/clipboard.rb +92 -0
  551. data/spec/ver/keymap.rb +63 -61
  552. data/spec/ver/keymap/diakonos.rb +88 -0
  553. data/spec/ver/keymap/emacs.rb +65 -0
  554. data/spec/ver/keymap/general.rb +98 -0
  555. data/spec/ver/keymap/nano.rb +84 -0
  556. data/spec/ver/keymap/vim.rb +205 -0
  557. data/spec/ver/keymap/vim/changing_text.rb +489 -0
  558. data/spec/ver/keymap/vim/complex_changes.rb +53 -0
  559. data/spec/ver/keymap/vim/copying_and_moving_text.rb +258 -0
  560. data/spec/ver/keymap/vim/deleting_text.rb +188 -0
  561. data/spec/ver/keymap/vim/digraphs.rb +52 -0
  562. data/spec/ver/keymap/vim/external_commands.rb +21 -0
  563. data/spec/ver/keymap/vim/inserting_mode_keys.rb +115 -0
  564. data/spec/ver/keymap/vim/inserting_mode_special.rb +168 -0
  565. data/spec/ver/keymap/vim/inserting_text.rb +108 -0
  566. data/spec/ver/keymap/vim/left_right_motion.rb +120 -0
  567. data/spec/ver/keymap/vim/mark_motion.rb +73 -0
  568. data/spec/ver/keymap/vim/repeating_commands.rb +64 -0
  569. data/spec/ver/keymap/vim/text_object_motion.rb +137 -0
  570. data/spec/ver/keymap/vim/text_objects.rb +101 -0
  571. data/spec/ver/keymap/vim/undo_redo.rb +21 -0
  572. data/spec/ver/keymap/vim/up_down_motion.rb +94 -0
  573. data/spec/ver/keymap/vim/various_motion.rb +33 -0
  574. data/spec/ver/keysyms.rb +13 -0
  575. data/spec/ver/major_mode.rb +37 -37
  576. data/spec/ver/minor_mode.rb +21 -20
  577. data/spec/ver/plugin/smart_autoindent.rb +2 -2
  578. data/spec/ver/text/index.rb +122 -0
  579. data/spec/ver/text/insert.rb +299 -0
  580. data/spec/ver/text/mark.rb +94 -0
  581. data/spec/ver/text/range.rb +71 -0
  582. data/spec/ver/text/selection.rb +315 -0
  583. data/spec/ver/text/tag.rb +93 -0
  584. data/spec/ver/undo.rb +133 -0
  585. data/spec/ver/undo/record_sanitize.rb +85 -0
  586. data/spec/ver/vendor/eval_completer.rb +91 -0
  587. data/spec/ver/widget_major_mode.rb +4 -3
  588. data/ver.gemspec +8 -8
  589. metadata +234 -72
  590. data/.todo +0 -102
  591. data/ROADMAP.textile +0 -187
  592. data/config/snippets/ANTLR.rb +0 -3
  593. data/config/snippets/Bison.rb +0 -3
  594. data/config/snippets/CTags.rb +0 -3
  595. data/config/snippets/CVS.rb +0 -3
  596. data/config/snippets/Darcs.rb +0 -3
  597. data/config/snippets/Diff.rb +0 -3
  598. data/config/snippets/Dylan.rb +0 -3
  599. data/config/snippets/Experimental Wiki.rb +0 -3
  600. data/config/snippets/Experimental.rb +0 -3
  601. data/config/snippets/FileMerge.rb +0 -3
  602. data/config/snippets/GTD2.rb +0 -3
  603. data/config/snippets/GetBundle.rb +0 -3
  604. data/config/snippets/Graphviz.rb +0 -3
  605. data/config/snippets/Hotkey.rb +0 -3
  606. data/config/snippets/Hyperlink Helper.rb +0 -3
  607. data/config/snippets/ImageBrowser.rb +0 -3
  608. data/config/snippets/Inform.rb +0 -3
  609. data/config/snippets/Ini.rb +0 -3
  610. data/config/snippets/Installer.rb +0 -3
  611. data/config/snippets/JSFL.rb +0 -3
  612. data/config/snippets/JSON.rb +0 -3
  613. data/config/snippets/Lex-Flex.rb +0 -3
  614. data/config/snippets/Lighttpd.rb +0 -3
  615. data/config/snippets/MEL.rb +0 -3
  616. data/config/snippets/MacPorts.rb +0 -3
  617. data/config/snippets/Make.rb +0 -3
  618. data/config/snippets/Man Pages.rb +0 -3
  619. data/config/snippets/Math.rb +0 -3
  620. data/config/snippets/Mercurial.rb +0 -3
  621. data/config/snippets/Modula.rb +0 -3
  622. data/config/snippets/Navigation.rb +0 -3
  623. data/config/snippets/OCaml Experimental Completions.rb +0 -3
  624. data/config/snippets/OpenGL.rb +0 -3
  625. data/config/snippets/Outlines.rb +0 -3
  626. data/config/snippets/Perforce.rb +0 -3
  627. data/config/snippets/Perl HTML::Template.rb +0 -27
  628. data/config/snippets/Postscript.rb +0 -3
  629. data/config/snippets/Prolog.rb +0 -3
  630. data/config/snippets/Quake.rb +0 -3
  631. data/config/snippets/R Console (R.app).rb +0 -3
  632. data/config/snippets/Ragel.rb +0 -3
  633. data/config/snippets/Regular Expressions.rb +0 -3
  634. data/config/snippets/Rez.rb +0 -3
  635. data/config/snippets/Ruby Haml.rb +0 -3
  636. data/config/snippets/SCons.rb +0 -3
  637. data/config/snippets/SQL.rb +0 -3
  638. data/config/snippets/SVK.rb +0 -3
  639. data/config/snippets/SWeave.rb +0 -3
  640. data/config/snippets/Scheme.rb +0 -3
  641. data/config/snippets/Subversion.rb +0 -3
  642. data/config/snippets/TODO.rb +0 -3
  643. data/config/snippets/Tabular.rb +0 -3
  644. data/config/snippets/TerminalMate.rb +0 -3
  645. data/config/snippets/TextMate.rb +0 -3
  646. data/config/snippets/Transmit.rb +0 -3
  647. data/config/snippets/Xcode.rb +0 -3
  648. data/config/snippets/iCalendar.rb +0 -3
  649. data/config/snippets/iTerm.rb +0 -3
  650. data/lib/ver/keysyms.rb +0 -104
  651. data/spec/ver/methods/move.rb +0 -150
@@ -8,7 +8,7 @@
8
8
  repository:
9
9
  {build:
10
10
  {patterns:
11
- [{begin: /(<)(build)\s*(>)(?!<\s*\/\2\s*>)/,
11
+ [{begin: /(?<_1><)(?<_2>build)\s*(?<_3>>)(?!<\s*\/\k<_2>\s*>)/,
12
12
  beginCaptures:
13
13
  {0 => {name: "meta.tag.build.begin.xml.pom"},
14
14
  1 => {name: "punctuation.definition.tag.xml.pom"},
@@ -27,7 +27,7 @@
27
27
  {include: "#maven-xml"}]}]},
28
28
  dependencies:
29
29
  {patterns:
30
- [{begin: /(<)(dependencies)\s*(>)(?!<\s*\/\2\s*>)/,
30
+ [{begin: /(?<_1><)(?<_2>dependencies)\s*(?<_3>>)(?!<\s*\/\k<_2>\s*>)/,
31
31
  beginCaptures:
32
32
  {0 => {name: "meta.tag.dependencies.begin.xml.pom"},
33
33
  1 => {name: "punctuation.definition.tag.xml.pom"},
@@ -43,7 +43,7 @@
43
43
  patterns: [{include: "#dependency"}, {include: "#maven-xml"}]}]},
44
44
  dependency:
45
45
  {patterns:
46
- [{begin: /(<)(dependency)\s*(>)(?!<\s*\/\2\s*>)/,
46
+ [{begin: /(?<_1><)(?<_2>dependency)\s*(?<_3>>)(?!<\s*\/\k<_2>\s*>)/,
47
47
  beginCaptures:
48
48
  {0 => {name: "meta.tag.dependency.begin.xml.pom"},
49
49
  1 => {name: "punctuation.definition.tag.xml.pom"},
@@ -63,7 +63,8 @@
63
63
  {include: "#maven-xml"}]}]},
64
64
  distributionManagement:
65
65
  {patterns:
66
- [{begin: /(<)(distributionManagement)\s*(>)(?!<\s*\/\2\s*>)/,
66
+ [{begin:
67
+ /(?<_1><)(?<_2>distributionManagement)\s*(?<_3>>)(?!<\s*\/\k<_2>\s*>)/,
67
68
  beginCaptures:
68
69
  {0 => {name: "meta.tag.distributionManagement.begin.xml.pom"},
69
70
  1 => {name: "punctuation.definition.tag.xml.pom"},
@@ -79,7 +80,7 @@
79
80
  patterns: [{include: "#maven-xml"}]}]},
80
81
  extension:
81
82
  {patterns:
82
- [{begin: /(<)(extension)\s*(>)(?!<\s*\/\2\s*>)/,
83
+ [{begin: /(?<_1><)(?<_2>extension)\s*(?<_3>>)(?!<\s*\/\k<_2>\s*>)/,
83
84
  beginCaptures:
84
85
  {0 => {name: "meta.tag.extension.begin.xml.pom"},
85
86
  1 => {name: "punctuation.definition.tag.xml.pom"},
@@ -99,7 +100,7 @@
99
100
  {include: "#maven-xml"}]}]},
100
101
  extensions:
101
102
  {patterns:
102
- [{begin: /(<)(extensions)\s*(>)(?!<\s*\/\2\s*>)/,
103
+ [{begin: /(?<_1><)(?<_2>extensions)\s*(?<_3>>)(?!<\s*\/\k<_2>\s*>)/,
103
104
  beginCaptures:
104
105
  {0 => {name: "meta.tag.extensions.begin.xml.pom"},
105
106
  1 => {name: "punctuation.definition.tag.xml.pom"},
@@ -116,7 +117,7 @@
116
117
  :"groovy-plugin" =>
117
118
  {patterns:
118
119
  [{begin:
119
- /((<)(artifactId)\s*(>)(?!<\s*\/\2\s*>))(groovy-maven-plugin)((<\/)(artifactId)\s*(>)(?!<\s*\/\2\s*>))/,
120
+ /(?<_1>(?<_2><)(?<_3>artifactId)\s*(?<_4>>)(?!<\s*\/\k<_2>\s*>))(?<_5>groovy-maven-plugin)(?<_6>(?<_7><\/)(?<_8>artifactId)\s*(?<_9>>)(?!<\s*\/\k<_2>\s*>))/,
120
121
  beginCaptures:
121
122
  {0 => {name: "meta.groovy-plugin.identifier.xml.pom"},
122
123
  1 => {name: "meta.tag.artifactId.begin.xml.pom"},
@@ -131,7 +132,7 @@
131
132
  end: "(?=</plugin>)",
132
133
  name: "meta.plugin.groovy-plugin.xml.pom",
133
134
  patterns:
134
- [{begin: /(<)(source)\s*(>)(?!<\s*\/\2\s*>)/,
135
+ [{begin: /(?<_1><)(?<_2>source)\s*(?<_3>>)(?!<\s*\/\k<_2>\s*>)/,
135
136
  beginCaptures:
136
137
  {0 => {name: "meta.tag.plugin.begin.xml.pom"},
137
138
  1 => {name: "punctuation.definition.tag.xml.pom"},
@@ -159,7 +160,7 @@
159
160
  {include: "text.xml"}]},
160
161
  plugin:
161
162
  {patterns:
162
- [{begin: /(<)(plugin)\s*(>)(?!<\s*\/\2\s*>)/,
163
+ [{begin: /(?<_1><)(?<_2>plugin)\s*(?<_3>>)(?!<\s*\/\k<_2>\s*>)/,
163
164
  beginCaptures:
164
165
  {0 => {name: "meta.tag.plugin.begin.xml.pom"},
165
166
  1 => {name: "punctuation.definition.tag.xml.pom"},
@@ -180,7 +181,7 @@
180
181
  {include: "#maven-xml"}]}]},
181
182
  plugins:
182
183
  {patterns:
183
- [{begin: /(<)(plugins)\s*(>)(?!<\s*\/\2\s*>)/,
184
+ [{begin: /(?<_1><)(?<_2>plugins)\s*(?<_3>>)(?!<\s*\/\k<_2>\s*>)/,
184
185
  beginCaptures:
185
186
  {0 => {name: "meta.tag.plugins.begin.xml.pom"},
186
187
  1 => {name: "punctuation.definition.tag.xml.pom"},
@@ -205,7 +206,7 @@
205
206
  {include: "#maven-xml"}]},
206
207
  profile:
207
208
  {patterns:
208
- [{begin: /(<)(profile)\s*(>)(?!<\s*\/\2\s*>)/,
209
+ [{begin: /(?<_1><)(?<_2>profile)\s*(?<_3>>)(?!<\s*\/\k<_2>\s*>)/,
209
210
  beginCaptures:
210
211
  {0 => {name: "meta.tag.profile.begin.xml.pom"},
211
212
  1 => {name: "punctuation.definition.tag.xml.pom"},
@@ -225,7 +226,7 @@
225
226
  {include: "#pom-body"}]}]},
226
227
  profiles:
227
228
  {patterns:
228
- [{begin: /(<)(profiles)\s*(>)(?!<\s*\/\2\s*>)/,
229
+ [{begin: /(?<_1><)(?<_2>profiles)\s*(?<_3>>)(?!<\s*\/\k<_2>\s*>)/,
229
230
  beginCaptures:
230
231
  {0 => {name: "meta.tag.profiles.begin.xml.pom"},
231
232
  1 => {name: "punctuation.definition.tag.xml.pom"},
@@ -241,7 +242,7 @@
241
242
  patterns: [{include: "#profile"}]}]},
242
243
  properties:
243
244
  {patterns:
244
- [{begin: /(<)(properties)\s*(>)(?!<\s*\/\2\s*>)/,
245
+ [{begin: /(?<_1><)(?<_2>properties)\s*(?<_3>>)(?!<\s*\/\k<_2>\s*>)/,
245
246
  beginCaptures:
246
247
  {0 => {name: "meta.tag.properties.begin.xml.pom"},
247
248
  1 => {name: "punctuation.definition.tag.xml.pom"},
@@ -255,7 +256,7 @@
255
256
  3 => {name: "punctuation.definition.tag.xml.pom"}},
256
257
  name: "meta.properties.xml.pom",
257
258
  patterns:
258
- [{begin: /(<)(\w+)\s*(>)(?!<\s*\/\2\s*>)/,
259
+ [{begin: /(?<_1><)(?<_2>\w+)\s*(?<_3>>)(?!<\s*\/\k<_2>\s*>)/,
259
260
  beginCaptures:
260
261
  {0 => {name: "meta.tag.property.begin.xml.pom"},
261
262
  1 => {name: "punctuation.definition.tag.xml.pom"},
@@ -271,7 +272,7 @@
271
272
  {include: "#maven-xml"}]}]},
272
273
  reporting:
273
274
  {patterns:
274
- [{begin: /(<)(reporting)\s*(>)(?!<\s*\/\2\s*>)/,
275
+ [{begin: /(?<_1><)(?<_2>reporting)\s*(?<_3>>)(?!<\s*\/\k<_2>\s*>)/,
275
276
  beginCaptures:
276
277
  {0 => {name: "meta.tag.reporting.begin.xml.pom"},
277
278
  1 => {name: "punctuation.definition.tag.xml.pom"},
@@ -287,7 +288,7 @@
287
288
  patterns: [{include: "#plugins"}, {include: "#maven-xml"}]}]},
288
289
  repositories:
289
290
  {patterns:
290
- [{begin: /(<)(repositories)\s*(>)(?!<\s*\/\2\s*>)/,
291
+ [{begin: /(?<_1><)(?<_2>repositories)\s*(?<_3>>)(?!<\s*\/\k<_2>\s*>)/,
291
292
  beginCaptures:
292
293
  {0 => {name: "meta.tag.repositories.begin.xml.pom"},
293
294
  1 => {name: "punctuation.definition.tag.xml.pom"},
@@ -3,21 +3,21 @@
3
3
  {comment:
4
4
  "\n\t\tThis language grammar tries to handle Mediawiki syntax. Mediawiki\n\t\tsyntax is a mess. This grammar will likely never quite work right.\n\t\tThis is unsurprising as Mediawiki itself has never quite worked right.\n\t\t\n\t\t\t\t--Jacob\n\t\t\n\t\tTODO: lots of fixes still to do:\n\t\t\n\t\t 1. Add a bunch of HTML tags. See the #block and #style sections.\n\t\t 3. Correctly scope all the parser functions and their contents.\n\t\t This on will be complicated, as there are several: expr, if, etc.\n\t\t 4. This is probably the biggest one: get all the lists to scope\n\t\t correctly by type of list. Right now we just scope every list\n\t\t as a list, and do not worry about what happens beyond that.\n\t\t Eventually we want to do numbered and unnumbered separately, etc.\n\t\t 5. Get some kind of folding by heading. Maybe it should just fold\n\t\t to the next header, no matter which level it is. Then we can\n\t\t make a contents just by folding everything. Not completely sure\n\t\t\tthis is possible with current TM folding.\n\t\t 7. Make sure that illegal things are correctly scoped illegal.\n\t\t This is non-trivial, and has several parts\n\t\t \n\t\t - Bold/italic are based on brain-dead heuristics. I want to\n\t\t be stricter than Mediawiki on this one. Also, we should\n\t\t scope as illegal when for instance a new heading starts\n\t\t before an italic has been closed.\n\t\t - Templates... these will be pretty tough to do, as they can\n\t\t be so flexible.\n\t\t - \n\t\t\n\t\t 9. <timeline></timeline> tag. I am really not sure this one is\n\t\t worth trying to do\n\t\t10. Figure out a better scope for meta.function-call. Infininight\n\t\t suggests entity.name.function.call, to be paralleled by\n\t\t entity.name.function.definition. I am not completly sure I like\n\t\t that solution, but it is probably better than meta.function-call\n\t\t\n\t\t\n\t\tTODO items not closely related to the grammar:\n\t\t\n\t\t 2. Add a drop command for links/images, add keyboard shortcuts for\n\t\t them too\n\t\t 3. Make sure all the preference items are sorted out, for instance\n\t\t smart typing pairs, indent patterns, etc.\n\t\t 4. Commands to do bold/italic, and maybe things like big/small \n\t\t 5. \n\t\t\n\t\tFINISHED:\n\t\t 2. Add support for LaTeX math mode inside of <math></math> tags.\n\t\t 1. Add a command for new list item. This one is trivial\n\t\t 6. Get the symbol list working on headings. Trivial.\n\t\t 8. <gallery></gallery> tag. This one adds some complication, but\n\t\t is worth supporting.\n\t\t \n\t",
5
5
  fileTypes: ["mediawiki", "wikipedia", "wiki"],
6
- foldingStartMarker: /^(=+)/,
7
- foldingStopMarker: /^.*$(?=\n(=+)|(?!\n))/,
6
+ foldingStartMarker: /^(?<_1>=+)/,
7
+ foldingStopMarker: /^.*$(?=\n(?<_1>=+)|(?!\n))/,
8
8
  keyEquivalent: "^~M",
9
9
  name: "Mediawiki",
10
10
  patterns: [{include: "#block"}, {include: "#inline"}],
11
11
  repository:
12
12
  {block:
13
13
  {patterns:
14
- [{begin: /^\s*(?i)(#redirect)/,
14
+ [{begin: /^\s*(?i)(?<_1>#redirect)/,
15
15
  beginCaptures: {1 => {name: "keyword.control.redirect.mediawiki"}},
16
16
  end: "\\n",
17
17
  name: "meta.redirect.mediawiki",
18
18
  patterns: [{include: "#link"}]},
19
19
  {match: /^=+\s*$/, name: "markup.heading.mediawiki"},
20
- {begin: /^(=+)(?=.*\1\s*$)/,
20
+ {begin: /^(?<_1>=+)(?=.*\k<_1>\s*$)/,
21
21
  comment:
22
22
  "\n\t\t\t\t\t\tThis matches lines which begin and end with some\n\t\t\t\t\t number of “=” marks. If they are mismatched, then\n\t\t\t\t\t interior “=” marks will be treated as invalid.\n\t\t\t\t ",
23
23
  end: "\\1\\s*$\\n?",
@@ -28,7 +28,7 @@
28
28
  {include: "#inline"}]},
29
29
  {comment:
30
30
  "\n\t\t\t\t\t\tA separator is made up of 4 or more -s alone on a\n\t\t\t\t\t\tline by themselves.\n\t\t\t\t\t",
31
- match: /^-{4,}[ \t]*($\n)?/,
31
+ match: /^-{4,}[ \t]*(?<_1>$\n)?/,
32
32
  name: "meta.separator.mediawiki"},
33
33
  {begin: /^ (?=\s*\S)/,
34
34
  comment:
@@ -36,7 +36,7 @@
36
36
  end: "^(?=[^ ])",
37
37
  name: "markup.raw.block.mediawiki",
38
38
  patterns: [{include: "#inline"}]},
39
- {begin: /^([#*:;])/,
39
+ {begin: /^(?<_1>[#*:;])/,
40
40
  comment:
41
41
  "\n\t\t\t\t\t\tThis is preliminary. Eventually it would be nice\n\t\t\t\t\t\tto scope each type of list differently, and even to\n\t\t\t\t\t\tdo scopes of nested lists. There are 4 main things\n\t\t\t\t\t\twhich will be scoped as lists:\n\t\t\t\t\t\t\n\t\t\t\t\t\t - numbered lists (#)\n\t\t\t\t\t\t - unnumbered lists (*)\n\t\t\t\t\t\t - definition lists (; :)\n\t\t\t\t\t\t - indented paragraphs, as used on talk pages (:)\n\t\t\t\t\t\t\n\t\t\t\t\t\tthis last one might not even be scoped as a list in\n\t\t\t\t\t\tthe ideal case. It is fine as a list for now,\n\t\t\t\t\t\thowever.\n\t\t\t\t\t",
42
42
  end: "^(?!\\1)",
@@ -54,17 +54,17 @@
54
54
  {comment:
55
55
  "\n\t\t\t\tThe available block HTML tags supported are:\n\t\t\t\t\n\t\t\t\t * blockquote, center, pre, div, hr, p\n\t\t\t\t * tables: table, th, tr, td, caption\n\t\t\t\t * lists: ul, ol, li\n\t\t\t\t * definition lists: dl, dt, dd\n\t\t\t\t * headers: h1, h2, h3, h4, h5, h6\n\t\t\t\t * br\n\t\t\t",
56
56
  patterns:
57
- [{begin: /(<math>)/,
57
+ [{begin: /(?<_1><math>)/,
58
58
  captures: {1 => {name: "meta.tag.inline.math.mediawiki"}},
59
59
  contentName: "source.math.tex.embedded.mediawiki",
60
60
  end: "(</math>)",
61
61
  patterns: [{include: "text.tex.math"}]},
62
- {begin: /(<ref>)/,
62
+ {begin: /(?<_1><ref>)/,
63
63
  captures: {1 => {name: "meta.tag.inline.ref.mediawiki"}},
64
64
  contentName: "meta.reference.content.mediawiki",
65
65
  end: "(</ref>)",
66
66
  patterns: [{include: "#inline"}]},
67
- {begin: /(<gallery>)/,
67
+ {begin: /(?<_1><gallery>)/,
68
68
  captures: {1 => {name: "meta.tag.inline.ref.mediawiki"}},
69
69
  contentName: "meta.gallery.mediawiki",
70
70
  end: "(</gallery>)",
@@ -72,8 +72,8 @@
72
72
  [{begin:
73
73
  /(?x)
74
74
  ^(?!\s*\n) # not an empty line
75
- ( [ ]*(((i|I)mage)(:)) # spaces, image, colon
76
- ([^\[\]|]+) # anything
75
+ (?<_1> [ ]*(?<_2>(?<_3>(?<_4>i|I)mage)(?<_5>:)) # spaces, image, colon
76
+ (?<_6>[^\[\]|]+) # anything
77
77
  (?<!\s)[ ]* # spaces
78
78
  )?
79
79
  /,
@@ -84,7 +84,7 @@
84
84
  end: "\\n",
85
85
  name: "meta.item.gallery.mediawiki",
86
86
  patterns:
87
- [{begin: /^(?!\|)|(\|)/,
87
+ [{begin: /^(?!\|)|(?<_1>\|)/,
88
88
  beginCaptures:
89
89
  {1 => {name: "punctuation.fix_this_later.pipe.mediawiki"}},
90
90
  contentName: "string.other.title.gallery.mediawiki",
@@ -104,7 +104,7 @@
104
104
  {comment:
105
105
  "\n\t\t\t\tMediawiki supports Unicode, so these should not usually be\n\t\t\t\tnecessary, but they do show up on pages from time to time.\n\t\t\t",
106
106
  patterns:
107
- [{match: /&([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+);/,
107
+ [{match: /&(?<_1>[a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+);/,
108
108
  name: "constant.character.entity.html.mediawiki"},
109
109
  {match: /&/, name: "invalid.illegal.bad-ampersand.html.mediawiki"}]},
110
110
  inline:
@@ -112,7 +112,7 @@
112
112
  [{captures:
113
113
  {1 => {name: "constant.other.date-time.mediawiki"},
114
114
  2 => {name: "invalid.illegal.too-many-tildes.mediawiki"}},
115
- match: /(~~~~~)(~{0,2})(?!~)/},
115
+ match: /(?<_1>~~~~~)(?<_2>~{0,2})(?!~)/},
116
116
  {comment: "3 ~s for sig, 4 for sig + timestamp",
117
117
  match: /~~~~?/,
118
118
  name: "constant.other.signature.mediawiki"},
@@ -126,9 +126,9 @@
126
126
  [{applyEndPatternLast: 1,
127
127
  begin:
128
128
  /(?x:
129
- (\[\[) # opening brackets
130
- ( [ ]*(((i|I)mage)(:)) # spaces, image, colon
131
- ([^\[\]|]+) # anything
129
+ (?<_1>\[\[) # opening brackets
130
+ (?<_2> [ ]*(?<_3>(?<_4>(?<_5>i|I)mage)(?<_6>:)) # spaces, image, colon
131
+ (?<_7>[^\[\]|]+) # anything
132
132
  (?<!\s)[ ]* # spaces
133
133
  )
134
134
  )/,
@@ -152,22 +152,22 @@
152
152
  5 => {name: "constant.other.unit.mediawiki"}},
153
153
  match:
154
154
  /(?x)
155
- (\|)[ ]*
156
- ( (thumb|thumbnail|frame)
157
- |(right|left|center|none)
158
- |([0-9]+)(px)
155
+ (?<_1>\|)[ ]*
156
+ (?<_2> (?<_3>thumb|thumbnail|frame)
157
+ |(?<_4>right|left|center|none)
158
+ |(?<_5>[0-9]+)(?<_6>px)
159
159
  )[ ]*
160
160
  /},
161
161
  {match: /\|/, name: "punctuation.fix_this_later.pipe.mediawiki"},
162
162
  {include: "#style_in_link"}]},
163
163
  {begin:
164
164
  /(?x:
165
- (\[\[) # opening brackets
166
- (:)? # colon to suppress image or category?
167
- ((\s+):[^\[\]]*(?=\]\]))? # a colon after spaces is invalid
165
+ (?<_1>\[\[) # opening brackets
166
+ (?<_2>:)? # colon to suppress image or category?
167
+ (?<_3>(?<_4>\s+):[^\[\]]*(?=\]\]))? # a colon after spaces is invalid
168
168
  [ ]* # spaces
169
- ( (([^\[\]|]+)(:))? # namespace
170
- ([^\[\]|]+)(?<!\s)[ ]* # link name
169
+ (?<_5> (?<_6>(?<_7>[^\[\]|]+)(?<_8>:))? # namespace
170
+ (?<_9>[^\[\]|]+)(?<!\s)[ ]* # link name
171
171
  )?
172
172
  )/,
173
173
  beginCaptures:
@@ -185,7 +185,7 @@
185
185
  {2 => {name: "string.other.title.link.wiki-link.mediawiki"}},
186
186
  name: "meta.link.wiki.mediawiki",
187
187
  patterns: [{include: "#style_in_link"}]},
188
- {begin: /\[(\S+)\s*(?=[^\]]*\])/,
188
+ {begin: /\[(?<_1>\S+)\s*(?=[^\]]*\])/,
189
189
  beginCaptures:
190
190
  {1 => {name: "markup.underline.link.external.mediawiki"}},
191
191
  contentName: "string.other.title.link.external.mediawiki",
@@ -193,7 +193,7 @@
193
193
  name: "meta.link.inline.external.mediawiki",
194
194
  patterns: [{include: "#style_in_link"}]},
195
195
  {match:
196
- /((https?|ftp|file):\/\/|mailto:)[-:@a-zA-Z0-9_.~%+\/?=&#]+(?<![.?:])/,
196
+ /(?<_1>(?<_2>https?|ftp|file):\/\/|mailto:)[-:@a-zA-Z0-9_.~%+\/?=&#]+(?<![.?:])/,
197
197
  name: "markup.underline.link.external.mediawiki"}]},
198
198
  style:
199
199
  {comment:
@@ -207,33 +207,33 @@
207
207
  end: "''(?!'[^'])",
208
208
  name: "markup.italic.mediawiki",
209
209
  patterns: [{include: "#inline"}]},
210
- {begin: /(<(b|strong)>)/,
210
+ {begin: /(?<_1><(?<_2>b|strong)>)/,
211
211
  captures: {1 => {name: "meta.tag.inline.bold.html.mediawiki"}},
212
212
  contentName: "markup.bold.html.mediawiki",
213
213
  end: "(</\\2>)",
214
214
  patterns: [{include: "#inline"}]},
215
- {begin: /(<(i|em)>)/,
215
+ {begin: /(?<_1><(?<_2>i|em)>)/,
216
216
  captures: {1 => {name: "meta.tag.inline.italic.html.mediawiki"}},
217
217
  contentName: "markup.italic.html.mediawiki",
218
218
  end: "(</\\2>)",
219
219
  patterns: [{include: "#inline"}]},
220
- {begin: /(<(s|strike)>)/,
220
+ {begin: /(?<_1><(?<_2>s|strike)>)/,
221
221
  captures:
222
222
  {1 => {name: "meta.tag.inline.strikethrough.html.mediawiki"}},
223
223
  contentName: "markup.other.strikethrough.html.mediawiki",
224
224
  end: "(</\\2>)",
225
225
  patterns: [{include: "#inline"}]},
226
- {begin: /(<(u)>)/,
226
+ {begin: /(?<_1><(?<_2>u)>)/,
227
227
  captures: {1 => {name: "meta.tag.inline.underline.html.mediawiki"}},
228
228
  contentName: "markup.underline.html.mediawiki",
229
229
  end: "(</\\2>)",
230
230
  patterns: [{include: "#inline"}]},
231
- {begin: /(<(tt|code)>)/,
231
+ {begin: /(?<_1><(?<_2>tt|code)>)/,
232
232
  captures: {1 => {name: "meta.tag.inline.raw.html.mediawiki"}},
233
233
  contentName: "markup.raw.html.mediawiki",
234
234
  end: "(</\\2>)",
235
235
  patterns: [{include: "#inline"}]},
236
- {begin: /(<(big|small|sub|sup)>)/,
236
+ {begin: /(?<_1><(?<_2>big|small|sub|sup)>)/,
237
237
  captures: {1 => {name: "meta.tag.inline.any.html.mediawiki"}},
238
238
  contentName: "markup.other.inline-styles.html.mediawiki",
239
239
  end: "(</\\2>)",
@@ -248,33 +248,33 @@
248
248
  end: "''",
249
249
  name: "markup.italic.mediawiki",
250
250
  patterns: [{include: "#style_in_link"}]},
251
- {begin: /(<(b|strong)>)/,
251
+ {begin: /(?<_1><(?<_2>b|strong)>)/,
252
252
  captures: {1 => {name: "meta.tag.inline.bold.html.mediawiki"}},
253
253
  contentName: "markup.bold.html.mediawiki",
254
254
  end: "(</\\2>)",
255
255
  patterns: [{include: "#style_in_link"}]},
256
- {begin: /(<(i|em)>)/,
256
+ {begin: /(?<_1><(?<_2>i|em)>)/,
257
257
  captures: {1 => {name: "meta.tag.inline.italic.html.mediawiki"}},
258
258
  contentName: "markup.italic.html.mediawiki",
259
259
  end: "(</\\2>)",
260
260
  patterns: [{include: "#style_in_link"}]},
261
- {begin: /(<(s|strike)>)/,
261
+ {begin: /(?<_1><(?<_2>s|strike)>)/,
262
262
  captures:
263
263
  {1 => {name: "meta.tag.inline.strikethrough.html.mediawiki"}},
264
264
  contentName: "markup.other.strikethrough.html.mediawiki",
265
265
  end: "(</\\2>)",
266
266
  patterns: [{include: "#style_in_link"}]},
267
- {begin: /(<(u)>)/,
267
+ {begin: /(?<_1><(?<_2>u)>)/,
268
268
  captures: {1 => {name: "meta.tag.inline.underline.html.mediawiki"}},
269
269
  contentName: "markup.underline.html.mediawiki",
270
270
  end: "(</\\2>)",
271
271
  patterns: [{include: "#style_in_link"}]},
272
- {begin: /(<(tt|code)>)/,
272
+ {begin: /(?<_1><(?<_2>tt|code)>)/,
273
273
  captures: {1 => {name: "meta.tag.inline.raw.html.mediawiki"}},
274
274
  contentName: "markup.raw.html.mediawiki",
275
275
  end: "(</\\2>)",
276
276
  patterns: [{include: "#style_in_link"}]},
277
- {begin: /(<(big|small|sub|sup)>)/,
277
+ {begin: /(?<_1><(?<_2>big|small|sub|sup)>)/,
278
278
  captures: {1 => {name: "meta.tag.inline.any.html.mediawiki"}},
279
279
  contentName: "markup.other.inline-styles.html.mediawiki",
280
280
  end: "(</\\2>)",
@@ -301,12 +301,12 @@
301
301
  patterns:
302
302
  [{captures:
303
303
  {1 => {name: "variable.parameter.template.numeric.mediawiki"}},
304
- match: /{{{[ ]*([0-9]+)[ ]*}}}/,
304
+ match: /{{{[ ]*(?<_1>[0-9]+)[ ]*}}}/,
305
305
  name: "meta.template-parameter.mediawiki"},
306
306
  {captures: {1 => {name: "variable.parameter.template.named.mediawiki"}},
307
- match: /{{{[ ]*(.*?)[ ]*}}}/,
307
+ match: /{{{[ ]*(?<_1>.*?)[ ]*}}}/,
308
308
  name: "meta.template-parameter.mediawiki"},
309
- {begin: /({{)(?=[ ]*#)/,
309
+ {begin: /(?<_1>{{)(?=[ ]*#)/,
310
310
  beginCaptures:
311
311
  {1 => {name: "punctuation.fix_this_later.template.mediawiki"},
312
312
  2 => {name: "meta.function-call.template.mediawiki"}},
@@ -317,7 +317,7 @@
317
317
  {1 => {name: "punctuation.fix_this_later.template.mediawiki"}},
318
318
  name: "meta.template.parser-function.mediawiki",
319
319
  patterns: [{include: "#inline"}]},
320
- {begin: /({{)([^{}\|]+)?/,
320
+ {begin: /(?<_1>{{)(?<_2>[^{}\|]+)?/,
321
321
  beginCaptures:
322
322
  {1 => {name: "punctuation.fix_this_later.template.mediawiki"},
323
323
  2 => {name: "meta.function-call.template.mediawiki"}},
@@ -329,13 +329,13 @@
329
329
  name: "meta.template.mediawiki",
330
330
  patterns:
331
331
  [{include: "#comments"},
332
- {begin: /(\|)\s*(=)/,
332
+ {begin: /(?<_1>\|)\s*(?<_2>=)/,
333
333
  beginCaptures:
334
334
  {1 => {name: "punctuation.fix_this_later.pipe.mediawiki"},
335
335
  2 => {name: "punctuation.fix_this_later.equals-sign.mediawiki"}},
336
336
  contentName: "comment.block.template-hack.mediawiki",
337
337
  end: "(?=[|}])"},
338
- {begin: /(\|)(([^{}\|=]+)(=))?/,
338
+ {begin: /(?<_1>\|)(?<_2>(?<_3>[^{}\|=]+)(?<_4>=))?/,
339
339
  beginCaptures:
340
340
  {1 => {name: "punctuation.fix_this_later.pipe.mediawiki"},
341
341
  2 => {name: "variable.parameter.template.mediawiki"},
@@ -5,14 +5,15 @@
5
5
  name: "Modula-3",
6
6
  patterns:
7
7
  [{match:
8
- /\b(ANY|ARRAY|AS|BEGIN|BITS|BRANDED|BY|CASE|CONST|DIV|DO|ELSE|ELSIF|END|EVAL|EXCEPT|EXCEPTION|EXIT|EXPORTS|FINALLY|FOR|FROM|GENERIC|IF|IMPORT|INTERFACE|LOCK|LOOP|METHODS|MOD|MODULE|OBJECT|OF|OVERRIDES|PROCEDURE|RAISE|RAISES|READONLY|RECORD|REF|REPEAT|RETURN|REVEAL|ROOT|SET|THEN|TO|TRY|TYPE|TYPECASE|UNSAFE|UNTIL|UNTRACED|VALUE|VAR|WHILE|WITH|IN|NOT|AND|OR)\b/,
8
+ /\b(?<_1>ANY|ARRAY|AS|BEGIN|BITS|BRANDED|BY|CASE|CONST|DIV|DO|ELSE|ELSIF|END|EVAL|EXCEPT|EXCEPTION|EXIT|EXPORTS|FINALLY|FOR|FROM|GENERIC|IF|IMPORT|INTERFACE|LOCK|LOOP|METHODS|MOD|MODULE|OBJECT|OF|OVERRIDES|PROCEDURE|RAISE|RAISES|READONLY|RECORD|REF|REPEAT|RETURN|REVEAL|ROOT|SET|THEN|TO|TRY|TYPE|TYPECASE|UNSAFE|UNTIL|UNTRACED|VALUE|VAR|WHILE|WITH|IN|NOT|AND|OR)\b/,
9
9
  name: "keyword.other.modula-3"},
10
10
  {match:
11
- /\b(ABS|ADDRESS|ADR|ADRSIZE|BITSIZE|BOOLEAN|BYTESIZE|CARDINAL|CEILING|CHAR|DEC|DISPOSE|EXTENDED|FIRST|FLOAT|FLOOR|INC|INTEGER|ISTYPE|LAST|LONGREAL|LOOPHOLE|MAX|MIN|MUTEX|NARROW|NEW|NUMBER|ORD|REAL|REFANY|ROUND|SUBARRAY|TEXT|TRUNC|TYPECODE|VAL)\b/,
11
+ /\b(?<_1>ABS|ADDRESS|ADR|ADRSIZE|BITSIZE|BOOLEAN|BYTESIZE|CARDINAL|CEILING|CHAR|DEC|DISPOSE|EXTENDED|FIRST|FLOAT|FLOOR|INC|INTEGER|ISTYPE|LAST|LONGREAL|LOOPHOLE|MAX|MIN|MUTEX|NARROW|NEW|NUMBER|ORD|REAL|REFANY|ROUND|SUBARRAY|TEXT|TRUNC|TYPECODE|VAL)\b/,
12
12
  name: "storage.type.modula-3"},
13
- {match: /\b(FALSE|NIL|NULL|TRUE)\b/, name: "constant.language.modula-3"},
13
+ {match: /\b(?<_1>FALSE|NIL|NULL|TRUE)\b/,
14
+ name: "constant.language.modula-3"},
14
15
  {match:
15
- /\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\.?[0-9]*)|(\.[0-9]+))((e|E)(\+|-)?[0-9]+)?)(L|l|UL|ul|u|U|F|f|ll|LL|ull|ULL)?\b/,
16
+ /\b(?<_1>(?<_2>0(?<_3>x|X)[0-9a-fA-F]*)|(?<_4>(?<_5>[0-9]+\.?[0-9]*)|(?<_6>\.[0-9]+))(?<_7>(?<_8>e|E)(?<_9>\+|-)?[0-9]+)?)(?<_10>L|l|UL|ul|u|U|F|f|ll|LL|ull|ULL)?\b/,
16
17
  name: "constant.numeric.modula-3"},
17
18
  {begin: /'/,
18
19
  beginCaptures:
@@ -21,7 +22,7 @@
21
22
  endCaptures: {0 => {name: "punctuation.definition.string.end.modula-3"}},
22
23
  name: "string.quoted.single.modula-3",
23
24
  patterns:
24
- [{match: /\\([ntrf\\'"]|([0-7]{3}))/,
25
+ [{match: /\\(?<_1>[ntrf\\'"]|(?<_2>[0-7]{3}))/,
25
26
  name: "constant.character.escape.modula-3"}]},
26
27
  {begin: /"/,
27
28
  beginCaptures:
@@ -30,7 +31,7 @@
30
31
  endCaptures: {0 => {name: "punctuation.definition.string.end.modula-3"}},
31
32
  name: "string.quoted.double.modula-3",
32
33
  patterns:
33
- [{match: /\\([ntrf\\'"]|([0-7]{3}))/,
34
+ [{match: /\\(?<_1>[ntrf\\'"]|(?<_2>[0-7]{3}))/,
34
35
  name: "constant.character.escape.modula-3"}]},
35
36
  {begin: /\(\*/,
36
37
  captures: {0 => {name: "punctuation.definition.comment.modula-3"}},