summaryrefslogtreecommitdiff
path: root/runtime/syntax/apachestyle.vim
blob: 53d5907b9e8ddf56d82d5ac55e7a78e8dc0f920a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
" Vim syntax file
" Language:	Apache-Style configuration files (proftpd.conf/apache.conf/..)
" Maintainer:	Christian Hammers <ch@westend.com>
" URL:		none
" ChangeLog:
"	2001-05-04,ch
"		adopted Vim 6.0 syntax style
"	1999-10-28,ch
"		initial release

" The following formats are recognised:
" Apache-style .conf
"	# Comment
"	Option	value
"	Option	value1 value2
"	Option = value1 value2 #not apache but also allowed
"	<Section Name?>
"		Option	value
"		<SubSection Name?>
"		</SubSection>
"	</Section>

" quit when a syntax file was already loaded
if exists("b:current_syntax")
  finish
endif

syn case ignore

syn match  apComment	/^\s*#.*$/
syn match  apOption	/^\s*[^ \t#<=]*/
"syn match  apLastValue	/[^ \t<=#]*$/ contains=apComment	ugly

" tags
syn region apTag	start=/</ end=/>/ contains=apTagOption,apTagError
" the following should originally be " [^<>]+" but this didn't work :(
syn match  apTagOption	contained / [-\/_\.:*a-zA-Z0-9]\+/ms=s+1
syn match  apTagError	contained /[^>]</ms=s+1

" Define the default highlighting.
" Only when an item doesn't have highlighting yet
command -nargs=+ HiLink hi def link <args>

HiLink apComment	Comment
HiLink apOption	Keyword
"HiLink apLastValue	Identifier		ugly?
HiLink apTag		Special
HiLink apTagOption	Identifier
HiLink apTagError	Error

delcommand HiLink

let b:current_syntax = "apachestyle"
" vim: ts=8