neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

xdefaults.vim (5887B)


      1 " Vim syntax file
      2 " 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 CEST
      7 " $Id: xdefaults.vim,v 1.2 2007/05/05 17:19:40 vimboss Exp $
      8 "
      9 " REFERENCES:
     10 "   xrdb manual page
     11 "   xrdb source: ftp://ftp.x.org/pub/R6.4/xc/programs/xrdb/xrdb.c
     12 
     13 " quit when a syntax file was already loaded
     14 if exists("b:current_syntax")
     15  finish
     16 endif
     17 
     18 " turn case on
     19 syn case match
     20 
     21 
     22 if !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 lines
     25    " which contain at least two WORDS and no colon. This
     26    " was done this way so that a line is not marked as
     27    " error while typing (which would be annoying).
     28    syntax match xdefaultsErrorLine "^\s*[a-zA-Z.*]\+\s\+[^: 	]\+"
     29 endif
     30 
     31 
     32 " syn region  xdefaultsLabel   start=+^[^:]\{-}:+he=e-1 skip=+\\+ end="$"
     33 syn match   xdefaultsLabel   +^[^:]\{-}:+he=e-1                       contains=xdefaultsPunct,xdefaultsSpecial,xdefaultsLineEnd
     34 syn region  xdefaultsValue   keepend start=+:+lc=1 skip=+\\+ end=+$+ contains=xdefaultsSpecial,xdefaultsLabel,xdefaultsLineEnd
     35 
     36 syn match   xdefaultsSpecial	contained +#override+
     37 syn match   xdefaultsSpecial	contained +#augment+
     38 syn match   xdefaultsPunct	contained +[.*:]+
     39 syn match   xdefaultsLineEnd	contained +\\$+
     40 syn match   xdefaultsLineEnd	contained +\\n\\$+
     41 syn match   xdefaultsLineEnd	contained +\\n$+
     42 
     43 
     44 
     45 " COMMENTS
     46 
     47 " note, that the '!' must be at the very first position of the line
     48 syn match   xdefaultsComment "^!.*$"                     contains=xdefaultsTodo,@Spell
     49 
     50 " lines starting with a '#' mark and which are not preprocessor
     51 " lines are skipped.  This is not part of the xrdb documentation.
     52 " It was reported by Bram Moolenaar and could be confirmed by
     53 " having a look at xrdb.c:GetEntries()
     54 syn match   xdefaultsCommentH		"^#.*$"
     55 "syn region  xdefaultsComment start="^#"  end="$" keepend contains=ALL
     56 syn region  xdefaultsComment start="/\*" end="\*/"       contains=xdefaultsTodo,@Spell
     57 
     58 syntax match xdefaultsCommentError	"\*/"
     59 
     60 syn keyword xdefaultsTodo contained TODO FIXME XXX display
     61 
     62 
     63 
     64 " PREPROCESSOR STUFF
     65 
     66 syn region	xdefaultsPreProc	start="^\s*#\s*\(if\|ifdef\|ifndef\|elif\|else\|endif\)\>" skip="\\$" end="$" contains=xdefaultsSymbol
     67 if !exists("xdefaults_no_if0")
     68  syn region	xdefaultsCppOut		start="^\s*#\s*if\s\+0\>" end=".\|$" contains=xdefaultsCppOut2
     69  syn region	xdefaultsCppOut2	contained start="0" end="^\s*#\s*\(endif\>\|else\>\|elif\>\)" contains=xdefaultsCppSkip
     70  syn region	xdefaultsCppSkip	contained start="^\s*#\s*\(if\>\|ifdef\>\|ifndef\>\)" skip="\\$" end="^\s*#\s*endif\>" contains=xdefaultsCppSkip
     71 endif
     72 syn region	xdefaultsIncluded	contained start=+"+ skip=+\\\\\|\\"+ end=+"+
     73 syn match	xdefaultsIncluded	contained "<[^>]*>"
     74 syn match	xdefaultsInclude	"^\s*#\s*include\>\s*["<]" contains=xdefaultsIncluded
     75 syn cluster	xdefaultsPreProcGroup	contains=xdefaultsPreProc,xdefaultsIncluded,xdefaultsInclude,xdefaultsDefine,xdefaultsCppOut,xdefaultsCppOut2,xdefaultsCppSkip
     76 syn region	xdefaultsDefine		start="^\s*#\s*\(define\|undef\)\>" skip="\\$" end="$" contains=ALLBUT,@xdefaultsPreProcGroup,xdefaultsCommentH,xdefaultsErrorLine,xdefaultsLabel,xdefaultsValue
     77 syn region	xdefaultsPreProc	start="^\s*#\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" keepend contains=ALLBUT,@xdefaultsPreProcGroup,xdefaultsCommentH,xdefaultsErrorLine,xdefaultsLabel,xdefaultsValue
     78 
     79 
     80 
     81 " symbols as defined by xrdb
     82 syn keyword xdefaultsSymbol contained SERVERHOST
     83 syn match   xdefaultsSymbol contained "SRVR_[a-zA-Z0-9_]\+"
     84 syn keyword xdefaultsSymbol contained HOST
     85 syn keyword xdefaultsSymbol contained DISPLAY_NUM
     86 syn keyword xdefaultsSymbol contained CLIENTHOST
     87 syn match   xdefaultsSymbol contained "CLNT_[a-zA-Z0-9_]\+"
     88 syn keyword xdefaultsSymbol contained RELEASE
     89 syn keyword xdefaultsSymbol contained REVISION
     90 syn keyword xdefaultsSymbol contained VERSION
     91 syn keyword xdefaultsSymbol contained VENDOR
     92 syn match   xdefaultsSymbol contained "VNDR_[a-zA-Z0-9_]\+"
     93 syn match   xdefaultsSymbol contained "EXT_[a-zA-Z0-9_]\+"
     94 syn keyword xdefaultsSymbol contained NUM_SCREENS
     95 syn keyword xdefaultsSymbol contained SCREEN_NUM
     96 syn keyword xdefaultsSymbol contained BITS_PER_RGB
     97 syn keyword xdefaultsSymbol contained CLASS
     98 syn keyword xdefaultsSymbol contained StaticGray GrayScale StaticColor PseudoColor TrueColor DirectColor
     99 syn match   xdefaultsSymbol contained "CLASS_\(StaticGray\|GrayScale\|StaticColor\|PseudoColor\|TrueColor\|DirectColor\)"
    100 syn keyword xdefaultsSymbol contained COLOR
    101 syn match   xdefaultsSymbol contained "CLASS_\(StaticGray\|GrayScale\|StaticColor\|PseudoColor\|TrueColor\|DirectColor\)_[0-9]\+"
    102 syn keyword xdefaultsSymbol contained HEIGHT
    103 syn keyword xdefaultsSymbol contained WIDTH
    104 syn keyword xdefaultsSymbol contained PLANES
    105 syn keyword xdefaultsSymbol contained X_RESOLUTION
    106 syn keyword xdefaultsSymbol contained Y_RESOLUTION
    107 
    108 " Define the default highlighting.
    109 " Only when an item doesn't have highlighting yet
    110 hi def link xdefaultsLabel		Type
    111 hi def link xdefaultsValue		Constant
    112 hi def link xdefaultsComment	Comment
    113 hi def link xdefaultsCommentH	xdefaultsComment
    114 hi def link xdefaultsPreProc	PreProc
    115 hi def link xdefaultsInclude	xdefaultsPreProc
    116 hi def link xdefaultsCppSkip	xdefaultsCppOut
    117 hi def link xdefaultsCppOut2	xdefaultsCppOut
    118 hi def link xdefaultsCppOut	Comment
    119 hi def link xdefaultsIncluded	String
    120 hi def link xdefaultsDefine	Macro
    121 hi def link xdefaultsSymbol	Statement
    122 hi def link xdefaultsSpecial	Statement
    123 hi def link xdefaultsErrorLine	Error
    124 hi def link xdefaultsCommentError	Error
    125 hi def link xdefaultsPunct		Normal
    126 hi def link xdefaultsLineEnd	Special
    127 hi def link xdefaultsTodo		Todo
    128 
    129 
    130 let b:current_syntax = "xdefaults"
    131 
    132 " vim:ts=8