code_rippa 0.0.6 → 0.0.7
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +2 -0
- data/README.md +35 -32
- data/bin/code_rippa +59 -79
- data/code_rippa.gemspec +4 -1
- data/lib/code_rippa.rb +321 -303
- data/lib/code_rippa/render/latex/all_hallows_eve_custom.render +96 -0
- data/lib/code_rippa/render/latex/argonaut.render +120 -0
- data/lib/code_rippa/render/latex/bbedit.render +132 -0
- data/lib/code_rippa/render/latex/black_pearl.render +123 -0
- data/lib/code_rippa/render/latex/black_pearl_ii.render +147 -0
- data/lib/code_rippa/render/latex/bongzilla.render +78 -0
- data/lib/code_rippa/render/latex/close_to_the_sea.render +90 -0
- data/lib/code_rippa/render/latex/clouds.render +117 -0
- data/lib/code_rippa/render/latex/clouds_midnight.render +120 -0
- data/lib/code_rippa/render/latex/coda.render +102 -0
- data/lib/code_rippa/render/latex/cssedit.render +90 -0
- data/lib/code_rippa/render/latex/django.render +129 -0
- data/lib/code_rippa/render/latex/django_smoothy.render +132 -0
- data/lib/code_rippa/render/latex/emacs_strict.render +84 -0
- data/lib/code_rippa/render/latex/espresso.render +102 -0
- data/lib/code_rippa/render/latex/espresso_tutti.render +117 -0
- data/lib/code_rippa/render/latex/fade_to_grey.render +99 -0
- data/lib/code_rippa/render/latex/fake.render +186 -0
- data/lib/code_rippa/render/latex/fluidvision.render +132 -0
- data/lib/code_rippa/render/latex/forlatex.render +90 -0
- data/lib/code_rippa/render/latex/friendship_bracelet.render +102 -0
- data/lib/code_rippa/render/latex/github.render +180 -0
- data/lib/code_rippa/render/latex/glitterbomb.render +120 -0
- data/lib/code_rippa/render/latex/happy_happy_joy_joy_2.render +198 -0
- data/lib/code_rippa/render/latex/idlefingers.render +123 -0
- data/lib/code_rippa/render/latex/ir_black.render +213 -0
- data/lib/code_rippa/render/latex/ir_white.render +207 -0
- data/lib/code_rippa/render/latex/krtheme.render +162 -0
- data/lib/code_rippa/render/latex/lowlight.render +174 -0
- data/lib/code_rippa/render/latex/made_of_code.render +186 -0
- data/lib/code_rippa/render/latex/merbivore.render +99 -0
- data/lib/code_rippa/render/latex/merbivore_soft.render +99 -0
- data/lib/code_rippa/render/latex/{moc.render → mocththeme.render} +1 -1
- data/lib/code_rippa/render/latex/monoindustrial.render +132 -0
- data/lib/code_rippa/render/latex/monokai.render +96 -0
- data/lib/code_rippa/render/latex/multimarkdown.render +75 -0
- data/lib/code_rippa/render/latex/pastie.render +102 -0
- data/lib/code_rippa/render/latex/putty.render +93 -0
- data/lib/code_rippa/render/latex/rails_envy.render +99 -0
- data/lib/code_rippa/render/latex/railscasts.render +93 -0
- data/lib/code_rippa/render/latex/rdark.render +93 -0
- data/lib/code_rippa/render/latex/rubyblue.render +129 -0
- data/lib/code_rippa/render/latex/rubyrobot.render +87 -0
- data/lib/code_rippa/render/latex/ryan_light.render +81 -0
- data/lib/code_rippa/render/latex/solarized_dark.render +537 -0
- data/lib/code_rippa/render/latex/solarized_light.render +534 -0
- data/lib/code_rippa/render/latex/spectacular.render +135 -0
- data/lib/code_rippa/render/latex/starlight.render +51 -0
- data/lib/code_rippa/render/latex/succulent.render +186 -0
- data/lib/code_rippa/render/latex/summer_camp.render +78 -0
- data/lib/code_rippa/render/latex/summer_camp_mod.render +78 -0
- data/lib/code_rippa/render/latex/swyphs_ii.render +105 -0
- data/lib/code_rippa/render/latex/tango.render +135 -0
- data/lib/code_rippa/render/latex/text_ex_machina.render +96 -0
- data/lib/code_rippa/render/latex/tubster.render +93 -0
- data/lib/code_rippa/render/latex/upstream.render +135 -0
- data/lib/code_rippa/render/latex/upstream_sunburst.render +195 -0
- data/lib/code_rippa/render/latex/upstream_vibrant.render +147 -0
- data/lib/code_rippa/render/latex/vibrant_fin.render +141 -0
- data/lib/code_rippa/render/latex/vibrant_ink.render +141 -0
- data/lib/code_rippa/render/latex/vibrant_tango.render +141 -0
- data/lib/code_rippa/render/latex/whys_poignant.render +72 -0
- data/lib/code_rippa/render/latex/zenburn.render +192 -0
- data/lib/code_rippa/syntax/coffeescript.syntax +292 -0
- data/lib/code_rippa/uv_overrides.rb +1 -1
- data/lib/code_rippa/version.rb +2 -1
- data/test/test_private_methods.rb +24 -24
- data/test/test_public_methods.rb +2 -2
- metadata +115 -11
- data/lib/code_rippa/syntax/html.syntax +0 -362
- data/lib/code_rippa/syntax/latex.syntax +0 -566
- data/lib/code_rippa/syntax/latex_beamer.syntax +0 -41
- data/lib/code_rippa/syntax/latex_log.syntax +0 -50
- data/lib/code_rippa/syntax/latex_memoir.syntax +0 -64
- data/lib/code_rippa/syntax/tex.syntax +0 -86
- data/lib/code_rippa/syntax/tex_math.syntax +0 -49
@@ -0,0 +1,192 @@
|
|
1
|
+
---
|
2
|
+
name: zenburn
|
3
|
+
line:
|
4
|
+
begin: ""
|
5
|
+
end: "}}\\\\"
|
6
|
+
filter: "@escaped.gsub(/(\\$)/, '\\\\\\\\\\1').gsub(/\\\\(?!\\$)/, '$\\\\\\\\backslash$').gsub(/(_|\\{|\\}|&|\\#|%)/, '\\\\\\\\\\1').gsub(/~/, '\\\\textasciitilde ').gsub(/ /,'\\\\hspace{1ex}').gsub(/\\t| /,'\\\\hspace{3ex}').gsub(/\\\"/, \"''\").gsub(/(\\^)/,'\\\\\\\\\\1{}')"
|
7
|
+
document:
|
8
|
+
begin: |
|
9
|
+
\documentclass[a4paper,landscape]{article}
|
10
|
+
\usepackage{xcolor}
|
11
|
+
\usepackage{colortbl}
|
12
|
+
\usepackage{longtable}
|
13
|
+
\usepackage[left=2cm,top=1cm,right=3cm,nohead,nofoot]{geometry}
|
14
|
+
\usepackage[T1]{fontenc}
|
15
|
+
\usepackage[scaled]{beramono}
|
16
|
+
\begin{document}
|
17
|
+
|
18
|
+
end: |
|
19
|
+
\end{document}
|
20
|
+
|
21
|
+
tags:
|
22
|
+
- begin: "{\\color[HTML]{87AE86}"
|
23
|
+
end: "}"
|
24
|
+
selector: comment
|
25
|
+
- begin: "{\\color[HTML]{568E4D}"
|
26
|
+
end: "}"
|
27
|
+
selector: keyword.other.phpdoc
|
28
|
+
- begin: "{\\textbf{"
|
29
|
+
end: "}}"
|
30
|
+
selector: punctuation.definition.comment
|
31
|
+
- begin: "{\\color[HTML]{DEDEDE}\\textbf{"
|
32
|
+
end: "}}"
|
33
|
+
selector: keyword.other.directive
|
34
|
+
- begin: "{\\underline{"
|
35
|
+
end: "}}"
|
36
|
+
selector: keyword.other.directive.line-number
|
37
|
+
- begin: "{\\color[HTML]{FF8080}"
|
38
|
+
end: "}"
|
39
|
+
selector: constant.character
|
40
|
+
- begin: "{\\color[HTML]{D68686}"
|
41
|
+
end: "}"
|
42
|
+
selector: string, string.unquoted
|
43
|
+
- begin: "{\\color[HTML]{D6D6D6}"
|
44
|
+
end: "}"
|
45
|
+
selector: string.unquoted.heredoc
|
46
|
+
- begin: "{\\color[HTML]{87D6D5}"
|
47
|
+
end: "}"
|
48
|
+
selector: constant.numeric
|
49
|
+
- begin: "{\\color[HTML]{D6D6AE}\\textbf{"
|
50
|
+
end: "}}"
|
51
|
+
selector: constant.language, support.constant.core
|
52
|
+
- begin: "{\\color[HTML]{CC9495}"
|
53
|
+
end: "}"
|
54
|
+
selector: constant.character, constant.other, support.constant
|
55
|
+
- begin: "{\\color[HTML]{FED6AF}"
|
56
|
+
end: "}"
|
57
|
+
selector: keyword
|
58
|
+
- begin: "{\\color[HTML]{FED6AF}"
|
59
|
+
end: "}"
|
60
|
+
selector: keyword.control
|
61
|
+
- begin: "{\\color[HTML]{FF8000}\\textbf{"
|
62
|
+
end: "}}"
|
63
|
+
selector: entity.name.module,support.other.module
|
64
|
+
- begin: "{\\color[HTML]{FEFED6}"
|
65
|
+
end: "}"
|
66
|
+
selector: keyword.operator
|
67
|
+
- begin: "{\\underline{"
|
68
|
+
end: "}}"
|
69
|
+
selector: source.ocaml keyword.operator.symbol.infix.floating-point
|
70
|
+
- begin: "{\\underline{"
|
71
|
+
end: "}}"
|
72
|
+
selector: source.ocaml keyword.operator.symbol.prefix.floating-point
|
73
|
+
- begin: "{\\color[HTML]{FFFB9D}"
|
74
|
+
end: "}"
|
75
|
+
selector: storage.type,storage.modifier
|
76
|
+
- begin: "{\\color[HTML]{4080A0}"
|
77
|
+
end: "}"
|
78
|
+
selector: entity.name.class.variant
|
79
|
+
- begin: "{"
|
80
|
+
end: "}"
|
81
|
+
selector: storage
|
82
|
+
- begin: "{\\color[HTML]{D6D6D6}"
|
83
|
+
end: "}"
|
84
|
+
selector: entity.name.type,entity.other
|
85
|
+
- begin: "{\\color[HTML]{D78D1B}"
|
86
|
+
end: "}"
|
87
|
+
selector: entity.other.inherited-class
|
88
|
+
- begin: "{\\color[HTML]{FFE000}"
|
89
|
+
end: "}"
|
90
|
+
selector: storage.type.user-defined
|
91
|
+
- begin: "{\\color[HTML]{F4A020}\\underline{"
|
92
|
+
end: "}}"
|
93
|
+
selector: entity.name.type
|
94
|
+
- begin: "{"
|
95
|
+
end: "}"
|
96
|
+
selector: variable.parameter
|
97
|
+
- begin: "{\\color[HTML]{FF5274}\\textbf{"
|
98
|
+
end: "}}"
|
99
|
+
selector: invalid
|
100
|
+
- begin: "{\\color[HTML]{D6D7AF}\\textbf{"
|
101
|
+
end: "}}"
|
102
|
+
selector: entity.other.attribute-name.html
|
103
|
+
- begin: "{\\color[HTML]{D6D7AF}"
|
104
|
+
end: "}"
|
105
|
+
selector: entity.name.tag
|
106
|
+
- begin: "{\\color[HTML]{898989}"
|
107
|
+
end: "}"
|
108
|
+
selector: punctuation.section.embedded.begin.php,punctuation.section.embedded.end.php
|
109
|
+
- begin: "{\\color[HTML]{FED6AF}\\textbf{"
|
110
|
+
end: "}}"
|
111
|
+
selector: variable.parameter, variable.other
|
112
|
+
- begin: "{\\color[HTML]{FED6AF}"
|
113
|
+
end: "}"
|
114
|
+
selector: support.function.construct
|
115
|
+
- begin: "{\\color[HTML]{FEFED6}"
|
116
|
+
end: "}"
|
117
|
+
selector: punctuation.definition.variable
|
118
|
+
- begin: "{\\color[HTML]{FFFD87}"
|
119
|
+
end: "}"
|
120
|
+
selector: support.function,meta.function-call
|
121
|
+
- begin: "{\\color[HTML]{C7BA18}"
|
122
|
+
end: "}"
|
123
|
+
selector: support.function
|
124
|
+
- begin: "{\\color[HTML]{ABD6D5}"
|
125
|
+
end: "}"
|
126
|
+
selector: meta.brace
|
127
|
+
- begin: "{\\color[HTML]{DADADA}"
|
128
|
+
end: "}"
|
129
|
+
selector: punctuation.definition.string.begin,punctuation.definition.string.end
|
130
|
+
- begin: "{\\color[HTML]{EBDAC9}\\textbf{"
|
131
|
+
end: "}}"
|
132
|
+
selector: punctuation.definition.tag.begin.html,punctuation.definition.tag.end.html,meta.tag.structure.any.html
|
133
|
+
- begin: "{\\color[HTML]{FED6AF}\\textbf{"
|
134
|
+
end: "}}"
|
135
|
+
selector: entity.name.tag.yaml
|
136
|
+
- begin: "{\\color[HTML]{D6D6D6}"
|
137
|
+
end: "}"
|
138
|
+
selector: punctuation.definition.entry
|
139
|
+
- begin: "{\\color[HTML]{B7B7B7}\\textbf{"
|
140
|
+
end: "}}"
|
141
|
+
selector: keyword.other.DML.sql, keyword.other.data-integrity.sql
|
142
|
+
- begin: "{\\color[HTML]{95BFF3}\\textbf{"
|
143
|
+
end: "}}"
|
144
|
+
selector: source.sql, constant.other.database-name.sql, constant.other.table-name.sql, keyword.operator.star
|
145
|
+
- begin: \setlength{\fboxsep}{0ex}\colorbox[HTML]{393939}{\rule[-0.5ex]{0pt}{2.0ex}\color[HTML]{FFFFFF}
|
146
|
+
end: "}"
|
147
|
+
selector: source.diff
|
148
|
+
- begin: \setlength{\fboxsep}{0ex}\colorbox[HTML]{9F9D15}{\rule[-0.5ex]{0pt}{2.0ex}\color[HTML]{FFFFFF}
|
149
|
+
end: "}"
|
150
|
+
selector: source.diff meta.diff.comment, source.diff meta.toc-list.comment.diff
|
151
|
+
- begin: \setlength{\fboxsep}{0ex}\colorbox[HTML]{393939}{\rule[-0.5ex]{0pt}{2.0ex}\color[HTML]{CA7172}\textbf{
|
152
|
+
end: "}}"
|
153
|
+
selector: meta.diff.header.from-file
|
154
|
+
- begin: \setlength{\fboxsep}{0ex}\colorbox[HTML]{393939}{\rule[-0.5ex]{0pt}{2.0ex}\color[HTML]{60B38A}\textbf{
|
155
|
+
end: "}}"
|
156
|
+
selector: meta.diff.header.to-file
|
157
|
+
- begin: \setlength{\fboxsep}{0ex}\colorbox[HTML]{393939}{\rule[-0.5ex]{0pt}{2.0ex}\color[HTML]{8CD0D3}
|
158
|
+
end: "}"
|
159
|
+
selector: meta.diff.range.unified
|
160
|
+
- begin: \setlength{\fboxsep}{0ex}\colorbox[HTML]{393939}{\rule[-0.5ex]{0pt}{2.0ex}\color[HTML]{60B38A}
|
161
|
+
end: "}"
|
162
|
+
selector: markup.inserted.diff
|
163
|
+
- begin: \setlength{\fboxsep}{0ex}\colorbox[HTML]{393939}{\rule[-0.5ex]{0pt}{2.0ex}\color[HTML]{CA7172}
|
164
|
+
end: "}"
|
165
|
+
selector: markup.deleted.diff
|
166
|
+
- begin: "{\\color[HTML]{C76F41}"
|
167
|
+
end: "}"
|
168
|
+
selector: string.regexp
|
169
|
+
- begin: "{\\color[HTML]{9E6A5F}"
|
170
|
+
end: "}"
|
171
|
+
selector: string.regexp.arbitrary-repitition
|
172
|
+
- begin: "{\\color[HTML]{F2F2F2}"
|
173
|
+
end: "}"
|
174
|
+
selector: punctuation.definition.arbitrary-repitition
|
175
|
+
- begin: "{\\color[HTML]{CB8E81}"
|
176
|
+
end: "}"
|
177
|
+
selector: string.regexp.character-class
|
178
|
+
- begin: "{\\color[HTML]{F2F2F2}"
|
179
|
+
end: "}"
|
180
|
+
selector: punctuation.definition.character-class
|
181
|
+
listing:
|
182
|
+
begin: |
|
183
|
+
\newcolumntype{C}{>{\color[HTML]{DEDEDE}\columncolor[HTML]{393939}}l}
|
184
|
+
\newcolumntype{N}{>{\color[HTML]{000000}\columncolor[HTML]{838383}}l}
|
185
|
+
\begin{longtable}{NC}
|
186
|
+
|
187
|
+
end: |
|
188
|
+
\end{longtable}
|
189
|
+
|
190
|
+
line-numbers:
|
191
|
+
begin: \texttt{
|
192
|
+
end: "}&\\mbox{\\texttt{"
|
@@ -0,0 +1,292 @@
|
|
1
|
+
---
|
2
|
+
scopeName: source.coffee
|
3
|
+
name: CoffeeScript
|
4
|
+
keyEquivalent: ^~C
|
5
|
+
comment: "CoffeeScript Syntax: version 1"
|
6
|
+
repository:
|
7
|
+
instance_variable:
|
8
|
+
patterns:
|
9
|
+
- name: variable.other.readwrite.instance.coffee
|
10
|
+
match: (@)([a-zA-Z_\$]\w*)?
|
11
|
+
embedded_comment:
|
12
|
+
patterns:
|
13
|
+
- name: comment.line.number-sign.coffee
|
14
|
+
captures:
|
15
|
+
"1":
|
16
|
+
name: punctuation.definition.comment.coffee
|
17
|
+
match: (?<!\\)(#).*$\n?
|
18
|
+
numeric:
|
19
|
+
patterns:
|
20
|
+
- name: constant.numeric.coffee
|
21
|
+
match: (?<!\$)\b((0([box])[0-9a-fA-F]+)|([0-9]+(\.[0-9]+)?(e[+\-]?[0-9]+)?))\b
|
22
|
+
variable_name:
|
23
|
+
patterns:
|
24
|
+
- name: variable.assignment.coffee
|
25
|
+
captures:
|
26
|
+
"1":
|
27
|
+
name: variable.assignment.coffee
|
28
|
+
match: ([a-zA-Z\$_]\w*(\.\w+)*)
|
29
|
+
single_quoted_string:
|
30
|
+
patterns:
|
31
|
+
- name: string.quoted.single.coffee
|
32
|
+
begin: "'"
|
33
|
+
endCaptures:
|
34
|
+
"0":
|
35
|
+
name: punctuation.definition.string.end.coffee
|
36
|
+
beginCaptures:
|
37
|
+
"0":
|
38
|
+
name: punctuation.definition.string.begin.coffee
|
39
|
+
end: "'"
|
40
|
+
patterns:
|
41
|
+
- name: constant.character.escape.coffee
|
42
|
+
match: \\(x\h{2}|[0-2][0-7]{,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.)
|
43
|
+
double_quoted_string:
|
44
|
+
patterns:
|
45
|
+
- name: string.quoted.double.coffee
|
46
|
+
begin: "\""
|
47
|
+
endCaptures:
|
48
|
+
"0":
|
49
|
+
name: punctuation.definition.string.end.coffee
|
50
|
+
beginCaptures:
|
51
|
+
"0":
|
52
|
+
name: punctuation.definition.string.begin.coffee
|
53
|
+
end: "\""
|
54
|
+
patterns:
|
55
|
+
- name: constant.character.escape.coffee
|
56
|
+
match: \\(x\h{2}|[0-2][0-7]{,2}|3[0-6][0-7]|37[0-7]?|[4-7][0-7]?|.)
|
57
|
+
- include: "#interpolated_coffee"
|
58
|
+
interpolated_coffee:
|
59
|
+
patterns:
|
60
|
+
- name: source.coffee.embedded.source
|
61
|
+
begin: \#\{
|
62
|
+
captures:
|
63
|
+
"0":
|
64
|
+
name: punctuation.section.embedded.coffee
|
65
|
+
end: \}
|
66
|
+
patterns:
|
67
|
+
- include: $self
|
68
|
+
uuid: 5B520980-A7D5-4E10-8582-1A4C889A8DE5
|
69
|
+
firstLineMatch: ^#!.*\bcoffee
|
70
|
+
patterns:
|
71
|
+
- name: meta.inline.function.coffee
|
72
|
+
comment: "match stuff like: a -> \xE2\x80\xA6 "
|
73
|
+
captures:
|
74
|
+
"1":
|
75
|
+
name: variable.parameter.function.coffee
|
76
|
+
"2":
|
77
|
+
name: storage.type.function.coffee
|
78
|
+
match: (\([^()]*?\))\s*([=-]>)
|
79
|
+
- name: meta.class.instance.constructor
|
80
|
+
captures:
|
81
|
+
"1":
|
82
|
+
name: keyword.operator.new.coffee
|
83
|
+
"2":
|
84
|
+
name: entity.name.type.instance.coffee
|
85
|
+
match: (new)\s+(\w+(?:\.\w*)*)
|
86
|
+
- name: string.quoted.heredoc.coffee
|
87
|
+
begin: "'''"
|
88
|
+
endCaptures:
|
89
|
+
"0":
|
90
|
+
name: punctuation.definition.string.end.coffee
|
91
|
+
beginCaptures:
|
92
|
+
"0":
|
93
|
+
name: punctuation.definition.string.begin.coffee
|
94
|
+
end: "'''"
|
95
|
+
- name: string.quoted.double.heredoc.coffee
|
96
|
+
begin: "\"\"\""
|
97
|
+
endCaptures:
|
98
|
+
"0":
|
99
|
+
name: punctuation.definition.string.end.coffee
|
100
|
+
beginCaptures:
|
101
|
+
"0":
|
102
|
+
name: punctuation.definition.string.begin.coffee
|
103
|
+
end: "\"\"\""
|
104
|
+
patterns:
|
105
|
+
- name: constant.character.escape.coffee
|
106
|
+
match: \\.
|
107
|
+
- include: "#interpolated_coffee"
|
108
|
+
- name: string.quoted.script.coffee
|
109
|
+
begin: `
|
110
|
+
endCaptures:
|
111
|
+
"0":
|
112
|
+
name: punctuation.definition.string.end.coffee
|
113
|
+
beginCaptures:
|
114
|
+
"0":
|
115
|
+
name: punctuation.definition.string.begin.coffee
|
116
|
+
end: `
|
117
|
+
patterns:
|
118
|
+
- name: constant.character.escape.coffee
|
119
|
+
match: \\(x\h{2}|[0-2][0-7]{,2}|3[0-6][0-7]|37[0-7]?|[4-7][0-7]?|.)
|
120
|
+
- name: comment.block.coffee
|
121
|
+
begin: (?<!#)###(?!#)
|
122
|
+
captures:
|
123
|
+
"0":
|
124
|
+
name: punctuation.definition.comment.coffee
|
125
|
+
end: "###(?:[ \\t]*\\n)"
|
126
|
+
patterns:
|
127
|
+
- name: storage.type.annotation.coffeescript
|
128
|
+
match: "@\\w*"
|
129
|
+
- name: comment.line.number-sign.coffee
|
130
|
+
captures:
|
131
|
+
"1":
|
132
|
+
name: punctuation.definition.comment.coffee
|
133
|
+
match: (#)(?!\{).*$\n?
|
134
|
+
- name: string.regexp.coffee
|
135
|
+
begin: /{3}
|
136
|
+
end: /{3}[imgy]{0,4}
|
137
|
+
patterns:
|
138
|
+
- include: "#interpolated_coffee"
|
139
|
+
- include: "#embedded_comment"
|
140
|
+
- name: string.regexp.coffee
|
141
|
+
match: /(?![\s=/*+{}?]).*?[^\\]/[igmy]{0,4}(?![a-zA-Z0-9])
|
142
|
+
- name: keyword.control.coffee
|
143
|
+
match: "(?x)\n\
|
144
|
+
\t\t\t\t\\b(?<![\\.\\$])(\n\
|
145
|
+
\t\t\t\t\tbreak|by|catch|continue|else|finally|for|in|of|if|return|switch|\n\
|
146
|
+
\t\t\t\t\tthen|throw|try|unless|when|while|until|loop|do|(?<=for)\\s+own\n\
|
147
|
+
\t\t\t\t)(?!\\s*:)\\b\n\
|
148
|
+
\t\t\t"
|
149
|
+
- name: keyword.operator.coffee
|
150
|
+
match: "(?x)\n\
|
151
|
+
\t\t\t\tand=|or=|!|%|&|\\^|\\*|\\/|(\\-)?\\-(?!>)|\\+\\+|\\+|~|==|=(?!>)|!=|<=|>=|<<=|>>=|\n\
|
152
|
+
\t\t\t\t>>>=|<>|<|>|!|&&|\\.\\.(\\.)?|\\?|\\||\\|\\||\\:|\\*=|(?<!\\()/=|%=|\\+=|\\-=|&=|\n\
|
153
|
+
\t\t\t\t\\^=|\\b(?<![\\.\\$])(instanceof|new|delete|typeof|and|or|is|isnt|not)\\b\n\
|
154
|
+
\t\t\t"
|
155
|
+
- name: variable.assignment.coffee
|
156
|
+
captures:
|
157
|
+
"1":
|
158
|
+
name: variable.assignment.coffee
|
159
|
+
"4":
|
160
|
+
name: punctuation.separator.key-value
|
161
|
+
"5":
|
162
|
+
name: keyword.operator.coffee
|
163
|
+
match: ([a-zA-Z\$_](\w|\$|\.)*\s*(?!\::)((:)|(=))(?!(\s*\(.*\))?\s*((=|-)>)))
|
164
|
+
- name: meta.variable.assignment.destructured.coffee
|
165
|
+
begin: (?<=\s|^)([\[\{])(?=.*?[\]\}]\s+[:=])
|
166
|
+
endCaptures:
|
167
|
+
"0":
|
168
|
+
name: keyword.operator.coffee
|
169
|
+
beginCaptures:
|
170
|
+
"0":
|
171
|
+
name: keyword.operator.coffee
|
172
|
+
end: ([\]\}]\s*[:=])
|
173
|
+
patterns:
|
174
|
+
- include: "#variable_name"
|
175
|
+
- include: "#instance_variable"
|
176
|
+
- include: "#single_quoted_string"
|
177
|
+
- include: "#double_quoted_string"
|
178
|
+
- include: "#numeric"
|
179
|
+
- name: meta.function.coffee
|
180
|
+
captures:
|
181
|
+
"2":
|
182
|
+
name: entity.name.function.coffee
|
183
|
+
"3":
|
184
|
+
name: entity.name.function.coffee
|
185
|
+
"4":
|
186
|
+
name: variable.parameter.function.coffee
|
187
|
+
"5":
|
188
|
+
name: storage.type.function.coffee
|
189
|
+
match: "(?x)\n\
|
190
|
+
\t\t\t\t(\\s*)\n\
|
191
|
+
\t\t\t\t(?=[a-zA-Z\\$_])\n\
|
192
|
+
\t\t\t\t(\n\
|
193
|
+
\t\t\t\t\t[a-zA-Z\\$_](\\w|\\$|:|\\.)*\\s*\n\
|
194
|
+
\t\t\t\t\t(?=[:=](\\s*\\(.*\\))?\\s*([=-]>))\n\
|
195
|
+
\t\t\t\t)\n\
|
196
|
+
\t\t\t"
|
197
|
+
- name: storage.type.function.coffee
|
198
|
+
match: "[=-]>"
|
199
|
+
- name: constant.language.boolean.true.coffee
|
200
|
+
match: \b(?<!\.)(true|on|yes)(?!\s*[:=])\b
|
201
|
+
- name: constant.language.boolean.false.coffee
|
202
|
+
match: \b(?<!\.)(false|off|no)(?!\s*[:=])\b
|
203
|
+
- name: constant.language.null.coffee
|
204
|
+
match: \b(?<!\.)null(?!\s*[:=])\b
|
205
|
+
- name: variable.language.coffee
|
206
|
+
match: \b(?<!\.)(super|this|extends)(?!\s*[:=])\b
|
207
|
+
- name: meta.class.coffee
|
208
|
+
captures:
|
209
|
+
"1":
|
210
|
+
name: storage.type.class.coffee
|
211
|
+
"2":
|
212
|
+
name: entity.name.type.class.coffee
|
213
|
+
"3":
|
214
|
+
name: keyword.control.inheritance.coffee
|
215
|
+
"4":
|
216
|
+
name: entity.other.inherited-class.coffee
|
217
|
+
match: (class\b)\s+(@?[a-zA-Z\$_][\w\.]*)?(?:\s+(extends)\s+(@?[a-zA-Z\$\._][\w\.]*))?
|
218
|
+
- name: keyword.other.coffee
|
219
|
+
match: \b(debugger|\\)\b
|
220
|
+
- name: support.class.coffee
|
221
|
+
match: |-
|
222
|
+
(?x)\b(
|
223
|
+
Array|ArrayBuffer|Blob|Boolean|Date|document|event|Function|
|
224
|
+
Int(8|16|32|64)Array|Math|Map|Number|
|
225
|
+
Object|Proxy|RegExp|Set|String|WeakMap|
|
226
|
+
window|Uint(8|16|32|64)Array|XMLHttpRequest
|
227
|
+
)\b
|
228
|
+
- name: entity.name.type.object.coffee
|
229
|
+
match: \b(console)\b
|
230
|
+
- name: support.function.console.coffee
|
231
|
+
match: ((?<=console\.)(debug|warn|info|log|error|time|timeEnd|assert))\b
|
232
|
+
- name: support.function.coffee
|
233
|
+
match: |-
|
234
|
+
(?x)\b(
|
235
|
+
decodeURI(Component)?|encodeURI(Component)?|eval|parse(Float|Int)|require
|
236
|
+
)\b
|
237
|
+
- name: support.function.method.array.coffee
|
238
|
+
match: |-
|
239
|
+
(?x)((?<=\.)(
|
240
|
+
apply|call|concat|every|filter|forEach|from|hasOwnProperty|indexOf|
|
241
|
+
isPrototypeOf|join|lastIndexOf|map|of|pop|propertyIsEnumerable|push|
|
242
|
+
reduce(Right)?|reverse|shift|slice|some|sort|splice|to(Locale)?String|
|
243
|
+
unshift|valueOf
|
244
|
+
))\b
|
245
|
+
- name: support.function.static.array.coffee
|
246
|
+
match: |-
|
247
|
+
(?x)((?<=Array\.)(
|
248
|
+
isArray
|
249
|
+
))\b
|
250
|
+
- name: support.function.static.object.coffee
|
251
|
+
match: |-
|
252
|
+
(?x)((?<=Object\.)(
|
253
|
+
create|definePropert(ies|y)|freeze|getOwnProperty(Descriptors?|Names)|
|
254
|
+
getProperty(Descriptor|Names)|getPrototypeOf|is(Extensible|Frozen|Sealed)?|
|
255
|
+
isnt|keys|preventExtensions|seal
|
256
|
+
))\b
|
257
|
+
- name: support.function.static.math.coffee
|
258
|
+
match: |-
|
259
|
+
(?x)((?<=Math\.)(
|
260
|
+
abs|acos|acosh|asin|asinh|atan|atan2|atanh|ceil|cos|cosh|exp|expm1|floor|
|
261
|
+
hypot|log|log10|log1p|log2|max|min|pow|random|round|sign|sin|sinh|sqrt|
|
262
|
+
tan|tanh|trunc
|
263
|
+
))\b
|
264
|
+
- name: support.function.static.number.coffee
|
265
|
+
match: |-
|
266
|
+
(?x)((?<=Number\.)(
|
267
|
+
is(Finite|Integer|NaN)|toInteger
|
268
|
+
))\b
|
269
|
+
- name: constant.language.coffee
|
270
|
+
match: \b(Infinity|NaN|undefined)\b
|
271
|
+
- name: punctuation.terminator.statement.coffee
|
272
|
+
match: \;
|
273
|
+
- name: meta.delimiter.object.comma.coffee
|
274
|
+
match: ,[ |\t]*
|
275
|
+
- name: meta.delimiter.method.period.coffee
|
276
|
+
match: \.
|
277
|
+
- name: meta.brace.curly.coffee
|
278
|
+
match: \{|\}
|
279
|
+
- name: meta.brace.round.coffee
|
280
|
+
match: \(|\)
|
281
|
+
- name: meta.brace.square.coffee
|
282
|
+
match: \[|\]\s*
|
283
|
+
- include: "#instance_variable"
|
284
|
+
- include: "#single_quoted_string"
|
285
|
+
- include: "#double_quoted_string"
|
286
|
+
- include: "#numeric"
|
287
|
+
foldingStartMarker: ^\s*class\s+\S.*$|.*(->|=>)\s*$|.*[\[{]\s*$
|
288
|
+
foldingStopMarker: ^\s*$|^\s*[}\]]\s*$
|
289
|
+
fileTypes:
|
290
|
+
- coffee
|
291
|
+
- Cakefile
|
292
|
+
- coffee.erb
|