1071d4279SBram Moolenaar" Vim syntax file 2071d4279SBram Moolenaar" Language: Motif UIL (User Interface Language) 3071d4279SBram Moolenaar" Maintainer: Thomas Koehler <[email protected]> 4*64d8e25bSBram Moolenaar" Please be aware: I'm often slow to answer email due to a high 5*64d8e25bSBram Moolenaar" non-computer related workload (sometimes 4-8 weeks) 6*64d8e25bSBram Moolenaar" Last Change: 2016 September 6 75c73622aSBram Moolenaar" URL: http://gott-gehabt.de/800_wer_wir_sind/thomas/Homepage/Computer/vim/syntax/uil.vim 85c73622aSBram Moolenaar 989bcfda6SBram Moolenaar" quit when a syntax file was already loaded 1089bcfda6SBram Moolenaarif exists("b:current_syntax") 11071d4279SBram Moolenaar finish 12071d4279SBram Moolenaarendif 13071d4279SBram Moolenaar 14071d4279SBram Moolenaar" A bunch of useful keywords 15071d4279SBram Moolenaarsyn keyword uilType arguments callbacks color 16071d4279SBram Moolenaarsyn keyword uilType compound_string controls end 17071d4279SBram Moolenaarsyn keyword uilType exported file include 18071d4279SBram Moolenaarsyn keyword uilType module object procedure 19071d4279SBram Moolenaarsyn keyword uilType user_defined xbitmapfile 20071d4279SBram Moolenaar 21071d4279SBram Moolenaarsyn keyword uilTodo contained TODO 22071d4279SBram Moolenaar 231aeaf8c0SBram Moolenaar" String and Character constants 24071d4279SBram Moolenaar" Highlight special characters (those which have a backslash) differently 25071d4279SBram Moolenaarsyn match uilSpecial contained "\\\d\d\d\|\\." 261aeaf8c0SBram Moolenaarsyn region uilString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@Spell,uilSpecial 27071d4279SBram Moolenaarsyn match uilCharacter "'[^\\]'" 28543b7ef7SBram Moolenaarsyn region uilString start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=@Spell,uilSpecial 29071d4279SBram Moolenaarsyn match uilSpecialCharacter "'\\.'" 30543b7ef7SBram Moolenaarsyn match uilSpecialStatement "Xm[^ =(){}:;]*" 31071d4279SBram Moolenaarsyn match uilSpecialFunction "MrmNcreateCallback" 32543b7ef7SBram Moolenaarsyn match uilRessource "XmN[^ =(){}:;]*" 33071d4279SBram Moolenaar 34071d4279SBram Moolenaarsyn match uilNumber "-\=\<\d*\.\=\d\+\(e\=f\=\|[uU]\=[lL]\=\)\>" 351aeaf8c0SBram Moolenaarsyn match uilNumber "0[xX]\x\+\>" 36071d4279SBram Moolenaar 371aeaf8c0SBram Moolenaarsyn region uilComment start="/\*" end="\*/" contains=@Spell,uilTodo 381aeaf8c0SBram Moolenaarsyn match uilComment "!.*" contains=@Spell,uilTodo 39071d4279SBram Moolenaarsyn match uilCommentError "\*/" 40071d4279SBram Moolenaar 41071d4279SBram Moolenaarsyn region uilPreCondit start="^#\s*\(if\>\|ifdef\>\|ifndef\>\|elif\>\|else\>\|endif\>\)" skip="\\$" end="$" contains=uilComment,uilString,uilCharacter,uilNumber,uilCommentError 42071d4279SBram Moolenaarsyn match uilIncluded contained "<[^>]*>" 43071d4279SBram Moolenaarsyn match uilInclude "^#\s*include\s\+." contains=uilString,uilIncluded 44071d4279SBram Moolenaarsyn match uilLineSkip "\\$" 45071d4279SBram Moolenaarsyn region uilDefine start="^#\s*\(define\>\|undef\>\)" end="$" contains=uilLineSkip,uilComment,uilString,uilCharacter,uilNumber,uilCommentError 46071d4279SBram Moolenaar 47071d4279SBram Moolenaarsyn sync ccomment uilComment 48071d4279SBram Moolenaar 49071d4279SBram Moolenaar" Define the default highlighting. 5089bcfda6SBram Moolenaar" Only when an item doesn't have highlighting yet 51071d4279SBram Moolenaar 52071d4279SBram Moolenaar" The default highlighting. 53f37506f6SBram Moolenaarhi def link uilCharacter uilString 54f37506f6SBram Moolenaarhi def link uilSpecialCharacter uilSpecial 55f37506f6SBram Moolenaarhi def link uilNumber uilString 56f37506f6SBram Moolenaarhi def link uilCommentError uilError 57f37506f6SBram Moolenaarhi def link uilInclude uilPreCondit 58f37506f6SBram Moolenaarhi def link uilDefine uilPreCondit 59f37506f6SBram Moolenaarhi def link uilIncluded uilString 60f37506f6SBram Moolenaarhi def link uilSpecialFunction uilRessource 61f37506f6SBram Moolenaarhi def link uilRessource Identifier 62f37506f6SBram Moolenaarhi def link uilSpecialStatement Keyword 63f37506f6SBram Moolenaarhi def link uilError Error 64f37506f6SBram Moolenaarhi def link uilPreCondit PreCondit 65f37506f6SBram Moolenaarhi def link uilType Type 66f37506f6SBram Moolenaarhi def link uilString String 67f37506f6SBram Moolenaarhi def link uilComment Comment 68f37506f6SBram Moolenaarhi def link uilSpecial Special 69f37506f6SBram Moolenaarhi def link uilTodo Todo 70071d4279SBram Moolenaar 71071d4279SBram Moolenaar 72071d4279SBram Moolenaar 73071d4279SBram Moolenaarlet b:current_syntax = "uil" 74071d4279SBram Moolenaar 75071d4279SBram Moolenaar" vim: ts=8 76