@@ -11,7 +11,7 @@ syn sync minlines=2000
11
11
syn cluster elixirNotTop contains =@elixirRegexSpecial,@elixirStringContained,@elixirDeclaration,elixirTodo,elixirArguments,elixirBlockDefinition,elixirUnusedVariable,elixirStructDelimiter
12
12
syn cluster elixirRegexSpecial contains =elixirRegexEscape,elixirRegexCharClass,elixirRegexQuantifier,elixirRegexEscapePunctuation
13
13
syn cluster elixirStringContained contains =elixirInterpolation,elixirRegexEscape,elixirRegexCharClass
14
- syn cluster elixirDeclaration contains =elixirFunctionDeclaration,elixirModuleDeclaration,elixirProtocolDeclaration,elixirImplDeclaration,elixirRecordDeclaration,elixirMacroDeclaration,elixirDelegateDeclaration,elixirOverridableDeclaration,elixirExceptionDeclaration,elixirCallbackDeclaration,elixirStructDeclaration
14
+ syn cluster elixirDeclaration contains =elixirFunctionDeclaration,elixirPrivateFunctionDeclaration, elixirModuleDeclaration,elixirProtocolDeclaration,elixirImplDeclaration,elixirRecordDeclaration,elixirPrivateRecordDeclaration, elixirMacroDeclaration,elixirPrivateMacroDeclaration ,elixirDelegateDeclaration,elixirOverridableDeclaration,elixirExceptionDeclaration,elixirCallbackDeclaration,elixirStructDeclaration
15
15
16
16
syn match elixirComment ' #.*' contains =elixirTodo,@Spell
17
17
syn keyword elixirTodo FIXME NOTE TODO OPTIMIZE XXX HACK contained
@@ -128,93 +128,99 @@ syn region elixirDocString matchgroup=elixirDocSigilDelimiter start=+\%(@\w*doc
128
128
syn region elixirDocString matchgroup =elixirDocSigilDelimiter start =+ \% (@\w *doc\s\+\)\@ <=\~ [Ss]\z ("""\) + end =+ \z 1+ skip =+ \\ "+ contains =@elixirDocStringContained fold keepend
129
129
130
130
" Defines
131
- syn match elixirDefine ' \< def\>\( :\)\@ !' nextgroup =elixirFunctionDeclaration skipwhite skipnl
132
- syn match elixirPrivateDefine ' \< defp\>\( :\)\@ !' nextgroup =elixirFunctionDeclaration skipwhite skipnl
133
- syn match elixirGuard ' \< defguard\>\( :\)\@ !' nextgroup =elixirFunctionDeclaration skipwhite skipnl
134
- syn match elixirPrivateGuard ' \< defguardp\>\( :\)\@ !' nextgroup =elixirFunctionDeclaration skipwhite skipnl
135
- syn match elixirModuleDefine ' \< defmodule\>\( :\)\@ !' nextgroup =elixirModuleDeclaration skipwhite skipnl
136
- syn match elixirProtocolDefine ' \< defprotocol\>\( :\)\@ !' nextgroup =elixirProtocolDeclaration skipwhite skipnl
137
- syn match elixirImplDefine ' \< defimpl\>\( :\)\@ !' nextgroup =elixirImplDeclaration skipwhite skipnl
138
- syn match elixirRecordDefine ' \< defrecord\>\( :\)\@ !' nextgroup =elixirRecordDeclaration skipwhite skipnl
139
- syn match elixirPrivateRecordDefine ' \< defrecordp\>\( :\)\@ !' nextgroup =elixirRecordDeclaration skipwhite skipnl
140
- syn match elixirMacroDefine ' \< defmacro\>\( :\)\@ !' nextgroup =elixirMacroDeclaration skipwhite skipnl
141
- syn match elixirPrivateMacroDefine ' \< defmacrop\>\( :\)\@ !' nextgroup =elixirMacroDeclaration skipwhite skipnl
142
- syn match elixirDelegateDefine ' \< defdelegate\>\( :\)\@ !' nextgroup =elixirDelegateDeclaration skipwhite skipnl
143
- syn match elixirOverridableDefine ' \< defoverridable\>\( :\)\@ !' nextgroup =elixirOverridableDeclaration skipwhite skipnl
144
- syn match elixirExceptionDefine ' \< defexception\>\( :\)\@ !' nextgroup =elixirExceptionDeclaration skipwhite skipnl
145
- syn match elixirCallbackDefine ' \< defcallback\>\( :\)\@ !' nextgroup =elixirCallbackDeclaration skipwhite skipnl
131
+ syn match elixirDefine ' \< def\>\( :\)\@ !' nextgroup =elixirFunctionDeclaration skipwhite skipnl
132
+ syn match elixirPrivateDefine ' \< defp\>\( :\)\@ !' nextgroup =elixirPrivateFunctionDeclaration skipwhite skipnl
133
+ syn match elixirGuard ' \< defguard\>\( :\)\@ !' nextgroup =elixirFunctionDeclaration skipwhite skipnl
134
+ syn match elixirPrivateGuard ' \< defguardp\>\( :\)\@ !' nextgroup =elixirPrivateFunctionDeclaration skipwhite skipnl
135
+ syn match elixirModuleDefine ' \< defmodule\>\( :\)\@ !' nextgroup =elixirModuleDeclaration skipwhite skipnl
136
+ syn match elixirProtocolDefine ' \< defprotocol\>\( :\)\@ !' nextgroup =elixirProtocolDeclaration skipwhite skipnl
137
+ syn match elixirImplDefine ' \< defimpl\>\( :\)\@ !' nextgroup =elixirImplDeclaration skipwhite skipnl
138
+ syn match elixirRecordDefine ' \< defrecord\>\( :\)\@ !' nextgroup =elixirRecordDeclaration skipwhite skipnl
139
+ syn match elixirPrivateRecordDefine ' \< defrecordp\>\( :\)\@ !' nextgroup =elixirPrivateRecordDeclaration skipwhite skipnl
140
+ syn match elixirMacroDefine ' \< defmacro\>\( :\)\@ !' nextgroup =elixirMacroDeclaration skipwhite skipnl
141
+ syn match elixirPrivateMacroDefine ' \< defmacrop\>\( :\)\@ !' nextgroup =elixirPrivateMacroDeclaration skipwhite skipnl
142
+ syn match elixirDelegateDefine ' \< defdelegate\>\( :\)\@ !' nextgroup =elixirDelegateDeclaration skipwhite skipnl
143
+ syn match elixirOverridableDefine ' \< defoverridable\>\( :\)\@ !' nextgroup =elixirOverridableDeclaration skipwhite skipnl
144
+ syn match elixirExceptionDefine ' \< defexception\>\( :\)\@ !' nextgroup =elixirExceptionDeclaration skipwhite skipnl
145
+ syn match elixirCallbackDefine ' \< defcallback\>\( :\)\@ !' nextgroup =elixirCallbackDeclaration skipwhite skipnl
146
146
syn match elixirStructDefine ' \< defstruct\>\( :\)\@ !' skipwhite skipnl
147
147
148
148
" Declarations
149
- syn match elixirModuleDeclaration " [^[:space:];#<]\+ " contained nextgroup =elixirBlock skipwhite skipnl
150
- syn match elixirFunctionDeclaration " [^[:space:];#<,()\[\] ]\+ " contained nextgroup =elixirArguments skipwhite skipnl
151
- syn match elixirProtocolDeclaration " [^[:space:];#<]\+ " contained contains =elixirAlias skipwhite skipnl
152
- syn match elixirImplDeclaration " [^[:space:];#<]\+ " contained contains =elixirAlias skipwhite skipnl
153
- syn match elixirRecordDeclaration " [^[:space:];#<]\+ " contained contains =elixirAlias,elixirAtom skipwhite skipnl
154
- syn match elixirMacroDeclaration " [^[:space:];#<,()\[\] ]\+ " contained nextgroup =elixirArguments skipwhite skipnl
155
- syn match elixirDelegateDeclaration " [^[:space:];#<,()\[\] ]\+ " contained contains =elixirFunctionDeclaration skipwhite skipnl
156
- syn region elixirDelegateDeclaration start =' \[ ' end =' \] ' contained contains =elixirFunctionDeclaration skipwhite skipnl
157
- syn match elixirOverridableDeclaration " [^[:space:];#<]\+ " contained contains =elixirAlias,elixirAtom skipwhite skipnl
158
- syn match elixirExceptionDeclaration " [^[:space:];#<]\+ " contained contains =elixirAlias,elixirAtom skipwhite skipnl
159
- syn match elixirCallbackDeclaration " [^[:space:];#<,()\[\] ]\+ " contained contains =elixirFunctionDeclaration skipwhite skipnl
149
+ syn match elixirModuleDeclaration " [^[:space:];#<]\+ " contained nextgroup =elixirBlock skipwhite skipnl
150
+ syn match elixirFunctionDeclaration " [^[:space:];#<,()\[\] ]\+ " contained nextgroup =elixirArguments skipwhite skipnl
151
+ syn match elixirPrivateFunctionDeclaration " [^[:space:];#<,()\[\] ]\+ " contained nextgroup =elixirArguments skipwhite skipnl
152
+ syn match elixirProtocolDeclaration " [^[:space:];#<]\+ " contained contains =elixirAlias skipwhite skipnl
153
+ syn match elixirImplDeclaration " [^[:space:];#<]\+ " contained contains =elixirAlias skipwhite skipnl
154
+ syn match elixirRecordDeclaration " [^[:space:];#<]\+ " contained contains =elixirAlias,elixirAtom skipwhite skipnl
155
+ syn match elixirPrivateRecordDeclaration " [^[:space:];#<]\+ " contained contains =elixirAlias,elixirAtom skipwhite skipnl
156
+ syn match elixirMacroDeclaration " [^[:space:];#<,()\[\] ]\+ " contained nextgroup =elixirArguments skipwhite skipnl
157
+ syn match elixirPrivateMacroDeclaration " [^[:space:];#<,()\[\] ]\+ " contained nextgroup =elixirArguments skipwhite skipnl
158
+ syn match elixirDelegateDeclaration " [^[:space:];#<,()\[\] ]\+ " contained contains =elixirFunctionDeclaration skipwhite skipnl
159
+ syn region elixirDelegateDeclaration start =' \[ ' end =' \] ' contained contains =elixirFunctionDeclaration skipwhite skipnl
160
+ syn match elixirOverridableDeclaration " [^[:space:];#<]\+ " contained contains =elixirAlias,elixirAtom skipwhite skipnl
161
+ syn match elixirExceptionDeclaration " [^[:space:];#<]\+ " contained contains =elixirAlias,elixirAtom skipwhite skipnl
162
+ syn match elixirCallbackDeclaration " [^[:space:];#<,()\[\] ]\+ " contained contains =elixirFunctionDeclaration skipwhite skipnl
160
163
161
164
" ExUnit
162
165
syn match elixirExUnitMacro " \( ^\s *\)\@ <=\<\( test\| describe\| setup\| setup_all\| on_exit\| doctest\)\> "
163
166
syn match elixirExUnitAssert " \( ^\s *\)\@ <=\<\( assert\| assert_in_delta\| assert_raise\| assert_receive\| assert_received\| catch_error\)\> "
164
167
syn match elixirExUnitAssert " \( ^\s *\)\@ <=\<\( catch_exit\| catch_throw\| flunk\| refute\| refute_in_delta\| refute_receive\| refute_received\)\> "
165
168
166
- hi def link elixirBlockDefinition Define
167
- hi def link elixirDefine Define
168
- hi def link elixirPrivateDefine Define
169
- hi def link elixirGuard Define
170
- hi def link elixirPrivateGuard Define
171
- hi def link elixirModuleDefine Define
172
- hi def link elixirProtocolDefine Define
173
- hi def link elixirImplDefine Define
174
- hi def link elixirRecordDefine Define
175
- hi def link elixirPrivateRecordDefine Define
176
- hi def link elixirMacroDefine Define
177
- hi def link elixirPrivateMacroDefine Define
178
- hi def link elixirDelegateDefine Define
179
- hi def link elixirOverridableDefine Define
180
- hi def link elixirExceptionDefine Define
181
- hi def link elixirCallbackDefine Define
182
- hi def link elixirStructDefine Define
183
- hi def link elixirExUnitMacro Define
184
- hi def link elixirModuleDeclaration Type
185
- hi def link elixirFunctionDeclaration Function
186
- hi def link elixirMacroDeclaration Macro
187
- hi def link elixirInclude Include
188
- hi def link elixirComment Comment
189
- hi def link elixirTodo Todo
190
- hi def link elixirKeyword Define
191
- hi def link elixirExUnitAssert Keyword
192
- hi def link elixirOperator Operator
193
- hi def link elixirAtom Constant
194
- hi def link elixirPseudoVariable Constant
195
- hi def link elixirAlias Type
196
- hi def link elixirBoolean Boolean
197
- hi def link elixirVariable Identifier
198
- hi def link elixirSelf Identifier
199
- hi def link elixirUnusedVariable Comment
200
- hi def link elixirNumber Number
201
- hi def link elixirDocString Comment
202
- hi def link elixirDocTest elixirKeyword
203
- hi def link elixirAtomInterpolated elixirAtom
204
- hi def link elixirRegex elixirString
205
- hi def link elixirRegexEscape elixirSpecial
206
- hi def link elixirRegexEscapePunctuation elixirSpecial
207
- hi def link elixirRegexCharClass elixirSpecial
208
- hi def link elixirRegexQuantifier elixirSpecial
209
- hi def link elixirSpecial Special
210
- hi def link elixirString String
211
- hi def link elixirSigil String
212
- hi def link elixirDocStringDelimiter elixirStringDelimiter
213
- hi def link elixirDocSigilDelimiter elixirSigilDelimiter
214
- hi def link elixirStringDelimiter Delimiter
215
- hi def link elixirRegexDelimiter Delimiter
216
- hi def link elixirInterpolationDelimiter Delimiter
217
- hi def link elixirSigilDelimiter Delimiter
169
+ hi def link elixirBlockDefinition Define
170
+ hi def link elixirDefine Define
171
+ hi def link elixirPrivateDefine Define
172
+ hi def link elixirGuard Define
173
+ hi def link elixirPrivateGuard Define
174
+ hi def link elixirModuleDefine Define
175
+ hi def link elixirProtocolDefine Define
176
+ hi def link elixirImplDefine Define
177
+ hi def link elixirRecordDefine Define
178
+ hi def link elixirPrivateRecordDefine Define
179
+ hi def link elixirMacroDefine Define
180
+ hi def link elixirPrivateMacroDefine Define
181
+ hi def link elixirDelegateDefine Define
182
+ hi def link elixirOverridableDefine Define
183
+ hi def link elixirExceptionDefine Define
184
+ hi def link elixirCallbackDefine Define
185
+ hi def link elixirStructDefine Define
186
+ hi def link elixirExUnitMacro Define
187
+ hi def link elixirModuleDeclaration Type
188
+ hi def link elixirPrivateFunctionDeclaration elixirFunctionDeclaration
189
+ hi def link elixirFunctionDeclaration Function
190
+ hi def link elixirPrivateMacroDeclaration elixirMacroDeclaration
191
+ hi def link elixirMacroDeclaration Macro
192
+ hi def link elixirInclude Include
193
+ hi def link elixirComment Comment
194
+ hi def link elixirTodo Todo
195
+ hi def link elixirKeyword Define
196
+ hi def link elixirExUnitAssert Keyword
197
+ hi def link elixirOperator Operator
198
+ hi def link elixirAtom Constant
199
+ hi def link elixirPseudoVariable Constant
200
+ hi def link elixirAlias Type
201
+ hi def link elixirBoolean Boolean
202
+ hi def link elixirVariable Identifier
203
+ hi def link elixirSelf Identifier
204
+ hi def link elixirUnusedVariable Comment
205
+ hi def link elixirNumber Number
206
+ hi def link elixirDocString Comment
207
+ hi def link elixirDocTest elixirKeyword
208
+ hi def link elixirAtomInterpolated elixirAtom
209
+ hi def link elixirRegex elixirString
210
+ hi def link elixirRegexEscape elixirSpecial
211
+ hi def link elixirRegexEscapePunctuation elixirSpecial
212
+ hi def link elixirRegexCharClass elixirSpecial
213
+ hi def link elixirRegexQuantifier elixirSpecial
214
+ hi def link elixirSpecial Special
215
+ hi def link elixirString String
216
+ hi def link elixirSigil String
217
+ hi def link elixirDocStringDelimiter elixirStringDelimiter
218
+ hi def link elixirDocSigilDelimiter elixirSigilDelimiter
219
+ hi def link elixirStringDelimiter Delimiter
220
+ hi def link elixirRegexDelimiter Delimiter
221
+ hi def link elixirInterpolationDelimiter Delimiter
222
+ hi def link elixirSigilDelimiter Delimiter
223
+ hi def link elixirPrivateRecordDeclaration elixirRecordDeclaration
218
224
219
225
let b: current_syntax = " elixir"
220
226
0 commit comments