abnf.vim (952B)
1 " Vim compiler file 2 " Language: abnf 3 " Maintainer: A4-Tacks <wdsjxhno1001@163.com> 4 " Last Change: 2025 Mar 05 5 " Upstream: https://github.com/A4-Tacks/abnf.vim 6 7 " Implementing RFC-5234, RFC-7405 8 9 if exists('b:current_syntax') 10 finish 11 endif 12 13 syn case ignore 14 15 syn match abnfError /[<>"]/ 16 syn match abnfComment /;.*/ 17 syn match abnfOption /[[/\]]/ 18 syn region abnfString start=/\(%[si]\)\="/ end=/"/ oneline 19 syn region abnfProse start=/</ end=/>/ oneline 20 syn match abnfNumVal /\v\%b[01]+%(%(\.[01]+)+|-[01]+)=>/ 21 syn match abnfNumVal /\v\%d\d+%(%(\.\d+)+|-\d+)=>/ 22 syn match abnfNumVal /\v\%x[0-9a-f]+%(%(\.[0-9a-f]+)+|-[0-9a-f]+)=>/ 23 syn match abnfRepeat /\v%(%(<\d+)=\*\d*|<\d+ =)\ze[^ \t\r\n0-9*/)\]]/ 24 25 hi def link abnfError Error 26 hi def link abnfComment Comment 27 hi def link abnfOption PreProc 28 hi def link abnfString String 29 hi def link abnfProse String 30 hi def link abnfNumVal Number 31 hi def link abnfRepeat Repeat 32 33 " vim:noet:ts=8:sts=8:nowrap