ver 2009.10.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (188) hide show
  1. data/CHANGELOG +1404 -0
  2. data/MANIFEST +187 -0
  3. data/Rakefile +30 -0
  4. data/TODO +169 -0
  5. data/bin/ver +19 -0
  6. data/config/detect.rb +109 -0
  7. data/config/keymap/vim.rb +239 -0
  8. data/config/rc.rb +0 -0
  9. data/config/scratch +3 -0
  10. data/config/syntax/ANTLR.json +275 -0
  11. data/config/syntax/ASP VB.net.json +228 -0
  12. data/config/syntax/ASP.json +135 -0
  13. data/config/syntax/ActionScript.json +168 -0
  14. data/config/syntax/Ada.json +108 -0
  15. data/config/syntax/Apache.json +342 -0
  16. data/config/syntax/AppleScript.json +721 -0
  17. data/config/syntax/Bibtex.json +253 -0
  18. data/config/syntax/Blog (HTML).json +47 -0
  19. data/config/syntax/Blog (Markdown).json +50 -0
  20. data/config/syntax/Blog (Text).json +45 -0
  21. data/config/syntax/Blog (Textile).json +45 -0
  22. data/config/syntax/Bulletin Board.json +428 -0
  23. data/config/syntax/C++.json +323 -0
  24. data/config/syntax/C.json +694 -0
  25. data/config/syntax/CSS.json +346 -0
  26. data/config/syntax/DOT.json +79 -0
  27. data/config/syntax/Diff.json +136 -0
  28. data/config/syntax/Dylan.json +104 -0
  29. data/config/syntax/Eiffel.json +128 -0
  30. data/config/syntax/Erlang.json +1636 -0
  31. data/config/syntax/F-Script.json +137 -0
  32. data/config/syntax/FXScript.json +260 -0
  33. data/config/syntax/Gri.json +141 -0
  34. data/config/syntax/HTML (Mason).json +207 -0
  35. data/config/syntax/HTML (Rails).json +52 -0
  36. data/config/syntax/HTML (Tcl).json +42 -0
  37. data/config/syntax/HTML for ASP.net.json +736 -0
  38. data/config/syntax/HTML-ASP.json +45 -0
  39. data/config/syntax/HTML.json +614 -0
  40. data/config/syntax/Haskell.json +407 -0
  41. data/config/syntax/Inform.json +80 -0
  42. data/config/syntax/Ini.json +91 -0
  43. data/config/syntax/Io.json +142 -0
  44. data/config/syntax/Java.json +745 -0
  45. data/config/syntax/JavaProperties.json +42 -0
  46. data/config/syntax/JavaScript.json +446 -0
  47. data/config/syntax/LaTeX Beamer.json +65 -0
  48. data/config/syntax/LaTeX Log.json +88 -0
  49. data/config/syntax/LaTeX.json +962 -0
  50. data/config/syntax/Lighttpd.json +93 -0
  51. data/config/syntax/Lisp.json +101 -0
  52. data/config/syntax/Literate Haskell.json +55 -0
  53. data/config/syntax/Logtalk.json +289 -0
  54. data/config/syntax/Lua.json +146 -0
  55. data/config/syntax/M.json +744 -0
  56. data/config/syntax/MEL.json +161 -0
  57. data/config/syntax/MIPS.json +114 -0
  58. data/config/syntax/Mail.json +224 -0
  59. data/config/syntax/Makefile.json +66 -0
  60. data/config/syntax/Markdown.json +644 -0
  61. data/config/syntax/Modula-3.json +80 -0
  62. data/config/syntax/Movable Type.json +348 -0
  63. data/config/syntax/OCaml.json +1391 -0
  64. data/config/syntax/Objective-C++.json +21 -0
  65. data/config/syntax/OpenGL.json +24 -0
  66. data/config/syntax/PHP.json +2184 -0
  67. data/config/syntax/Pascal.json +128 -0
  68. data/config/syntax/Perl.json +2091 -0
  69. data/config/syntax/Plain text.json +49 -0
  70. data/config/syntax/Processing.json +188 -0
  71. data/config/syntax/Quake3 Config.json +54 -0
  72. data/config/syntax/R.json +157 -0
  73. data/config/syntax/Rez.json +137 -0
  74. data/config/syntax/Ruby on Rails.json +170 -0
  75. data/config/syntax/Ruby.json +1753 -0
  76. data/config/syntax/SQL (Rails).json +31 -0
  77. data/config/syntax/SQL.json +435 -0
  78. data/config/syntax/SWIG.json +96 -0
  79. data/config/syntax/Scheme.json +359 -0
  80. data/config/syntax/Shell-Unix-Generic.json +1198 -0
  81. data/config/syntax/Slate.json +265 -0
  82. data/config/syntax/Smarty.json +110 -0
  83. data/config/syntax/Standard ML.json +322 -0
  84. data/config/syntax/Subversion commit message.json +62 -0
  85. data/config/syntax/Tcl.json +278 -0
  86. data/config/syntax/TeX Math.json +83 -0
  87. data/config/syntax/TeX.json +157 -0
  88. data/config/syntax/Textile.json +273 -0
  89. data/config/syntax/Twiki.json +436 -0
  90. data/config/syntax/Vectorscript.json +97 -0
  91. data/config/syntax/XML strict.json +148 -0
  92. data/config/syntax/XML.json +301 -0
  93. data/config/syntax/XSL.json +96 -0
  94. data/config/syntax/YAML.json +293 -0
  95. data/config/syntax/iCalendar.json +51 -0
  96. data/config/syntax/reStructuredText.json +403 -0
  97. data/config/theme/Active4D.json +260 -0
  98. data/config/theme/All Hallow's Eve.json +171 -0
  99. data/config/theme/Amy.json +359 -0
  100. data/config/theme/BBEdit.json +269 -0
  101. data/config/theme/Bespin.json +322 -0
  102. data/config/theme/Blackboard.json +215 -0
  103. data/config/theme/BoysAndGirls01.json +156 -0
  104. data/config/theme/Brilliance Black.json +1695 -0
  105. data/config/theme/Brilliance Dull.json +1451 -0
  106. data/config/theme/Classic Modified.json +288 -0
  107. data/config/theme/Cobalt.json +345 -0
  108. data/config/theme/Cool Glow.json +215 -0
  109. data/config/theme/Dawn.json +258 -0
  110. data/config/theme/Eiffel.json +270 -0
  111. data/config/theme/Espresso Libre.json +247 -0
  112. data/config/theme/Fluidvision.json +272 -0
  113. data/config/theme/IDLE.json +159 -0
  114. data/config/theme/LAZY.json +178 -0
  115. data/config/theme/Mac Classic.json +277 -0
  116. data/config/theme/MagicWB (Amiga).json +231 -0
  117. data/config/theme/Merbivore Soft.json +181 -0
  118. data/config/theme/Merbivore.json +181 -0
  119. data/config/theme/Monokai.json +177 -0
  120. data/config/theme/Notepad2.json +166 -0
  121. data/config/theme/Pastels on Dark.json +437 -0
  122. data/config/theme/RubyBlue.json +226 -0
  123. data/config/theme/Sin City 2.json +361 -0
  124. data/config/theme/Slate.json +270 -0
  125. data/config/theme/Slush & Poppies.json +232 -0
  126. data/config/theme/SpaceCadet.json +143 -0
  127. data/config/theme/Sunburst.json +415 -0
  128. data/config/theme/Twilight BG FG.json +633 -0
  129. data/config/theme/Twilight.json +321 -0
  130. data/config/theme/Whys Poignant.json +119 -0
  131. data/config/theme/Zenburnesque.json +237 -0
  132. data/config/theme/barf.json +155 -0
  133. data/config/theme/fake.json +418 -0
  134. data/config/theme/happydeluxe.json +114 -0
  135. data/config/theme/iLife 05.json +393 -0
  136. data/config/theme/iPlastic.json +177 -0
  137. data/config/theme/mintBlue Dark.json +414 -0
  138. data/config/theme/mintBlue.json +415 -0
  139. data/config/theme/monoindustrial.json +276 -0
  140. data/config/theme/starlight.json +67 -0
  141. data/config/tutorial +74 -0
  142. data/config/welcome +115 -0
  143. data/help/index.verh +14 -0
  144. data/lib/ver.rb +156 -0
  145. data/lib/ver/entry.rb +97 -0
  146. data/lib/ver/keymap.rb +96 -0
  147. data/lib/ver/layout.rb +107 -0
  148. data/lib/ver/methods.rb +19 -0
  149. data/lib/ver/methods/completion.rb +116 -0
  150. data/lib/ver/methods/control.rb +340 -0
  151. data/lib/ver/methods/insert.rb +6 -0
  152. data/lib/ver/methods/move.rb +65 -0
  153. data/lib/ver/methods/search.rb +33 -0
  154. data/lib/ver/methods/select.rb +145 -0
  155. data/lib/ver/methods/views.rb +21 -0
  156. data/lib/ver/mode.rb +160 -0
  157. data/lib/ver/options.rb +207 -0
  158. data/lib/ver/plist.rb +106 -0
  159. data/lib/ver/status.rb +67 -0
  160. data/lib/ver/syntax.rb +68 -0
  161. data/lib/ver/syntax/detector.rb +53 -0
  162. data/lib/ver/syntax/processor.rb +48 -0
  163. data/lib/ver/text.rb +374 -0
  164. data/lib/ver/textpow.rb +357 -0
  165. data/lib/ver/theme.rb +162 -0
  166. data/lib/ver/vendor/fuzzy_file_finder.rb +340 -0
  167. data/lib/ver/view.rb +163 -0
  168. data/lib/ver/view/entry.rb +28 -0
  169. data/lib/ver/view/list.rb +137 -0
  170. data/lib/ver/view/list/buffer.rb +27 -0
  171. data/lib/ver/view/list/fuzzy_file_finder.rb +44 -0
  172. data/lib/ver/view/list/syntax.rb +13 -0
  173. data/lib/ver/view/list/theme.rb +13 -0
  174. data/spec/keymap.rb +224 -0
  175. data/tasks/bacon.rake +49 -0
  176. data/tasks/changelog.rake +18 -0
  177. data/tasks/gem.rake +22 -0
  178. data/tasks/gem_installer.rake +76 -0
  179. data/tasks/grancher.rake +12 -0
  180. data/tasks/install_dependencies.rake +6 -0
  181. data/tasks/manifest.rake +4 -0
  182. data/tasks/plist2json.rake +35 -0
  183. data/tasks/rcov.rake +18 -0
  184. data/tasks/release.rake +12 -0
  185. data/tasks/reversion.rake +8 -0
  186. data/tasks/syntax_list.rake +31 -0
  187. data/ver.gemspec +29 -0
  188. metadata +241 -0
