2 " Language: lighttpd config, http://www.lighttpd.net/
3 " URL: http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/vim-syntax-lighttpd/lighttpd.vim
4 " Version Info: $Revision$
5 " Maintainer: Elan Ruusamäe <glen@pld-linux.org>
6 " Last Change: $Date$ UTC
8 " For version 5.x: Clear all syntax items
9 " For version 6.x: Quit when a syntax file was already loaded
12 elseif exists("b:current_syntax")
21 setlocal iskeyword+=.,-
24 " define the lighttpd syntax
25 " see also http://redmine.lighttpd.net/wiki/lighttpd/Docs:Configuration
26 syn match lighttpdDelimiter "[{}()\[\];,]"
27 syn match lighttpdOperator "[~!=|&\*\+\<\>]"
28 syn match lighttpdComment "\(#.*\)"
29 syn match lighttpdNumber "[-+]\=\<\d\+\(\.\d*\)\=\>"
30 syn region lighttpdString start=+"+ skip=+\\"+ end=+"+
31 syn keyword lighttpdConditional else
32 syn match lighttpdServerVar /\$\(HTTP\|SERVER\|PHYSICAL\)\>/
33 syn match lighttpdFunction /"\(cookie\|host\|useragent\|referer\|url\|querystring\|remoteip\|scheme\|socket\|path\|existing-path\)"/
36 syn keyword lighttpdKeyword include include_shell
38 syn match lighttpdSpecial /"\(dis\|en\)able"/
41 syn match lighttpdOption /var\.[A-Za-z][_A-Za-z0-9]*/
42 syn match lighttpdOption /env\.[A-Za-z][_A-Za-z0-9]*/
43 syn keyword lighttpdOption
46 \ accesslog.use-syslog
49 \ auth.backend.htdigest.userfile
50 \ auth.backend.htpasswd.userfile
51 \ auth.backend.ldap.allow-empty-pw
52 \ auth.backend.ldap.base-dn
53 \ auth.backend.ldap.bind-dn
54 \ auth.backend.ldap.bind-pw
55 \ auth.backend.ldap.ca-file
56 \ auth.backend.ldap.filter
57 \ auth.backend.ldap.hostname
58 \ auth.backend.ldap.starttls
59 \ auth.backend.plain.groupfile
60 \ auth.backend.plain.userfile
67 \ cml.memcache-namespace
69 \ compress.allowed-encodings
72 \ compress.max-filesize
73 \ connection.kbytes-per-second
74 \ debug.log-condition-handling
75 \ debug.log-file-not-found
76 \ debug.log-request-handling
77 \ debug.log-request-header
78 \ debug.log-request-header-on-error
79 \ debug.log-response-header
81 \ debug.log-state-handling
83 \ dir-listing.activate
84 \ dir-listing.auto-layout
85 \ dir-listing.encode-header
86 \ dir-listing.encode-readme
87 \ dir-listing.encoding
89 \ dir-listing.external-css
90 \ dir-listing.hide-dotfiles
91 \ dir-listing.hide-header-file
92 \ dir-listing.hide-readme-file
93 \ dir-listing.set-footer
94 \ dir-listing.show-header
95 \ dir-listing.show-readme
99 \ evasive.http-status-code
100 \ evasive.max-conns-per-ip
101 \ evasive.retry-after
103 \ evhost.path-pattern
105 \ extforward.forwarder
108 \ fastcgi.map-extensions
110 \ flv-streaming.extensions
111 \ h264-streaming.extensions
122 \ secdownload.document-root
124 \ secdownload.timeout
125 \ secdownload.uri-prefix
130 \ server.defer-accept
132 \ server.document-root
133 \ server.errorfile-prefix
134 \ server.error-handler-404
136 \ server.errorlog-use-syslog
137 \ server.event-handler
138 \ server.follow-symlink
139 \ server.force-lowercase-filenames
142 \ server.kbytes-per-second
143 \ server.max-connections
145 \ server.max-keep-alive-idle
146 \ server.max-keep-alive-requests
147 \ server.max-read-idle
148 \ server.max-request-size
150 \ server.max-write-idle
153 \ server.network-backend
156 \ server.protocol-http11
157 \ server.range-requests
158 \ server.reject-expect-100-with-417
159 \ server.stat-cache-engine
164 \ setenv.add-environment
165 \ setenv.add-request-header
166 \ setenv.add-response-header
168 \ simple-vhost.default-host
169 \ simple-vhost.document-root
170 \ simple-vhost.server-root
178 \ ssl.verifyclient.activate
179 \ ssl.verifyclient.depth
180 \ ssl.verifyclient.enforce
181 \ ssl.verifyclient.exportcert
182 \ ssl.verifyclient.username
184 \ static-file.exclude-extensions
187 \ status.statistics-url
189 \ trigger-before-download.debug
190 \ trigger-before-download.deny-url
191 \ trigger-before-download.download-url
192 \ trigger-before-download.gdbm-filename
193 \ trigger-before-download.memcache-hosts
194 \ trigger-before-download.memcache-namespace
195 \ trigger-before-download.trigger-timeout
196 \ trigger-before-download.trigger-url
201 \ url.rewrite-if-not-file
204 \ url.rewrite-repeat-if-not-file
206 \ userdir.exclude-user
207 \ userdir.include-user
208 \ userdir.letterhomes
210 \ usertrack.cookie-domain
211 \ usertrack.cookie-max-age
212 \ usertrack.cookie-name
216 \ webdav.sqlite-db-name
218 " Define the default highlighting.
219 " For version 5.7 and earlier: only when not done already
220 " For version 5.8 and later: only when an item doesn't have highlighting yet
221 if version >= 508 || !exists("did_lighttpd_syntax_inits")
223 let did_lighttpd_syntax_inits = 1
224 command -nargs=+ HiLink hi link <args>
226 command -nargs=+ HiLink hi def link <args>
229 HiLink lighttpdDelimiter Delimiter
230 HiLink lighttpdOperator Operator
231 HiLink lighttpdComment Comment
232 HiLink lighttpdNumber Number
233 HiLink lighttpdFunction Function
234 HiLink lighttpdKeyword Keyword
235 HiLink lighttpdOption Identifier
236 HiLink lighttpdSpecial Special
237 HiLink lighttpdConditional Conditional
238 HiLink lighttpdString String
239 HiLink lighttpdServerVar Identifier
244 let b:current_syntax = "lighttpd"