1
+
if has_key(g:polyglot_is_disabled, 'mint')
2
+
finish
3
+
endif
4
+
5
+
if exists('b:current_syntax')
6
+
let s:current_syntax = b:current_syntax
7
+
silent! unlet b:current_syntax
8
+
endif
9
+
10
+
syntax include @JSSyntax syntax/javascript.vim
11
+
silent! unlet b:current_syntax
12
+
syntax include @XMLSyntax syntax/xml.vim
13
+
silent! unlet b:current_syntax
14
+
syntax include @CSSSyntax syntax/css.vim
15
+
silent! unlet b:current_syntax
16
+
17
+
syntax case match
18
+
if exists('s:current_syntax')
19
+
let b:current_syntax = s:current_syntax
20
+
endif
21
+
22
+
syntax keyword mintBlock
23
+
\ do sequence parallel if else case try catch
24
+
25
+
syntax keyword mintCompoundType
26
+
\ Result Maybe Promise Array
27
+
28
+
syntax keyword mintLiteralType
29
+
\ Number Bool String Object Time Html Void Never Tuple
30
+
31
+
syntax keyword mintDeclarator
32
+
\ component module routes
33
+
34
+
syntax keyword mintStructureDeclarator
35
+
\ enum record store provider const
36
+
37
+
syntax keyword mintInitializer
38
+
\ fun let where next state property
39
+
40
+
syntax keyword mintKeyword
41
+
\ decode encode return connect use
42
+
43
+
syntax keyword mintOperator
44
+
\ "<{" "}>" "::" "=>" "|>" "<|"
45
+
46
+
syntax keyword mintSpecifier
47
+
\ as break return using get exposing ok error just nothing void
48
+
49
+
" String
50
+
syntax region mintString matchgroup=mintStringDelimiter start=/"/ skip=/\\"/ end=/"/ oneline
51
+
" String interpolation
52
+
syntax region mintStringInterpolation matchgroup=mintInterpolationDelimiter start="#{" end="}" contained containedin=mintString contains=@mintAll
53
+
54
+
" Numbers
55
+
syntax match mintNumber "\v<\d+(\.\d+)?>"
56
+
57
+
" Pascal-cased types
58
+
syntax match mintDefinedType "\v<[A-Z][A-Za-z0-9]*(\.[A-Z][A-Za-z0-9]*)*>"
59
+
60
+
61
+
syntax cluster mintAll contains=mintBlock,mintCompoundType,mintDeclarator,mintInitializer,mintKeyword,mintOperator,mintSpecifier,mintString
62
+
63
+
syntax region mintEmbeddedHtmlRegion
64
+
\ start=+<\z([^ /!?<>"'=:]\+\)+
65
+
\ start=+<\z(\s\{0}\)>+
66
+
\ skip=+<!--\_.\{-}-->+
67
+
\ end=+</\z1\_s\{-}>+
68
+
\ end=+/>+
69
+
\ fold
70
+
\ contains=@Spell,@XMLSyntax,@mintAll
71
+
\ keepend
72
+
73
+
syntax region mintEmbeddedJsRegion
74
+
\ matchgroup=mintJsInterpolationQuotes
75
+
\ start="`"
76
+
\ end="`"
77
+
\ skip="\\`"
78
+
\ keepend
79
+
\ contains=mintInterpolation,@jsExpression
80
+
81
+
hi link mintJsInterpolationQuotes Delimiter
82
+
83
+
syntax match mintBraces /[{}]/
84
+
syntax keyword mintStyleKeyword style skipwhite nextgroup=mintStyleIdentifier
85
+
syntax match mintStyleIdentifier /\<\k\k*/ contained skipwhite skipempty nextgroup=mintStyleBlock
86
+
syntax region mintStyleBlock contained matchgroup=mintBraces start="{" end="}" contains=@mintAll,cssDefinition,cssTagName,cssAttributeSelector,cssClassName,cssIdentifier,cssAtRule,cssAttrRegion,css.*Prop,cssComment,cssValue.*,cssColor,cssURL,cssImportant,cssCustomProp,cssError,cssStringQ,cssStringQQ,cssFunction,cssUnicodeEscape,cssVendor,cssDefinition,cssHacks,cssNoise
87
+
88
+
" Colour links
89
+
hi link mintKeyword Keyword
90
+
hi link mintOperator Operator
91
+
92
+
hi link mintBlock Statement
93
+
hi link mintDeclarator PreProc
94
+
hi link mintStructureDeclarator Structure
95
+
hi link mintInitializer PreProc
96
+
hi link mintSpecifier Statement
97
+
98
+
hi link mintString String
99
+
hi link mintNumber Number
100
+
101
+
hi link mintCompoundType Type
102
+
hi link mintLiteralType Type
103
+
hi link mintDefinedType Type
104
+
105
+
hi link mintStringDelimiter Delimiter
106
+
hi link mintInterpolationDelimiter Special
107
+
108
+
hi link mintStyleKeyword Type
109
+
hi link mintStyleIdentifier Statement
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4