1" Vim syntax file 2" Language: setserial(8) configuration file 3" Maintainer: Nikolai Weibull <[email protected]> 4" Latest Revision: 2006-04-19 5 6if exists("b:current_syntax") 7 finish 8endif 9 10let s:cpo_save = &cpo 11set cpo&vim 12 13syn match setserialBegin display '^' 14 \ nextgroup=setserialDevice,setserialComment 15 \ skipwhite 16 17syn match setserialDevice contained display '\%(/[^ \t/]*\)\+' 18 \ nextgroup=setserialParameter skipwhite 19 20syn keyword setserialParameter contained port irq baud_base divisor 21 \ close_delay closing_wait rx_trigger 22 \ tx_trigger flow_off flow_on rx_timeout 23 \ nextgroup=setserialNumber skipwhite 24 25syn keyword setserialParameter contained uart 26 \ nextgroup=setserialUARTType skipwhite 27 28syn keyword setserialParameter contained autoconfig auto_irq skip_test 29 \ spd_hi spd_vhi spd_shi spd_warp spd_cust 30 \ spd_normal sak fourport session_lockout 31 \ pgrp_lockout hup_notify split_termios 32 \ callout_nohup low_latency 33 \ nextgroup=setserialParameter skipwhite 34 35syn match setserialParameter contained display 36 \ '\^\%(auto_irq\|skip_test\|sak\|fourport\)' 37 \ contains=setserialNegation 38 \ nextgroup=setserialParameter skipwhite 39 40syn match setserialParameter contained display 41 \ '\^\%(session_lockout\|pgrp_lockout\)' 42 \ contains=setserialNegation 43 \ nextgroup=setserialParameter skipwhite 44 45syn match setserialParameter contained display 46 \ '\^\%(hup_notify\|split_termios\)' 47 \ contains=setserialNegation 48 \ nextgroup=setserialParameter skipwhite 49 50syn match setserialParameter contained display 51 \ '\^\%(callout_nohup\|low_latency\)' 52 \ contains=setserialNegation 53 \ nextgroup=setserialParameter skipwhite 54 55syn keyword setserialParameter contained set_multiport 56 \ nextgroup=setserialMultiport skipwhite 57 58syn match setserialNumber contained display '\<\d\+\>' 59 \ nextgroup=setserialParameter skipwhite 60syn match setserialNumber contained display '0x\x\+' 61 \ nextgroup=setserialParameter skipwhite 62 63syn keyword setserialUARTType contained none 64 65syn match setserialUARTType contained display 66 \ '8250\|16[4789]50\|16550A\=\|16650\%(V2\)\=' 67 \ nextgroup=setserialParameter skipwhite 68 69syn match setserialUARTType contained display '166[59]4' 70 \ nextgroup=setserialParameter skipwhite 71 72syn match setserialNegation contained display '\^' 73 74syn match setserialMultiport contained '\<port\d\+\>' 75 \ nextgroup=setserialPort skipwhite 76 77syn match setserialPort contained display '\<\d\+\>' 78 \ nextgroup=setserialMask skipwhite 79syn match setserialPort contained display '0x\x\+' 80 \ nextgroup=setserialMask skipwhite 81 82syn match setserialMask contained '\<mask\d\+\>' 83 \ nextgroup=setserialBitMask skipwhite 84 85syn match setserialBitMask contained display '\<\d\+\>' 86 \ nextgroup=setserialMatch skipwhite 87syn match setserialBitMask contained display '0x\x\+' 88 \ nextgroup=setserialMatch skipwhite 89 90syn match setserialMatch contained '\<match\d\+\>' 91 \ nextgroup=setserialMatchBits skipwhite 92 93syn match setserialMatchBits contained display '\<\d\+\>' 94 \ nextgroup=setserialMultiport skipwhite 95syn match setserialMatchBits contained display '0x\x\+' 96 \ nextgroup=setserialMultiport skipwhite 97 98syn keyword setserialTodo contained TODO FIXME XXX NOTE 99 100syn region setserialComment display oneline start='^\s*#' end='$' 101 \ contains=setserialTodo,@Spell 102 103hi def link setserialTodo Todo 104hi def link setserialComment Comment 105hi def link setserialDevice Normal 106hi def link setserialParameter Identifier 107hi def link setserialNumber Number 108hi def link setserialUARTType Type 109hi def link setserialNegation Operator 110hi def link setserialMultiport Type 111hi def link setserialPort setserialNumber 112hi def link setserialMask Type 113hi def link setserialBitMask setserialNumber 114hi def link setserialMatch Type 115hi def link setserialMatchBits setserialNumber 116 117let b:current_syntax = "setserial" 118 119let &cpo = s:cpo_save 120unlet s:cpo_save 121