neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

inittab.vim (2541B)


      1 " Vim syntax file
      2 " Language: SysV-compatible init process control file `inittab'
      3 " Maintainer: Donovan Keohane <donovan.keohane@gmail.com>
      4 " Previous Maintainer: David Ne\v{c}as (Yeti) <yeti@physics.muni.cz>
      5 " Last Change: 2019-11-19
      6 
      7 " Setup
      8 " quit when a syntax file was already loaded
      9 if exists("b:current_syntax")
     10  finish
     11 endif
     12 
     13 syn case match
     14 
     15 " Base constructs
     16 syn match inittabError "[^:]\+:"me=e-1 contained
     17 syn match inittabError "[^:]\+$" contained
     18 syn match inittabComment "^[#:].*$" contains=inittabFixme
     19 syn match inittabComment "#.*$" contained contains=inittabFixme
     20 syn keyword inittabFixme FIXME TODO XXX NOT
     21 
     22 " Shell
     23 syn region inittabShString start=+"+ end=+"+ skip=+\\\\\|\\\"+ contained
     24 syn region inittabShString start=+'+ end=+'+ contained
     25 syn match inittabShOption "\s[-+][[:alnum:]]\+"ms=s+1 contained
     26 syn match inittabShOption "\s--[:alnum:][-[:alnum:]]*"ms=s+1 contained
     27 syn match inittabShCommand "\S\+" contained
     28 syn cluster inittabSh add=inittabShOption,inittabShString,inittabShCommand
     29 
     30 " Keywords
     31 syn keyword inittabActionName respawn wait once boot bootwait off ondemand sysinit powerwait powerfail powerokwait powerfailnow ctrlaltdel kbrequest initdefault contained
     32 
     33 " Line parser
     34 syn match inittabId "^[[:alnum:]~]\{1,4}" nextgroup=inittabColonRunLevels,inittabError
     35 syn match inittabColonRunLevels ":" contained nextgroup=inittabRunLevels,inittabColonAction,inittabError
     36 syn match inittabRunLevels "[0-6A-Ca-cSs]\+" contained nextgroup=inittabColonAction,inittabError
     37 syn match inittabColonAction ":" contained nextgroup=inittabAction,inittabError
     38 syn match inittabAction "\w\+" contained nextgroup=inittabColonProcess,inittabError contains=inittabActionName
     39 syn match inittabColonProcess ":" contained nextgroup=inittabProcessPlus,inittabProcess,inittabError
     40 syn match inittabProcessPlus "+" contained nextgroup=inittabProcess,inittabError
     41 syn region inittabProcess start="\S" end="$" transparent oneline contained contains=@inittabSh,inittabComment
     42 
     43 " Define the default highlighting
     44 
     45 hi def link inittabComment Comment
     46 hi def link inittabFixme Todo
     47 hi def link inittabActionName Type
     48 hi def link inittabError Error
     49 hi def link inittabId Identifier
     50 hi def link inittabRunLevels Special
     51 
     52 hi def link inittabColonProcess inittabColon
     53 hi def link inittabColonAction inittabColon
     54 hi def link inittabColonRunLevels inittabColon
     55 hi def link inittabColon PreProc
     56 
     57 hi def link inittabShString String
     58 hi def link inittabShOption Special
     59 hi def link inittabShCommand Statement
     60 
     61 
     62 let b:current_syntax = "inittab"