blob: abda0b6663cde846b9d71ef1d799edb145e99093 [file] [log] [blame]
Bram Moolenaar0dc065e2005-07-04 22:49:24 +00001" Vim syntax file
Bram Moolenaar214641f2017-03-05 17:04:09 +01002" Language: udev(8) permissions file
3" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
4" Latest Revision: 2006-04-19
Bram Moolenaar0dc065e2005-07-04 22:49:24 +00005
6if exists("b:current_syntax")
7 finish
8endif
9
10let s:cpo_save = &cpo
11set cpo&vim
12
13syn match udevpermBegin display '^' nextgroup=udevpermDevice
14
15syn match udevpermDevice contained display '[^:]\+'
16 \ contains=udevpermPattern
17 \ nextgroup=udevpermUserColon
18
19syn match udevpermPattern contained '[*?]'
20syn region udevpermPattern contained start='\[!\=' end='\]'
21 \ contains=udevpermPatRange
22
23syn match udevpermPatRange contained '[^[-]-[^]-]'
24
25syn match udevpermUserColon contained display ':'
26 \ nextgroup=udevpermUser
27
28syn match udevpermUser contained display '[^:]\+'
29 \ nextgroup=udevpermGroupColon
30
31syn match udevpermGroupColon contained display ':'
32 \ nextgroup=udevpermGroup
33
34syn match udevpermGroup contained display '[^:]\+'
35 \ nextgroup=udevpermPermColon
36
37syn match udevpermPermColon contained display ':'
38 \ nextgroup=udevpermPerm
39
40syn match udevpermPerm contained display '\<0\=\o\+\>'
41 \ contains=udevpermOctalZero
42
43syn match udevpermOctalZero contained display '\<0'
44syn match udevpermOctalError contained display '\<0\o*[89]\d*\>'
45
46syn keyword udevpermTodo contained TODO FIXME XXX NOTE
47
48syn region udevpermComment display oneline start='^\s*#' end='$'
49 \ contains=udevpermTodo,@Spell
50
51hi def link udevpermTodo Todo
52hi def link udevpermComment Comment
53hi def link udevpermDevice String
54hi def link udevpermPattern SpecialChar
55hi def link udevpermPatRange udevpermPattern
56hi def link udevpermColon Normal
57hi def link udevpermUserColon udevpermColon
58hi def link udevpermUser Identifier
59hi def link udevpermGroupColon udevpermColon
60hi def link udevpermGroup Type
61hi def link udevpermPermColon udevpermColon
62hi def link udevpermPerm Number
63hi def link udevpermOctalZero PreProc
64hi def link udevpermOctalError Error
65
66let b:current_syntax = "udevperm"
67
68let &cpo = s:cpo_save
69unlet s:cpo_save