@@ -0,0 +1,62 @@
1
+ {
2
+ "fileTypes": [
3
+ "svn-commit.tmp",
4
+ "svn-commit.2.tmp"
5
+ ],
6
+ "name": "svn-commit.tmp",
7
+ "patterns": [
8
+ {
9
+ "captures": {
10
+ "1": {
11
+ "name": "punctuation.definition.item.subversion-commit"
12
+ }
13
+ },
14
+ "match": "^\\s*(\u2022).*$\\n?",
15
+ "name": "meta.bullet-point.strong"
16
+ },
17
+ {
18
+ "captures": {
19
+ "1": {
20
+ "name": "punctuation.definition.item.subversion-commit"
21
+ }
22
+ },
23
+ "match": "^\\s*(\u00b7).*$\\n?",
24
+ "name": "meta.bullet-point.light"
25
+ },
26
+ {
27
+ "captures": {
28
+ "1": {
29
+ "name": "punctuation.definition.item.subversion-commit"
30
+ }
31
+ },
32
+ "match": "^\\s*(\\*).*$\\n?",
33
+ "name": "meta.bullet-point.star"
34
+ },
35
+ {
36
+ "begin": "(^--(This line, and those below, will be ignored| Diese und die folgenden Zeilen werden ignoriert )--$\\n?)",
37
+ "beginCaptures": {
38
+ "1": {
39
+ "name": "meta.separator.svn"
40
+ }
41
+ },
42
+ "end": "^--not gonna happen--$",
43
+ "name": "meta.scope.changed-files.svn",
44
+ "patterns": [
45
+ {
46
+ "match": "^A\\s+.*$\\n?",
47
+ "name": "markup.inserted.svn"
48
+ },
49
+ {
50
+ "match": "^(M|.M)\\s+.*$\\n?",
51
+ "name": "markup.changed.svn"
52
+ },
53
+ {
54
+ "match": "^D\\s+.*$\\n?",
55
+ "name": "markup.deleted.svn"
56
+ }
57
+ ]
58
+ }
59
+ ],
60
+ "scopeName": "text.subversion-commit",
61
+ "uuid": "5B201F55-90BC-4A69-9A44-1BABE5A9FE99"
62
+ }
@@ -0,0 +1,278 @@
1
+ {
2
+ "fileTypes": [
3
+ "tcl"
4
+ ],
5
+ "foldingStartMarker": "\\{\\s*$",
6
+ "foldingStopMarker": "^\\s*\\}",
7
+ "keyEquivalent": "^~T",
8
+ "name": "Tcl",
9
+ "patterns": [
10
+ {
11
+ "begin": "(?<=^|;)\\s*((#))",
12
+ "beginCaptures": {
13
+ "1": {
14
+ "name": "comment.line.number-sign.tcl"
15
+ },
16
+ "2": {
17
+ "name": "punctuation.definition.comment.tcl"
18
+ }
19
+ },
20
+ "contentName": "comment.line.number-sign.tcl",
21
+ "end": "\\n",
22
+ "patterns": [
23
+ {
24
+ "match": "(\\\\\\\\|\\\\\\n)"
25
+ }
26
+ ]
27
+ },
28
+ {
29
+ "captures": {
30
+ "1": {
31
+ "name": "keyword.control.tcl"
32
+ }
33
+ },
34
+ "match": "(?<=^|[\\[{;])\\s*(if|while|for|catch|return|break|continue|switch|exit|foreach)\\b"
35
+ },
36
+ {
37
+ "captures": {
38
+ "1": {
39
+ "name": "keyword.control.tcl"
40
+ }
41
+ },
42
+ "match": "(?<=^|})\\s*(then|elseif|else)\\b"
43
+ },
44
+ {
45
+ "captures": {
46
+ "1": {
47
+ "name": "keyword.other.tcl"
48
+ },
49
+ "2": {
50
+ "name": "entity.name.function.tcl"
51
+ }
52
+ },
53
+ "match": "^\\s*(proc)\\s+([^\\s]+)"
54
+ },
55
+ {
56
+ "captures": {
57
+ "1": {
58
+ "name": "keyword.other.tcl"
59
+ }
60
+ },
61
+ "match": "(?<=^|[\\[{;])\\s*(after|append|array|auto_execok|auto_import|auto_load|auto_mkindex|auto_mkindex_old|auto_qualify|auto_reset|bgerror|binary|cd|clock|close|concat|dde|encoding|eof|error|eval|exec|expr|fblocked|fconfigure|fcopy|file|fileevent|filename|flush|format|gets|glob|global|history|http|incr|info|interp|join|lappend|library|lindex|linsert|list|llength|load|lrange|lreplace|lsearch|lset|lsort|memory|msgcat|namespace|open|package|parray|pid|pkg::create|pkg_mkIndex|proc|puts|pwd|re_syntax|read|registry|rename|resource|scan|seek|set|socket|SafeBase|source|split|string|subst|Tcl|tcl_endOfWord|tcl_findLibrary|tcl_startOfNextWord|tcl_startOfPreviousWord|tcl_wordBreakAfter|tcl_wordBreakBefore|tcltest|tclvars|tell|time|trace|unknown|unset|update|uplevel|upvar|variable|vwait)\\b"
62
+ },
63
+ {
64
+ "begin": "(?<=^|[\\[{;])\\s*(regexp|regsub)\\b\\s*",
65
+ "beginCaptures": {
66
+ "1": {
67
+ "name": "keyword.other.tcl"
68
+ }
69
+ },
70
+ "comment": "special-case regexp\/regsub keyword in order to handle the expression",
71
+ "end": "[\\n;]|(?=\\])",
72
+ "patterns": [
73
+ {
74
+ "match": "\\\\(?:.|\\n)",
75
+ "name": "constant.character.escape.tcl"
76
+ },
77
+ {
78
+ "comment": "switch for regexp",
79
+ "match": "-\\w+\\s*"
80
+ },
81
+ {
82
+ "applyEndPatternLast": 1,
83
+ "begin": "--\\s*",
84
+ "comment": "end of switches",
85
+ "end": "",
86
+ "patterns": [
87
+ {
88
+ "include": "#regexp"
89
+ }
90
+ ]
91
+ },
92
+ {
93
+ "include": "#regexp"
94
+ }
95
+ ]
96
+ },
97
+ {
98
+ "include": "#escape"
99
+ },
100
+ {
101
+ "include": "#variable"
102
+ },
103
+ {
104
+ "begin": "\"",
105
+ "beginCaptures": {
106
+ "0": {
107
+ "name": "punctuation.definition.string.begin.tcl"
108
+ }
109
+ },
110
+ "end": "\"",
111
+ "endCaptures": {
112
+ "0": {
113
+ "name": "punctuation.definition.string.end.tcl"
114
+ }
115
+ },
116
+ "name": "string.quoted.double.tcl",
117
+ "patterns": [
118
+ {
119
+ "include": "#escape"
120
+ },
121
+ {
122
+ "include": "#variable"
123
+ },
124
+ {
125
+ "include": "#embedded"
126
+ }
127
+ ]
128
+ }
129
+ ],
130
+ "repository": {
131
+ "bare-string": {
132
+ "begin": "(?:^|(?<=\\s))\"",
133
+ "comment": "matches a single quote-enclosed word without scoping",
134
+ "end": "\"([^\\s\\]]*)",
135
+ "endCaptures": {
136
+ "1": {
137
+ "name": "invalid.illegal.tcl"
138
+ }
139
+ },
140
+ "patterns": [
141
+ {
142
+ "include": "#escape"
143
+ },
144
+ {
145
+ "include": "#variable"
146
+ }
147
+ ]
148
+ },
149
+ "braces": {
150
+ "begin": "(?:^|(?<=\\s))\\{",
151
+ "comment": "matches a single brace-enclosed word",
152
+ "end": "\\}([^\\s\\]]*)",
153
+ "endCaptures": {
154
+ "1": {
155
+ "name": "invalid.illegal.tcl"
156
+ }
157
+ },
158
+ "patterns": [
159
+ {
160
+ "match": "\\\\[{}\\n]",
161
+ "name": "constant.character.escape.tcl"
162
+ },
163
+ {
164
+ "include": "#inner-braces"
165
+ }
166
+ ]
167
+ },
168
+ "embedded": {
169
+ "begin": "\\[",
170
+ "beginCaptures": {
171
+ "0": {
172
+ "name": "punctuation.section.embedded.begin.tcl"
173
+ }
174
+ },
175
+ "end": "\\]",
176
+ "endCaptures": {
177
+ "0": {
178
+ "name": "punctuation.section.embedded.end.tcl"
179
+ }
180
+ },
181
+ "name": "source.tcl.embedded",
182
+ "patterns": [
183
+ {
184
+ "include": "source.tcl"
185
+ }
186
+ ]
187
+ },
188
+ "escape": {
189
+ "match": "\\\\(\\d{1,3}|x[a-fA-F0-9]+|u[a-fA-F0-9]{1,4}|.|\\n)",
190
+ "name": "constant.character.escape.tcl"
191
+ },
192
+ "inner-braces": {
193
+ "begin": "\\{",
194
+ "comment": "matches a nested brace in a brace-enclosed word",
195
+ "end": "\\}",
196
+ "patterns": [
197
+ {
198
+ "match": "\\\\[{}\\n]",
199
+ "name": "constant.character.escape.tcl"
200
+ },
201
+ {
202
+ "include": "#inner-braces"
203
+ }
204
+ ]
205
+ },
206
+ "regexp": {
207
+ "begin": "(?=\\S)(?![\\n;\\]])",
208
+ "comment": "matches a single word, named as a regexp, then swallows the rest of the command",
209
+ "end": "(?=[\\n;\\]])",
210
+ "patterns": [
211
+ {
212
+ "begin": "(?=[^ \\t\\n;])",
213
+ "end": "(?=[ \\t\\n;])",
214
+ "name": "string.regexp.tcl",
215
+ "patterns": [
216
+ {
217
+ "include": "#braces"
218
+ },
219
+ {
220
+ "include": "#bare-string"
221
+ },
222
+ {
223
+ "include": "#escape"
224
+ },
225
+ {
226
+ "include": "#variable"
227
+ }
228
+ ]
229
+ },
230
+ {
231
+ "begin": "[ \\t]",
232
+ "comment": "swallow the rest of the command",
233
+ "end": "(?=[\\n;\\]])",
234
+ "patterns": [
235
+ {
236
+ "include": "#variable"
237
+ },
238
+ {
239
+ "include": "#embedded"
240
+ },
241
+ {
242
+ "include": "#escape"
243
+ },
244
+ {
245
+ "include": "#braces"
246
+ },
247
+ {
248
+ "include": "#string"
249
+ }
250
+ ]
251
+ }
252
+ ]
253
+ },
254
+ "string": {
255
+ "applyEndPatternLast": 1,
256
+ "begin": "(?:^|(?<=\\s))(?=\")",
257
+ "comment": "matches a single quote-enclosed word with scoping",
258
+ "end": "",
259
+ "name": "string.quoted.double.tcl",
260
+ "patterns": [
261
+ {
262
+ "include": "#bare-string"
263
+ }
264
+ ]
265
+ },
266
+ "variable": {
267
+ "captures": {
268
+ "1": {
269
+ "name": "punctuation.definition.variable.tcl"
270
+ }
271
+ },
272
+ "match": "(\\$)((?:[a-zA-Z0-9_]|::)+(\\([^\\)]+\\))?|\\{[^\\}]*\\})",
273
+ "name": "variable.other.tcl"
274
+ }
275
+ },
276
+ "scopeName": "source.tcl",
277
+ "uuid": "F01F22AC-7CBB-11D9-9B10-000A95E13C98"
278
+ }
@@ -0,0 +1,83 @@
1
+ {
2
+ "fileTypes": [
3
+
4
+ ],
5
+ "foldingStartMarker": "\/\\*\\*|\\{\\s*$",
6
+ "foldingStopMarker": "\\*\\*\/|^\\s*\\}",
7
+ "name": "TeX Math",
8
+ "patterns": [
9
+ {
10
+ "captures": {
11
+ "1": {
12
+ "name": "punctuation.definition.constant.math.tex"
13
+ }
14
+ },
15
+ "match": "(\\\\)(s(s(earrow|warrow|lash)|h(ort(downarrow|uparrow|parallel|leftarrow|rightarrow|mid)|arp)|tar|i(gma|m(eq)?)|u(cc(sim|n(sim|approx)|curlyeq|eq|approx)?|pset(neq(q)?|plus(eq)?|eq(q)?)?|rd|m|bset(neq(q)?|plus(eq)?|eq(q)?)?)|p(hericalangle|adesuit)|e(tminus|arrow)|q(su(pset(eq)?|bset(eq)?)|c(up|ap)|uare)|warrow|m(ile|all(s(etminus|mile)|frown)))|h(slash|ook(leftarrow|rightarrow)|eartsuit|bar)|R(sh|ightarrow|e|bag)|Gam(e|ma)|n(s(hort(parallel|mid)|im|u(cc(eq)?|pseteq(q)?|bseteq))|Rightarrow|n(earrow|warrow)|cong|triangle(left(eq(slant)?)?|right(eq(slant)?)?)|i(plus)?|u|p(lus|arallel|rec(eq)?)|e(q|arrow|g|xists)|v(dash|Dash)|warrow|le(ss|q(slant|q)?|ft(arrow|rightarrow))|a(tural|bla)|VDash|rightarrow|g(tr|eq(slant|q)?)|mid|Left(arrow|rightarrow))|c(hi|irc(eq|le(d(circ|S|dash|ast)|arrow(left|right)))?|o(ng|prod|lon|mplement)|dot(s|p)?|u(p|r(vearrow(left|right)|ly(eq(succ|prec)|vee(downarrow|uparrow)?|wedge(downarrow|uparrow)?)))|enterdot|lubsuit|ap)|Xi|Maps(to(char)?|from(char)?)|B(ox|umpeq|bbk)|t(h(ick(sim|approx)|e(ta|refore))|imes|op|wohead(leftarrow|rightarrow)|a(u|lloblong)|riangle(down|q|left(eq(slant)?)?|right(eq(slant)?)?)?)|i(n(t(er(cal|leave))?|plus|fty)?|ota|math)|S(igma|u(pset|bset))|zeta|o(slash|times|int|dot|plus|vee|wedge|lessthan|greaterthan|m(inus|ega)|b(slash|long|ar))|d(i(v(ideontimes)?|a(g(down|up)|mond(suit)?)|gamma)|o(t(plus|eq(dot)?)|ublebarwedge|wn(harpoon(left|right)|downarrows|arrow))|d(ots|agger)|elta|a(sh(v|leftarrow|rightarrow)|leth|gger))|Y(down|up|left|right)|C(up|ap)|u(n(lhd|rhd)|p(silon|harpoon(left|right)|downarrow|uparrows|lus|arrow)|lcorner|rcorner)|jmath|Theta|Im|p(si|hi|i(tchfork)?|erp|ar(tial|allel)|r(ime|o(d|pto)|ec(sim|n(sim|approx)|curlyeq|eq|approx)?)|m)|e(t(h|a)|psilon|q(slant(less|gtr)|circ|uiv)|ll|xists|mptyset)|Omega|D(iamond|ownarrow|elta)|v(d(ots|ash)|ee(bar)?|Dash|ar(s(igma|u(psetneq(q)?|bsetneq(q)?))|nothing|curly(vee|wedge)|t(heta|imes|riangle(left|right)?)|o(slash|circle|times|dot|plus|vee|wedge|lessthan|ast|greaterthan|minus|b(slash|ar))|p(hi|i|ropto)|epsilon|kappa|rho|bigcirc))|kappa|Up(silon|downarrow|arrow)|Join|f(orall|lat|a(t(s(emi|lash)|bslash)|llingdotseq)|rown)|P(si|hi|i)|w(p|edge|r)|l(hd|n(sim|eq(q)?|approx)|ceil|times|ightning|o(ng(left(arrow|rightarrow)|rightarrow|maps(to|from))|zenge|oparrow(left|right))|dot(s|p)|e(ss(sim|dot|eq(qgtr|gtr)|approx|gtr)|q(slant|q)?|ft(slice|harpoon(down|up)|threetimes|leftarrows|arrow(t(ail|riangle))?|right(squigarrow|harpoons|arrow(s|triangle|eq)?))|adsto)|vertneqq|floor|l(c(orner|eil)|floor|l|bracket)?|a(ngle|mbda)|rcorner|bag)|a(s(ymp|t)|ngle|pprox(eq)?|l(pha|eph)|rrownot|malg)|V(dash|vdash)|r(h(o|d)|ceil|times|i(singdotseq|ght(s(quigarrow|lice)|harpoon(down|up)|threetimes|left(harpoons|arrows)|arrow(t(ail|riangle))?|rightarrows))|floor|angle|r(ceil|parenthesis|floor|bracket)|bag)|g(n(sim|eq(q)?|approx)|tr(sim|dot|eq(qless|less)|less|approx)|imel|eq(slant|q)?|vertneqq|amma|g(g)?)|Finv|xi|m(ho|i(nuso|d)|o(o|dels)|u(ltimap)?|p|e(asuredangle|rge)|aps(to|from(char)?))|b(i(n(dnasrepma|ampersand)|g(s(tar|qc(up|ap))|nplus|c(irc|u(p|rly(vee|wedge))|ap)|triangle(down|up)|interleave|o(times|dot|plus)|uplus|parallel|vee|wedge|box))|o(t|wtie|x(slash|circle|times|dot|plus|empty|ast|minus|b(slash|ox|ar)))|u(llet|mpeq)|e(cause|t(h|ween|a))|lack(square|triangle(down|left|right)?|lozenge)|a(ck(s(im(eq)?|lash)|prime|epsilon)|r(o|wedge))|bslash)|L(sh|ong(left(arrow|rightarrow)|rightarrow|maps(to|from))|eft(arrow|rightarrow)|leftarrow|ambda|bag)|Arrownot)\\b",
16
+ "name": "constant.character.math.tex"
17
+ },
18
+ {
19
+ "captures": {
20
+ "1": {
21
+ "name": "punctuation.definition.constant.math.tex"
22
+ }
23
+ },
24
+ "match": "(\\\\)(sum|prod|coprod|int|oint|bigcap|bigcup|bigsqcup|bigvee|bigwedge|bigodot|bigotimes|bogoplus|biguplus)\\b",
25
+ "name": "constant.character.math.tex"
26
+ },
27
+ {
28
+ "captures": {
29
+ "1": {
30
+ "name": "punctuation.definition.constant.math.tex"
31
+ }
32
+ },
33
+ "match": "(\\\\)(arccos|arcsin|arctan|arg|cos|cosh|cot|coth|csc|deg|det|dim|exp|gcd|hom|inf|ker|lg|lim|liminf|limsup|ln|log|max|min|pr|sec|sin|sinh|sup|tan|tanh)\\b",
34
+ "name": "constant.other.math.tex"
35
+ },
36
+ {
37
+ "begin": "((\\\\)Sexpr)(\\{)",
38
+ "beginCaptures": {
39
+ "1": {
40
+ "name": "support.function.sexpr.math.tex"
41
+ },
42
+ "2": {
43
+ "name": "punctuation.definition.function.math.tex"
44
+ },
45
+ "3": {
46
+ "name": "punctuation.section.embedded.begin.math.tex"
47
+ }
48
+ },
49
+ "contentName": "source.r.embedded.math.tex",
50
+ "end": "(\\})",
51
+ "endCaptures": {
52
+ "1": {
53
+ "name": "punctuation.section.embedded.end.math.tex"
54
+ }
55
+ },
56
+ "name": "meta.function.sexpr.math.tex",
57
+ "patterns": [
58
+ {
59
+ "include": "source.r"
60
+ }
61
+ ]
62
+ },
63
+ {
64
+ "captures": {
65
+ "1": {
66
+ "name": "punctuation.definition.constant.math.tex"
67
+ }
68
+ },
69
+ "match": "(\\\\)([^a-zA-Z]|[A-Za-z]+)(?=\\b|\\}|\\]|\\^|\\_)",
70
+ "name": "constant.other.general.math.tex"
71
+ },
72
+ {
73
+ "match": "(([0-9]*[\\.][0-9]+)|[0-9]+)",
74
+ "name": "constant.numeric.math.tex"
75
+ },
76
+ {
77
+ "match": "\u00abpress a-z and space for greek letter\u00bb[a-zA-Z]*",
78
+ "name": "meta.placeholder.greek.math.tex"
79
+ }
80
+ ],
81
+ "scopeName": "text.tex.math",
82
+ "uuid": "027D6AF4-E9D3-4250-82A1-8A42EEFE4F76"
83
+ }
@@ -0,0 +1,157 @@
1
+ {
2
+ "fileTypes": [
3
+ "sty",
4
+ "cls"
5
+ ],
6
+ "foldingStartMarker": "\/\\*\\*|\\{\\s*$",
7
+ "foldingStopMarker": "\\*\\*\/|^\\s*\\}",
8
+ "name": "TeX",
9
+ "patterns": [
10
+ {
11
+ "captures": {
12
+ "1": {
13
+ "name": "punctuation.definition.keyword.tex"
14
+ }
15
+ },
16
+ "match": "(\\\\)(backmatter|else|fi|frontmatter|ftrue|mainmatter|if(case|cat|dim|eof|false|hbox|hmode|inner|mmode|num|odd|undefined|vbox|vmode|void|x)?)\\b",
17
+ "name": "keyword.control.tex"
18
+ },
19
+ {
20
+ "captures": {
21
+ "1": {
22
+ "name": "keyword.control.catcode.tex"
23
+ },
24
+ "2": {
25
+ "name": "punctuation.definition.keyword.tex"
26
+ },
27
+ "3": {
28
+ "name": "punctuation.separator.key-value.tex"
29
+ },
30
+ "4": {
31
+ "name": "constant.numeric.category.tex"
32
+ }
33
+ },
34
+ "match": "((\\\\)catcode)`(?:\\\\)?.(=)(\\d+)",
35
+ "name": "meta.catcode.tex"
36
+ },
37
+ {
38
+ "captures": {
39
+ "1": {
40
+ "name": "punctuation.definition.comment.tex"
41
+ }
42
+ },
43
+ "match": "(%:).*$\\n?",
44
+ "name": "comment.line.percentage.semicolon.texshop.tex"
45
+ },
46
+ {
47
+ "match": "^%!TEX (\\S*) =\\s*(.*)\\s*$",
48
+ "name": "comment.line.percentage.directive.texshop.tex"
49
+ },
50
+ {
51
+ "captures": {
52
+ "1": {
53
+ "name": "punctuation.definition.comment.tex"
54
+ }
55
+ },
56
+ "match": "(%).*$\\n?",
57
+ "name": "comment.line.percentage.tex"
58
+ },
59
+ {
60
+ "begin": "\\{",
61
+ "captures": {
62
+ "0": {
63
+ "name": "punctuation.section.group.tex"
64
+ }
65
+ },
66
+ "end": "\\}",
67
+ "name": "meta.group.braces.tex",
68
+ "patterns": [
69
+ {
70
+ "include": "$base"
71
+ }
72
+ ]
73
+ },
74
+ {
75
+ "match": "[\\[\\]]",
76
+ "name": "punctuation.definition.brackets.tex"
77
+ },
78
+ {
79
+ "begin": "\\$\\$",
80
+ "beginCaptures": {
81
+ "0": {
82
+ "name": "punctuation.definition.string.begin.tex"
83
+ }
84
+ },
85
+ "end": "\\$\\$",
86
+ "endCaptures": {
87
+ "0": {
88
+ "name": "punctuation.definition.string.end.tex"
89
+ }
90
+ },
91
+ "name": "string.other.math.block.tex",
92
+ "patterns": [
93
+ {
94
+ "include": "text.tex.math"
95
+ },
96
+ {
97
+ "include": "$self"
98
+ }
99
+ ]
100
+ },
101
+ {
102
+ "match": "\\\\\\\\",
103
+ "name": "constant.character.newline.tex"
104
+ },
105
+ {
106
+ "begin": "\\$",
107
+ "beginCaptures": {
108
+ "0": {
109
+ "name": "punctuation.definition.string.begin.tex"
110
+ }
111
+ },
112
+ "end": "\\$",
113
+ "endCaptures": {
114
+ "0": {
115
+ "name": "punctuation.definition.string.end.tex"
116
+ }
117
+ },
118
+ "name": "string.other.math.tex",
119
+ "patterns": [
120
+ {
121
+ "match": "\\\\\\$",
122
+ "name": "constant.character.escape.tex"
123
+ },
124
+ {
125
+ "include": "text.tex.math"
126
+ },
127
+ {
128
+ "include": "$self"
129
+ }
130
+ ]
131
+ },
132
+ {
133
+ "captures": {
134
+ "1": {
135
+ "name": "punctuation.definition.function.tex"
136
+ }
137
+ },
138
+ "match": "(\\\\)[A-Za-z@]+",
139
+ "name": "support.function.general.tex"
140
+ },
141
+ {
142
+ "captures": {
143
+ "1": {
144
+ "name": "punctuation.definition.keyword.tex"
145
+ }
146
+ },
147
+ "match": "(\\\\)[^a-zA-Z@]",
148
+ "name": "constant.character.escape.tex"
149
+ },
150
+ {
151
+ "match": "\u00abpress a-z and space for greek letter\u00bb[a-zA-Z]*",
152
+ "name": "meta.placeholder.greek.tex"
153
+ }
154
+ ],
155
+ "scopeName": "text.tex",
156
+ "uuid": "6BC8DE6F-9360-4C7E-AC3C-971385945346"
157
+ }