xref: /vim-8.2.3635/runtime/syntax/uil.vim (revision 64d8e25b)
1" Vim syntax file
2" Language:	Motif UIL (User Interface Language)
3" Maintainer:	Thomas Koehler <[email protected]>
4"		Please be aware: I'm often slow to answer email due to a high
5"		non-computer related workload (sometimes 4-8 weeks)
6" Last Change:	2016 September 6
7" URL:		http://gott-gehabt.de/800_wer_wir_sind/thomas/Homepage/Computer/vim/syntax/uil.vim
8
9" quit when a syntax file was already loaded
10if exists("b:current_syntax")
11  finish
12endif
13
14" A bunch of useful keywords
15syn keyword uilType	arguments	callbacks	color
16syn keyword uilType	compound_string	controls	end
17syn keyword uilType	exported	file		include
18syn keyword uilType	module		object		procedure
19syn keyword uilType	user_defined	xbitmapfile
20
21syn keyword uilTodo contained	TODO
22
23" String and Character constants
24" Highlight special characters (those which have a backslash) differently
25syn match   uilSpecial contained "\\\d\d\d\|\\."
26syn region  uilString		start=+"+  skip=+\\\\\|\\"+  end=+"+  contains=@Spell,uilSpecial
27syn match   uilCharacter	"'[^\\]'"
28syn region  uilString		start=+'+  skip=+\\\\\|\\'+  end=+'+  contains=@Spell,uilSpecial
29syn match   uilSpecialCharacter	"'\\.'"
30syn match   uilSpecialStatement	"Xm[^	 =(){}:;]*"
31syn match   uilSpecialFunction	"MrmNcreateCallback"
32syn match   uilRessource	"XmN[^	 =(){}:;]*"
33
34syn match  uilNumber		"-\=\<\d*\.\=\d\+\(e\=f\=\|[uU]\=[lL]\=\)\>"
35syn match  uilNumber		"0[xX]\x\+\>"
36
37syn region uilComment		start="/\*"  end="\*/" contains=@Spell,uilTodo
38syn match  uilComment		"!.*" contains=@Spell,uilTodo
39syn match  uilCommentError	"\*/"
40
41syn region uilPreCondit		start="^#\s*\(if\>\|ifdef\>\|ifndef\>\|elif\>\|else\>\|endif\>\)"  skip="\\$"  end="$" contains=uilComment,uilString,uilCharacter,uilNumber,uilCommentError
42syn match  uilIncluded contained "<[^>]*>"
43syn match  uilInclude		"^#\s*include\s\+." contains=uilString,uilIncluded
44syn match  uilLineSkip		"\\$"
45syn region uilDefine		start="^#\s*\(define\>\|undef\>\)" end="$" contains=uilLineSkip,uilComment,uilString,uilCharacter,uilNumber,uilCommentError
46
47syn sync ccomment uilComment
48
49" Define the default highlighting.
50" Only when an item doesn't have highlighting yet
51
52" The default highlighting.
53hi def link uilCharacter		uilString
54hi def link uilSpecialCharacter	uilSpecial
55hi def link uilNumber		uilString
56hi def link uilCommentError	uilError
57hi def link uilInclude		uilPreCondit
58hi def link uilDefine		uilPreCondit
59hi def link uilIncluded		uilString
60hi def link uilSpecialFunction	uilRessource
61hi def link uilRessource		Identifier
62hi def link uilSpecialStatement	Keyword
63hi def link uilError		Error
64hi def link uilPreCondit		PreCondit
65hi def link uilType		Type
66hi def link uilString		String
67hi def link uilComment		Comment
68hi def link uilSpecial		Special
69hi def link uilTodo		Todo
70
71
72
73let b:current_syntax = "uil"
74
75" vim: ts=8
76