ultraviolet 0.10.2 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (178) hide show
  1. data/.gitmodules +3 -0
  2. data/Gemfile +10 -0
  3. data/Gemfile.lock +28 -0
  4. data/Rakefile +18 -47
  5. data/Readme.md +89 -0
  6. data/bin/theme2latexrender +0 -0
  7. data/bin/theme2xhtmlrender +0 -0
  8. data/bin/uv +0 -0
  9. data/lib/uv.rb +78 -75
  10. data/lib/uv/render_processor.rb +128 -119
  11. data/lib/uv/utility.rb +62 -62
  12. data/lib/uv/version.rb +3 -0
  13. data/spec/spec_helper.rb +2 -0
  14. data/spec/ultraviolet_spec.rb +13 -0
  15. data/ultraviolet.gemspec +15 -0
  16. metadata +123 -271
  17. data/History.txt +0 -25
  18. data/Manifest.txt +0 -233
  19. data/README.txt +0 -52
  20. data/syntax/actionscript.syntax +0 -97
  21. data/syntax/active4d.syntax +0 -276
  22. data/syntax/active4d_html.syntax +0 -311
  23. data/syntax/active4d_ini.syntax +0 -50
  24. data/syntax/active4d_library.syntax +0 -21
  25. data/syntax/ada.syntax +0 -33
  26. data/syntax/antlr.syntax +0 -151
  27. data/syntax/apache.syntax +0 -191
  28. data/syntax/applescript.syntax +0 -384
  29. data/syntax/asp.syntax +0 -70
  30. data/syntax/asp_vb.net.syntax +0 -129
  31. data/syntax/bibtex.syntax +0 -151
  32. data/syntax/blog_html.syntax +0 -41
  33. data/syntax/blog_markdown.syntax +0 -42
  34. data/syntax/blog_text.syntax +0 -27
  35. data/syntax/blog_textile.syntax +0 -27
  36. data/syntax/build.syntax +0 -53
  37. data/syntax/bulletin_board.syntax +0 -287
  38. data/syntax/c++.syntax +0 -109
  39. data/syntax/c.syntax +0 -326
  40. data/syntax/cake.syntax +0 -55
  41. data/syntax/camlp4.syntax +0 -36
  42. data/syntax/cm.syntax +0 -32
  43. data/syntax/coldfusion.syntax +0 -119
  44. data/syntax/context_free.syntax +0 -176
  45. data/syntax/cs.syntax +0 -59
  46. data/syntax/css.syntax +0 -195
  47. data/syntax/css_experimental.syntax +0 -1925
  48. data/syntax/csv.syntax +0 -68
  49. data/syntax/d.syntax +0 -142
  50. data/syntax/diff.syntax +0 -81
  51. data/syntax/dokuwiki.syntax +0 -204
  52. data/syntax/dot.syntax +0 -47
  53. data/syntax/doxygen.syntax +0 -43
  54. data/syntax/dylan.syntax +0 -62
  55. data/syntax/eiffel.syntax +0 -78
  56. data/syntax/erlang.syntax +0 -922
  57. data/syntax/f-script.syntax +0 -80
  58. data/syntax/fortran.syntax +0 -141
  59. data/syntax/fxscript.syntax +0 -142
  60. data/syntax/greasemonkey.syntax +0 -34
  61. data/syntax/gri.syntax +0 -83
  62. data/syntax/groovy.syntax +0 -191
  63. data/syntax/gtd.syntax +0 -22
  64. data/syntax/gtdalt.syntax +0 -143
  65. data/syntax/haml.syntax +0 -88
  66. data/syntax/haskell.syntax +0 -88
  67. data/syntax/html-asp.syntax +0 -27
  68. data/syntax/html.syntax +0 -362
  69. data/syntax/html_django.syntax +0 -36
  70. data/syntax/html_for_asp.net.syntax +0 -424
  71. data/syntax/html_mason.syntax +0 -119
  72. data/syntax/html_rails.syntax +0 -40
  73. data/syntax/html_tcl.syntax +0 -26
  74. data/syntax/icalendar.syntax +0 -32
  75. data/syntax/inform.syntax +0 -48
  76. data/syntax/ini.syntax +0 -55
  77. data/syntax/installer_distribution_script.syntax +0 -77
  78. data/syntax/io.syntax +0 -81
  79. data/syntax/java.syntax +0 -211
  80. data/syntax/javaproperties.syntax +0 -20
  81. data/syntax/javascript.syntax +0 -256
  82. data/syntax/javascript_+_prototype.syntax +0 -72
  83. data/syntax/javascript_+_prototype_bracketed.syntax +0 -140
  84. data/syntax/jquery_javascript.syntax +0 -114
  85. data/syntax/json.syntax +0 -136
  86. data/syntax/languagedefinition.syntax +0 -708
  87. data/syntax/latex.syntax +0 -566
  88. data/syntax/latex_beamer.syntax +0 -41
  89. data/syntax/latex_log.syntax +0 -50
  90. data/syntax/latex_memoir.syntax +0 -64
  91. data/syntax/lexflex.syntax +0 -219
  92. data/syntax/lighttpd.syntax +0 -54
  93. data/syntax/lilypond.syntax +0 -492
  94. data/syntax/lisp.syntax +0 -61
  95. data/syntax/literate_haskell.syntax +0 -24
  96. data/syntax/logo.syntax +0 -29
  97. data/syntax/logtalk.syntax +0 -152
  98. data/syntax/lua.syntax +0 -86
  99. data/syntax/m.syntax +0 -142
  100. data/syntax/macports_portfile.syntax +0 -163
  101. data/syntax/mail.syntax +0 -118
  102. data/syntax/makefile.syntax +0 -36
  103. data/syntax/man.syntax +0 -17
  104. data/syntax/markdown.syntax +0 -543
  105. data/syntax/mediawiki.syntax +0 -567
  106. data/syntax/mel.syntax +0 -92
  107. data/syntax/mips.syntax +0 -66
  108. data/syntax/mod_perl.syntax +0 -50
  109. data/syntax/modula-3.syntax +0 -47
  110. data/syntax/moinmoin.syntax +0 -189
  111. data/syntax/mootools.syntax +0 -572
  112. data/syntax/movable_type.syntax +0 -162
  113. data/syntax/multimarkdown.syntax +0 -39
  114. data/syntax/objective-c++.syntax +0 -18
  115. data/syntax/objective-c.syntax +0 -233
  116. data/syntax/ocaml.syntax +0 -764
  117. data/syntax/ocamllex.syntax +0 -167
  118. data/syntax/ocamlyacc.syntax +0 -184
  119. data/syntax/opengl.syntax +0 -14
  120. data/syntax/pascal.syntax +0 -77
  121. data/syntax/perl.syntax +0 -1115
  122. data/syntax/php.syntax +0 -1253
  123. data/syntax/plain_text.syntax +0 -32
  124. data/syntax/pmwiki.syntax +0 -113
  125. data/syntax/postscript.syntax +0 -114
  126. data/syntax/processing.syntax +0 -106
  127. data/syntax/prolog.syntax +0 -40
  128. data/syntax/property_list.syntax +0 -635
  129. data/syntax/python.syntax +0 -868
  130. data/syntax/python_django.syntax +0 -21
  131. data/syntax/qmake_project.syntax +0 -114
  132. data/syntax/qt_c++.syntax +0 -26
  133. data/syntax/quake3_config.syntax +0 -32
  134. data/syntax/r.syntax +0 -81
  135. data/syntax/r_console.syntax +0 -16
  136. data/syntax/ragel.syntax +0 -201
  137. data/syntax/rd_r_documentation.syntax +0 -91
  138. data/syntax/regexp.syntax +0 -50
  139. data/syntax/regular_expressions_oniguruma.syntax +0 -107
  140. data/syntax/regular_expressions_python.syntax +0 -109
  141. data/syntax/release_notes.syntax +0 -46
  142. data/syntax/remind.syntax +0 -253
  143. data/syntax/restructuredtext.syntax +0 -250
  144. data/syntax/rez.syntax +0 -80
  145. data/syntax/ruby.syntax +0 -1035
  146. data/syntax/ruby_experimental.syntax +0 -145
  147. data/syntax/ruby_on_rails.syntax +0 -88
  148. data/syntax/s5.syntax +0 -69
  149. data/syntax/scheme.syntax +0 -347
  150. data/syntax/scilab.syntax +0 -41
  151. data/syntax/setext.syntax +0 -147
  152. data/syntax/shell-unix-generic.syntax +0 -384
  153. data/syntax/slate.syntax +0 -149
  154. data/syntax/smarty.syntax +0 -63
  155. data/syntax/sql.syntax +0 -237
  156. data/syntax/sql_rails.syntax +0 -18
  157. data/syntax/ssh-config.syntax +0 -33
  158. data/syntax/standard_ml.syntax +0 -121
  159. data/syntax/strings_file.syntax +0 -39
  160. data/syntax/subversion_commit_message.syntax +0 -36
  161. data/syntax/sweave.syntax +0 -84
  162. data/syntax/swig.syntax +0 -57
  163. data/syntax/tcl.syntax +0 -152
  164. data/syntax/template_toolkit.syntax +0 -121
  165. data/syntax/tex.syntax +0 -86
  166. data/syntax/tex_math.syntax +0 -49
  167. data/syntax/textile.syntax +0 -215
  168. data/syntax/tsv.syntax +0 -50
  169. data/syntax/twiki.syntax +0 -241
  170. data/syntax/txt2tags.syntax +0 -79
  171. data/syntax/vectorscript.syntax +0 -57
  172. data/syntax/xhtml_1.0.syntax +0 -4027
  173. data/syntax/xml.syntax +0 -180
  174. data/syntax/xml_strict.syntax +0 -92
  175. data/syntax/xsl.syntax +0 -60
  176. data/syntax/yaml.syntax +0 -160
  177. data/syntax/yui_javascript.syntax +0 -176
  178. data/test/test_uv.rb +0 -0
