ver 2009.10.14 → 2009.11.28

Sign up to get free protection for your applications and to get access to all the features.
Files changed (318) hide show
  1. data/CHANGELOG +1094 -0
  2. data/MANIFEST +227 -25
  3. data/README.textile +185 -0
  4. data/bin/ver +96 -12
  5. data/config/detect.rb +73 -21
  6. data/config/keymap/emacs.rb +66 -0
  7. data/config/keymap/vim.rb +250 -140
  8. data/config/preferences/ANTLR.json +10 -0
  9. data/config/preferences/ASP vb.NET.json +3 -0
  10. data/config/preferences/ASP.json +15 -0
  11. data/config/preferences/ActionScript.json +755 -0
  12. data/config/preferences/Active4D.json +89 -0
  13. data/config/preferences/Ada.json +23 -0
  14. data/config/preferences/Ant.json +356 -0
  15. data/config/preferences/Apache.json +644 -0
  16. data/config/preferences/AppleScript.json +92 -0
  17. data/config/preferences/Bison.json +3 -0
  18. data/config/preferences/Blogging.json +3 -0
  19. data/config/preferences/C.json +127 -0
  20. data/config/preferences/CMake.json +41 -0
  21. data/config/preferences/CSS.json +461 -0
  22. data/config/preferences/CTags.json +3 -0
  23. data/config/preferences/CVS.json +3 -0
  24. data/config/preferences/ColdFusion.json +32 -0
  25. data/config/preferences/D.json +58 -0
  26. data/config/preferences/Darcs.json +3 -0
  27. data/config/preferences/Diff.json +67 -0
  28. data/config/preferences/DokuWiki.json +19 -0
  29. data/config/preferences/Doxygen.json +3 -0
  30. data/config/preferences/Dylan.json +3 -0
  31. data/config/preferences/Eiffel.json +59 -0
  32. data/config/preferences/Erlang.json +72 -0
  33. data/config/preferences/Experimental.json +1356 -0
  34. data/config/preferences/F-Script.json +87 -0
  35. data/config/preferences/FXScript.json +78 -0
  36. data/config/preferences/FileMerge.json +3 -0
  37. data/config/preferences/Fortran.json +158 -0
  38. data/config/preferences/GTD2.json +11 -0
  39. data/config/preferences/GTDAlt.json +20 -0
  40. data/config/preferences/GetBundle.json +3 -0
  41. data/config/preferences/Gettext.json +24 -0
  42. data/config/preferences/Graphviz.json +42 -0
  43. data/config/preferences/Greasemonkey.json +3 -0
  44. data/config/preferences/Gri.json +34 -0
  45. data/config/preferences/HTML.json +492 -0
  46. data/config/preferences/Haskell.json +72 -0
  47. data/config/preferences/Hotkey.json +3 -0
  48. data/config/preferences/ImageBrowser.json +3 -0
  49. data/config/preferences/Inform.json +3 -0
  50. data/config/preferences/Ini.json +60 -0
  51. data/config/preferences/Installer.json +3 -0
  52. data/config/preferences/Io.json +64 -0
  53. data/config/preferences/JSON.json +3 -0
  54. data/config/preferences/Java.json +86 -0
  55. data/config/preferences/JavaDoc.json +3 -0
  56. data/config/preferences/JavaScript.json +76 -0
  57. data/config/preferences/LaTeX.json +267 -0
  58. data/config/preferences/Lex/Flex.json +3 -0
  59. data/config/preferences/Lighttpd.json +3 -0
  60. data/config/preferences/LilyPond.json +77 -0
  61. data/config/preferences/Lisp.json +63 -0
  62. data/config/preferences/Logo.json +58 -0
  63. data/config/preferences/Logtalk.json +236 -0
  64. data/config/preferences/Lua.json +24 -0
  65. data/config/preferences/MEL.json +19 -0
  66. data/config/preferences/MIPS Assembler.json +26 -0
  67. data/config/preferences/MacPorts.json +3 -0
  68. data/config/preferences/Mail.json +3 -0
  69. data/config/preferences/Make.json +16 -0
  70. data/config/preferences/Markdown.json +102 -0
  71. data/config/preferences/Math.json +3 -0
  72. data/config/preferences/Matlab.json +128 -0
  73. data/config/preferences/Maven.json +308 -0
  74. data/config/preferences/Mediawiki.json +73 -0
  75. data/config/preferences/Mercurial.json +3 -0
  76. data/config/preferences/Modula.json +37 -0
  77. data/config/preferences/MoinMoin.json +52 -0
  78. data/config/preferences/Navigation.json +3 -0
  79. data/config/preferences/Nemerle.json +3 -0
  80. data/config/preferences/OCaml Code Completion.json +3 -0
  81. data/config/preferences/OCaml.json +163 -0
  82. data/config/preferences/ODCompletion.json +3 -0
  83. data/config/preferences/Objective-C.json +84 -0
  84. data/config/preferences/OpenGL.json +3331 -0
  85. data/config/preferences/Outlines.json +3 -0
  86. data/config/preferences/Pascal.json +60 -0
  87. data/config/preferences/Perforce.json +3 -0
  88. data/config/preferences/Perl.json +15 -0
  89. data/config/preferences/PmWiki.json +27 -0
  90. data/config/preferences/Postscript.json +15 -0
  91. data/config/preferences/Processing.json +32 -0
  92. data/config/preferences/Prolog.json +3 -0
  93. data/config/preferences/Propel.json +3 -0
  94. data/config/preferences/Python.json +38 -0
  95. data/config/preferences/Quake.json +15 -0
  96. data/config/preferences/R.json +33 -0
  97. data/config/preferences/Ragel.json +15 -0
  98. data/config/preferences/Regular Expressions.json +3 -0
  99. data/config/preferences/Remind.json +15 -0
  100. data/config/preferences/Rez.json +46 -0
  101. data/config/preferences/Ruby.json +98 -0
  102. data/config/preferences/S5 Slide Show.json +20 -0
  103. data/config/preferences/SCons.json +3 -0
  104. data/config/preferences/SQL.json +32 -0
  105. data/config/preferences/SSH Config.json +15 -0
  106. data/config/preferences/SVK.json +3 -0
  107. data/config/preferences/SWIG.json +3 -0
  108. data/config/preferences/SWeave.json +32 -0
  109. data/config/preferences/Scheme.json +35 -0
  110. data/config/preferences/Scilab.json +15 -0
  111. data/config/preferences/Setext.json +3 -0
  112. data/config/preferences/Shell Script.json +25 -0
  113. data/config/preferences/Slate.json +113 -0
  114. data/config/preferences/Source.json +132 -0
  115. data/config/preferences/Subversion.json +10 -0
  116. data/config/preferences/TODO.json +3 -0
  117. data/config/preferences/Tabular.json +3 -0
  118. data/config/preferences/Tcl.json +82 -0
  119. data/config/preferences/TerminalMate.json +112 -0
  120. data/config/preferences/Text.json +89 -0
  121. data/config/preferences/TextMate.json +38 -0
  122. data/config/preferences/Textile.json +76 -0
  123. data/config/preferences/Thrift.json +56 -0
  124. data/config/preferences/Transmit.json +3 -0
  125. data/config/preferences/Twiki.json +51 -0
  126. data/config/preferences/Txt2tags.json +81 -0
  127. data/config/preferences/Vectorscript.json +1280 -0
  128. data/config/preferences/XML.json +60 -0
  129. data/config/preferences/Xcode.json +3 -0
  130. data/config/preferences/YAML.json +24 -0
  131. data/config/preferences/iCalendar.json +10 -0
  132. data/config/preferences/iTerm.json +36 -0
  133. data/config/preferences/reStructuredText.json +48 -0
  134. data/config/rc.rb +49 -0
  135. data/config/syntax/ANTLR.json +5 -5
  136. data/config/syntax/{ASP VB.net.json → ASP vb.NET.json } +3 -3
  137. data/config/syntax/ASP.json +1 -1
  138. data/config/syntax/ActionScript.json +6 -6
  139. data/config/syntax/Active4D Config.json +86 -0
  140. data/config/syntax/Active4D Library.json +20 -0
  141. data/config/syntax/Active4D.json +418 -0
  142. data/config/syntax/Ada.json +3 -3
  143. data/config/syntax/Ant.json +196 -0
  144. data/config/syntax/Apache.json +7 -7
  145. data/config/syntax/AppleScript.json +3 -3
  146. data/config/syntax/{Bibtex.json → BibTeX.json} +1 -1
  147. data/config/syntax/Bison.json +59 -0
  148. data/config/syntax/{Blog (HTML).json → Blog - HTML.json } +2 -2
  149. data/config/syntax/{Blog (Markdown).json → Blog - Markdown.json } +2 -2
  150. data/config/syntax/Blog (Text).json b/data/config/syntax/Blog - → Text.json +0 -0
  151. data/config/syntax/Blog (Textile).json b/data/config/syntax/Blog - → Textile.json +0 -0
  152. data/config/syntax/C++.json +3 -3
  153. data/config/syntax/C.json +13 -13
  154. data/config/syntax/CMake Listfile.json +171 -0
  155. data/config/syntax/CSS.json +6 -6
  156. data/config/syntax/CSV.json +108 -0
  157. data/config/syntax/ColdFusion.json +204 -0
  158. data/config/syntax/D.json +560 -0
  159. data/config/syntax/Diff.json +1 -1
  160. data/config/syntax/DokuWiki.json +412 -0
  161. data/config/syntax/Doxygen.json +80 -0
  162. data/config/syntax/Dylan.json +4 -4
  163. data/config/syntax/Erlang.json +5 -5
  164. data/config/syntax/F-Script.json +1 -1
  165. data/config/syntax/FXScript.json +5 -5
  166. data/config/syntax/Fortran - Modern.json +221 -0
  167. data/config/syntax/Fortran - Punchcard.json +468 -0
  168. data/config/syntax/GTD.json +39 -0
  169. data/config/syntax/GTDalt.json +233 -0
  170. data/config/syntax/Gettext.json +118 -0
  171. data/config/syntax/Go.json +555 -0
  172. data/config/syntax/{DOT.json → Graphviz (DOT).json } +3 -3
  173. data/config/syntax/Greasemonkey.json +56 -0
  174. data/config/syntax/Gri.json +4 -4
  175. data/config/syntax/{HTML-ASP.json → HTML (ASP).json } +1 -1
  176. data/config/syntax/{HTML for ASP.net.json → HTML (ASP.net).json } +19 -19
  177. data/config/syntax/HTML (Active4D).json +540 -0
  178. data/config/syntax/HTML (Erlang).json +31 -0
  179. data/config/syntax/HTML (Tcl).json +1 -1
  180. data/config/syntax/HTML.json +20 -20
  181. data/config/syntax/Haskell.json +3 -3
  182. data/config/syntax/Installer Distribution Script.json +135 -0
  183. data/config/syntax/Io.json +6 -6
  184. data/config/syntax/JSON.json +151 -0
  185. data/config/syntax/{JavaProperties.json → Java Properties.json } +2 -2
  186. data/config/syntax/Java Server Page (JSP).json +163 -0
  187. data/config/syntax/Java.json +7 -7
  188. data/config/syntax/JavaDoc.json +435 -0
  189. data/config/syntax/JavaScript.json +8 -8
  190. data/config/syntax/LaTeX Log.json +3 -3
  191. data/config/syntax/LaTeX Memoir.json +101 -0
  192. data/config/syntax/LaTeX.json +2 -2
  193. data/config/syntax/Lex-Flex.json +396 -0
  194. data/config/syntax/LilyPond.json +608 -0
  195. data/config/syntax/Logo.json +48 -0
  196. data/config/syntax/Logtalk.json +6 -6
  197. data/config/syntax/Lua.json +1 -1
  198. data/config/syntax/{M.json → MATLAB.json} +3 -3
  199. data/config/syntax/MEL.json +7 -7
  200. data/config/syntax/MIPS.json b/data/config/syntax/MIPS → Assembler.json +0 -0
  201. data/config/syntax/MacPorts Portfile.json +298 -0
  202. data/config/syntax/Mail.json +1 -1
  203. data/config/syntax/Markdown.json +6 -6
  204. data/config/syntax/Maven POM.json +774 -0
  205. data/config/syntax/Mediawiki.json +736 -0
  206. data/config/syntax/MoinMoin.json +335 -0
  207. data/config/syntax/MultiMarkdown.json +41 -0
  208. data/config/syntax/Nemerle.json +128 -0
  209. data/config/syntax/OCaml.json +4 -4
  210. data/config/syntax/OCamllex.json +307 -0
  211. data/config/syntax/OCamlyacc.json +346 -0
  212. data/config/syntax/Objective-C++.json +2 -2
  213. data/config/syntax/Objective-C.json +979 -0
  214. data/config/syntax/Octave.json +417 -0
  215. data/config/syntax/PHP.json +32 -32
  216. data/config/syntax/Pascal.json +1 -1
  217. data/config/syntax/Perl.json +8 -8
  218. data/config/syntax/{Plain text.json → Plain Text.json } +1 -1
  219. data/config/syntax/PmWiki.json +241 -0
  220. data/config/syntax/Postscript.json +206 -0
  221. data/config/syntax/Processing.json +8 -8
  222. data/config/syntax/Prolog.json +70 -0
  223. data/config/syntax/Python.json +1934 -0
  224. data/config/syntax/{Quake3 Config.json → Quake Style .cfg.json } +1 -1
  225. data/config/syntax/R.json +2 -2
  226. data/config/syntax/Ragel.json +362 -0
  227. data/config/syntax/Rd (R Documentation).json +119 -0
  228. data/config/syntax/Regular Expressions (Oniguruma).json +186 -0
  229. data/config/syntax/Regular Expressions (Python).json +188 -0
  230. data/config/syntax/Release Notes.json +78 -0
  231. data/config/syntax/Remind.json +461 -0
  232. data/config/syntax/Rez.json +5 -5
  233. data/config/syntax/Ruby Sass.json +497 -0
  234. data/config/syntax/Ruby.json +13 -13
  235. data/config/syntax/S5 Slide Show.json +85 -0
  236. data/config/syntax/SQL.json +11 -11
  237. data/config/syntax/SSH Config.json +55 -0
  238. data/config/syntax/SWIG.json +2 -2
  239. data/config/syntax/SWeave.json +139 -0
  240. data/config/syntax/Scheme.json +8 -8
  241. data/config/syntax/Scilab.json +69 -0
  242. data/config/syntax/Setext.json +247 -0
  243. data/config/syntax/{Shell-Unix-Generic.json → Shell Script (Bash).json } +4 -4
  244. data/config/syntax/Slate.json +5 -5
  245. data/config/syntax/Strings File.json +53 -0
  246. data/config/syntax/TSV.json +83 -0
  247. data/config/syntax/Tcl.json +1 -1
  248. data/config/syntax/TeX Math.json +2 -2
  249. data/config/syntax/TeX.json +2 -2
  250. data/config/syntax/Textile.json +9 -9
  251. data/config/syntax/Thrift.json +641 -0
  252. data/config/syntax/Twiki.json +1 -1
  253. data/config/syntax/Txt2tags.json +154 -0
  254. data/config/syntax/XML strict.json +4 -4
  255. data/config/syntax/XML.json +6 -6
  256. data/config/syntax/XSL.json +2 -2
  257. data/config/syntax/camlp4.json +63 -0
  258. data/config/syntax/mod_perl.json +72 -0
  259. data/config/syntax/reStructuredText.json +1 -1
  260. data/config/syntax/{Subversion commit message.json → svn-commit.tmp.json} +0 -0
  261. data/config/tutorial +23 -19
  262. data/config/welcome +3 -3
  263. data/lib/ver.rb +273 -62
  264. data/lib/ver/entry.rb +142 -26
  265. data/lib/ver/font.rb +51 -0
  266. data/lib/ver/help.rb +16 -0
  267. data/lib/ver/help/describe_key.rb +82 -0
  268. data/lib/ver/help/help_for_help.rb +39 -0
  269. data/lib/ver/hover_completion.rb +129 -0
  270. data/lib/ver/keymap.rb +95 -24
  271. data/lib/ver/layout.rb +107 -43
  272. data/lib/ver/methods.rb +24 -8
  273. data/lib/ver/methods/clipboard.rb +91 -0
  274. data/lib/ver/methods/completion.rb +146 -71
  275. data/lib/ver/methods/control.rb +203 -222
  276. data/lib/ver/methods/ctags.rb +55 -0
  277. data/lib/ver/methods/delete.rb +30 -0
  278. data/lib/ver/methods/help.rb +7 -0
  279. data/lib/ver/methods/insert.rb +233 -1
  280. data/lib/ver/methods/move.rb +181 -32
  281. data/lib/ver/methods/open.rb +208 -0
  282. data/lib/ver/methods/preview.rb +14 -0
  283. data/lib/ver/methods/save.rb +111 -0
  284. data/lib/ver/methods/search.rb +57 -7
  285. data/lib/ver/methods/select.rb +97 -17
  286. data/lib/ver/methods/shortcuts.rb +21 -0
  287. data/lib/ver/methods/views.rb +56 -1
  288. data/lib/ver/mode.rb +60 -14
  289. data/lib/ver/status.rb +97 -19
  290. data/lib/ver/syntax.rb +14 -6
  291. data/lib/ver/syntax/detector.rb +16 -5
  292. data/lib/ver/syntax/processor.rb +9 -3
  293. data/lib/ver/text.rb +258 -199
  294. data/lib/ver/text/index.rb +103 -0
  295. data/lib/ver/theme.rb +27 -16
  296. data/lib/ver/tooltip.rb +59 -0
  297. data/lib/ver/vendor/binary_search.rb +61 -0
  298. data/lib/ver/vendor/levenshtein.rb +57 -0
  299. data/lib/ver/{textpow.rb → vendor/textpow.rb} +31 -29
  300. data/lib/ver/view.rb +65 -41
  301. data/lib/ver/view/console.rb +171 -0
  302. data/lib/ver/view/entry.rb +9 -5
  303. data/lib/ver/view/list.rb +44 -29
  304. data/lib/ver/view/list/ex.rb +71 -0
  305. data/lib/ver/view/list/grep.rb +42 -0
  306. data/lib/ver/view/list/methods.rb +159 -0
  307. data/lib/ver/view/term.rb +249 -0
  308. data/tasks/syntax_list.rake +3 -2
  309. data/ver.gemspec +4 -4
  310. metadata +230 -28
  311. data/config/syntax/Bulletin Board.json +0 -428
  312. data/config/syntax/HTML (Mason).json +0 -207
  313. data/config/syntax/HTML (Rails).json +0 -52
  314. data/config/syntax/Movable Type.json +0 -348
  315. data/config/syntax/Ruby on Rails.json +0 -170
  316. data/config/syntax/SQL (Rails).json +0 -31
  317. data/config/syntax/Smarty.json +0 -110
  318. data/config/syntax/Standard ML.json +0 -322
