xref: /vim-8.2.3635/runtime/syntax/passwd.vim (revision 214641f7)
1" Vim syntax file
2" Language:             passwd(5) password file
3" Previous Maintainer:  Nikolai Weibull <[email protected]>
4" Latest Revision:      2006-10-03
5
6if exists("b:current_syntax")
7  finish
8endif
9
10let s:cpo_save = &cpo
11set cpo&vim
12
13syn match   passwdBegin         display '^' nextgroup=passwdAccount
14
15syn match   passwdAccount       contained display '[^:]\+'
16                                \ nextgroup=passwdPasswordColon
17
18syn match   passwdPasswordColon contained display ':'
19                                \ nextgroup=passwdPassword,passwdShadow
20
21syn match   passwdPassword      contained display '[^:]\+'
22                                \ nextgroup=passwdUIDColon
23
24syn match   passwdShadow        contained display '[x*!]'
25                                \ nextgroup=passwdUIDColon
26
27syn match   passwdUIDColon      contained display ':' nextgroup=passwdUID
28
29syn match   passwdUID           contained display '\d\{0,10}'
30                                \ nextgroup=passwdGIDColon
31
32syn match   passwdGIDColon      contained display ':' nextgroup=passwdGID
33
34syn match   passwdGID           contained display '\d\{0,10}'
35                                \ nextgroup=passwdGecosColon
36
37syn match   passwdGecosColon    contained display ':' nextgroup=passwdGecos
38
39syn match   passwdGecos         contained display '[^:]*'
40                                \ nextgroup=passwdDirColon
41
42syn match   passwdDirColon      contained display ':' nextgroup=passwdDir
43
44syn match   passwdDir           contained display '/[^:]*'
45                                \ nextgroup=passwdShellColon
46
47syn match   passwdShellColon    contained display ':'
48                                \ nextgroup=passwdShell
49
50syn match   passwdShell         contained display '.*'
51
52hi def link passwdColon         Normal
53hi def link passwdAccount       Identifier
54hi def link passwdPasswordColon passwdColon
55hi def link passwdPassword      Number
56hi def link passwdShadow        Special
57hi def link passwdUIDColon      passwdColon
58hi def link passwdUID           Number
59hi def link passwdGIDColon      passwdColon
60hi def link passwdGID           Number
61hi def link passwdGecosColon    passwdColon
62hi def link passwdGecos         Comment
63hi def link passwdDirColon      passwdColon
64hi def link passwdDir           Type
65hi def link passwdShellColon    passwdColon
66hi def link passwdShell         Operator
67
68let b:current_syntax = "passwd"
69
70let &cpo = s:cpo_save
71unlet s:cpo_save
72