blob: 5fcbb09742106db5f3923ddb30376a4d7b677bd7 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
2"
3" Language: Logtalk
4" Maintainer: Paulo Moura <pmoura@logtalk.org>
Bram Moolenaarc236c162008-07-13 17:41:49 +00005" Last Change: June 16, 2008
Bram Moolenaar071d4272004-06-13 20:20:40 +00006
7
8" Quit when a syntax file was already loaded:
9
10if version < 600
11 syntax clear
12elseif exists("b:current_syntax")
13 finish
14endif
15
16
17" Logtalk is case sensitive:
18
19syn case match
20
21
22" Logtalk variables
23
24syn match logtalkVariable "\<\(\u\|_\)\(\w\)*\>"
25
26
27" Logtalk clause functor
28
29syn match logtalkOperator ":-"
30
31
32" Logtalk quoted atoms and strings
33
34syn region logtalkString start=+"+ skip=+\\"+ end=+"+
Bram Moolenaarc236c162008-07-13 17:41:49 +000035syn region logtalkAtom start=+'+ skip=+\\'+ end=+'+ contains=logtalkEscapeSequence
36
37syn match logtalkEscapeSequence contained "\\\([\\abfnrtv\"\']\|\(x[a-fA-F0-9]\+\|[0-7]\+\)\\\)"
Bram Moolenaar071d4272004-06-13 20:20:40 +000038
39
40" Logtalk message sending operators
41
42syn match logtalkOperator "::"
Bram Moolenaarc236c162008-07-13 17:41:49 +000043syn match logtalkOperator ":"
Bram Moolenaar071d4272004-06-13 20:20:40 +000044syn match logtalkOperator "\^\^"
45
46
47" Logtalk external call
48
49syn region logtalkExtCall matchgroup=logtalkExtCallTag start="{" matchgroup=logtalkExtCallTag end="}" contains=ALL
50
51
52" Logtalk opening entity directives
53
Bram Moolenaarc236c162008-07-13 17:41:49 +000054syn region logtalkOpenEntityDir matchgroup=logtalkOpenEntityDirTag start=":- object(" matchgroup=logtalkOpenEntityDirTag end=")\." contains=logtalkEntity,logtalkVariable,logtalkNumber,logtalkOperator,logtalkString,logtalkAtom,logtalkEntityRel
Bram Moolenaar45eeb132005-06-06 21:59:07 +000055syn region logtalkOpenEntityDir matchgroup=logtalkOpenEntityDirTag start=":- protocol(" matchgroup=logtalkOpenEntityDirTag end=")\." contains=logtalkEntity,logtalkVariable,logtalkNumber,logtalkOperator,logtalkEntityRel
56syn region logtalkOpenEntityDir matchgroup=logtalkOpenEntityDirTag start=":- category(" matchgroup=logtalkOpenEntityDirTag end=")\." contains=logtalkEntity,logtalkVariable,logtalkNumber,logtalkOperator,logtalkEntityRel
Bram Moolenaar071d4272004-06-13 20:20:40 +000057
58
59" Logtalk closing entity directives
60
Bram Moolenaar45eeb132005-06-06 21:59:07 +000061syn match logtalkCloseEntityDir ":- end_object\."
62syn match logtalkCloseEntityDir ":- end_protocol\."
63syn match logtalkCloseEntityDir ":- end_category\."
Bram Moolenaar071d4272004-06-13 20:20:40 +000064
65
66" Logtalk entity relations
67
Bram Moolenaarc236c162008-07-13 17:41:49 +000068syn region logtalkEntityRel matchgroup=logtalkEntityRelTag start="instantiates(" matchgroup=logtalkEntityRelTag end=")" contains=logtalkEntity,logtalkVariable,logtalkNumber,logtalkOperator,logtalkString,logtalkAtom contained
69syn region logtalkEntityRel matchgroup=logtalkEntityRelTag start="specializes(" matchgroup=logtalkEntityRelTag end=")" contains=logtalkEntity,logtalkVariable,logtalkNumber,logtalkOperator,logtalkString,logtalkAtom contained
70syn region logtalkEntityRel matchgroup=logtalkEntityRelTag start="extends(" matchgroup=logtalkEntityRelTag end=")" contains=logtalkEntity,logtalkVariable,logtalkNumber,logtalkOperator,logtalkString,logtalkAtom contained
71syn region logtalkEntityRel matchgroup=logtalkEntityRelTag start="imports(" matchgroup=logtalkEntityRelTag end=")" contains=logtalkEntity,logtalkVariable,logtalkNumber,logtalkOperator,logtalkString,logtalkAtom contained
72syn region logtalkEntityRel matchgroup=logtalkEntityRelTag start="implements(" matchgroup=logtalkEntityRelTag end=")" contains=logtalkEntity,logtalkVariable,logtalkNumber,logtalkOperator,logtalkString,logtalkAtom contained
73syn region logtalkEntityRel matchgroup=logtalkEntityRelTag start="complements(" matchgroup=logtalkEntityRelTag end=")" contains=logtalkEntity,logtalkVariable,logtalkNumber,logtalkOperator,logtalkString,logtalkAtom contained
Bram Moolenaar071d4272004-06-13 20:20:40 +000074
75
76" Logtalk directives
77
Bram Moolenaara0084652005-03-16 09:57:51 +000078syn region logtalkDir matchgroup=logtalkDirTag start=":- alias(" matchgroup=logtalkDirTag end=")\." contains=ALL
Bram Moolenaarc236c162008-07-13 17:41:49 +000079syn region logtalkDir matchgroup=logtalkDirTag start=":- calls(" matchgroup=logtalkDirTag end=")\." contains=ALL
80syn region logtalkDir matchgroup=logtalkDirTag start=":- encoding(" matchgroup=logtalkDirTag end=")\." contains=ALL
Bram Moolenaar071d4272004-06-13 20:20:40 +000081syn region logtalkDir matchgroup=logtalkDirTag start=":- initialization(" matchgroup=logtalkDirTag end=")\." contains=ALL
82syn region logtalkDir matchgroup=logtalkDirTag start=":- info(" matchgroup=logtalkDirTag end=")\." contains=ALL
Bram Moolenaara0084652005-03-16 09:57:51 +000083syn region logtalkDir matchgroup=logtalkDirTag start=":- mode(" matchgroup=logtalkDirTag end=")\." contains=logtalkOperator, logtalkAtom
Bram Moolenaar071d4272004-06-13 20:20:40 +000084syn region logtalkDir matchgroup=logtalkDirTag start=":- dynamic(" matchgroup=logtalkDirTag end=")\." contains=ALL
85syn match logtalkDirTag ":- dynamic\."
86syn region logtalkDir matchgroup=logtalkDirTag start=":- discontiguous(" matchgroup=logtalkDirTag end=")\." contains=ALL
Bram Moolenaara0084652005-03-16 09:57:51 +000087syn region logtalkDir matchgroup=logtalkDirTag start=":- multifile(" matchgroup=logtalkDirTag end=")\." contains=ALL
Bram Moolenaar071d4272004-06-13 20:20:40 +000088syn region logtalkDir matchgroup=logtalkDirTag start=":- public(" matchgroup=logtalkDirTag end=")\." contains=ALL
89syn region logtalkDir matchgroup=logtalkDirTag start=":- protected(" matchgroup=logtalkDirTag end=")\." contains=ALL
90syn region logtalkDir matchgroup=logtalkDirTag start=":- private(" matchgroup=logtalkDirTag end=")\." contains=ALL
Bram Moolenaarc236c162008-07-13 17:41:49 +000091syn region logtalkDir matchgroup=logtalkDirTag start=":- meta_predicate(" matchgroup=logtalkDirTag end=")\." contains=ALL
Bram Moolenaar071d4272004-06-13 20:20:40 +000092syn region logtalkDir matchgroup=logtalkDirTag start=":- op(" matchgroup=logtalkDirTag end=")\." contains=ALL
Bram Moolenaarc236c162008-07-13 17:41:49 +000093syn region logtalkDir matchgroup=logtalkDirTag start=":- synchronized(" matchgroup=logtalkDirTag end=")\." contains=ALL
94syn match logtalkDirTag ":- synchronized\."
Bram Moolenaar071d4272004-06-13 20:20:40 +000095syn region logtalkDir matchgroup=logtalkDirTag start=":- uses(" matchgroup=logtalkDirTag end=")\." contains=ALL
Bram Moolenaarc236c162008-07-13 17:41:49 +000096syn match logtalkDirTag ":- threaded\."
Bram Moolenaar071d4272004-06-13 20:20:40 +000097
98
Bram Moolenaar362e1a32006-03-06 23:29:24 +000099" Module directives
100
101syn region logtalkDir matchgroup=logtalkDirTag start=":- module(" matchgroup=logtalkDirTag end=")\." contains=ALL
102syn region logtalkDir matchgroup=logtalkDirTag start=":- export(" matchgroup=logtalkDirTag end=")\." contains=ALL
Bram Moolenaar362e1a32006-03-06 23:29:24 +0000103syn region logtalkDir matchgroup=logtalkDirTag start=":- use_module(" matchgroup=logtalkDirTag end=")\." contains=ALL
104
105
Bram Moolenaar071d4272004-06-13 20:20:40 +0000106" Logtalk built-in predicates
107
Bram Moolenaar54ee7752005-05-31 22:22:17 +0000108syn match logtalkBuiltIn "\<\(abolish\|c\(reate\|urrent\)\)_\(object\|protocol\|category\)\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000109
Bram Moolenaarf4b8e572004-06-24 15:53:16 +0000110syn match logtalkBuiltIn "\<\(object\|protocol\|category\)_property\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000111
Bram Moolenaarc236c162008-07-13 17:41:49 +0000112syn match logtalkBuiltIn "\<complements_object\ze("
113syn match logtalkBuiltIn "\<extends_\(object\|protocol\|category\)\ze("
Bram Moolenaarf4b8e572004-06-24 15:53:16 +0000114syn match logtalkBuiltIn "\<imp\(orts_category\|lements_protocol\)\ze("
Bram Moolenaarc236c162008-07-13 17:41:49 +0000115syn match logtalkBuiltIn "\<\(instantiat\|specializ\)es_class\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000116
Bram Moolenaarf4b8e572004-06-24 15:53:16 +0000117syn match logtalkBuiltIn "\<\(abolish\|define\)_events\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000118syn match logtalkBuiltIn "\<current_event\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000119
Bram Moolenaarc236c162008-07-13 17:41:49 +0000120syn match logtalkBuiltIn "\<\(curren\|se\)t_logtalk_flag\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000121
Bram Moolenaara0084652005-03-16 09:57:51 +0000122syn match logtalkBuiltIn "\<logtalk_\(compile\|l\(ibrary_path\|oad\)\)\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000123
Bram Moolenaara0084652005-03-16 09:57:51 +0000124syn match logtalkBuiltIn "\<\(for\|retract\)all\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000125
Bram Moolenaarc236c162008-07-13 17:41:49 +0000126syn match logtalkBuiltIn "\<threaded\(_\(call\|once\|ignore\|exit\|peek\|wait\|notify\)\)\?\ze("
127
Bram Moolenaar071d4272004-06-13 20:20:40 +0000128
129" Logtalk built-in methods
130
131syn match logtalkBuiltInMethod "\<parameter\ze("
Bram Moolenaarf4b8e572004-06-24 15:53:16 +0000132syn match logtalkBuiltInMethod "\<se\(lf\|nder\)\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000133syn match logtalkBuiltInMethod "\<this\ze("
134
135syn match logtalkBuiltInMethod "\<current_predicate\ze("
136syn match logtalkBuiltInMethod "\<predicate_property\ze("
137
Bram Moolenaar54ee7752005-05-31 22:22:17 +0000138syn match logtalkBuiltInMethod "\<a\(bolish\|ssert\(a\|z\)\)\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000139syn match logtalkBuiltInMethod "\<clause\ze("
Bram Moolenaar54ee7752005-05-31 22:22:17 +0000140syn match logtalkBuiltInMethod "\<retract\(all\)\?\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000141
Bram Moolenaarf4b8e572004-06-24 15:53:16 +0000142syn match logtalkBuiltInMethod "\<\(bag\|set\)of\ze("
143syn match logtalkBuiltInMethod "\<f\(ind\|or\)all\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000144
145syn match logtalkBuiltInMethod "\<before\ze("
146syn match logtalkBuiltInMethod "\<after\ze("
147
Bram Moolenaara0084652005-03-16 09:57:51 +0000148syn match logtalkBuiltInMethod "\<expand_term\ze("
Bram Moolenaarc236c162008-07-13 17:41:49 +0000149syn match logtalkBuiltInMethod "\<\(goal\|term\)_expansion\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000150syn match logtalkBuiltInMethod "\<phrase\ze("
151
152
153" Mode operators
154
155syn match logtalkOperator "?"
156syn match logtalkOperator "@"
157
158
159" Control constructs
160
161syn match logtalkKeyword "\<true\>"
162syn match logtalkKeyword "\<fail\>"
Bram Moolenaarf4b8e572004-06-24 15:53:16 +0000163syn match logtalkKeyword "\<ca\(ll\|tch\)\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000164syn match logtalkOperator "!"
Bram Moolenaarf4b8e572004-06-24 15:53:16 +0000165" syn match logtalkOperator ","
Bram Moolenaar071d4272004-06-13 20:20:40 +0000166syn match logtalkOperator ";"
167syn match logtalkOperator "-->"
168syn match logtalkOperator "->"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000169syn match logtalkKeyword "\<throw\ze("
170
171
172" Term unification
173
174syn match logtalkOperator "="
175syn match logtalkKeyword "\<unify_with_occurs_check\ze("
176syn match logtalkOperator "\\="
177
178
179" Term testing
180
181syn match logtalkKeyword "\<var\ze("
Bram Moolenaar54ee7752005-05-31 22:22:17 +0000182syn match logtalkKeyword "\<atom\(ic\)\?\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000183syn match logtalkKeyword "\<integer\ze("
184syn match logtalkKeyword "\<float\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000185syn match logtalkKeyword "\<compound\ze("
Bram Moolenaarf4b8e572004-06-24 15:53:16 +0000186syn match logtalkKeyword "\<n\(onvar\|umber\)\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000187
188
189" Term comparison
190
191syn match logtalkOperator "@=<"
192syn match logtalkOperator "=="
193syn match logtalkOperator "\\=="
194syn match logtalkOperator "@<"
195syn match logtalkOperator "@>"
196syn match logtalkOperator "@>="
197
198
199" Term creation and decomposition
200
201syn match logtalkKeyword "\<functor\ze("
202syn match logtalkKeyword "\<arg\ze("
203syn match logtalkOperator "=\.\."
204syn match logtalkKeyword "\<copy_term\ze("
205
206
207" Arithemtic evaluation
208
Bram Moolenaara0084652005-03-16 09:57:51 +0000209syn match logtalkOperator "\<is\>"
Bram Moolenaar071d4272004-06-13 20:20:40 +0000210
211
212" Arithemtic comparison
213
214syn match logtalkOperator "=:="
215syn match logtalkOperator "=\\="
216syn match logtalkOperator "<"
217syn match logtalkOperator "=<"
218syn match logtalkOperator ">"
219syn match logtalkOperator ">="
220
221
222" Stream selection and control
223
Bram Moolenaarc236c162008-07-13 17:41:49 +0000224syn match logtalkKeyword "\<\(curren\|se\)t_\(in\|out\)put\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000225syn match logtalkKeyword "\<open\ze("
226syn match logtalkKeyword "\<close\ze("
227syn match logtalkKeyword "\<flush_output\ze("
228syn match logtalkKeyword "\<flush_output\>"
229syn match logtalkKeyword "\<stream_property\ze("
230syn match logtalkKeyword "\<at_end_of_stream\ze("
231syn match logtalkKeyword "\<at_end_of_stream\>"
232syn match logtalkKeyword "\<set_stream_position\ze("
233
234
Bram Moolenaarf4b8e572004-06-24 15:53:16 +0000235" Character and byte input/output
Bram Moolenaar071d4272004-06-13 20:20:40 +0000236
Bram Moolenaar54ee7752005-05-31 22:22:17 +0000237syn match logtalkKeyword "\<\(get\|p\(eek\|ut\)\)_\(c\(har\|ode\)\|byte\)\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000238syn match logtalkKeyword "\<nl\ze("
239syn match logtalkKeyword "\<nl\>"
240
241
Bram Moolenaar071d4272004-06-13 20:20:40 +0000242" Term input/output
243
Bram Moolenaar54ee7752005-05-31 22:22:17 +0000244syn match logtalkKeyword "\<read\(_term\)\?\ze("
245syn match logtalkKeyword "\<write\(q\|_\(canonical\|term\)\)\?\ze("
246syn match logtalkKeyword "\<\(current_\)\?op\ze("
Bram Moolenaarc236c162008-07-13 17:41:49 +0000247syn match logtalkKeyword "\<\(current_\)\?char_conversion\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000248
249
250" Logic and control
251
252syn match logtalkOperator "\\+"
253syn match logtalkKeyword "\<once\ze("
254syn match logtalkKeyword "\<repeat\>"
255
256
257" Atomic term processing
258
Bram Moolenaar54ee7752005-05-31 22:22:17 +0000259syn match logtalkKeyword "\<atom_\(length\|c\(hars\|o\(ncat\|des\)\)\)\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000260syn match logtalkKeyword "\<sub_atom\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000261syn match logtalkKeyword "\<char_code\ze("
Bram Moolenaarc236c162008-07-13 17:41:49 +0000262syn match logtalkKeyword "\<number_c\(har\|ode\)s\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000263
264
265" Implementation defined hooks functions
266
Bram Moolenaarc236c162008-07-13 17:41:49 +0000267syn match logtalkKeyword "\<\(curren\|se\)t_prolog_flag\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000268syn match logtalkKeyword "\<halt\ze("
269syn match logtalkKeyword "\<halt\>"
270
271
272" Evaluable functors
273
274syn match logtalkOperator "+"
275syn match logtalkOperator "-"
276syn match logtalkOperator "\*"
277syn match logtalkOperator "//"
278syn match logtalkOperator "/"
Bram Moolenaar54ee7752005-05-31 22:22:17 +0000279syn match logtalkKeyword "\<r\(ound\|em\)\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000280syn match logtalkKeyword "\<rem\>"
281syn match logtalkKeyword "\<mod\ze("
282syn match logtalkKeyword "\<mod\>"
283syn match logtalkKeyword "\<abs\ze("
284syn match logtalkKeyword "\<sign\ze("
Bram Moolenaar54ee7752005-05-31 22:22:17 +0000285syn match logtalkKeyword "\<flo\(or\|at\(_\(integer\|fractional\)_part\)\?\)\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000286syn match logtalkKeyword "\<truncate\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000287syn match logtalkKeyword "\<ceiling\ze("
288
289
290" Other arithemtic functors
291
292syn match logtalkOperator "\*\*"
Bram Moolenaarf4b8e572004-06-24 15:53:16 +0000293syn match logtalkKeyword "\<s\(in\|qrt\)\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000294syn match logtalkKeyword "\<cos\ze("
295syn match logtalkKeyword "\<atan\ze("
296syn match logtalkKeyword "\<exp\ze("
297syn match logtalkKeyword "\<log\ze("
Bram Moolenaar071d4272004-06-13 20:20:40 +0000298
299
300" Bitwise functors
301
302syn match logtalkOperator ">>"
303syn match logtalkOperator "<<"
304syn match logtalkOperator "/\\"
305syn match logtalkOperator "\\/"
306syn match logtalkOperator "\\"
307
308
Bram Moolenaar071d4272004-06-13 20:20:40 +0000309" Logtalk list operator
310
311syn match logtalkOperator "|"
312
313
Bram Moolenaarc236c162008-07-13 17:41:49 +0000314" Logtalk numbers
Bram Moolenaar54ee7752005-05-31 22:22:17 +0000315
316syn match logtalkNumber "\<\d\+\>"
317syn match logtalkNumber "\<\d\+\.\d\+\>"
318syn match logtalkNumber "\<\d\+[eE][-+]\=\d\+\>"
319syn match logtalkNumber "\<\d\+\.\d\+[eE][-+]\=\d\+\>"
Bram Moolenaarc236c162008-07-13 17:41:49 +0000320syn match logtalkNumber "\<0'.\|0''\|0'\"\>"
Bram Moolenaar54ee7752005-05-31 22:22:17 +0000321syn match logtalkNumber "\<0b[0-1]\+\>"
Bram Moolenaar45eeb132005-06-06 21:59:07 +0000322syn match logtalkNumber "\<0o\o\+\>"
Bram Moolenaar54ee7752005-05-31 22:22:17 +0000323syn match logtalkNumber "\<0x\x\+\>"
324
325
326" Logtalk end-of-clause
327
328syn match logtalkOperator "\."
329
330
Bram Moolenaar071d4272004-06-13 20:20:40 +0000331" Logtalk comments
332
Bram Moolenaar45eeb132005-06-06 21:59:07 +0000333syn region logtalkBlockComment start="/\*" end="\*/" fold
Bram Moolenaar071d4272004-06-13 20:20:40 +0000334syn match logtalkLineComment "%.*"
335
336
Bram Moolenaar45eeb132005-06-06 21:59:07 +0000337" Logtalk entity folding
338
339syn region logtalkEntity transparent fold keepend start=":- object(" end=":- end_object\." contains=ALL
340syn region logtalkEntity transparent fold keepend start=":- protocol(" end=":- end_protocol\." contains=ALL
341syn region logtalkEntity transparent fold keepend start=":- category(" end=":- end_category\." contains=ALL
342
343
Bram Moolenaara0084652005-03-16 09:57:51 +0000344syn sync ccomment logtalkBlockComment maxlines=50
Bram Moolenaar071d4272004-06-13 20:20:40 +0000345
346
347" Define the default highlighting.
348" For version 5.7 and earlier: only when not done already
349" For version 5.8 and later: only when an item doesn't have highlighting yet
350
351if version >= 508 || !exists("did_logtalk_syn_inits")
352 if version < 508
353 let did_logtalk_syn_inits = 1
354 command -nargs=+ HiLink hi link <args>
355 else
356 command -nargs=+ HiLink hi def link <args>
357 endif
Bram Moolenaarc236c162008-07-13 17:41:49 +0000358
Bram Moolenaar071d4272004-06-13 20:20:40 +0000359 HiLink logtalkBlockComment Comment
360 HiLink logtalkLineComment Comment
361
362 HiLink logtalkOpenEntityDir Normal
363 HiLink logtalkOpenEntityDirTag PreProc
364
365 HiLink logtalkEntity Normal
366
367 HiLink logtalkEntityRel Normal
368 HiLink logtalkEntityRelTag PreProc
369
370 HiLink logtalkCloseEntityDir PreProc
371
372 HiLink logtalkDir Normal
373 HiLink logtalkDirTag PreProc
374
375 HiLink logtalkAtom String
376 HiLink logtalkString String
Bram Moolenaarc236c162008-07-13 17:41:49 +0000377 HiLink logtalkEscapeSequence SpecialChar
Bram Moolenaar071d4272004-06-13 20:20:40 +0000378
379 HiLink logtalkNumber Number
380
381 HiLink logtalkKeyword Keyword
382
383 HiLink logtalkBuiltIn Keyword
384 HiLink logtalkBuiltInMethod Keyword
385
386 HiLink logtalkOperator Operator
387
388 HiLink logtalkExtCall Normal
389 HiLink logtalkExtCallTag Operator
390
391 HiLink logtalkVariable Identifier
392
393 delcommand HiLink
394
395endif
396
397
398let b:current_syntax = "logtalk"