@@ -3,19 +3,19 @@
3
3
  "fileTypes": [
4
4
  "r"
5
5
  ],
6
- "foldingStartMarker": "(\/\\*\\*|\\{\\s*$)",
7
- "foldingStopMarker": "(\\*\\*\/|^\\s*\\})",
6
+ "foldingStartMarker": "(/\\*\\*|\\{\\s*$)",
7
+ "foldingStopMarker": "(\\*\\*/|^\\s*\\})",
8
8
  "keyEquivalent": "^~R",
9
9
  "name": "Rez",
10
10
  "patterns": [
11
11
  {
12
- "begin": "\/\\*",
12
+ "begin": "/\\*",
13
13
  "captures": {
14
14
  "0": {
15
15
  "name": "punctuation.definition.comment.rez"
16
16
  }
17
17
  },
18
- "end": "\\*\/",
18
+ "end": "\\*/",
19
19
  "name": "comment.block.rez"
20
20
  },
21
21
  {
@@ -24,7 +24,7 @@
24
24
  "name": "punctuation.definition.comment.rez"
25
25
  }
26
26
  },
27
- "match": "(\/\/).*$\\n?",
27
+ "match": "(//).*$\\n?",
28
28
  "name": "comment.line.double-slash.rez"
29
29
  },
30
30
  {
@@ -0,0 +1,497 @@
1
+ {
2
+ "comment": "",
3
+ "fileTypes": [
4
+ "sass"
5
+ ],
6
+ "foldingStartMarker": "^\\s*([-%#\\:\\.\\w\\=].*)\\s$",
7
+ "foldingStopMarker": "^\\s*$",
8
+ "keyEquivalent": "^~S",
9
+ "name": "Ruby Sass",
10
+ "patterns": [
11
+ {
12
+ "begin": "^(\\!)([a-zA-Z0-9_-]+)\\s*((?:\\|\\|)?=)",
13
+ "beginCaptures": {
14
+ "1": {
15
+ "name": "punctuation.definition.entity.sass"
16
+ },
17
+ "2": {
18
+ "name": "variable.other.sass"
19
+ },
20
+ "3": {
21
+ "name": "punctuation.definition.entity.sass"
22
+ }
23
+ },
24
+ "end": "(;)?$",
25
+ "endCaptures": {
26
+ "1": {
27
+ "name": "invalid.illegal.punctuation.sass"
28
+ }
29
+ },
30
+ "name": "meta.variable-declaration.sass",
31
+ "patterns": [
32
+ {
33
+ "include": "#property-value"
34
+ }
35
+ ]
36
+ },
37
+ {
38
+ "begin": "^(=)([a-zA-Z0-9_-]+)",
39
+ "beginCaptures": {
40
+ "1": {
41
+ "name": "punctuation.definition.entity.sass"
42
+ },
43
+ "2": {
44
+ "name": "variable.other.sass"
45
+ },
46
+ "3": {
47
+ "name": "punctuation.definition.entity.sass"
48
+ }
49
+ },
50
+ "end": "(;)?$",
51
+ "endCaptures": {
52
+ "1": {
53
+ "name": "invalid.illegal.punctuation.sass"
54
+ }
55
+ },
56
+ "name": "meta.variable-declaration.sass.mixin",
57
+ "patterns": [
58
+ {
59
+ "include": "#property-value"
60
+ }
61
+ ]
62
+ },
63
+ {
64
+ "begin": "^\\s*(\\+)([a-zA-Z0-9_-]+)",
65
+ "beginCaptures": {
66
+ "1": {
67
+ "name": "punctuation.definition.entity.sass"
68
+ },
69
+ "2": {
70
+ "name": "variable.other.sass"
71
+ },
72
+ "3": {
73
+ "name": "punctuation.definition.entity.sass"
74
+ }
75
+ },
76
+ "end": "(;)?$",
77
+ "endCaptures": {
78
+ "1": {
79
+ "name": "invalid.illegal.punctuation.sass"
80
+ }
81
+ },
82
+ "name": "meta.variable-usage.sass",
83
+ "patterns": [
84
+ {
85
+ "captures": {
86
+ "1": {
87
+ "name": "punctuation.definition.entity.css"
88
+ },
89
+ "2": {
90
+ "name": "variable.other.sass"
91
+ }
92
+ },
93
+ "match": "(\\!)([a-zA-Z0-9_-]+)",
94
+ "name": "meta.variable-usage.sass"
95
+ },
96
+ {
97
+ "include": "#string-single"
98
+ },
99
+ {
100
+ "include": "#string-double"
101
+ }
102
+ ]
103
+ },
104
+ {
105
+ "begin": "(?=[.*&#a-zA-Z][:.*&#a-zA-Z]*)",
106
+ "end": "(;)?$",
107
+ "endCaptures": {
108
+ "1": {
109
+ "name": "invalid.illegal.punctuation.sass"
110
+ }
111
+ },
112
+ "name": "meta.selector.css",
113
+ "patterns": [
114
+ {
115
+ "include": "#comment-block"
116
+ },
117
+ {
118
+ "match": "(&)",
119
+ "name": "keyword.other.parent-reference.sass"
120
+ },
121
+ {
122
+ "match": "\\b(a|abbr|acronym|address|area|b|base|big|blockquote|body|br|button|caption|cite|code|col|colgroup|dd|del|dfn|div|dl|dt|em|fieldset|form|frame|frameset|(h[1-6])|head|hr|html|i|iframe|img|input|ins|kbd|label|legend|li|link|map|meta|noframes|noscript|object|ol|optgroup|option|p|param|pre|q|samp|script|select|small|span|strike|strong|sub|sup|table|tbody|td|textarea|tfoot|th|thead|title|tr|tt|ul|var)\\b",
123
+ "name": "entity.name.tag.css.sass"
124
+ },
125
+ {
126
+ "captures": {
127
+ "1": {
128
+ "name": "punctuation.definition.entity.css"
129
+ }
130
+ },
131
+ "match": "(\\.)[a-zA-Z0-9_-]+",
132
+ "name": "entity.other.attribute-name.class.sass"
133
+ },
134
+ {
135
+ "captures": {
136
+ "1": {
137
+ "name": "punctuation.definition.entity.sass"
138
+ }
139
+ },
140
+ "match": "(#)[a-zA-Z][a-zA-Z0-9_-]*",
141
+ "name": "entity.other.attribute-name.id.css.sass"
142
+ },
143
+ {
144
+ "match": "\\*",
145
+ "name": "entity.name.tag.wildcard.sass"
146
+ },
147
+ {
148
+ "captures": {
149
+ "1": {
150
+ "name": "punctuation.definition.entity.sass"
151
+ }
152
+ },
153
+ "match": "(:+)\\b(after|before|first-child|first-letter|first-line|selection)\\b",
154
+ "name": "entity.other.attribute-name.pseudo-element.sass"
155
+ },
156
+ {
157
+ "captures": {
158
+ "1": {
159
+ "name": "punctuation.definition.entity.sass"
160
+ }
161
+ },
162
+ "match": "(:)\\b(active|hover|link|visited|focus)\\b",
163
+ "name": "entity.other.attribute-name.pseudo-class.css.sass"
164
+ },
165
+ {
166
+ "captures": {
167
+ "1": {
168
+ "name": "punctuation.definition.entity.sass"
169
+ },
170
+ "2": {
171
+ "name": "entity.other.attribute-name.attribute.sass"
172
+ },
173
+ "3": {
174
+ "name": "punctuation.separator.operator.sass"
175
+ },
176
+ "4": {
177
+ "name": "string.unquoted.attribute-value.sass"
178
+ },
179
+ "5": {
180
+ "name": "string.quoted.double.attribute-value.sass"
181
+ },
182
+ "6": {
183
+ "name": "punctuation.definition.string.begin.sass"
184
+ },
185
+ "7": {
186
+ "name": "punctuation.definition.string.end.sass"
187
+ }
188
+ },
189
+ "match": "(?i)(\\[)\\s*(-?[_a-z\\\\[[:^ascii:]]][_a-z0-9\\-\\\\[[:^ascii:]]]*)(?:\\s*([~|^$*]?=)\\s*(?:(-?[_a-z\\\\[[:^ascii:]]][_a-z0-9\\-\\\\[[:^ascii:]]]*)|((?>(['\"])(?:[^\\\\]|\\\\.)*?(\\6)))))?\\s*(\\])",
190
+ "name": "meta.attribute-selector.css.sass"
191
+ }
192
+ ]
193
+ },
194
+ {
195
+ "include": "#comment-block"
196
+ },
197
+ {
198
+ "begin": "^\\s*((@)import\\b)",
199
+ "beginCaptures": {
200
+ "1": {
201
+ "name": "keyword.control.at-rule.import.sass"
202
+ },
203
+ "2": {
204
+ "name": "punctuation.definition.keyword.sass"
205
+ }
206
+ },
207
+ "end": "(;)?$",
208
+ "endCaptures": {
209
+ "1": {
210
+ "name": "invalid.illegal.punctuation.sass"
211
+ }
212
+ },
213
+ "name": "meta.at-rule.import.sass",
214
+ "patterns": [
215
+ {
216
+ "include": "#string-double"
217
+ },
218
+ {
219
+ "begin": "(url)\\s*(\\()\\s*",
220
+ "beginCaptures": {
221
+ "1": {
222
+ "name": "support.function.url.sass"
223
+ },
224
+ "2": {
225
+ "name": "punctuation.section.function.sass"
226
+ }
227
+ },
228
+ "end": "\\s*(\\))\\s*",
229
+ "endCaptures": {
230
+ "1": {
231
+ "name": "punctuation.section.function.sass"
232
+ }
233
+ },
234
+ "patterns": [
235
+ {
236
+ "match": "[^'\") \\t]+",
237
+ "name": "variable.parameter.url.sass"
238
+ },
239
+ {
240
+ "include": "#string-single"
241
+ },
242
+ {
243
+ "include": "#string-double"
244
+ }
245
+ ]
246
+ },
247
+ {
248
+ "match": "([^\"'\\n;]+)",
249
+ "name": "variable.parameter.url.sass"
250
+ }
251
+ ]
252
+ },
253
+ {
254
+ "begin": "^\\s*((@)media)\\s+(((all|aural|braille|embossed|handheld|print|projection|screen|tty|tv)\\s*,?\\s*)+)\\s*{",
255
+ "captures": {
256
+ "1": {
257
+ "name": "keyword.control.at-rule.media.sass"
258
+ },
259
+ "2": {
260
+ "name": "punctuation.definition.keyword.sass"
261
+ },
262
+ "3": {
263
+ "name": "support.constant.media.sass"
264
+ }
265
+ },
266
+ "end": "\\s*((?=;|\\}))",
267
+ "name": "meta.at-rule.media.sass",
268
+ "patterns": [
269
+ {
270
+ "include": "$self"
271
+ }
272
+ ]
273
+ },
274
+ {
275
+ "begin": "(?<![-a-z])(:)(?=[-a-z])",
276
+ "beginCaptures": {
277
+ "1": {
278
+ "name": "punctuation.definition.entity.css.sass"
279
+ }
280
+ },
281
+ "end": "(;)?$",
282
+ "endCaptures": {
283
+ "1": {
284
+ "name": "invalid.illegal.punctuation.sass"
285
+ }
286
+ },
287
+ "name": "meta.property-name.sass",
288
+ "patterns": [
289
+ {
290
+ "match": "\\b(align|azimuth|background-attachment|background-color|background-image|background-position|background-repeat|background|border-bottom-color|border-bottom-style|border-bottom-width|border-bottom|border-collapse|border-color|border-left-color|border-left-style|border-left-width|border-left|border-right-color|border-right-style|border-right-width|border-right|border-spacing|border-style|border-top-color|border-top-style|border-top-width|border-top|border-width|border|bottom|caption-side|clear|clip|color|content|counter-increment|counter-reset|cue-after|cue-before|cue|cursor|decoration|direction|display|elevation|empty-cells|family|float|font-family|font-size-adjust|font-size|font-stretch|font-style|font-variant|font-weight|font|height|image|indent|left|letter-spacing|line-height|list-style-image|list-style-position|list-style-type|list-style|margin-bottom|margin-left|margin-right|margin-top|marker-offset|margin|marks|max-height|max-width|min-height|min-width|-moz-border-radius|opacity|orphans|outline-color|outline-style|outline-width|outline|overflow(-[xy])?|padding-bottom|padding-left|padding-right|padding-top|padding|page-break-after|page-break-before|page-break-inside|page|pause-after|pause-before|pause|pitch-range|pitch|play-during|position|quotes|repeat|richness|right|shadow|size|speak-header|speak-numeral|speak-punctuation|speech-rate|speak|stress|style|table-layout|text|text-align|text-decoration|text-indent|text-shadow|text-transform|top|transform|unicode-bidi|vertical-align|visibility|voice-family|volume|weight|white-space|widows|width|word-spacing|z-index)\\b",
291
+ "name": "support.type.property-name.css.sass"
292
+ },
293
+ {
294
+ "include": "#property-value"
295
+ }
296
+ ]
297
+ },
298
+ {
299
+ "begin": "^[ \\t]+\\b(align|azimuth|background-attachment|background-color|background-image|background-position|background-repeat|background|border-bottom-color|border-bottom-style|border-bottom-width|border-bottom|border-collapse|border-color|border-left-color|border-left-style|border-left-width|border-left|border-right-color|border-right-style|border-right-width|border-right|border-spacing|border-style|border-top-color|border-top-style|border-top-width|border-top|border-width|border|bottom|caption-side|clear|clip|color|content|counter-increment|counter-reset|cue-after|cue-before|cue|cursor|decoration|direction|display|elevation|empty-cells|family|float|font-family|font-size-adjust|font-size|font-stretch|font-style|font-variant|font-weight|font|height|image|indent|left|letter-spacing|line-height|list-style-image|list-style-position|list-style-type|list-style|margin-bottom|margin-left|margin-right|margin-top|marker-offset|margin|marks|max-height|max-width|min-height|min-width|-moz-border-radius|opacity|orphans|outline-color|outline-style|outline-width|outline|overflow(-[xy])?|padding-bottom|padding-left|padding-right|padding-top|padding|page-break-after|page-break-before|page-break-inside|page|pause-after|pause-before|pause|pitch-range|pitch|play-during|position|quotes|repeat|richness|right|shadow|size|speak-header|speak-numeral|speak-punctuation|speech-rate|speak|stress|style|table-layout|text|text-align|text-decoration|text-indent|text-shadow|text-transform|top|transform|unicode-bidi|vertical-align|visibility|voice-family|volume|weight|white-space|widows|width|word-spacing|z-index)\\b(:|=)",
300
+ "beginCaptures": {
301
+ "1": {
302
+ "name": "support.type.property-name.css.sass"
303
+ },
304
+ "2": {
305
+ "name": "punctuation.definition.entity.css.sass"
306
+ }
307
+ },
308
+ "end": "(;)?$",
309
+ "endCaptures": {
310
+ "1": {
311
+ "name": "invalid.illegal.punctuation.sass"
312
+ }
313
+ },
314
+ "name": "meta.property-name.sass",
315
+ "patterns": [
316
+ {
317
+ "include": "#property-value"
318
+ }
319
+ ]
320
+ }
321
+ ],
322
+ "repository": {
323
+ "comment-block": {
324
+ "begin": "( *)(/\\*|\\/)",
325
+ "captures": {
326
+ "0": {
327
+ "name": "punctuation.definition.comment.sass"
328
+ }
329
+ },
330
+ "end": "^$",
331
+ "name": "comment.block.sass"
332
+ },
333
+ "property-value": {
334
+ "begin": "(:)?\\s+",
335
+ "beginCaptures": {
336
+ "1": {
337
+ "name": "invalid.illegal.punctuation.sass"
338
+ }
339
+ },
340
+ "end": "(;)?$",
341
+ "endCaptures": {
342
+ "1": {
343
+ "name": "invalid.illegal.punctuation.sass"
344
+ }
345
+ },
346
+ "name": "meta.property-value.sass",
347
+ "patterns": [
348
+ {
349
+ "match": "([-=+*/])",
350
+ "name": "punctuation.definition.entity.css"
351
+ },
352
+ {
353
+ "captures": {
354
+ "1": {
355
+ "name": "punctuation.definition.entity.css"
356
+ },
357
+ "2": {
358
+ "name": "variable.other.sass"
359
+ }
360
+ },
361
+ "match": "(\\!)([a-zA-Z0-9_-]+)",
362
+ "name": "meta.variable-usage.sass"
363
+ },
364
+ {
365
+ "match": "\\b(absolute|all-scroll|always|auto|baseline|below|bidi-override|block|bold|bolder|both|bottom|break-all|break-word|capitalize|center|char|circle|col-resize|collapse|crosshair|dashed|decimal|default|disabled|disc|distribute-all-lines|distribute-letter|distribute-space|distribute|dotted|double|e-resize|ellipsis|fixed|groove|hand|help|hidden|horizontal|ideograph-alpha|ideograph-numeric|ideograph-parenthesis|ideograph-space|inactive|inherit|inline-block|inline|inset|inside|inter-ideograph|inter-word|italic|justify|keep-all|left|lighter|line-edge|line-through|line|list-item|loose|lower-alpha|lower-roman|lowercase|lr-tb|ltr|medium|middle|move|n-resize|ne-resize|newspaper|no-drop|no-repeat|nw-resize|none|normal|not-allowed|nowrap|oblique|outset|outside|overline|pointer|progress|relative|repeat-x|repeat-y|repeat|right|ridge|row-resize|rtl|s-resize|scroll|se-resize|separate|small-caps|solid|square|static|strict|super|sw-resize|table-footer-group|table-header-group|tb-rl|text-bottom|text-top|text|thick|thin|top|transparent|underline|upper-alpha|upper-roman|uppercase|vertical-ideographic|vertical-text|visible|w-resize|wait|whitespace)\\b",
366
+ "name": "support.constant.property-value.css.sass"
367
+ },
368
+ {
369
+ "match": "(\\b(?i:arial|century|comic|courier|garamond|georgia|helvetica|impact|lucida(?: sans)?|symbol|system|tahoma|times(?: new roman)?|trebuchet|utopia|verdana|webdings|sans-serif|serif|monospace)\\b)",
370
+ "name": "support.constant.font-name.css.sass"
371
+ },
372
+ {
373
+ "match": "(\\b((?:x{1,2}-)?small|smaller|medium|(?:x{1,2}-)?large|larger)\\b)",
374
+ "name": "support.constant.font-size.css.sass"
375
+ },
376
+ {
377
+ "comment": "http://www.w3schools.com/css/css_colors.asp",
378
+ "match": "\\b(aqua|black|blue|fuchsia|gray|green|lime|maroon|navy|olive|purple|red|silver|teal|white|yellow)\\b",
379
+ "name": "support.constant.color.w3c-standard-color-name.css.sass"
380
+ },
381
+ {
382
+ "comment": "These colours are mostly recognised but will not validate. ref: http://www.w3schools.com/css/css_colornames.asp",
383
+ "match": "\\b(seagreen|hotpink|lawngreen|darkgreen|violet|darkred|crimson|green|sandybrown|navy|magenta|darkslategray|steelblue|silver|darkgrey|mistyrose|gray|aliceblue|blueviolet|lightpink|saddlebrown|chocolate|limegreen|lightslategray|yellowgreen|pink|lightskyblue|indigo|lightblue|floralwhite|navajowhite|mediumvioletred|honeydew|aquamarine|blue|olivedrab|palegreen|slategray|lavenderblush|wheat|moccasin|mediumturquoise|mediumspringgreen|lightcoral|mintcream|tomato|lightgrey|black|darkmagenta|dimgray|darkturquoise|midnightblue|plum|indianred|coral|lightcyan|mediumslateblue|darkcyan|darkslateblue|darkkhaki|ivory|azure|khaki|powderblue|darkgoldenrod|orangered|burlywood|turquoise|royalblue|maroon|cornsilk|antiquewhite|yellow|teal|orange|grey|darkslategrey|slateblue|seashell|darkorchid|snow|lightslategrey|cyan|greenyellow|palevioletred|goldenrod|deepskyblue|lightyellow|lightseagreen|sienna|lemonchiffon|darkviolet|paleturquoise|slategrey|skyblue|purple|mediumpurple|cadetblue|fuchsia|chartreuse|darksalmon|lightgoldenrodyellow|white|springgreen|olive|forestgreen|peachpuff|peru|dimgrey|mediumseagreen|thistle|firebrick|darkgray|mediumaquamarine|darkolivegreen|mediumblue|palegoldenrod|blanchedalmond|ghostwhite|gold|gainsboro|darkseagreen|cornflowerblue|lime|lavender|beige|orchid|mediumorchid|whitesmoke|bisque|lightgray|tan|salmon|rosybrown|red|dodgerblue|brown|aqua|oldlace|deeppink|papayawhip|lightsalmon|lightsteelblue|darkorange|darkblue|linen|lightgreen)\\b",
384
+ "name": "invalid.deprecated.color.w3c-non-standard-color-name.css.sass"
385
+ },
386
+ {
387
+ "match": "(-|\\+)?\\s*[0-9]+(\\.[0-9]+)?",
388
+ "name": "constant.numeric.css"
389
+ },
390
+ {
391
+ "match": "(?<=[\\d])(px|pt|cm|mm|in|em|ex|pc)\\b|%",
392
+ "name": "keyword.other.unit.css"
393
+ },
394
+ {
395
+ "captures": {
396
+ "1": {
397
+ "name": "punctuation.definition.constant.css"
398
+ }
399
+ },
400
+ "match": "(#)([0-9a-fA-F]{3}|[0-9a-fA-F]{6})\\b",
401
+ "name": "constant.other.color.rgb-value.css"
402
+ },
403
+ {
404
+ "include": "#string-double"
405
+ },
406
+ {
407
+ "include": "#string-single"
408
+ },
409
+ {
410
+ "begin": "(rgb|url|attr|counter|counters)\\s*(\\()",
411
+ "beginCaptures": {
412
+ "1": {
413
+ "name": "support.function.misc.sass"
414
+ },
415
+ "2": {
416
+ "name": "punctuation.section.function.sass"
417
+ }
418
+ },
419
+ "end": "(\\))",
420
+ "endCaptures": {
421
+ "1": {
422
+ "name": "punctuation.section.function.sass"
423
+ }
424
+ },
425
+ "patterns": [
426
+ {
427
+ "include": "#string-single"
428
+ },
429
+ {
430
+ "include": "#string-double"
431
+ },
432
+ {
433
+ "match": "(\\b0*((1?[0-9]{1,2})|(2([0-4][0-9]|5[0-5])))\\s*,\\s*)(0*((1?[0-9]{1,2})|(2([0-4][0-9]|5[0-5])))\\s*,\\s*)(0*((1?[0-9]{1,2})|(2([0-4][0-9]|5[0-5])))\\b)",
434
+ "name": "constant.other.color.rgb-value.sass"
435
+ },
436
+ {
437
+ "match": "\\b([0-9]{1,2}|100)\\s*%,\\s*([0-9]{1,2}|100)\\s*%,\\s*([0-9]{1,2}|100)\\s*%",
438
+ "name": "constant.other.color.rgb-percentage.sass"
439
+ },
440
+ {
441
+ "match": "[^'\") \\t]+",
442
+ "name": "variable.parameter.misc.sass"
443
+ }
444
+ ]
445
+ },
446
+ {
447
+ "match": "\\!\\s*important",
448
+ "name": "keyword.other.important.sass"
449
+ }
450
+ ]
451
+ },
452
+ "string-double": {
453
+ "begin": "\"",
454
+ "beginCaptures": {
455
+ "0": {
456
+ "name": "punctuation.definition.string.begin.sass"
457
+ }
458
+ },
459
+ "end": "\"",
460
+ "endCaptures": {
461
+ "0": {
462
+ "name": "punctuation.definition.string.end.sass"
463
+ }
464
+ },
465
+ "name": "string.quoted.double.sass",
466
+ "patterns": [
467
+ {
468
+ "match": "\\\\.",
469
+ "name": "constant.character.escape.sass"
470
+ }
471
+ ]
472
+ },
473
+ "string-single": {
474
+ "begin": "'",
475
+ "beginCaptures": {
476
+ "0": {
477
+ "name": "punctuation.definition.string.begin.sass"
478
+ }
479
+ },
480
+ "end": "'",
481
+ "endCaptures": {
482
+ "0": {
483
+ "name": "punctuation.definition.string.end.sass"
484
+ }
485
+ },
486
+ "name": "string.quoted.single.sass",
487
+ "patterns": [
488
+ {
489
+ "match": "\\\\.",
490
+ "name": "constant.character.escape.sass"
491
+ }
492
+ ]
493
+ }
494
+ },
495
+ "scopeName": "source.sass",
496
+ "uuid": "F73505F1-0CD8-4ED1-93AA-B88050B3D8D4"
497
+ }