ultraviolet 0.10.0 → 0.10.1
Sign up to get free protection for your applications and to get access to all the features.
- data/History.txt +7 -0
- data/Manifest.txt +184 -188
- data/Rakefile +2 -2
- data/bin/theme2latexrender +9 -30
- data/bin/theme2xhtmlrender +17 -23
- data/lib/uv.rb +2 -2
- data/lib/uv/{html_processor.rb → render_processor.rb} +39 -13
- data/lib/uv/utility.rb +67 -0
- data/render/latex/active4d.render +7 -7
- data/render/latex/all_hallows_eve.render +6 -6
- data/render/latex/amy.render +7 -7
- data/render/latex/blackboard.render +5 -5
- data/render/latex/brilliance_black.render +171 -221
- data/render/latex/brilliance_dull.render +105 -105
- data/render/latex/cobalt.render +12 -12
- data/render/latex/dawn.render +8 -8
- data/render/latex/eiffel.render +4 -4
- data/render/latex/espresso_libre.render +5 -5
- data/render/latex/idle.render +2 -2
- data/render/latex/iplastic.render +5 -5
- data/render/latex/lazy.render +2 -2
- data/render/latex/mac_classic.render +7 -7
- data/render/latex/magicwb_amiga.render +8 -8
- data/render/latex/pastels_on_dark.render +5 -5
- data/render/latex/slush_poppies.render +1 -1
- data/render/latex/spacecadet.render +3 -3
- data/render/latex/sunburst.render +14 -14
- data/render/latex/twilight.render +9 -9
- data/render/latex/zenburnesque.render +2 -2
- data/render/xhtml/amy.render +1 -1
- data/render/xhtml/brilliance_black.render +74 -124
- data/render/xhtml/brilliance_dull.render +6 -6
- data/render/xhtml/files/css/active4d.css +1 -1
- data/render/xhtml/files/css/all_hallows_eve.css +1 -1
- data/render/xhtml/files/css/amy.css +6 -3
- data/render/xhtml/files/css/blackboard.css +3 -3
- data/render/xhtml/files/css/brilliance_black.css +193 -220
- data/render/xhtml/files/css/brilliance_dull.css +110 -90
- data/render/xhtml/files/css/cobalt.css +3 -3
- data/render/xhtml/files/css/dawn.css +6 -6
- data/render/xhtml/files/css/eiffel.css +1 -1
- data/render/xhtml/files/css/espresso_libre.css +2 -2
- data/render/xhtml/files/css/iplastic.css +3 -3
- data/render/xhtml/files/css/mac_classic.css +3 -3
- data/render/xhtml/files/css/magicwb_amiga.css +6 -3
- data/render/xhtml/files/css/pastels_on_dark.css +2 -2
- data/render/xhtml/files/css/spacecadet.css +1 -1
- data/render/xhtml/files/css/sunburst.css +7 -7
- data/render/xhtml/files/css/twilight.css +5 -5
- data/render/xhtml/files/css/zenburnesque.css +5 -2
- data/render/xhtml/mac_classic.render +1 -1
- data/render/xhtml/magicwb_amiga.render +1 -1
- data/render/xhtml/zenburnesque.render +1 -1
- data/syntax/antlr.syntax +49 -26
- data/syntax/apache.syntax +17 -2
- data/syntax/c.syntax +2 -2
- data/syntax/cm.syntax +32 -0
- data/syntax/coldfusion.syntax +4 -3
- data/syntax/css.syntax +8 -3
- data/syntax/d.syntax +4 -0
- data/syntax/groovy.syntax +10 -8
- data/syntax/gtd.syntax +22 -0
- data/syntax/haml.syntax +2 -2
- data/syntax/html.syntax +4 -4
- data/syntax/ini.syntax +5 -4
- data/syntax/javascript.syntax +2 -1
- data/syntax/languagedefinition.syntax +50 -39
- data/syntax/macports_portfile.syntax +21 -1
- data/syntax/makefile.syntax +1 -0
- data/syntax/objective-c.syntax +37 -30
- data/syntax/pascal.syntax +1 -1
- data/syntax/perl.syntax +40 -0
- data/syntax/php.syntax +672 -379
- data/syntax/pmwiki.syntax +113 -0
- data/syntax/property_list.syntax +4 -14
- data/syntax/python.syntax +17 -14
- data/syntax/release_notes.syntax +12 -3
- data/syntax/ruby_experimental.syntax +8 -8
- data/syntax/standard_ml.syntax +79 -3
- data/syntax/twiki.syntax +2 -2
- data/syntax/txt2tags.syntax +18 -18
- data/syntax/xml.syntax +1 -0
- data/syntax/yaml.syntax +2 -2
- metadata +193 -194
- data/syntax/buggy/nemerle.yaml +0 -74
- data/syntax/gtd2_text.syntax +0 -31
- data/syntax/old/YAML.yaml +0 -160
- data/syntax/old/txt2tags.yaml +0 -139
@@ -0,0 +1,113 @@
|
|
1
|
+
---
|
2
|
+
name: PmWiki
|
3
|
+
fileTypes:
|
4
|
+
- pmwiki
|
5
|
+
scopeName: text.pmwiki
|
6
|
+
uuid: B991CA22-EE93-410C-A4EB-7578D9CE6C8D
|
7
|
+
patterns:
|
8
|
+
- name: keyword.control.line-break.pmwiki
|
9
|
+
match: \\\\$
|
10
|
+
- name: keyword.control.line-break.pmwiki
|
11
|
+
match: \[\[<<\]\]
|
12
|
+
- name: keyword.control.continue-line.pmwiki
|
13
|
+
match: \\$
|
14
|
+
- name: markup.raw.monospace.pmwiki
|
15
|
+
begin: ^\s+
|
16
|
+
end: $
|
17
|
+
patterns:
|
18
|
+
- include: text.pmwiki
|
19
|
+
- name: meta.indented-paragraph.pmwiki
|
20
|
+
captures:
|
21
|
+
"1":
|
22
|
+
name: keyword.control.indented-paragraph.pmwiki
|
23
|
+
begin: ^(-+>)
|
24
|
+
end: $
|
25
|
+
patterns:
|
26
|
+
- include: text.pmwiki
|
27
|
+
- name: markup.heading.pmwiki
|
28
|
+
captures:
|
29
|
+
"1":
|
30
|
+
name: keyword.control.heading.pmwiki
|
31
|
+
begin: ^(!+)
|
32
|
+
end: $
|
33
|
+
- name: markup.list.unnumbered.pmwiki
|
34
|
+
captures:
|
35
|
+
"1":
|
36
|
+
name: keyword.control.bullet-list.pmwiki
|
37
|
+
begin: ^(\*+)
|
38
|
+
end: $
|
39
|
+
patterns:
|
40
|
+
- include: text.pmwiki
|
41
|
+
- name: markup.list.numbered.pmwiki
|
42
|
+
captures:
|
43
|
+
"1":
|
44
|
+
name: keyword.control.number-list.pmwiki
|
45
|
+
begin: ^(#+)
|
46
|
+
end: $
|
47
|
+
patterns:
|
48
|
+
- include: text.pmwiki
|
49
|
+
- name: meta.term-definition.pmwiki
|
50
|
+
captures:
|
51
|
+
"1":
|
52
|
+
name: keyword.control.term-definition.pmwiki
|
53
|
+
"2":
|
54
|
+
name: entity.name.type.term.pmwiki
|
55
|
+
"3":
|
56
|
+
name: keyword.control.term-definition.pmwiki
|
57
|
+
"4":
|
58
|
+
name: string.unquoted.definition.pmwiki
|
59
|
+
match: ^(:+)(.*)(:)(.*)$
|
60
|
+
- name: meta.separator.pmwiki
|
61
|
+
match: ^-{4,}.*$
|
62
|
+
- name: markup.italic.emphasis.pmwiki
|
63
|
+
begin: "''"
|
64
|
+
end: "''(?!')"
|
65
|
+
patterns:
|
66
|
+
- include: text.pmwiki
|
67
|
+
- name: markup.bold.strong.pmwiki
|
68
|
+
begin: "'''"
|
69
|
+
end: "'''"
|
70
|
+
patterns:
|
71
|
+
- include: text.pmwiki
|
72
|
+
- name: markup.raw.monospace.pmwiki
|
73
|
+
begin: "@@"
|
74
|
+
end: "@@"
|
75
|
+
patterns:
|
76
|
+
- include: text.pmwiki
|
77
|
+
- name: meta.style.larger.pmwiki
|
78
|
+
begin: \[\+
|
79
|
+
end: \+\]
|
80
|
+
patterns:
|
81
|
+
- include: text.pmwiki
|
82
|
+
- name: meta.style.smaller.pmwiki
|
83
|
+
begin: \[-
|
84
|
+
end: -\]
|
85
|
+
patterns:
|
86
|
+
- include: text.pmwiki
|
87
|
+
- name: meta.normal-word.pmwiki
|
88
|
+
match: `\w+
|
89
|
+
- name: markup.underline.pmwiki
|
90
|
+
match: \b\u\w+\u\w+
|
91
|
+
- name: meta.link.inline.pmwiki
|
92
|
+
begin: \[\[#
|
93
|
+
contentName: string.other.link.title.pmwiki
|
94
|
+
end: \]\]
|
95
|
+
- name: meta.link.inline.pmwiki
|
96
|
+
captures:
|
97
|
+
"1":
|
98
|
+
name: markup.underline.link.pmwiki
|
99
|
+
"2":
|
100
|
+
name: keyword.control.link.pmwiki
|
101
|
+
"3":
|
102
|
+
name: string.other.link.title.pmwiki
|
103
|
+
match: \[\[(.*?)\s*(\||->)\s*(.*?)\]\]
|
104
|
+
- name: meta.link.inline.pmwiki
|
105
|
+
captures:
|
106
|
+
"1":
|
107
|
+
name: markup.underline.link.pmwiki
|
108
|
+
match: \[\[(.*?)\]\]
|
109
|
+
- name: markup.raw.verbatim-text.pmwiki
|
110
|
+
begin: \[=
|
111
|
+
end: =\]
|
112
|
+
- include: text.html.basic
|
113
|
+
keyEquivalent: ^~P
|
data/syntax/property_list.syntax
CHANGED
@@ -32,7 +32,8 @@ repository:
|
|
32
32
|
openstep:
|
33
33
|
patterns:
|
34
34
|
- include: "#openstep_comment"
|
35
|
-
- include: "#
|
35
|
+
- include: "#openstep_dictionary"
|
36
|
+
- include: "#openstep_array"
|
36
37
|
- include: "#openstep_stray-char"
|
37
38
|
xml_tags:
|
38
39
|
patterns:
|
@@ -514,20 +515,9 @@ repository:
|
|
514
515
|
patterns:
|
515
516
|
- include: "#openstep_string-contents"
|
516
517
|
- name: constant.numeric.plist
|
517
|
-
match: "[-+]?\\d+(\\.\\d*)?(E[-+]\\d+)?"
|
518
|
+
match: "[-+]?\\d+(\\.\\d*)?(E[-+]\\d+)?(?!\\w)"
|
518
519
|
- name: string.unquoted.plist
|
519
520
|
match: "[-a-zA-Z0-9_.]+"
|
520
|
-
openstep_plist:
|
521
|
-
name: meta.rule.plist.plist
|
522
|
-
captures:
|
523
|
-
"0":
|
524
|
-
name: punctuation.section.plist.plist
|
525
|
-
begin: \{
|
526
|
-
end: \}
|
527
|
-
patterns:
|
528
|
-
- include: "#openstep_comment"
|
529
|
-
- include: "#openstep_name"
|
530
|
-
- include: "#openstep_stray-char"
|
531
521
|
openstep_name:
|
532
522
|
patterns:
|
533
523
|
- name: meta.rule.named.plist
|
@@ -631,7 +621,7 @@ patterns:
|
|
631
621
|
patterns:
|
632
622
|
- include: "#xml"
|
633
623
|
- name: source.plist
|
634
|
-
begin: (?=\s*({|//|/\*))
|
624
|
+
begin: (?=\s*({|\(|//|/\*))
|
635
625
|
end: \Z(?!\n)
|
636
626
|
patterns:
|
637
627
|
- include: "#openstep"
|
data/syntax/python.syntax
CHANGED
@@ -15,7 +15,7 @@ repository:
|
|
15
15
|
endCaptures:
|
16
16
|
"1":
|
17
17
|
name: punctuation.separator.parameters.python
|
18
|
-
begin: \b([a-zA-Z_][a-zA-Z_0-9]*)\s*(=)
|
18
|
+
begin: \b([a-zA-Z_][a-zA-Z_0-9]*)\s*(=)(?!=)
|
19
19
|
beginCaptures:
|
20
20
|
"1":
|
21
21
|
name: variable.parameter.function.python
|
@@ -23,7 +23,7 @@ repository:
|
|
23
23
|
name: keyword.operator.assignment.python
|
24
24
|
end: \s*(?:(,)|(?=$\n?|[\)]))
|
25
25
|
patterns:
|
26
|
-
- include: $
|
26
|
+
- include: $self
|
27
27
|
generic_names:
|
28
28
|
match: "[A-Za-z_][A-Za-z0-9_]*"
|
29
29
|
escaped_char:
|
@@ -79,6 +79,7 @@ repository:
|
|
79
79
|
- include: "#illegal_names"
|
80
80
|
- include: "#magic_function_names"
|
81
81
|
- include: "#magic_variable_names"
|
82
|
+
- include: "#language_variables"
|
82
83
|
- include: "#generic_names"
|
83
84
|
builtin_types:
|
84
85
|
name: support.type.python
|
@@ -483,6 +484,9 @@ repository:
|
|
483
484
|
- include: "#constant_placeholder"
|
484
485
|
- include: "#escaped_char"
|
485
486
|
comment: double quoted string
|
487
|
+
language_variables:
|
488
|
+
name: variable.language.python
|
489
|
+
match: \b(self|cls)\b
|
486
490
|
escaped_unicode_char:
|
487
491
|
captures:
|
488
492
|
"1":
|
@@ -597,7 +601,7 @@ patterns:
|
|
597
601
|
contentName: entity.other.inherited-class.python
|
598
602
|
end: \s*(?:(,)|(?=\)))
|
599
603
|
patterns:
|
600
|
-
- include: $
|
604
|
+
- include: $self
|
601
605
|
- name: meta.class.python
|
602
606
|
endCaptures:
|
603
607
|
"1":
|
@@ -688,7 +692,7 @@ patterns:
|
|
688
692
|
end: (?=\))
|
689
693
|
patterns:
|
690
694
|
- include: "#keyword_arguments"
|
691
|
-
- include: $
|
695
|
+
- include: $self
|
692
696
|
comment: a decorator may be a function call which returns a decorator.
|
693
697
|
- name: meta.function.decorator.python
|
694
698
|
begin: ^\s*(?=@\s*[A-Za-z_][A-Za-z0-9_]*(?:\.[a-zA-Z_][a-zA-Z_0-9]*)*)
|
@@ -714,7 +718,7 @@ patterns:
|
|
714
718
|
end: (\))
|
715
719
|
patterns:
|
716
720
|
- include: "#keyword_arguments"
|
717
|
-
- include: $
|
721
|
+
- include: $self
|
718
722
|
- name: meta.function-call.python
|
719
723
|
endCaptures:
|
720
724
|
"1":
|
@@ -734,7 +738,7 @@ patterns:
|
|
734
738
|
end: (?=\))
|
735
739
|
patterns:
|
736
740
|
- include: "#keyword_arguments"
|
737
|
-
- include: $
|
741
|
+
- include: $self
|
738
742
|
- name: meta.item-access.python
|
739
743
|
begin: (?=[A-Za-z_][A-Za-z0-9_]*(?:\.[a-zA-Z_][a-zA-Z_0-9]*)*\s*\[)
|
740
744
|
end: (\])
|
@@ -753,7 +757,7 @@ patterns:
|
|
753
757
|
name: punctuation.definition.arguments.begin.python
|
754
758
|
end: (?=\])
|
755
759
|
patterns:
|
756
|
-
- include: $
|
760
|
+
- include: $self
|
757
761
|
- name: meta.item-access.python
|
758
762
|
endCaptures:
|
759
763
|
"1":
|
@@ -765,7 +769,7 @@ patterns:
|
|
765
769
|
name: punctuation.definition.arguments.begin.python
|
766
770
|
end: (\])
|
767
771
|
patterns:
|
768
|
-
- include: $
|
772
|
+
- include: $self
|
769
773
|
- captures:
|
770
774
|
"1":
|
771
775
|
name: storage.type.function.python
|
@@ -775,8 +779,7 @@ patterns:
|
|
775
779
|
name: storage.type.class.python
|
776
780
|
match: \b(class)\b
|
777
781
|
- include: "#line_continuation"
|
778
|
-
-
|
779
|
-
match: \b(self|cls)\b
|
782
|
+
- include: "#language_variables"
|
780
783
|
- name: constant.language.python
|
781
784
|
match: \b(None|True|False|Ellipsis|NotImplemented)\b
|
782
785
|
- include: "#string_quoted_single"
|
@@ -785,7 +788,7 @@ patterns:
|
|
785
788
|
- begin: (\()
|
786
789
|
end: (\))
|
787
790
|
patterns:
|
788
|
-
- include: $
|
791
|
+
- include: $self
|
789
792
|
- captures:
|
790
793
|
"1":
|
791
794
|
name: punctuation.definition.list.begin.python
|
@@ -811,7 +814,7 @@ patterns:
|
|
811
814
|
contentName: meta.structure.list.item.python
|
812
815
|
end: \s*(?:(,)|(?=\]))
|
813
816
|
patterns:
|
814
|
-
- include: $
|
817
|
+
- include: $self
|
815
818
|
- name: meta.structure.tuple.python
|
816
819
|
captures:
|
817
820
|
"1":
|
@@ -847,7 +850,7 @@ patterns:
|
|
847
850
|
contentName: meta.structure.dictionary.key.python
|
848
851
|
end: \s*(?:(?=\})|(\:))
|
849
852
|
patterns:
|
850
|
-
- include: $
|
853
|
+
- include: $self
|
851
854
|
- endCaptures:
|
852
855
|
"1":
|
853
856
|
name: punctuation.separator.dictionary.python
|
@@ -855,7 +858,7 @@ patterns:
|
|
855
858
|
contentName: meta.structure.dictionary.value.python
|
856
859
|
end: \s*(?:(?=\})|(,))
|
857
860
|
patterns:
|
858
|
-
- include: $
|
861
|
+
- include: $self
|
859
862
|
foldingStopMarker: ^\s*$|^\s*\}|^\s*\]|^\s*\)|^\s*"""\s*$
|
860
863
|
keyEquivalent: ^~P
|
861
864
|
comment: "\n\
|
data/syntax/release_notes.syntax
CHANGED
@@ -20,11 +20,16 @@ patterns:
|
|
20
20
|
patterns:
|
21
21
|
- name: markup.underline.link
|
22
22
|
match: (https?|ftp|mailto):\S+?(?=[)>,.':;"]*(\s|$)|$)
|
23
|
-
-
|
24
|
-
captures:
|
23
|
+
- captures:
|
25
24
|
"1":
|
25
|
+
name: keyword.other.release-notes
|
26
|
+
"2":
|
26
27
|
name: punctuation.definition.keyword.release-notes
|
27
|
-
|
28
|
+
"3":
|
29
|
+
name: punctuation.definition.keyword.release-notes
|
30
|
+
"4":
|
31
|
+
name: constant.other.bundle-name.release-notes
|
32
|
+
match: ((\[)(?:NEW|FIXED|CHANGED|REMOVED|INFO)(\])) (?:(.+? bundle):)?
|
28
33
|
- name: meta.ticket.release-notes
|
29
34
|
captures:
|
30
35
|
"1":
|
@@ -35,3 +40,7 @@ patterns:
|
|
35
40
|
- name: meta.word.camel-case
|
36
41
|
match: \b[A-Z]*[a-z]+[A-Z]\w*\b
|
37
42
|
comment: "I do not want spell checking for CamelCase words. Since this is generally when quoting various API\xE2\x80\x99s, I have deliberately used A-Z and a-z (ASCII) -- Allan"
|
43
|
+
- captures:
|
44
|
+
"1":
|
45
|
+
name: constant.other.committer-name.release-notes
|
46
|
+
match: "\\((G(erd Knops|a(vin Kistner|rrett J. Woodworth)|ra(nt Hollingworth|eme Rocher))|R(yan McCuaig|ich Barton|o(ss Harmes|ger Braunstein|b(ert Rainthorpe| (Rix|Bevan))))|M(i(cha(il Pishchagin|el Sheets)|tch Chapman|etek B\xC4\x85k|k(e Mellor|ael S\xC3\xA4ker))|a(t(s Persson|t(hew Gilbert|eo Spinelli| Pelletier))|r(tin Str\xC3\xB6m|k Grimes)|x Williams))|B(ill Duenskie|ob Fleck|en(oit Gagnon|jamin Jackson| Perry)|arrett Clark|r(ian (Donovan|Lalor)|ett Terpstra|ad (Miller|Choate)))|H(enrik Nyh|adley Wickham)|S(t(ephen Skubik-Peplaski|\xC3\xA9phane Payrard|anley Rost)|imon (Gregory|Strandgaard)|u(ne Foldager|dara Williams)|ebastian Gr\xC3\xA4\xC3\x9Fl|am DeVore)|Nathan Youngman|C(h(a(ndler McWilliams|rilaos Skiadas)|ris(topher Forsythe| (Thomas|Jenkins)))|iar\xC3\xA1n Walsh)|T(homas Aylott|o(rsten Becker|m Lazar|bias Luetke)|akaaki Kato|roy Mcilvena)|Ian (Joyner|White)|Ollivier Robert|D(om(inique Peretti|enico Carbotta)|uane Johnson|a(n(iel Harple| Kelley)|vid (Glasser|Bonnet|Hansson|Powers|Wikler))|rew Colthorp)|J(iun Wei Chia|o(shua Emmons|nathan (Ragan-Kelley|Chaffer)|e Maller|achim M\xC3\xA5rtensson)|ustin French|eroen van der Ham|a(cob Rus|y Soffian|kub Ne\xC5\xA1et\xC5\x99il|m(is Buck|es (Edward Gray II|A. Baker))))|Paul(o Jorge Lopes de Moura| Bissex)|Eric Hsu|K(umar McMillan|evin Ballard)|F(ergus Bremner|abien POTENCIER|lorent Pillet|r(\xC3\xA9d\xC3\xA9ric Ball\xC3\xA9riaux|ank Brault))|Wil(son Miner|liam (D. Neumann|Prater))|A(n(thony Underwood|d(y Herbert|ers Thid|rew Henson))|dam Sanderson|urelio Marinho Jargas|parajita Fishman|l(e( Mu\xC3\xB1oz|xand(er John Ross|re Girard))|an Schussman|lan Odgaard)|mro Nasr))\\)$"
|
@@ -104,14 +104,14 @@ foldingStartMarker: "(?x)^\n\
|
|
104
104
|
\t"
|
105
105
|
patterns:
|
106
106
|
- name: meta.function-call.method.without-arguments.ruby
|
107
|
-
begin: (?<=[^\.]\.|::)(?=[a-zA-Z][a-zA-Z0-9_
|
108
|
-
end: (?<=[a-zA-Z0-9_
|
107
|
+
begin: (?<=[^\.]\.|::)(?=[a-zA-Z][a-zA-Z0-9_!?]*[^a-zA-Z0-9_!?])
|
108
|
+
end: (?<=[a-zA-Z0-9_!?])(?=[^a-zA-Z0-9_!?])
|
109
109
|
patterns:
|
110
110
|
- include: "#known_function_names"
|
111
111
|
- name: entity.name.function.ruby
|
112
|
-
match: ([a-zA-Z][a-zA-Z0-9_
|
112
|
+
match: ([a-zA-Z][a-zA-Z0-9_!?]*)(?=[^a-zA-Z0-9_!?])
|
113
113
|
- name: meta.function-call.method.with-arguments.ruby
|
114
|
-
begin: (?<=[^\.])(?=(\.|::)[a-zA-Z][a-zA-Z0-9_
|
114
|
+
begin: (?<=[^\.])(?=(\.|::)[a-zA-Z][a-zA-Z0-9_!?]*\()(\.|::)
|
115
115
|
beginCaptures:
|
116
116
|
"1":
|
117
117
|
name: punctuation.separator.method.ruby
|
@@ -120,21 +120,21 @@ patterns:
|
|
120
120
|
- include: "#nest_function_parens"
|
121
121
|
- include: "#known_function_names"
|
122
122
|
- name: entity.name.function.ruby
|
123
|
-
match: ([a-zA-Z][a-zA-Z0-9_
|
123
|
+
match: ([a-zA-Z][a-zA-Z0-9_!?]*)(?=\()
|
124
124
|
- include: $self
|
125
125
|
- name: meta.function-call.ruby
|
126
|
-
begin: (?=[a-zA-Z0-9_
|
126
|
+
begin: (?=[a-zA-Z0-9_!?]+\()
|
127
127
|
end: (?<=\))
|
128
128
|
patterns:
|
129
129
|
- include: "#nest_function_parens"
|
130
130
|
- include: "#known_function_names"
|
131
131
|
- name: entity.name.function.ruby
|
132
|
-
match: ([a-zA-Z0-9_
|
132
|
+
match: ([a-zA-Z0-9_!?]+)(?=\()
|
133
133
|
- include: $self
|
134
134
|
- include: "#leading-space"
|
135
135
|
- include: source.ruby
|
136
136
|
- name: variable.other.ruby
|
137
|
-
match: ((?<=\W)\b|^)\w+\b(?=\s*([\]\)\}
|
137
|
+
match: ((?<=\W)\b|^)\w+\b(?=\s*([\]\)\}\=\+\-\*\/\^\$\,]|<\s|<<\s))
|
138
138
|
comment: This is kindof experimental. There really is no way to perfectly match all regular variables, but you can pretty well assume that any normal word in certain curcumstances that havnt already been scoped as something else are probably variables, and the advantages beat the potential errors
|
139
139
|
foldingStopMarker: "(?x)\n\
|
140
140
|
\t\t( (^|;) \\s*+ end \\s*+ ([#].*)? $\n\
|
data/syntax/standard_ml.syntax
CHANGED
@@ -2,7 +2,36 @@
|
|
2
2
|
name: Standard ML
|
3
3
|
fileTypes:
|
4
4
|
- sml
|
5
|
+
- sig
|
5
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
|
6
35
|
uuid: 9B148AEA-F723-4EDE-8B7F-2F4FD730BC3A
|
7
36
|
foldingStartMarker: \(\*|\b(struct|sig)\b
|
8
37
|
patterns:
|
@@ -13,10 +42,23 @@ patterns:
|
|
13
42
|
begin: \(\*
|
14
43
|
end: \*\)
|
15
44
|
- name: keyword.other.ml
|
16
|
-
match: \b(val|
|
17
|
-
-
|
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:
|
18
48
|
"1":
|
19
|
-
name: keyword.other.ml
|
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
|
20
62
|
"2":
|
21
63
|
name: entity.name.function.ml
|
22
64
|
match: \b(fun|and)\s+([\w']+)\b
|
@@ -41,5 +83,39 @@ patterns:
|
|
41
83
|
match: (#")(\\)?.(")
|
42
84
|
- name: constant.numeric.ml
|
43
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
|
44
120
|
foldingStopMarker: \*\)|\bend\b
|
45
121
|
keyEquivalent: ^~S
|