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,49 @@
1
+ {
2
+ "fileTypes": [
3
+ "txt"
4
+ ],
5
+ "keyEquivalent": "^~P",
6
+ "name": "Plain Text",
7
+ "patterns": [
8
+ {
9
+ "captures": {
10
+ "1": {
11
+ "name": "punctuation.definition.item.text"
12
+ }
13
+ },
14
+ "match": "^\\s*(\u2022).*$\\n?",
15
+ "name": "meta.bullet-point.strong.text"
16
+ },
17
+ {
18
+ "captures": {
19
+ "1": {
20
+ "name": "punctuation.definition.item.text"
21
+ }
22
+ },
23
+ "match": "^\\s*(\u00b7).*$\\n?",
24
+ "name": "meta.bullet-point.light.text"
25
+ },
26
+ {
27
+ "captures": {
28
+ "1": {
29
+ "name": "punctuation.definition.item.text"
30
+ }
31
+ },
32
+ "match": "^\\s*(\\*).*$\\n?",
33
+ "name": "meta.bullet-point.star.text"
34
+ },
35
+ {
36
+ "begin": "^([ \\t]*)(?=\\S)",
37
+ "contentName": "meta.paragraph.text",
38
+ "end": "^(?!\\1(?=\\S))",
39
+ "patterns": [
40
+ {
41
+ "match": "(?x)\n\t\t\t\t\t\t( (https?|s?ftp|ftps|file|smb|afp|nfs|(x-)?man|gopher|txmt):\/\/|mailto:)\n\t\t\t\t\t\t[-:@a-zA-Z0-9_.,~%+\/?=&#]+(?<![.,?:])\n\t\t\t\t\t",
42
+ "name": "markup.underline.link.text"
43
+ }
44
+ ]
45
+ }
46
+ ],
47
+ "scopeName": "text.plain",
48
+ "uuid": "3130E4FA-B10E-11D9-9F75-000D93589AF6"
49
+ }
@@ -0,0 +1,188 @@
1
+ {
2
+ "fileTypes": [
3
+ "pde"
4
+ ],
5
+ "foldingStartMarker": "(\/\\*\\*|\\{\\s*$)",
6
+ "foldingStopMarker": "(\\*\\*\/|^\\s*\\})",
7
+ "keyEquivalent": "^~P",
8
+ "name": "Processing",
9
+ "patterns": [
10
+ {
11
+ "match": "\\b(abs|acos|alpha|alpha|ambient|ambientLight|append|applyMatrix|arc|asin|atan2|atan|background|beginCamera|beginShape|bezier|bezierDetail|bezierPoint|bezierTangent|bezierVertex|binary|blend|blend|blue|boolean|box|brightness|byte|cache|camera|ceil|char|charAt|color|colorMode|concat|constrain|contract|copy|copy|cos|createFont|cursor|curve|curveDetail|curvePoint|curveSegments|curveTightness|curveVertex|day|degrees|delay|directionalLight|dist|duration|ellipse|ellipseMode|emissive|endCamera|endShape|equals|exp|expand|fill|filter|filter|float|floor|frameRate|frustum|get|get|green|hex|hint|hour|hue|image|imageMode|indexOf|int|join|keyPressed|keyReleased|length|lerp|lightFalloff|lightSpecular|lights|line|link|list|loadBytes|loadFont|loadImage|loadPixels|loadSound|loadStrings|log|lookat|loop|loop|mag|mask|max|millis|min|minute|modelX|modelY|modelZ|month|mouseDragged|mouseMoved|mousePressed|mouseReleased|nf|nfc|nfp|nfs|noCursor|noFill|noLoop|noLoop|noSmooth|noStroke|noTint|noise|noiseDetail|noiseSeed|normal|open|openStream|ortho|param|pause|perspective|play|point|pointLight|popMatrix|pow|print|printCamera|printMatrix|printProjection|println|pushMatrix|quad|radians|random|randomSeed|rect|rectMode|red|redraw|resetMatrix|reverse|rotate|rotateX|rotateY|rotateZ|round|saturation|save|saveBytes|saveFrame|saveStrings|scale|screenX|screenY|screenZ|second|set|set|shininess|shorten|sin|size|smooth|sort|specular|sphere|sphereDetail|splice|split|spotLight|sq|sqrt|status|stop|str|stroke|strokeCap|strokeJoin|strokeWeight|subset|substring|switch|tan|text|textAlign|textAscent|textDescent|textFont|textLeading|textMode|textSize|textWidth|texture|textureMode|time|tint|toLowerCase|toUpperCase|translate|triangle|trim|unHint|unbinary|unhex|updatePixels|vertex|volume|year|draw|setup)\\b",
12
+ "name": "support.function.processing"
13
+ },
14
+ {
15
+ "captures": {
16
+ "0": {
17
+ "name": "punctuation.definition.comment.processing"
18
+ }
19
+ },
20
+ "match": "\/\\*\\*\/",
21
+ "name": "comment.block.empty.processing"
22
+ },
23
+ {
24
+ "begin": "\/\\*",
25
+ "captures": {
26
+ "0": {
27
+ "name": "punctuation.definition.comment.processing"
28
+ }
29
+ },
30
+ "end": "\\*\/",
31
+ "name": "comment.block.processing"
32
+ },
33
+ {
34
+ "begin": "\/\\*\\*",
35
+ "captures": {
36
+ "0": {
37
+ "name": "punctuation.definition.comment.processing"
38
+ }
39
+ },
40
+ "end": "\\*\/",
41
+ "name": "comment.block.documentation.processing",
42
+ "patterns": [
43
+ {
44
+ "captures": {
45
+ "1": {
46
+ "name": "keyword.other.documentation.params.processing"
47
+ },
48
+ "2": {
49
+ "name": "keyword.other.documentation.value.processing"
50
+ }
51
+ },
52
+ "match": "\\*\\s*@(param)\\s*([a-z][a-zA-Z0-9_]+)\\s*"
53
+ },
54
+ {
55
+ "captures": {
56
+ "1": {
57
+ "name": "keyword.other.embedded-docs.params.processing"
58
+ }
59
+ },
60
+ "match": "\\*\\s*@([a-zA-Z0-9_-]+)\\s*"
61
+ }
62
+ ]
63
+ },
64
+ {
65
+ "captures": {
66
+ "1": {
67
+ "name": "punctuation.definition.comment.processing"
68
+ }
69
+ },
70
+ "match": "(\/\/).*$\\n?",
71
+ "name": "comment.line.double-slash.processing"
72
+ },
73
+ {
74
+ "match": "\\b(class|interface|void|color|string|byte|short|char|int|long|float|double|boolean|[A-Z][A-Za-z0-9]+)\\b",
75
+ "name": "storage.type.processing"
76
+ },
77
+ {
78
+ "match": "\\b(private|protected|public)\\b",
79
+ "name": "storage.modifier.access-control.processing"
80
+ },
81
+ {
82
+ "match": "\\b(abstract|final|native|static|transient|synchronized|volatile|strictfp|extends|implements)\\b",
83
+ "name": "storage.modifier.processing"
84
+ },
85
+ {
86
+ "match": "\\b(try|catch|finally|throw)\\b",
87
+ "name": "keyword.control.catch-exception.processing"
88
+ },
89
+ {
90
+ "match": "\\b(return|break|case|continue|default|do|while|for|switch|if|else)\\b",
91
+ "name": "keyword.control.processing"
92
+ },
93
+ {
94
+ "match": "\\b(import|new|package|throws)\\b",
95
+ "name": "keyword.other.class-fns.processing"
96
+ },
97
+ {
98
+ "match": "\\b(instanceof)\\b",
99
+ "name": "keyword.operator.processing"
100
+ },
101
+ {
102
+ "match": "\\b(false|null|true)\\b",
103
+ "name": "constant.language.processing"
104
+ },
105
+ {
106
+ "match": "\\b(focused|frameCount|frameRate|height|height|key|keyCode|keyPressed|mouseButton|mousePressed|mouseX|mouseY|online|pixels|pmouseX|pmouseY|screen|width)\\b",
107
+ "name": "constant.other.processing"
108
+ },
109
+ {
110
+ "match": "\\b(ADD|ALIGN_CENTER|ALIGN_LEFT|ALIGN_RIGHT|ALPHA|ALPHA_MASK|ALT|AMBIENT|ARGB|ARROW|BACKSPACE|BEVEL|BLEND|BLEND|BLUE_MASK|BLUR|CENTER|CENTER_RADIUS|CHATTER|CODED|COMPLAINT|COMPONENT|COMPOSITE|CONCAVE_POLYGON|CONTROL|CONVEX_POLYGON|CORNER|CORNERS|CROSS|CUSTOM|DARKEST|DEGREES|DEG_TO_RAD|DELETE|DIFFERENCE|DIFFUSE|DISABLED|DISABLE_TEXT_SMOOTH|DOWN|ENTER|EPSILON|ESC|GIF|GREEN_MASK|GREY|HALF|HALF_PI|HALF_PI|HAND|HARD_LIGHT|HSB|IMAGE|INVERT|JAVA2D|JPEG|LEFT|LIGHTEST|LINES|LINE_LOOP|LINE_STRIP|MAX_FLOAT|MITER|MODEL|MOVE|MULTIPLY|NORMALIZED|NO_DEPTH_TEST|NTSC|ONE|OPAQUE|OPENGL|ORTHOGRAPHIC|OVERLAY|P2D|P3D|PAL|PERSPECTIVE|PI|PI|PIXEL_CENTER|POINTS|POLYGON|POSTERIZE|PROBLEM|PROJECT|QUADS|QUAD_STRIP|QUARTER_PI|RADIANS|RAD_TO_DEG|RED_MASK|REPLACE|RETURN|RGB|RIGHT|ROUND|SCREEN|SECAM|SHIFT|SOFT_LIGHT|SPECULAR|SQUARE|SUBTRACT|SVIDEO|TAB|TARGA|TEXT|TFF|THIRD_PI|THRESHOLD|TIFF|TRIANGLES|TRIANGLE_FAN|TRIANGLE_STRIP|TUNER|TWO|TWO_PI|TWO_PI|UP|WAIT|WHITESPACE)\\b",
111
+ "name": "support.constant.processing"
112
+ },
113
+ {
114
+ "match": "\\b(Array|Character|Integer|Math|Object|PFont|PImage|PSound|StringBuffer|Thread)\\b",
115
+ "name": "support.class.processing"
116
+ },
117
+ {
118
+ "match": "\\b(this|super)\\b",
119
+ "name": "variable.language.processing"
120
+ },
121
+ {
122
+ "match": "\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)([LlFfUuDd]|UL|ul)?\\b",
123
+ "name": "constant.numeric.processing"
124
+ },
125
+ {
126
+ "begin": "\"",
127
+ "beginCaptures": {
128
+ "0": {
129
+ "name": "punctuation.definition.string.begin.processing"
130
+ }
131
+ },
132
+ "end": "\"",
133
+ "endCaptures": {
134
+ "0": {
135
+ "name": "punctuation.definition.string.end.processing"
136
+ }
137
+ },
138
+ "name": "string.quoted.double.processing",
139
+ "patterns": [
140
+ {
141
+ "match": "\\\\.",
142
+ "name": "constant.character.escape.processing"
143
+ }
144
+ ]
145
+ },
146
+ {
147
+ "begin": "'",
148
+ "beginCaptures": {
149
+ "0": {
150
+ "name": "punctuation.definition.string.begin.processing"
151
+ }
152
+ },
153
+ "end": "'",
154
+ "endCaptures": {
155
+ "0": {
156
+ "name": "punctuation.definition.string.end.processing"
157
+ }
158
+ },
159
+ "name": "string.quoted.single.processing",
160
+ "patterns": [
161
+ {
162
+ "match": "\\\\.",
163
+ "name": "constant.character.escape.processing"
164
+ }
165
+ ]
166
+ },
167
+ {
168
+ "captures": {
169
+ "1": {
170
+ "name": "storage.type.class.processing"
171
+ },
172
+ "2": {
173
+ "name": "entity.name.type.class.processing"
174
+ },
175
+ "3": {
176
+ "name": "storage.modifier.extends.processing"
177
+ },
178
+ "4": {
179
+ "name": "entity.other.inherited-class.processing"
180
+ }
181
+ },
182
+ "match": "\\b(class)\\s+([a-zA-Z_](?:\\w|\\.)*)(?:\\s+(extends)\\s+([a-zA-Z_](?:\\w|\\.)*))?",
183
+ "name": "meta.class.processing"
184
+ }
185
+ ],
186
+ "scopeName": "source.processing",
187
+ "uuid": "EF0D256C-2FCB-4A87-9250-0F5F82A366B9"
188
+ }
@@ -0,0 +1,54 @@
1
+ {
2
+ "fileTypes": [
3
+ "cfg"
4
+ ],
5
+ "keyEquivalent": "^~Q",
6
+ "name": "Quake Style .cfg",
7
+ "patterns": [
8
+ {
9
+ "comment": "the 2nd part of the regex is just to capture binds to number-keys and prevent them from getting highlighted as values.",
10
+ "match": "\\b(set(a|u|s)?|bind|undbind|unbindall|vstr|exec|kill|say|say_team|quit|echo)(\\s+\\d)?\\b",
11
+ "name": "keyword.other.quake3"
12
+ },
13
+ {
14
+ "match": "\\b\\d+(\\.\\d+)?\\b",
15
+ "name": "constant.numeric.quake3"
16
+ },
17
+ {
18
+ "begin": "\"",
19
+ "beginCaptures": {
20
+ "0": {
21
+ "name": "punctuation.definition.string.begin.quake3"
22
+ }
23
+ },
24
+ "end": "\"",
25
+ "endCaptures": {
26
+ "0": {
27
+ "name": "punctuation.definition.string.end.quake3"
28
+ }
29
+ },
30
+ "name": "string.quoted.double.quake3",
31
+ "patterns": [
32
+ {
33
+ "match": "\\\\.",
34
+ "name": "constant.character.escape.quake3"
35
+ },
36
+ {
37
+ "match": "\\b(set(a|u|s)?|bind|unbindall|vstr|exec|kill|say|say_team|quit|echo)\\b",
38
+ "name": "keyword.other.string-embedded.quake3"
39
+ }
40
+ ]
41
+ },
42
+ {
43
+ "captures": {
44
+ "1": {
45
+ "name": "punctuation.definition.comment.quake3"
46
+ }
47
+ },
48
+ "match": "(\/\/).*$\\n?",
49
+ "name": "comment.line.double-slash.quake3"
50
+ }
51
+ ],
52
+ "scopeName": "source.quake-config",
53
+ "uuid": "AAB8717E-6E5C-11D9-9BE0-0011242E4184"
54
+ }
@@ -0,0 +1,157 @@
1
+ {
2
+ "fileTypes": [
3
+ "R",
4
+ "r",
5
+ "s",
6
+ "S",
7
+ "Rprofile"
8
+ ],
9
+ "foldingStartMarker": "(\\(\\s*$|\\{\\s*$)",
10
+ "foldingStopMarker": "(^\\s*\\)|^\\s*\\})",
11
+ "keyEquivalent": "^~R",
12
+ "name": "R",
13
+ "patterns": [
14
+ {
15
+ "captures": {
16
+ "1": {
17
+ "name": "punctuation.definition.comment.r"
18
+ }
19
+ },
20
+ "match": "(#).*$\\n?",
21
+ "name": "comment.line.number-sign.r"
22
+ },
23
+ {
24
+ "match": "\\b(logical|numeric|character|complex|matrix|array|data\\.frame|list|factor)(?=\\s*\\()",
25
+ "name": "storage.type.r"
26
+ },
27
+ {
28
+ "match": "\\b(function|if|break|next|repeat|else|for|return|switch|while|in|invisible)\\b",
29
+ "name": "keyword.control.r"
30
+ },
31
+ {
32
+ "match": "\\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",
33
+ "name": "constant.numeric.r"
34
+ },
35
+ {
36
+ "match": "\\b(T|F|TRUE|FALSE|NULL|NA|Inf|NaN)\\b",
37
+ "name": "constant.language.r"
38
+ },
39
+ {
40
+ "match": "\\b(pi|letters|LETTERS|month\\.abb|month\\.name)\\b",
41
+ "name": "support.constant.misc.r"
42
+ },
43
+ {
44
+ "match": "(\\-|\\+|\\*|\\\/|%\\\/%|%%|%\\*%|%in%|%o%|%x%|\\^)",
45
+ "name": "keyword.operator.arithmetic.r"
46
+ },
47
+ {
48
+ "match": "(=|<-|<<-|->|->>)",
49
+ "name": "keyword.operator.assignment.r"
50
+ },
51
+ {
52
+ "match": "(==|!=|<>|<|>|<=|>=)",
53
+ "name": "keyword.operator.comparison.r"
54
+ },
55
+ {
56
+ "match": "(!|&{1,2}|[|]{1,2})",
57
+ "name": "keyword.operator.logical.r"
58
+ },
59
+ {
60
+ "match": "(\\.\\.\\.|\\$|@|:|\\~)",
61
+ "name": "keyword.other.r"
62
+ },
63
+ {
64
+ "begin": "\"",
65
+ "beginCaptures": {
66
+ "0": {
67
+ "name": "punctuation.definition.string.begin.r"
68
+ }
69
+ },
70
+ "end": "\"",
71
+ "endCaptures": {
72
+ "0": {
73
+ "name": "punctuation.definition.string.end.r"
74
+ }
75
+ },
76
+ "name": "string.quoted.double.r",
77
+ "patterns": [
78
+ {
79
+ "match": "\\\\.",
80
+ "name": "constant.character.escape.r"
81
+ }
82
+ ]
83
+ },
84
+ {
85
+ "begin": "'",
86
+ "beginCaptures": {
87
+ "0": {
88
+ "name": "punctuation.definition.string.begin.r"
89
+ }
90
+ },
91
+ "end": "'",
92
+ "endCaptures": {
93
+ "0": {
94
+ "name": "punctuation.definition.string.end.r"
95
+ }
96
+ },
97
+ "name": "string.quoted.single.r",
98
+ "patterns": [
99
+ {
100
+ "match": "\\\\.",
101
+ "name": "constant.character.escape.r"
102
+ }
103
+ ]
104
+ },
105
+ {
106
+ "captures": {
107
+ "1": {
108
+ "name": "entity.name.function.r"
109
+ },
110
+ "2": {
111
+ "name": "keyword.operator.assignment.r"
112
+ },
113
+ "3": {
114
+ "name": "keyword.control.r"
115
+ }
116
+ },
117
+ "match": "([[:alpha:].][[:alnum:]._]*)\\s*(<-)\\s*(function)",
118
+ "name": "meta.function.r"
119
+ },
120
+ {
121
+ "captures": {
122
+ "1": {
123
+ "name": "entity.name.tag.r"
124
+ },
125
+ "3": {
126
+ "name": "entity.name.type.r"
127
+ }
128
+ },
129
+ "match": "(setMethod|setGeneric|setGroupGeneric|setClass)\\s*\\(\\s*(\"|\\x27)([a-zA-Z._\\[\\$@][a-zA-Z0-9._\\[]*?)\\2",
130
+ "name": "meta.method.declaration.r"
131
+ },
132
+ {
133
+ "match": "([[:alpha:].][[:alnum:]._]*)\\s*\\("
134
+ },
135
+ {
136
+ "captures": {
137
+ "1": {
138
+ "name": "variable.parameter.r"
139
+ },
140
+ "2": {
141
+ "name": "keyword.operator.assignment.r"
142
+ }
143
+ },
144
+ "match": "([[:alpha:].][[:alnum:]._]*)\\s*(=)(?=[^=])"
145
+ },
146
+ {
147
+ "match": "\\b([\\d_][[:alnum:]._]+)\\b",
148
+ "name": "invalid.illegal.variable.other.r"
149
+ },
150
+ {
151
+ "match": "\\b([[:alnum:]._]+)\\b",
152
+ "name": "variable.other.r"
153
+ }
154
+ ],
155
+ "scopeName": "source.r",
156
+ "uuid": "B2E6B78D-6E70-11D9-A369-000D93B3A10E"
157
+ }