@@ -1,18 +0,0 @@
1
- ---
2
- name: SQL (Rails)
3
- fileTypes:
4
- - erbsql
5
- scopeName: source.sql.ruby
6
- uuid: D54FBDED-5481-4CC7-B75F-66465A499882
7
- foldingStartMarker: \s*\(\s*$
8
- patterns:
9
- - name: source.ruby.rails.embedded.sql
10
- begin: <%+(?!>)=?
11
- end: "%>"
12
- patterns:
13
- - name: comment.line.number-sign.ruby
14
- match: "#.*?(?=%>)"
15
- - include: source.ruby.rails
16
- - include: source.sql
17
- foldingStopMarker: ^\s*\)
18
- keyEquivalent: ^~R
@@ -1,33 +0,0 @@
1
- ---
2
- name: SSH Config
3
- fileTypes:
4
- - ssh_config
5
- - config
6
- - sshd_config
7
- scopeName: source.ssh-config
8
- uuid: B273855C-59D3-4DF3-9B7C-E68E0057D315
9
- patterns:
10
- - name: keyword.other.ssh-config
11
- match: \b(AddressFamily|B(atchMode|indAddress)|C(hallengeResponseAuthentication|heckHostIP|iphers?|learAllForwardings|ompression(Level)?|onnect(Timeout|ionAttempts))|DynamicForward|E(nableSSHKeysign|scapeChar)|Forward(Agent|X11(Trusted)?)|G(SSAPI(Authentication|DelegateCredentials)|atewayPorts|lobalKnownHostsFile)|Host(KeyAlgorithms|KeyAlias|Name|basedAuthentication)|Identit(iesOnly|yFile)|L(ocalForward|ogLevel)|MACs|N(oHostAuthenticationForLocalhost|umberOfPasswordPrompts)|P(asswordAuthentication|ort|referredAuthentications|rotocol|roxyCommand|ubkeyAuthentication)|R(SAAuthentication|emoteForward|hostsRSAAuthentication)|S(erverAliveCountMax|erverAliveInterval|martcardDevice|trictHostKeyChecking)|TCPKeepAlive|U(sePrivilegedPort|ser(KnownHostsFile)?)|VerifyHostKeyDNS|XAuthLocation)\b
12
- - captures:
13
- "1":
14
- name: comment.line.number-sign.ssh-config
15
- "2":
16
- name: punctuation.definition.comment.ssh-config
17
- "3":
18
- name: comment.line.double-slash.ssh-config
19
- "4":
20
- name: punctuation.definition.comment.ssh-config
21
- match: ((#).*$\n?)|((//).*$\n?)
22
- - captures:
23
- "1":
24
- name: storage.type.ssh-config
25
- "2":
26
- name: entity.name.section.ssh-config
27
- "3":
28
- name: meta.toc-list.ssh-config
29
- match: (?:^| |\t)(Host)\s+((.*))$
30
- - name: constant.numeric.ssh-config
31
- match: \b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b
32
- - name: constant.numeric.ssh-config
33
- match: \b[0-9]+\b
@@ -1,121 +0,0 @@
1
- ---
2
- name: Standard ML
3
- fileTypes:
4
- - sml
5
- - sig
6
- scopeName: source.ml
7
- repository:
8
- spec:
9
- patterns:
10
- - name: meta.spec.ml.type
11
- captures:
12
- "1":
13
- name: keyword.other.ml
14
- match: \b(type)\b
15
- - name: meta.spec.ml.datatype
16
- captures:
17
- "1":
18
- name: keyword.other.ml
19
- match: \b(datatype)\b
20
- - name: meta.spec.ml.val
21
- captures:
22
- "1":
23
- name: keyword.other.ml
24
- match: "\\b(val)\\s*\\w+:"
25
- - name: meta.spec.ml.structure
26
- captures:
27
- "1":
28
- name: keyword.other.ml
29
- match: "\\b(structure)\\s*\\w+:"
30
- - name: meta.spec.ml.include
31
- captures:
32
- "1":
33
- name: keyword.other.ml
34
- match: \b(include)\b
35
- uuid: 9B148AEA-F723-4EDE-8B7F-2F4FD730BC3A
36
- foldingStartMarker: \(\*|\b(struct|sig)\b
37
- patterns:
38
- - name: comment.block.ml
39
- captures:
40
- "0":
41
- name: punctuation.definition.comment.ml
42
- begin: \(\*
43
- end: \*\)
44
- - name: keyword.other.ml
45
- match: \b(val|datatype|struct|as|let|in|abstype|local|where|case|of|fn|raise|exception|handle|ref|infix)\b
46
- - name: meta.module.sigdec.ml
47
- captures:
48
- "1":
49
- name: keyword.other.delimiter.ml
50
- "2":
51
- name: keyword.other.delimiter.ml
52
- begin: \b(sig)\b
53
- end: \b(end)\b
54
- patterns:
55
- - include: "#spec"
56
- - name: keyword.control.ml
57
- match: \b(if|then|else)\b
58
- - name: meta.definition.fun.ml
59
- captures:
60
- "1":
61
- name: keyword.control.fun.ml
62
- "2":
63
- name: entity.name.function.ml
64
- match: \b(fun|and)\s+([\w']+)\b
65
- - name: string.quoted.double.ml
66
- endCaptures:
67
- "0":
68
- name: punctuation.definition.string.end.ml
69
- begin: "\""
70
- beginCaptures:
71
- "0":
72
- name: punctuation.definition.string.begin.ml
73
- end: "\""
74
- patterns:
75
- - name: constant.character.escape.ml
76
- match: \\.
77
- - name: constant.character.ml
78
- captures:
79
- "1":
80
- name: punctuation.definition.constant.ml
81
- "3":
82
- name: punctuation.definition.constant.ml
83
- match: (#")(\\)?.(")
84
- - name: constant.numeric.ml
85
- match: \b\d*\.?\d+\b
86
- - name: keyword.operator.logical.ml
87
- match: \b(andalso|orelse|not)\b
88
- - name: meta.module.dec.ml
89
- captures:
90
- "1":
91
- name: storage.type.module.binder.ml
92
- "2":
93
- name: entity.name.type.module.ml
94
- begin: |-
95
- (?x)\b
96
- (functor|structure|signature|funsig)\s+
97
- (\w+)\s* # identifier
98
- end: (?==|:)
99
- - name: keyword.other.module.ml
100
- match: \b(open)\b
101
- - name: constant.language.ml
102
- match: \b(nil|true|false|NONE|SOME)\b
103
- - name: meta.typeabbrev.ml
104
- captures:
105
- "1":
106
- name: keyword.other.typeabbrev.ml
107
- "2":
108
- name: variable.other.typename.ml
109
- begin: ^\s*(type|eqtype) .* =
110
- end: $
111
- patterns:
112
- - name: meta.typeexp.ml
113
- match: (([a-zA-Z0-9\.\* ]|(\->))*)
114
- - name: meta.type.ascription.ml
115
- captures:
116
- "2":
117
- name: constant.other.type.ml
118
- match: "[^:](:)\\s*(([a-zA-Z0-9\\.\\*\\_ ]|(\\->))*)"
119
- comment: type annotation/ascription
120
- foldingStopMarker: \*\)|\bend\b
121
- keyEquivalent: ^~S
@@ -1,39 +0,0 @@
1
- ---
2
- name: Strings File
3
- fileTypes:
4
- - strings
5
- scopeName: source.strings
6
- uuid: 429E2DB7-EB4F-4B34-A4DF-DBFD3336C581
7
- patterns:
8
- - name: comment.block.strings
9
- captures:
10
- "0":
11
- name: punctuation.definition.comment.strings
12
- begin: /\*
13
- end: \*/
14
- - name: string.quoted.double.strings
15
- endCaptures:
16
- "0":
17
- name: punctuation.definition.string.end.strings
18
- begin: "\""
19
- beginCaptures:
20
- "0":
21
- name: punctuation.definition.string.begin.strings
22
- end: "\""
23
- patterns:
24
- - name: constant.character.escape.strings
25
- match: \\(\\|[abefnrtv'"?]|[0-3]\d{,2}|[4-7]\d?|x[a-zA-Z0-9]+)
26
- - name: invalid.illegal.unknown-escape.strings
27
- match: \\.
28
- - name: constant.other.placeholder.strings
29
- match: "(?x)%\n\
30
- \t\t\t\t\t\t(\\d+\\$)? # field (argument #)\n\
31
- \t\t\t\t\t\t[#0\\- +']* # flags\n\
32
- \t\t\t\t\t\t[,;:_]? # separator character (AltiVec)\n\
33
- \t\t\t\t\t\t((-?\\d+)|\\*(-?\\d+\\$)?)? # minimum field width\n\
34
- \t\t\t\t\t\t(\\.((-?\\d+)|\\*(-?\\d+\\$)?)?)? # precision\n\
35
- \t\t\t\t\t\t(hh|h|ll|l|j|t|z|q|L|vh|vl|v|hv|hl)? # length modifier\n\
36
- \t\t\t\t\t\t[@diouxXDOUeEfFgGaACcSspn%] # conversion type\n\
37
- \t\t\t\t\t"
38
- - name: invalid.illegal.placeholder.c
39
- match: "%"
@@ -1,36 +0,0 @@
1
- ---
2
- name: svn-commit.tmp
3
- fileTypes:
4
- - svn-commit.tmp
5
- - svn-commit.2.tmp
6
- scopeName: text.subversion-commit
7
- uuid: 5B201F55-90BC-4A69-9A44-1BABE5A9FE99
8
- patterns:
9
- - name: meta.bullet-point.strong
10
- captures:
11
- "1":
12
- name: punctuation.definition.item.subversion-commit
13
- match: "^\\s*(\xE2\x80\xA2).*$\\n?"
14
- - name: meta.bullet-point.light
15
- captures:
16
- "1":
17
- name: punctuation.definition.item.subversion-commit
18
- match: "^\\s*(\xC2\xB7).*$\\n?"
19
- - name: meta.bullet-point.star
20
- captures:
21
- "1":
22
- name: punctuation.definition.item.subversion-commit
23
- match: ^\s*(\*).*$\n?
24
- - name: meta.scope.changed-files.svn
25
- begin: (^--This line, and those below, will be ignored--$\n?)
26
- beginCaptures:
27
- "1":
28
- name: meta.separator.svn
29
- end: ^--not gonna happen--$
30
- patterns:
31
- - name: markup.inserted.svn
32
- match: ^A\s+.*$\n?
33
- - name: markup.changed.svn
34
- match: ^(M|.M)\s+.*$\n?
35
- - name: markup.deleted.svn
36
- match: ^D\s+.*$\n?
@@ -1,84 +0,0 @@
1
- ---
2
- name: SWeave
3
- fileTypes:
4
- - Snw
5
- - Rnw
6
- - snw
7
- - rnw
8
- firstLineMatch: ^\\documentclass(?!.*\{beamer\})|^<<(.?*)>>=$
9
- scopeName: text.tex.latex.sweave
10
- uuid: 1F450973-8259-4BA2-A754-48C634561A13
11
- foldingStartMarker: ^<<(.?*)>>=|\\begin\{.*\}
12
- patterns:
13
- - name: meta.block.parameters.sweave
14
- endCaptures:
15
- "1":
16
- name: punctuation.definition.parameters.end.sweave
17
- begin: ^(<<)
18
- beginCaptures:
19
- "1":
20
- name: punctuation.definition.parameters.begin.sweave
21
- end: (>>)(?==)
22
- patterns:
23
- - name: meta.parameter.sweave
24
- captures:
25
- "1":
26
- name: keyword.other.name-of-parameter.sweave
27
- "2":
28
- name: punctuation.separator.key-value.sweave
29
- "3":
30
- name: constant.language.boolean.sweave
31
- "4":
32
- name: constant.language.results.sweave
33
- "5":
34
- name: string.unquoted.label.sweave
35
- match: (\w+)(=)(?:(true|false)|(verbatim|tex|hide)|([\w.]+))
36
- - name: string.unquoted.label.sweave
37
- match: "[\\w.]+"
38
- - name: punctuation.separator.parameters.sweave
39
- match: ","
40
- - name: meta.block.code.sweave
41
- endCaptures:
42
- "1":
43
- name: punctuation.section.embedded.end.sweave
44
- "2":
45
- name: comment.line.other.sweave
46
- begin: (?<=>>)(=)(.*)\n
47
- contentName: source.r.embedded.sweave
48
- beginCaptures:
49
- "1":
50
- name: punctuation.section.embedded.begin.sweave
51
- "2":
52
- name: comment.line.other.sweave
53
- end: ^(@)(.*)$
54
- patterns:
55
- - name: invalid.illegal.sweave
56
- match: ^\s+@.*\n?
57
- - include: source.r
58
- - name: invalid.illegal.sweave
59
- match: ^\s+<<.*\n?
60
- - name: meta.block.source.r
61
- captures:
62
- "1":
63
- name: punctuation.definition.arguments.begin.latex
64
- "2":
65
- name: punctuation.definition.arguments.end.latex
66
- begin: ^\\begin(\{)Scode(\})
67
- contentName: source.r.embedded.sweave
68
- end: ^\\end(\{)Scode(\})
69
- patterns:
70
- - include: source.r
71
- - name: source.r.embedded.sweave
72
- endCaptures:
73
- "1":
74
- name: punctuation.definition.arguments.end.latex
75
- begin: \\Sexpr(\{)
76
- beginCaptures:
77
- "1":
78
- name: punctuation.definition.arguments.begin.latex
79
- end: (\})
80
- patterns:
81
- - include: source.r
82
- - include: text.tex.latex
83
- foldingStopMarker: ^@(.?*)$|\\end\{.*\}
84
- keyEquivalent: ^~S
@@ -1,57 +0,0 @@
1
- ---
2
- name: SWIG
3
- fileTypes:
4
- - i
5
- - swg
6
- scopeName: source.swig
7
- uuid: C781B0D0-BED9-11D9-A141-000393A143CC
8
- foldingStartMarker: (/\*\*|%?\{\s*$)
9
- patterns:
10
- - include: source.c++
11
- comment: SWIG files contain C or C++ code, so it's logical to derive from the C++ rules
12
- - name: keyword.other.directive.inlinecode.swig
13
- captures:
14
- "1":
15
- name: punctuation.definition.keyword.swig
16
- match: (%)(header|init|inline|native|runtime|wrapper)\b
17
- - name: keyword.other.function-parameter.swig
18
- captures:
19
- "1":
20
- name: punctuation.definition.keyword.swig
21
- match: (\$)([\*&]*[1-9]+(_name|_type|_ltype|_basetype|_mangle|_descriptor){0,1}|action|input|result|symname)\b
22
- - name: support.function.type.swig
23
- match: \b(in|out|typecheck|arginit|default|check|argout|freearg|newfree|memberin|varin|varout|throws|numinputs)\b
24
- - name: keyword.other.directive.swig
25
- captures:
26
- "1":
27
- name: punctuation.definition.keyword.swig
28
- match: (%)(apply|callback|clear|constant|contract|define|enddef|extend|feature|ignore|insert|makedefault|module|nocallback|nodefault|rename|typemap|varargs|template)\b
29
- - name: meta.preprocessor.swig
30
- captures:
31
- "1":
32
- name: keyword.control.import.swig
33
- match: \(\s*(allegrocl|chicken|csharp|guile|java|modula3|mzscheme|ocaml|perl|php|pike|python|ruby|sexp|tcl|xml)\b
34
- - name: meta.preprocessor.swig
35
- captures:
36
- "1":
37
- name: punctuation.definition.preprocessor.swig
38
- "2":
39
- name: keyword.control.import.swig
40
- "3":
41
- name: string.quoted.double.swig
42
- begin: ^\s*(%)\s*(include|import)\b\s+("?[A-Za-z0-9\._]+"?)
43
- end: $
44
- - name: meta.preprocessor.macro.swig
45
- captures:
46
- "1":
47
- name: punctuation.definition.preprocessor.swig
48
- match: (%)([A-Za-z]+[A-Za-z0-9_]*)\b
49
- - name: storage.type.swig
50
- match: \bSWIG_TYPECHECK_(POINTER|VOIDPTR|BOOL|UINT8|INT8|UINT16|INT16|UINT32|INT32|UINT64|INT64|UINT128|INT128|INTEGER|FLOAT|DOUBLE|COMPLEX|UNICHAR|UNISTRING|CHAR|STRING|BOOL_ARRAY|INT8_ARRAY|INT16_ARRAY|INT32_ARRAY|INT64_ARRAY|INT128_ARRAY|FLOAT_ARRAY|DOUBLE_ARRAY|CHAR_ARRAY|STRING_ARRAY)\b
51
- - name: source.swig.codeblock
52
- captures:
53
- "1":
54
- name: punctuation.section.embedded.swig
55
- match: (%\{|%\})
56
- foldingStopMarker: (\*\*/|^\s*%?\})
57
- keyEquivalent: ^~S
@@ -1,152 +0,0 @@
1
- ---
2
- name: Tcl
3
- fileTypes:
4
- - tcl
5
- scopeName: source.tcl
6
- repository:
7
- escape:
8
- name: constant.character.escape.tcl
9
- match: \\(\d{1,3}|x[a-fA-F0-9]+|u[a-fA-F0-9]{1,4}|.|\n)
10
- bare-string:
11
- endCaptures:
12
- "1":
13
- name: invalid.illegal.tcl
14
- begin: (?:^|(?<=\s))"
15
- end: "\"([^\\s\\]]*)"
16
- patterns:
17
- - include: "#escape"
18
- - include: "#variable"
19
- comment: matches a single quote-enclosed word without scoping
20
- regexp:
21
- begin: (?=\S)(?![\n;\]])
22
- end: (?=[\n;\]])
23
- patterns:
24
- - name: string.regexp.tcl
25
- begin: (?=[^ \t\n;])
26
- end: (?=[ \t\n;])
27
- patterns:
28
- - include: "#braces"
29
- - include: "#bare-string"
30
- - include: "#escape"
31
- - include: "#variable"
32
- - begin: "[ \\t]"
33
- end: (?=[\n;\]])
34
- patterns:
35
- - include: "#variable"
36
- - include: "#embedded"
37
- - include: "#escape"
38
- - include: "#braces"
39
- - include: "#string"
40
- comment: swallow the rest of the command
41
- comment: matches a single word, named as a regexp, then swallows the rest of the command
42
- braces:
43
- endCaptures:
44
- "1":
45
- name: invalid.illegal.tcl
46
- begin: (?:^|(?<=\s))\{
47
- end: \}([^\s\]]*)
48
- patterns:
49
- - name: constant.character.escape.tcl
50
- match: \\[{}\n]
51
- - include: "#inner-braces"
52
- comment: matches a single brace-enclosed word
53
- inner-braces:
54
- begin: \{
55
- end: \}
56
- patterns:
57
- - name: constant.character.escape.tcl
58
- match: \\[{}\n]
59
- - include: "#inner-braces"
60
- comment: matches a nested brace in a brace-enclosed word
61
- variable:
62
- name: variable.other.tcl
63
- captures:
64
- "1":
65
- name: punctuation.definition.variable.tcl
66
- match: (\$)([a-zA-Z0-9_:]+(\([^\)]+\))?|\{[^\}]*\})
67
- string:
68
- name: string.quoted.double.tcl
69
- begin: (?:^|(?<=\s))(?=")
70
- applyEndPatternLast: 1
71
- end: ""
72
- patterns:
73
- - include: "#bare-string"
74
- comment: matches a single quote-enclosed word with scoping
75
- embedded:
76
- name: source.tcl.embedded
77
- endCaptures:
78
- "0":
79
- name: punctuation.section.embedded.end.tcl
80
- begin: \[
81
- beginCaptures:
82
- "0":
83
- name: punctuation.section.embedded.begin.tcl
84
- end: \]
85
- patterns:
86
- - include: source.tcl
87
- uuid: F01F22AC-7CBB-11D9-9B10-000A95E13C98
88
- foldingStartMarker: \{\s*$
89
- patterns:
90
- - begin: (?<=^|;)\s*((#))
91
- contentName: comment.line.number-sign.tcl
92
- beginCaptures:
93
- "1":
94
- name: comment.line.number-sign.tcl
95
- "2":
96
- name: punctuation.definition.comment.tcl
97
- end: \n
98
- patterns:
99
- - match: (\\\\|\\\n)
100
- - captures:
101
- "1":
102
- name: keyword.control.tcl
103
- match: (?<=^|[\[{;])\s*(if|while|for|catch|return|break|continue|switch|exit|foreach)\b
104
- - captures:
105
- "1":
106
- name: keyword.control.tcl
107
- match: (?<=^|})\s*(then|elseif|else)\b
108
- - captures:
109
- "1":
110
- name: keyword.other.tcl
111
- "2":
112
- name: entity.name.function.tcl
113
- match: ^\s*(proc)\s+([^\s]+)
114
- - captures:
115
- "1":
116
- name: keyword.other.tcl
117
- 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
118
- - begin: (?<=^|[\[{;])\s*(regexp|regsub)\b\s*
119
- beginCaptures:
120
- "1":
121
- name: keyword.other.tcl
122
- end: "[\\n;\\]]"
123
- patterns:
124
- - name: constant.character.escape.tcl
125
- match: \\(?:.|\n)
126
- - match: -\w+\s*
127
- comment: switch for regexp
128
- - begin: --\s*
129
- applyEndPatternLast: 1
130
- end: ""
131
- patterns:
132
- - include: "#regexp"
133
- comment: end of switches
134
- - include: "#regexp"
135
- comment: special-case regexp/regsub keyword in order to handle the expression
136
- - include: "#escape"
137
- - include: "#variable"
138
- - name: string.quoted.double.tcl
139
- endCaptures:
140
- "0":
141
- name: punctuation.definition.string.end.tcl
142
- begin: "\""
143
- beginCaptures:
144
- "0":
145
- name: punctuation.definition.string.begin.tcl
146
- end: "\""
147
- patterns:
148
- - include: "#escape"
149
- - include: "#variable"
150
- - include: "#embedded"
151
- foldingStopMarker: ^\s*\}
152
- keyEquivalent: ^~T