xref: /vim-8.2.3635/runtime/syntax/inittab.vim (revision 403f3eb4)
1071d4279SBram Moolenaar" Vim syntax file
2071d4279SBram Moolenaar" Language: SysV-compatible init process control file `inittab'
3*403f3eb4SBram Moolenaar" Maintainer: Donovan Keohane <[email protected]>
4*403f3eb4SBram Moolenaar" Previous Maintainer: David Ne\v{c}as (Yeti) <[email protected]>
5*403f3eb4SBram Moolenaar" Last Change: 2019-11-19
6071d4279SBram Moolenaar
7071d4279SBram Moolenaar" Setup
889bcfda6SBram Moolenaar" quit when a syntax file was already loaded
9071d4279SBram Moolenaarif exists("b:current_syntax")
10071d4279SBram Moolenaar  finish
11071d4279SBram Moolenaarendif
12071d4279SBram Moolenaar
13071d4279SBram Moolenaarsyn case match
14071d4279SBram Moolenaar
15071d4279SBram Moolenaar" Base constructs
16071d4279SBram Moolenaarsyn match inittabError "[^:]\+:"me=e-1 contained
17071d4279SBram Moolenaarsyn match inittabError "[^:]\+$" contained
18071d4279SBram Moolenaarsyn match inittabComment "^[#:].*$" contains=inittabFixme
19071d4279SBram Moolenaarsyn match inittabComment "#.*$" contained contains=inittabFixme
20071d4279SBram Moolenaarsyn keyword inittabFixme FIXME TODO XXX NOT
21071d4279SBram Moolenaar
22071d4279SBram Moolenaar" Shell
23071d4279SBram Moolenaarsyn region inittabShString start=+"+ end=+"+ skip=+\\\\\|\\\"+ contained
24071d4279SBram Moolenaarsyn region inittabShString start=+'+ end=+'+ contained
25071d4279SBram Moolenaarsyn match inittabShOption "\s[-+][[:alnum:]]\+"ms=s+1 contained
26071d4279SBram Moolenaarsyn match inittabShOption "\s--[:alnum:][-[:alnum:]]*"ms=s+1 contained
27*403f3eb4SBram Moolenaarsyn match inittabShCommand "\S\+" contained
28071d4279SBram Moolenaarsyn cluster inittabSh add=inittabShOption,inittabShString,inittabShCommand
29071d4279SBram Moolenaar
30071d4279SBram Moolenaar" Keywords
31071d4279SBram Moolenaarsyn keyword inittabActionName respawn wait once boot bootwait off ondemand sysinit powerwait powerfail powerokwait powerfailnow ctrlaltdel kbrequest initdefault contained
32071d4279SBram Moolenaar
33071d4279SBram Moolenaar" Line parser
34071d4279SBram Moolenaarsyn match inittabId "^[[:alnum:]~]\{1,4}" nextgroup=inittabColonRunLevels,inittabError
35071d4279SBram Moolenaarsyn match inittabColonRunLevels ":" contained nextgroup=inittabRunLevels,inittabColonAction,inittabError
36071d4279SBram Moolenaarsyn match inittabRunLevels "[0-6A-Ca-cSs]\+" contained nextgroup=inittabColonAction,inittabError
37071d4279SBram Moolenaarsyn match inittabColonAction ":" contained nextgroup=inittabAction,inittabError
38071d4279SBram Moolenaarsyn match inittabAction "\w\+" contained nextgroup=inittabColonProcess,inittabError contains=inittabActionName
39071d4279SBram Moolenaarsyn match inittabColonProcess ":" contained nextgroup=inittabProcessPlus,inittabProcess,inittabError
40071d4279SBram Moolenaarsyn match inittabProcessPlus "+" contained nextgroup=inittabProcess,inittabError
41*403f3eb4SBram Moolenaarsyn region inittabProcess start="\S" end="$" transparent oneline contained contains=@inittabSh,inittabComment
42071d4279SBram Moolenaar
43071d4279SBram Moolenaar" Define the default highlighting
44071d4279SBram Moolenaar
45f37506f6SBram Moolenaarhi def link inittabComment Comment
46f37506f6SBram Moolenaarhi def link inittabFixme Todo
47f37506f6SBram Moolenaarhi def link inittabActionName Type
48f37506f6SBram Moolenaarhi def link inittabError Error
49f37506f6SBram Moolenaarhi def link inittabId Identifier
50f37506f6SBram Moolenaarhi def link inittabRunLevels Special
51071d4279SBram Moolenaar
52f37506f6SBram Moolenaarhi def link inittabColonProcess inittabColon
53f37506f6SBram Moolenaarhi def link inittabColonAction inittabColon
54f37506f6SBram Moolenaarhi def link inittabColonRunLevels inittabColon
55f37506f6SBram Moolenaarhi def link inittabColon PreProc
56071d4279SBram Moolenaar
57f37506f6SBram Moolenaarhi def link inittabShString String
58f37506f6SBram Moolenaarhi def link inittabShOption Special
59f37506f6SBram Moolenaarhi def link inittabShCommand Statement
60071d4279SBram Moolenaar
61071d4279SBram Moolenaar
62071d4279SBram Moolenaarlet b:current_syntax = "inittab"
63