codekingpro/portable-devtools
114k
1" Vim syntax file2" Language: X resources files like ~/.Xdefaults (xrdb)3" Maintainer: Johannes Zellner <johannes@zellner.org>4" Author and previous maintainer:5" Gautam H. Mudunuri <gmudunur@informatica.com>6" Last Change: Di, 09 Mai 2006 23:10:23 CEST7" $Id: xdefaults.vim,v 1.2 2007/05/05 17:19:40 vimboss Exp $8"9" REFERENCES:10" xrdb manual page11" xrdb source: ftp://ftp.x.org/pub/R6.4/xc/programs/xrdb/xrdb.c12 13" quit when a syntax file was already loaded14if exists("b:current_syntax")15 finish16endif17 18" turn case on19syn case match20 21 22if !exists("xdefaults_no_colon_errors")23 " mark lines which do not contain a colon as errors.24 " This does not really catch all errors but only lines25 " which contain at least two WORDS and no colon. This26 " was done this way so that a line is not marked as27 " error while typing (which would be annoying).28 syntax match xdefaultsErrorLine "^\s*[a-zA-Z.*]\+\s\+[^: ]\+"29endif30 31 32" syn region xdefaultsLabel start=+^[^:]\{-}:+he=e-1 skip=+\\+ end="$"33syn match xdefaultsLabel +^[^:]\{-}:+he=e-1 contains=xdefaultsPunct,xdefaultsSpecial,xdefaultsLineEnd34syn region xdefaultsValue keepend start=+:+lc=1 skip=+\\+ end=+$+ contains=xdefaultsSpecial,xdefaultsLabel,xdefaultsLineEnd35 36syn match xdefaultsSpecial contained +#override+37syn match xdefaultsSpecial contained +#augment+38syn match xdefaultsPunct contained +[.*:]+39syn match xdefaultsLineEnd contained +\\$+40syn match xdefaultsLineEnd contained +\\n\\$+41syn match xdefaultsLineEnd contained +\\n$+42 43 44 45" COMMENTS46 47" note, that the '!' must be at the very first position of the line48syn match xdefaultsComment "^!.*$" contains=xdefaultsTodo,@Spell49 50" lines starting with a '#' mark and which are not preprocessor51" lines are skipped. This is not part of the xrdb documentation.52" It was reported by Bram Moolenaar and could be confirmed by53" having a look at xrdb.c:GetEntries()54syn match xdefaultsCommentH "^#.*$"55"syn region xdefaultsComment start="^#" end="$" keepend contains=ALL56syn region xdefaultsComment start="/\*" end="\*/" contains=xdefaultsTodo,@Spell57 58syntax match xdefaultsCommentError "\*/"59 60syn keyword xdefaultsTodo contained TODO FIXME XXX display61 62 63 64" PREPROCESSOR STUFF65 66syn region xdefaultsPreProc start="^\s*#\s*\(if\|ifdef\|ifndef\|elif\|else\|endif\)\>" skip="\\$" end="$" contains=xdefaultsSymbol67if !exists("xdefaults_no_if0")68 syn region xdefaultsCppOut start="^\s*#\s*if\s\+0\>" end=".\|$" contains=xdefaultsCppOut269 syn region xdefaultsCppOut2 contained start="0" end="^\s*#\s*\(endif\>\|else\>\|elif\>\)" contains=xdefaultsCppSkip70 syn region xdefaultsCppSkip contained start="^\s*#\s*\(if\>\|ifdef\>\|ifndef\>\)" skip="\\$" end="^\s*#\s*endif\>" contains=xdefaultsCppSkip71endif72syn region xdefaultsIncluded contained start=+"+ skip=+\\\\\|\\"+ end=+"+73syn match xdefaultsIncluded contained "<[^>]*>"74syn match xdefaultsInclude "^\s*#\s*include\>\s*["<]" contains=xdefaultsIncluded75syn cluster xdefaultsPreProcGroup contains=xdefaultsPreProc,xdefaultsIncluded,xdefaultsInclude,xdefaultsDefine,xdefaultsCppOut,xdefaultsCppOut2,xdefaultsCppSkip76syn region xdefaultsDefine start="^\s*#\s*\(define\|undef\)\>" skip="\\$" end="$" contains=ALLBUT,@xdefaultsPreProcGroup,xdefaultsCommentH,xdefaultsErrorLine,xdefaultsLabel,xdefaultsValue77syn region xdefaultsPreProc start="^\s*#\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" keepend contains=ALLBUT,@xdefaultsPreProcGroup,xdefaultsCommentH,xdefaultsErrorLine,xdefaultsLabel,xdefaultsValue78 79 80 81" symbols as defined by xrdb82syn keyword xdefaultsSymbol contained SERVERHOST83syn match xdefaultsSymbol contained "SRVR_[a-zA-Z0-9_]\+"84syn keyword xdefaultsSymbol contained HOST85syn keyword xdefaultsSymbol contained DISPLAY_NUM86syn keyword xdefaultsSymbol contained CLIENTHOST87syn match xdefaultsSymbol contained "CLNT_[a-zA-Z0-9_]\+"88syn keyword xdefaultsSymbol contained RELEASE89syn keyword xdefaultsSymbol contained REVISION90syn keyword xdefaultsSymbol contained VERSION91syn keyword xdefaultsSymbol contained VENDOR92syn match xdefaultsSymbol contained "VNDR_[a-zA-Z0-9_]\+"93syn match xdefaultsSymbol contained "EXT_[a-zA-Z0-9_]\+"94syn keyword xdefaultsSymbol contained NUM_SCREENS95syn keyword xdefaultsSymbol contained SCREEN_NUM96syn keyword xdefaultsSymbol contained BITS_PER_RGB97syn keyword xdefaultsSymbol contained CLASS98syn keyword xdefaultsSymbol contained StaticGray GrayScale StaticColor PseudoColor TrueColor DirectColor99syn match xdefaultsSymbol contained "CLASS_\(StaticGray\|GrayScale\|StaticColor\|PseudoColor\|TrueColor\|DirectColor\)"100syn keyword xdefaultsSymbol contained COLOR101syn match xdefaultsSymbol contained "CLASS_\(StaticGray\|GrayScale\|StaticColor\|PseudoColor\|TrueColor\|DirectColor\)_[0-9]\+"102syn keyword xdefaultsSymbol contained HEIGHT103syn keyword xdefaultsSymbol contained WIDTH104syn keyword xdefaultsSymbol contained PLANES105syn keyword xdefaultsSymbol contained X_RESOLUTION106syn keyword xdefaultsSymbol contained Y_RESOLUTION107 108" Define the default highlighting.109" Only when an item doesn't have highlighting yet110hi def link xdefaultsLabel Type111hi def link xdefaultsValue Constant112hi def link xdefaultsComment Comment113hi def link xdefaultsCommentH xdefaultsComment114hi def link xdefaultsPreProc PreProc115hi def link xdefaultsInclude xdefaultsPreProc116hi def link xdefaultsCppSkip xdefaultsCppOut117hi def link xdefaultsCppOut2 xdefaultsCppOut118hi def link xdefaultsCppOut Comment119hi def link xdefaultsIncluded String120hi def link xdefaultsDefine Macro121hi def link xdefaultsSymbol Statement122hi def link xdefaultsSpecial Statement123hi def link xdefaultsErrorLine Error124hi def link xdefaultsCommentError Error125hi def link xdefaultsPunct Normal126hi def link xdefaultsLineEnd Special127hi def link xdefaultsTodo Todo128 129 130let b:current_syntax = "xdefaults"131 132" vim:ts=8133 