xref: /vim-8.2.3635/runtime/syntax/slpconf.vim (revision 214641f7)
10dc065eeSBram Moolenaar" Vim syntax file
20dc065eeSBram Moolenaar" Language:             RFC 2614 - An API for Service Location configuration file
3*214641f7SBram Moolenaar" Previous Maintainer:  Nikolai Weibull <[email protected]>
457657d85SBram Moolenaar" Latest Revision:      2006-04-19
50dc065eeSBram Moolenaar
60dc065eeSBram Moolenaarif exists("b:current_syntax")
70dc065eeSBram Moolenaar  finish
80dc065eeSBram Moolenaarendif
90dc065eeSBram Moolenaar
100dc065eeSBram Moolenaarlet s:cpo_save = &cpo
110dc065eeSBram Moolenaarset cpo&vim
120dc065eeSBram Moolenaar
130dc065eeSBram Moolenaarsyn keyword slpconfTodo         contained TODO FIXME XXX NOTE
140dc065eeSBram Moolenaar
150dc065eeSBram Moolenaarsyn region  slpconfComment      display oneline start='^[#;]' end='$'
160dc065eeSBram Moolenaar                                \ contains=slpconfTodo,@Spell
170dc065eeSBram Moolenaar
180dc065eeSBram Moolenaarsyn match   slpconfBegin        display '^'
190dc065eeSBram Moolenaar                                \ nextgroup=slpconfTag,
200dc065eeSBram Moolenaar                                \ slpconfComment skipwhite
210dc065eeSBram Moolenaar
220dc065eeSBram Moolenaarsyn keyword slpconfTag          contained net
230dc065eeSBram Moolenaar                                \ nextgroup=slpconfNetTagDot
240dc065eeSBram Moolenaar
250dc065eeSBram Moolenaarsyn match   slpconfNetTagDot    contained display '.'
260dc065eeSBram Moolenaar                                \ nextgroup=slpconfNetTag
270dc065eeSBram Moolenaar
280dc065eeSBram Moolenaarsyn keyword slpconfNetTag       contained slp
290dc065eeSBram Moolenaar                                \ nextgroup=slpconfNetSlpTagdot
300dc065eeSBram Moolenaar
310dc065eeSBram Moolenaarsyn match   slpconfNetSlpTagDot contained display '.'
320dc065eeSBram Moolenaar                                \ nextgroup=slpconfNetSlpTag
330dc065eeSBram Moolenaar
340dc065eeSBram Moolenaarsyn keyword slpconfNetSlpTag    contained isDA traceDATraffic traceMsg
350dc065eeSBram Moolenaar                                \ traceDrop traceReg isBroadcastOnly
360dc065eeSBram Moolenaar                                \ passiveDADetection securityEnabled
370dc065eeSBram Moolenaar                                \ nextgroup=slpconfBooleanEq,slpconfBooleanHome
380dc065eeSBram Moolenaar                                \ skipwhite
390dc065eeSBram Moolenaar
400dc065eeSBram Moolenaarsyn match   slpconfBooleanHome  contained display
410dc065eeSBram Moolenaar                                \ '\.\d\{1,3}\%(\.\d\{1,3}\)\{3}'
420dc065eeSBram Moolenaar                                \ nextgroup=slpconfBooleanEq skipwhite
430dc065eeSBram Moolenaar
440dc065eeSBram Moolenaarsyn match   slpconfBooleanEq    contained display '='
450dc065eeSBram Moolenaar                                \ nextgroup=slpconfBoolean skipwhite
460dc065eeSBram Moolenaar
470dc065eeSBram Moolenaarsyn keyword slpconfBoolean      contained true false TRUE FALSE
480dc065eeSBram Moolenaar
490dc065eeSBram Moolenaarsyn keyword slpconfNetSlpTag    contained DAHeartBeat multicastTTL
500dc065eeSBram Moolenaar                                \ DAActiveDiscoveryInterval
510dc065eeSBram Moolenaar                                \ multicastMaximumWait multicastTimeouts
520dc065eeSBram Moolenaar                                \ randomWaitBound MTU maxResults
530dc065eeSBram Moolenaar                                \ nextgroup=slpconfIntegerEq,slpconfIntegerHome
540dc065eeSBram Moolenaar                                \ skipwhite
550dc065eeSBram Moolenaar
560dc065eeSBram Moolenaarsyn match   slpconfIntegerHome  contained display
570dc065eeSBram Moolenaar                                \ '\.\d\{1,3}\%(\.\d\{1,3}\)\{3}'
580dc065eeSBram Moolenaar                                \ nextgroup=slpconfIntegerEq skipwhite
590dc065eeSBram Moolenaar
600dc065eeSBram Moolenaarsyn match   slpconfIntegerEq    contained display '='
610dc065eeSBram Moolenaar                                \ nextgroup=slpconfInteger skipwhite
620dc065eeSBram Moolenaar
630dc065eeSBram Moolenaarsyn match   slpconfInteger      contained display '\<\d\+\>'
640dc065eeSBram Moolenaar
650dc065eeSBram Moolenaarsyn keyword slpconfNetSlpTag    contained DAAttributes SAAttributes
660dc065eeSBram Moolenaar                                \ nextgroup=slpconfAttrEq,slpconfAttrHome
670dc065eeSBram Moolenaar                                \ skipwhite
680dc065eeSBram Moolenaar
690dc065eeSBram Moolenaarsyn match   slpconfAttrHome     contained display
700dc065eeSBram Moolenaar                                \ '\.\d\{1,3}\%(\.\d\{1,3}\)\{3}'
710dc065eeSBram Moolenaar                                \ nextgroup=slpconfAttrEq skipwhite
720dc065eeSBram Moolenaar
730dc065eeSBram Moolenaarsyn match   slpconfAttrEq       contained display '='
740dc065eeSBram Moolenaar                                \ nextgroup=slpconfAttrBegin skipwhite
750dc065eeSBram Moolenaar
760dc065eeSBram Moolenaarsyn match   slpconfAttrBegin    contained display '('
770dc065eeSBram Moolenaar                                \ nextgroup=slpconfAttrTag skipwhite
780dc065eeSBram Moolenaar
790dc065eeSBram Moolenaarsyn match   slpconfAttrTag      contained display
800dc065eeSBram Moolenaar                                \ '[^* \t_(),\\!<=>~[:cntrl:]]\+'
810dc065eeSBram Moolenaar                                \ nextgroup=slpconfAttrTagEq skipwhite
820dc065eeSBram Moolenaar
830dc065eeSBram Moolenaarsyn match   slpconfAttrTagEq    contained display '='
840dc065eeSBram Moolenaar                                \ nextgroup=@slpconfAttrValue skipwhite
850dc065eeSBram Moolenaar
860dc065eeSBram Moolenaarsyn cluster slpconfAttrValueCon contains=slpconfAttrValueSep,slpconfAttrEnd
870dc065eeSBram Moolenaar
880dc065eeSBram Moolenaarsyn cluster slpconfAttrValue    contains=slpconfAttrIValue,slpconfAttrSValue,
890dc065eeSBram Moolenaar                                \ slpconfAttrBValue,slpconfAttrSSValue
900dc065eeSBram Moolenaar
910dc065eeSBram Moolenaarsyn match   slpconfAttrSValue   contained display '[^ (),\\!<=>~[:cntrl:]]\+'
920dc065eeSBram Moolenaar                                \ nextgroup=@slpconfAttrValueCon skipwhite
930dc065eeSBram Moolenaar
940dc065eeSBram Moolenaarsyn match   slpconfAttrSSValue  contained display '\\FF\%(\\\x\x\)\+'
950dc065eeSBram Moolenaar                                \ nextgroup=@slpconfAttrValueCon skipwhite
960dc065eeSBram Moolenaar
970dc065eeSBram Moolenaarsyn match   slpconfAttrIValue   contained display '[-]\=\d\+\>'
980dc065eeSBram Moolenaar                                \ nextgroup=@slpconfAttrValueCon skipwhite
990dc065eeSBram Moolenaar
1000dc065eeSBram Moolenaarsyn keyword slpconfAttrBValue   contained true false
1010dc065eeSBram Moolenaar                                \ nextgroup=@slpconfAttrValueCon skipwhite
1020dc065eeSBram Moolenaar
1030dc065eeSBram Moolenaarsyn match   slpconfAttrValueSep contained display ','
1040dc065eeSBram Moolenaar                                \ nextgroup=@slpconfAttrValue skipwhite
1050dc065eeSBram Moolenaar
1060dc065eeSBram Moolenaarsyn match   slpconfAttrEnd      contained display ')'
1070dc065eeSBram Moolenaar                                \ nextgroup=slpconfAttrSep skipwhite
1080dc065eeSBram Moolenaar
1090dc065eeSBram Moolenaarsyn match   slpconfAttrSep      contained display ','
1100dc065eeSBram Moolenaar                                \ nextgroup=slpconfAttrBegin skipwhite
1110dc065eeSBram Moolenaar
1120dc065eeSBram Moolenaarsyn keyword slpconfNetSlpTag    contained useScopes typeHint
1130dc065eeSBram Moolenaar                                \ nextgroup=slpconfStringsEq,slpconfStringsHome
1140dc065eeSBram Moolenaar                                \ skipwhite
1150dc065eeSBram Moolenaar
1160dc065eeSBram Moolenaarsyn match   slpconfStringsHome  contained display
1170dc065eeSBram Moolenaar                                \ '\.\d\{1,3}\%(\.\d\{1,3}\)\{3}'
1180dc065eeSBram Moolenaar                                \ nextgroup=slpconfStringsEq skipwhite
1190dc065eeSBram Moolenaar
1200dc065eeSBram Moolenaarsyn match   slpconfStringsEq    contained display '='
1210dc065eeSBram Moolenaar                                \ nextgroup=slpconfStrings skipwhite
1220dc065eeSBram Moolenaar
1230dc065eeSBram Moolenaarsyn match   slpconfStrings      contained display
1240dc065eeSBram Moolenaar                                \ '\%([[:digit:][:alpha:]]\|[!-+./:-@[-`{-~-]\|\\\x\x\)\+'
1250dc065eeSBram Moolenaar                                \ nextgroup=slpconfStringsSep skipwhite
1260dc065eeSBram Moolenaar
1270dc065eeSBram Moolenaarsyn match   slpconfStringsSep   contained display ','
1280dc065eeSBram Moolenaar                                \ nextgroup=slpconfStrings skipwhite
1290dc065eeSBram Moolenaar
1300dc065eeSBram Moolenaarsyn keyword slpconfNetSlpTag    contained DAAddresses
1310dc065eeSBram Moolenaar                                \ nextgroup=slpconfAddressesEq,slpconfAddrsHome
1320dc065eeSBram Moolenaar                                \ skipwhite
1330dc065eeSBram Moolenaar
1340dc065eeSBram Moolenaarsyn match   slpconfAddrsHome    contained display
1350dc065eeSBram Moolenaar                                \ '\.\d\{1,3}\%(\.\d\{1,3}\)\{3}'
1360dc065eeSBram Moolenaar                                \ nextgroup=slpconfAddressesEq skipwhite
1370dc065eeSBram Moolenaar
1380dc065eeSBram Moolenaarsyn match   slpconfAddressesEq  contained display '='
1390dc065eeSBram Moolenaar                                \ nextgroup=@slpconfAddresses skipwhite
1400dc065eeSBram Moolenaar
1410dc065eeSBram Moolenaarsyn cluster slpconfAddresses    contains=slpconfFQDNs,slpconfHostnumbers
1420dc065eeSBram Moolenaar
1430dc065eeSBram Moolenaarsyn match   slpconfFQDNs        contained display
1440dc065eeSBram Moolenaar                                \ '\a[[:alnum:]-]*[[:alnum:]]\|\a'
1450dc065eeSBram Moolenaar                                \ nextgroup=slpconfAddressesSep skipwhite
1460dc065eeSBram Moolenaar
1470dc065eeSBram Moolenaarsyn match   slpconfHostnumbers  contained display
1480dc065eeSBram Moolenaar                                \ '\d\{1,3}\%(\.\d\{1,3}\)\{3}'
1490dc065eeSBram Moolenaar                                \ nextgroup=slpconfAddressesSep skipwhite
1500dc065eeSBram Moolenaar
1510dc065eeSBram Moolenaarsyn match   slpconfAddressesSep contained display ','
1520dc065eeSBram Moolenaar                                \ nextgroup=@slpconfAddresses skipwhite
1530dc065eeSBram Moolenaar
1540dc065eeSBram Moolenaarsyn keyword slpconfNetSlpTag    contained serializedRegURL
1550dc065eeSBram Moolenaar                                \ nextgroup=slpconfStringEq,slpconfStringHome
1560dc065eeSBram Moolenaar                                \ skipwhite
1570dc065eeSBram Moolenaar
1580dc065eeSBram Moolenaarsyn match   slpconfStringHome   contained display
1590dc065eeSBram Moolenaar                                \ '\.\d\{1,3}\%(\.\d\{1,3}\)\{3}'
1600dc065eeSBram Moolenaar                                \ nextgroup=slpconfStringEq skipwhite
1610dc065eeSBram Moolenaar
1620dc065eeSBram Moolenaarsyn match   slpconfStringEq     contained display '='
1630dc065eeSBram Moolenaar                                \ nextgroup=slpconfString skipwhite
1640dc065eeSBram Moolenaar
1650dc065eeSBram Moolenaarsyn match   slpconfString       contained display
1660dc065eeSBram Moolenaar                                \ '\%([!-+./:-@[-`{-~-]\|\\\x\x\)\+\|[[:digit:][:alpha:]]'
1670dc065eeSBram Moolenaar
1680dc065eeSBram Moolenaarsyn keyword slpconfNetSlpTag    contained multicastTimeouts DADiscoveryTimeouts
1690dc065eeSBram Moolenaar                                \ datagramTimeouts
1700dc065eeSBram Moolenaar                                \ nextgroup=slpconfIntegersEq,
1710dc065eeSBram Moolenaar                                \ slpconfIntegersHome skipwhite
1720dc065eeSBram Moolenaar
1730dc065eeSBram Moolenaarsyn match   slpconfIntegersHome contained display
1740dc065eeSBram Moolenaar                                \ '\.\d\{1,3}\%(\.\d\{1,3}\)\{3}'
1750dc065eeSBram Moolenaar                                \ nextgroup=slpconfIntegersEq skipwhite
1760dc065eeSBram Moolenaar
1770dc065eeSBram Moolenaarsyn match   slpconfIntegersEq   contained display '='
1780dc065eeSBram Moolenaar                                \ nextgroup=slpconfIntegers skipwhite
1790dc065eeSBram Moolenaar
1800dc065eeSBram Moolenaarsyn match   slpconfIntegers     contained display '\<\d\+\>'
1810dc065eeSBram Moolenaar                                \ nextgroup=slpconfIntegersSep skipwhite
1820dc065eeSBram Moolenaar
1830dc065eeSBram Moolenaarsyn match   slpconfIntegersSep  contained display ','
1840dc065eeSBram Moolenaar                                \ nextgroup=slpconfIntegers skipwhite
1850dc065eeSBram Moolenaar
1860dc065eeSBram Moolenaarsyn keyword slpconfNetSlpTag    contained interfaces
1870dc065eeSBram Moolenaar                                \ nextgroup=slpconfHostnumsEq,
1880dc065eeSBram Moolenaar                                \ slpconfHostnumsHome skipwhite
1890dc065eeSBram Moolenaar
1900dc065eeSBram Moolenaarsyn match   slpconfHostnumsHome contained display
1910dc065eeSBram Moolenaar                                \ '\.\d\{1,3}\%(\.\d\{1,3}\)\{3}'
1920dc065eeSBram Moolenaar                                \ nextgroup=slpconfHostnumsEq skipwhite
1930dc065eeSBram Moolenaar
1940dc065eeSBram Moolenaarsyn match   slpconfHostnumsEq   contained display '='
1950dc065eeSBram Moolenaar                                \ nextgroup=slpconfOHostnumbers skipwhite
1960dc065eeSBram Moolenaar
1970dc065eeSBram Moolenaarsyn match   slpconfOHostnumbers contained display
1980dc065eeSBram Moolenaar                                \ '\d\{1,3}\%(\.\d\{1,3}\)\{3}'
1990dc065eeSBram Moolenaar                                \ nextgroup=slpconfHostnumsSep skipwhite
2000dc065eeSBram Moolenaar
2010dc065eeSBram Moolenaarsyn match   slpconfHostnumsSep  contained display ','
2020dc065eeSBram Moolenaar                                \ nextgroup=slpconfOHostnumbers skipwhite
2030dc065eeSBram Moolenaar
2040dc065eeSBram Moolenaarsyn keyword slpconfNetSlpTag    contained locale
2050dc065eeSBram Moolenaar                                \ nextgroup=slpconfLocaleEq,slpconfLocaleHome
2060dc065eeSBram Moolenaar                                \ skipwhite
2070dc065eeSBram Moolenaar
2080dc065eeSBram Moolenaarsyn match   slpconfLocaleHome   contained display
2090dc065eeSBram Moolenaar                                \ '\.\d\{1,3}\%(\.\d\{1,3}\)\{3}'
2100dc065eeSBram Moolenaar                                \ nextgroup=slpconfLocaleEq skipwhite
2110dc065eeSBram Moolenaar
2120dc065eeSBram Moolenaarsyn match   slpconfLocaleEq     contained display '='
2130dc065eeSBram Moolenaar                                \ nextgroup=slpconfLocale skipwhite
2140dc065eeSBram Moolenaar
2150dc065eeSBram Moolenaarsyn match   slpconfLocale       contained display '\a\{1,8}\%(-\a\{1,8}\)\='
2160dc065eeSBram Moolenaar
2170dc065eeSBram Moolenaarhi def link slpconfTodo         Todo
2180dc065eeSBram Moolenaarhi def link slpconfComment      Comment
2190dc065eeSBram Moolenaarhi def link slpconfTag          Identifier
2200dc065eeSBram Moolenaarhi def link slpconfDelimiter    Delimiter
2210dc065eeSBram Moolenaarhi def link slpconfNetTagDot    slpconfDelimiter
2220dc065eeSBram Moolenaarhi def link slpconfNetTag       slpconfTag
2230dc065eeSBram Moolenaarhi def link slpconfNetSlpTagDot slpconfNetTagDot
2240dc065eeSBram Moolenaarhi def link slpconfNetSlpTag    slpconfTag
2250dc065eeSBram Moolenaarhi def link slpconfHome         Special
2260dc065eeSBram Moolenaarhi def link slpconfBooleanHome  slpconfHome
2270dc065eeSBram Moolenaarhi def link slpconfEq           Operator
2280dc065eeSBram Moolenaarhi def link slpconfBooleanEq    slpconfEq
2290dc065eeSBram Moolenaarhi def link slpconfBoolean      Boolean
2300dc065eeSBram Moolenaarhi def link slpconfIntegerHome  slpconfHome
2310dc065eeSBram Moolenaarhi def link slpconfIntegerEq    slpconfEq
2320dc065eeSBram Moolenaarhi def link slpconfInteger      Number
2330dc065eeSBram Moolenaarhi def link slpconfAttrHome     slpconfHome
2340dc065eeSBram Moolenaarhi def link slpconfAttrEq       slpconfEq
2350dc065eeSBram Moolenaarhi def link slpconfAttrBegin    slpconfDelimiter
2360dc065eeSBram Moolenaarhi def link slpconfAttrTag      slpconfTag
2370dc065eeSBram Moolenaarhi def link slpconfAttrTagEq    slpconfEq
2380dc065eeSBram Moolenaarhi def link slpconfAttrIValue   slpconfInteger
2390dc065eeSBram Moolenaarhi def link slpconfAttrSValue   slpconfString
2400dc065eeSBram Moolenaarhi def link slpconfAttrBValue   slpconfBoolean
2410dc065eeSBram Moolenaarhi def link slpconfAttrSSValue  slpconfString
2420dc065eeSBram Moolenaarhi def link slpconfSeparator    slpconfDelimiter
2430dc065eeSBram Moolenaarhi def link slpconfAttrValueSep slpconfSeparator
2440dc065eeSBram Moolenaarhi def link slpconfAttrEnd      slpconfAttrBegin
2450dc065eeSBram Moolenaarhi def link slpconfAttrSep      slpconfSeparator
2460dc065eeSBram Moolenaarhi def link slpconfStringsHome  slpconfHome
2470dc065eeSBram Moolenaarhi def link slpconfStringsEq    slpconfEq
2480dc065eeSBram Moolenaarhi def link slpconfStrings      slpconfString
2490dc065eeSBram Moolenaarhi def link slpconfStringsSep   slpconfSeparator
2500dc065eeSBram Moolenaarhi def link slpconfAddrsHome    slpconfHome
2510dc065eeSBram Moolenaarhi def link slpconfAddressesEq  slpconfEq
2520dc065eeSBram Moolenaarhi def link slpconfFQDNs        String
2530dc065eeSBram Moolenaarhi def link slpconfHostnumbers  Number
2540dc065eeSBram Moolenaarhi def link slpconfAddressesSep slpconfSeparator
2550dc065eeSBram Moolenaarhi def link slpconfStringHome   slpconfHome
2560dc065eeSBram Moolenaarhi def link slpconfStringEq     slpconfEq
2570dc065eeSBram Moolenaarhi def link slpconfString       String
2580dc065eeSBram Moolenaarhi def link slpconfIntegersHome slpconfHome
2590dc065eeSBram Moolenaarhi def link slpconfIntegersEq   slpconfEq
2600dc065eeSBram Moolenaarhi def link slpconfIntegers     slpconfInteger
2610dc065eeSBram Moolenaarhi def link slpconfIntegersSep  slpconfSeparator
2620dc065eeSBram Moolenaarhi def link slpconfHostnumsHome slpconfHome
2630dc065eeSBram Moolenaarhi def link slpconfHostnumsEq   slpconfEq
2640dc065eeSBram Moolenaarhi def link slpconfOHostnumbers slpconfHostnumbers
2650dc065eeSBram Moolenaarhi def link slpconfHostnumsSep  slpconfSeparator
2660dc065eeSBram Moolenaarhi def link slpconfLocaleHome   slpconfHome
2670dc065eeSBram Moolenaarhi def link slpconfLocaleEq     slpconfEq
2680dc065eeSBram Moolenaarhi def link slpconfLocale       slpconfString
2690dc065eeSBram Moolenaar
2700dc065eeSBram Moolenaarlet b:current_syntax = "slpconf"
2710dc065eeSBram Moolenaar
2720dc065eeSBram Moolenaarlet &cpo = s:cpo_save
2730dc065eeSBram Moolenaarunlet s:cpo_save
274