slpconf.vim (11791B)
1 " Vim syntax file 2 " Language: RFC 2614 - An API for Service Location configuration file 3 " Previous Maintainer: Nikolai Weibull <now@bitwi.se> 4 " Latest Revision: 2006-04-19 5 6 if exists("b:current_syntax") 7 finish 8 endif 9 10 let s:cpo_save = &cpo 11 set cpo&vim 12 13 syn keyword slpconfTodo contained TODO FIXME XXX NOTE 14 15 syn region slpconfComment display oneline start='^[#;]' end='$' 16 \ contains=slpconfTodo,@Spell 17 18 syn match slpconfBegin display '^' 19 \ nextgroup=slpconfTag, 20 \ slpconfComment skipwhite 21 22 syn keyword slpconfTag contained net 23 \ nextgroup=slpconfNetTagDot 24 25 syn match slpconfNetTagDot contained display '.' 26 \ nextgroup=slpconfNetTag 27 28 syn keyword slpconfNetTag contained slp 29 \ nextgroup=slpconfNetSlpTagdot 30 31 syn match slpconfNetSlpTagDot contained display '.' 32 \ nextgroup=slpconfNetSlpTag 33 34 syn keyword slpconfNetSlpTag contained isDA traceDATraffic traceMsg 35 \ traceDrop traceReg isBroadcastOnly 36 \ passiveDADetection securityEnabled 37 \ nextgroup=slpconfBooleanEq,slpconfBooleanHome 38 \ skipwhite 39 40 syn match slpconfBooleanHome contained display 41 \ '\.\d\{1,3}\%(\.\d\{1,3}\)\{3}' 42 \ nextgroup=slpconfBooleanEq skipwhite 43 44 syn match slpconfBooleanEq contained display '=' 45 \ nextgroup=slpconfBoolean skipwhite 46 47 syn keyword slpconfBoolean contained true false TRUE FALSE 48 49 syn keyword slpconfNetSlpTag contained DAHeartBeat multicastTTL 50 \ DAActiveDiscoveryInterval 51 \ multicastMaximumWait multicastTimeouts 52 \ randomWaitBound MTU maxResults 53 \ nextgroup=slpconfIntegerEq,slpconfIntegerHome 54 \ skipwhite 55 56 syn match slpconfIntegerHome contained display 57 \ '\.\d\{1,3}\%(\.\d\{1,3}\)\{3}' 58 \ nextgroup=slpconfIntegerEq skipwhite 59 60 syn match slpconfIntegerEq contained display '=' 61 \ nextgroup=slpconfInteger skipwhite 62 63 syn match slpconfInteger contained display '\<\d\+\>' 64 65 syn keyword slpconfNetSlpTag contained DAAttributes SAAttributes 66 \ nextgroup=slpconfAttrEq,slpconfAttrHome 67 \ skipwhite 68 69 syn match slpconfAttrHome contained display 70 \ '\.\d\{1,3}\%(\.\d\{1,3}\)\{3}' 71 \ nextgroup=slpconfAttrEq skipwhite 72 73 syn match slpconfAttrEq contained display '=' 74 \ nextgroup=slpconfAttrBegin skipwhite 75 76 syn match slpconfAttrBegin contained display '(' 77 \ nextgroup=slpconfAttrTag skipwhite 78 79 syn match slpconfAttrTag contained display 80 \ '[^* \t_(),\\!<=>~[:cntrl:]]\+' 81 \ nextgroup=slpconfAttrTagEq skipwhite 82 83 syn match slpconfAttrTagEq contained display '=' 84 \ nextgroup=@slpconfAttrValue skipwhite 85 86 syn cluster slpconfAttrValueCon contains=slpconfAttrValueSep,slpconfAttrEnd 87 88 syn cluster slpconfAttrValue contains=slpconfAttrIValue,slpconfAttrSValue, 89 \ slpconfAttrBValue,slpconfAttrSSValue 90 91 syn match slpconfAttrSValue contained display '[^ (),\\!<=>~[:cntrl:]]\+' 92 \ nextgroup=@slpconfAttrValueCon skipwhite 93 94 syn match slpconfAttrSSValue contained display '\\FF\%(\\\x\x\)\+' 95 \ nextgroup=@slpconfAttrValueCon skipwhite 96 97 syn match slpconfAttrIValue contained display '[-]\=\d\+\>' 98 \ nextgroup=@slpconfAttrValueCon skipwhite 99 100 syn keyword slpconfAttrBValue contained true false 101 \ nextgroup=@slpconfAttrValueCon skipwhite 102 103 syn match slpconfAttrValueSep contained display ',' 104 \ nextgroup=@slpconfAttrValue skipwhite 105 106 syn match slpconfAttrEnd contained display ')' 107 \ nextgroup=slpconfAttrSep skipwhite 108 109 syn match slpconfAttrSep contained display ',' 110 \ nextgroup=slpconfAttrBegin skipwhite 111 112 syn keyword slpconfNetSlpTag contained useScopes typeHint 113 \ nextgroup=slpconfStringsEq,slpconfStringsHome 114 \ skipwhite 115 116 syn match slpconfStringsHome contained display 117 \ '\.\d\{1,3}\%(\.\d\{1,3}\)\{3}' 118 \ nextgroup=slpconfStringsEq skipwhite 119 120 syn match slpconfStringsEq contained display '=' 121 \ nextgroup=slpconfStrings skipwhite 122 123 syn match slpconfStrings contained display 124 \ '\%([[:digit:][:alpha:]]\|[!-+./:-@[-`{-~-]\|\\\x\x\)\+' 125 \ nextgroup=slpconfStringsSep skipwhite 126 127 syn match slpconfStringsSep contained display ',' 128 \ nextgroup=slpconfStrings skipwhite 129 130 syn keyword slpconfNetSlpTag contained DAAddresses 131 \ nextgroup=slpconfAddressesEq,slpconfAddrsHome 132 \ skipwhite 133 134 syn match slpconfAddrsHome contained display 135 \ '\.\d\{1,3}\%(\.\d\{1,3}\)\{3}' 136 \ nextgroup=slpconfAddressesEq skipwhite 137 138 syn match slpconfAddressesEq contained display '=' 139 \ nextgroup=@slpconfAddresses skipwhite 140 141 syn cluster slpconfAddresses contains=slpconfFQDNs,slpconfHostnumbers 142 143 syn match slpconfFQDNs contained display 144 \ '\a[[:alnum:]-]*[[:alnum:]]\|\a' 145 \ nextgroup=slpconfAddressesSep skipwhite 146 147 syn match slpconfHostnumbers contained display 148 \ '\d\{1,3}\%(\.\d\{1,3}\)\{3}' 149 \ nextgroup=slpconfAddressesSep skipwhite 150 151 syn match slpconfAddressesSep contained display ',' 152 \ nextgroup=@slpconfAddresses skipwhite 153 154 syn keyword slpconfNetSlpTag contained serializedRegURL 155 \ nextgroup=slpconfStringEq,slpconfStringHome 156 \ skipwhite 157 158 syn match slpconfStringHome contained display 159 \ '\.\d\{1,3}\%(\.\d\{1,3}\)\{3}' 160 \ nextgroup=slpconfStringEq skipwhite 161 162 syn match slpconfStringEq contained display '=' 163 \ nextgroup=slpconfString skipwhite 164 165 syn match slpconfString contained display 166 \ '\%([!-+./:-@[-`{-~-]\|\\\x\x\)\+\|[[:digit:][:alpha:]]' 167 168 syn keyword slpconfNetSlpTag contained multicastTimeouts DADiscoveryTimeouts 169 \ datagramTimeouts 170 \ nextgroup=slpconfIntegersEq, 171 \ slpconfIntegersHome skipwhite 172 173 syn match slpconfIntegersHome contained display 174 \ '\.\d\{1,3}\%(\.\d\{1,3}\)\{3}' 175 \ nextgroup=slpconfIntegersEq skipwhite 176 177 syn match slpconfIntegersEq contained display '=' 178 \ nextgroup=slpconfIntegers skipwhite 179 180 syn match slpconfIntegers contained display '\<\d\+\>' 181 \ nextgroup=slpconfIntegersSep skipwhite 182 183 syn match slpconfIntegersSep contained display ',' 184 \ nextgroup=slpconfIntegers skipwhite 185 186 syn keyword slpconfNetSlpTag contained interfaces 187 \ nextgroup=slpconfHostnumsEq, 188 \ slpconfHostnumsHome skipwhite 189 190 syn match slpconfHostnumsHome contained display 191 \ '\.\d\{1,3}\%(\.\d\{1,3}\)\{3}' 192 \ nextgroup=slpconfHostnumsEq skipwhite 193 194 syn match slpconfHostnumsEq contained display '=' 195 \ nextgroup=slpconfOHostnumbers skipwhite 196 197 syn match slpconfOHostnumbers contained display 198 \ '\d\{1,3}\%(\.\d\{1,3}\)\{3}' 199 \ nextgroup=slpconfHostnumsSep skipwhite 200 201 syn match slpconfHostnumsSep contained display ',' 202 \ nextgroup=slpconfOHostnumbers skipwhite 203 204 syn keyword slpconfNetSlpTag contained locale 205 \ nextgroup=slpconfLocaleEq,slpconfLocaleHome 206 \ skipwhite 207 208 syn match slpconfLocaleHome contained display 209 \ '\.\d\{1,3}\%(\.\d\{1,3}\)\{3}' 210 \ nextgroup=slpconfLocaleEq skipwhite 211 212 syn match slpconfLocaleEq contained display '=' 213 \ nextgroup=slpconfLocale skipwhite 214 215 syn match slpconfLocale contained display '\a\{1,8}\%(-\a\{1,8}\)\=' 216 217 hi def link slpconfTodo Todo 218 hi def link slpconfComment Comment 219 hi def link slpconfTag Identifier 220 hi def link slpconfDelimiter Delimiter 221 hi def link slpconfNetTagDot slpconfDelimiter 222 hi def link slpconfNetTag slpconfTag 223 hi def link slpconfNetSlpTagDot slpconfNetTagDot 224 hi def link slpconfNetSlpTag slpconfTag 225 hi def link slpconfHome Special 226 hi def link slpconfBooleanHome slpconfHome 227 hi def link slpconfEq Operator 228 hi def link slpconfBooleanEq slpconfEq 229 hi def link slpconfBoolean Boolean 230 hi def link slpconfIntegerHome slpconfHome 231 hi def link slpconfIntegerEq slpconfEq 232 hi def link slpconfInteger Number 233 hi def link slpconfAttrHome slpconfHome 234 hi def link slpconfAttrEq slpconfEq 235 hi def link slpconfAttrBegin slpconfDelimiter 236 hi def link slpconfAttrTag slpconfTag 237 hi def link slpconfAttrTagEq slpconfEq 238 hi def link slpconfAttrIValue slpconfInteger 239 hi def link slpconfAttrSValue slpconfString 240 hi def link slpconfAttrBValue slpconfBoolean 241 hi def link slpconfAttrSSValue slpconfString 242 hi def link slpconfSeparator slpconfDelimiter 243 hi def link slpconfAttrValueSep slpconfSeparator 244 hi def link slpconfAttrEnd slpconfAttrBegin 245 hi def link slpconfAttrSep slpconfSeparator 246 hi def link slpconfStringsHome slpconfHome 247 hi def link slpconfStringsEq slpconfEq 248 hi def link slpconfStrings slpconfString 249 hi def link slpconfStringsSep slpconfSeparator 250 hi def link slpconfAddrsHome slpconfHome 251 hi def link slpconfAddressesEq slpconfEq 252 hi def link slpconfFQDNs String 253 hi def link slpconfHostnumbers Number 254 hi def link slpconfAddressesSep slpconfSeparator 255 hi def link slpconfStringHome slpconfHome 256 hi def link slpconfStringEq slpconfEq 257 hi def link slpconfString String 258 hi def link slpconfIntegersHome slpconfHome 259 hi def link slpconfIntegersEq slpconfEq 260 hi def link slpconfIntegers slpconfInteger 261 hi def link slpconfIntegersSep slpconfSeparator 262 hi def link slpconfHostnumsHome slpconfHome 263 hi def link slpconfHostnumsEq slpconfEq 264 hi def link slpconfOHostnumbers slpconfHostnumbers 265 hi def link slpconfHostnumsSep slpconfSeparator 266 hi def link slpconfLocaleHome slpconfHome 267 hi def link slpconfLocaleEq slpconfEq 268 hi def link slpconfLocale slpconfString 269 270 let b:current_syntax = "slpconf" 271 272 let &cpo = s:cpo_save 273 unlet s:cpo_save