Merge branch 'vim-runtime'
[vim_mainline.git] / runtime / syntax / dictdconf.vim
blob44bf6f8bad2ea2e92a33c129bd1e7f98dadf5df6
1 " Vim syntax file
2 " Language:         dictd(8) configuration file
3 " Maintainer:       Nikolai Weibull <now@bitwi.se>
4 " Latest Revision:  2006-04-19
6 if exists("b:current_syntax")
7   finish
8 endif
10 let s:cpo_save = &cpo
11 set cpo&vim
13 syn keyword dictdconfTodo        contained TODO FIXME XXX NOTE
15 syn region  dictdconfComment    display oneline start='#' end='$'
16                                 \ contains=dictdconfTodo,dictdconfSpecialC,
17                                 \ @Spell
19 syn keyword dictdconfSpecialC   LASTLINE
21 syn match   dictdconfBegin      display '^'
22                                 \ nextgroup=dictdconfKeyword,dictdconfComment
23                                 \ skipwhite
25 syn keyword dictdconfKeyword    contained access
26                                 \ nextgroup=dictdconfAccessG skipwhite
28 syn region  dictdconfAccessG    contained transparent
29                                 \ matchgroup=dictdconfDelimiter start='{'
30                                 \ matchgroup=dictdconfDelimiter end='}'
31                                 \ contains=dictdconfAccess,dictdconfComment
33 syn keyword dictdconfAccess     contained allow deny authonly user
34                                 \ nextgroup=dictdconfString skipwhite
36 syn keyword dictdconfKeyword    contained database
37                                 \ nextgroup=dictdconfDatabase skipwhite
39 syn match   dictdconfDatabase   contained display
40                                 \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
41                                 \ nextgroup=dictdconfSpecG skipwhite
42 syn region  dictdconfDatabase   contained display oneline
43                                 \ start=+"+ skip=+""\|\\\\\|\\"+ end=+"+
44                                 \ nextgroup=dictdconfSpecG skipwhite
46 syn region  dictdconfSpecG      contained transparent
47                                 \ matchgroup=dictdconfDelimiter start='{'
48                                 \ matchgroup=dictdconfDelimiter end='}'
49                                 \ contains=dictdconfSpec,dictdconfAccess,
50                                 \ dictdconfComment
52 syn keyword dictdconfSpec       contained data index index_suffix index_word
53                                 \ filter prefilter postfilter name info
54                                 \ disable_strat
55                                 \ nextgroup=dictdconfString skipwhite
57 syn keyword dictdconfSpec       contained invisible
59 syn keyword dictdconfKeyword    contained database_virtual
60                                 \ nextgroup=dictdconfVDatabase skipwhite
62 syn match   dictdconfVDatabase  contained display
63                                 \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
64                                 \ nextgroup=dictdconfVSpecG skipwhite
65 syn region  dictdconfVDatabase   contained display oneline
66                                 \ start=+"+ skip=+""\|\\\\\|\\"+ end=+"+
67                                 \ nextgroup=dictdconfVSpecG skipwhite
69 syn region  dictdconfVSpecG     contained transparent
70                                 \ matchgroup=dictdconfDelimiter start='{'
71                                 \ matchgroup=dictdconfDelimiter end='}'
72                                 \ contains=dictdconfVSpec,dictdconfAccess,
73                                 \ dictdconfComment
75 syn keyword dictdconfVSpec      contained name info database_list disable_strat
76                                 \ nextgroup=dictdconfString skipwhite
78 syn keyword dictdconfVSpec      contained invisible
80 syn keyword dictdconfKeyword    contained database_plugin
81                                 \ nextgroup=dictdconfPDatabase skipwhite
83 syn match   dictdconfPDatabase  contained display
84                                 \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
85                                 \ nextgroup=dictdconfPSpecG skipwhite
86 syn region  dictdconfPDatabase   contained display oneline
87                                 \ start=+"+ skip=+""\|\\\\\|\\"+ end=+"+
88                                 \ nextgroup=dictdconfPSpecG skipwhite
90 syn region  dictdconfPSpecG     contained transparent
91                                 \ matchgroup=dictdconfDelimiter start='{'
92                                 \ matchgroup=dictdconfDelimiter end='}'
93                                 \ contains=dictdconfPSpec,dictdconfAccess,
94                                 \ dictdconfComment
96 syn keyword dictdconfPSpec      contained name info plugin data disable_strat
97                                 \ nextgroup=dictdconfString skipwhite
99 syn keyword dictdconfPSpec      contained invisible
101 syn keyword dictdconfKeyword    contained database_exit
103 syn keyword dictdconfKeyword    contained site
104                                 \ nextgroup=dictdconfString skipwhite
106 syn keyword dictdconfKeyword    contained user
107                                 \ nextgroup=dictdconfUsername skipwhite
109 syn match   dictdconfUsername   contained display
110                                 \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
111                                 \ nextgroup=dictdconfSecret skipwhite
112 syn region  dictdconfUsername   contained display oneline
113                                 \ start=+"+ skip=+""+ end=+"+
114                                 \ nextgroup=dictdconfSecret skipwhite
116 syn match   dictdconfSecret     contained display
117                                 \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
118 syn region  dictdconfSecret     contained display oneline
119                                 \ start=+"+ skip=+""+ end=+"+
121 syn match   dictdconfString     contained display
122                                 \ '[[:alnum:]_/.*-][[:alnum:]_/.*-]*'
123 syn region  dictdconfString     contained display oneline
124                                 \ start=+"+ skip=+""\|\\\\\|\\"+ end=+"+
126 hi def link dictdconfTodo       Todo
127 hi def link dictdconfComment    Comment
128 hi def link dictdconfSpecialC   Special
129 hi def link dictdconfKeyword    Keyword
130 hi def link dictdconfIdentifier Identifier
131 hi def link dictdconfAccess     dictdconfIdentifier
132 hi def link dictdconfDatabase   dictdconfString
133 hi def link dictdconfSpec       dictdconfIdentifier
134 hi def link dictdconfVDatabase  dictdconfDatabase
135 hi def link dictdconfVSpec      dictdconfSpec
136 hi def link dictdconfPDatabase  dictdconfDatabase
137 hi def link dictdconfPSpec      dictdconfSpec
138 hi def link dictdconfUsername   dictdconfString
139 hi def link dictdconfSecret     Special
140 hi def link dictdconfString     String
141 hi def link dictdconfDelimiter  Delimiter
143 let b:current_syntax = "dictdconf"
145 let &cpo = s:cpo_save
146 unlet s:cpo_save