diff options
Diffstat (limited to 'runtime/syntax')
| -rw-r--r-- | runtime/syntax/abnf.vim | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/runtime/syntax/abnf.vim b/runtime/syntax/abnf.vim new file mode 100644 index 0000000000..13459eb9f8 --- /dev/null +++ b/runtime/syntax/abnf.vim @@ -0,0 +1,33 @@ +" Vim compiler file +" Language: abnf +" Maintainer: A4-Tacks <wdsjxhno1001@163.com> +" Last Change: 2025 Mar 05 +" Upstream: https://github.com/A4-Tacks/abnf.vim + +" Implementing RFC-5234, RFC-7405 + +if exists('b:current_syntax') + finish +endif + +syn case ignore + +syn match abnfError /[<>"]/ +syn match abnfComment /;.*/ +syn match abnfOption /[[/\]]/ +syn region abnfString start=/\(%[si]\)\="/ end=/"/ oneline +syn region abnfProse start=/</ end=/>/ oneline +syn match abnfNumVal /\v\%b[01]+%(%(\.[01]+)+|-[01]+)=>/ +syn match abnfNumVal /\v\%d\d+%(%(\.\d+)+|-\d+)=>/ +syn match abnfNumVal /\v\%x[0-9a-f]+%(%(\.[0-9a-f]+)+|-[0-9a-f]+)=>/ +syn match abnfRepeat /\v%(%(<\d+)=\*\d*|<\d+ =)\ze[^ \t\r\n0-9*/)\]]/ + +hi def link abnfError Error +hi def link abnfComment Comment +hi def link abnfOption PreProc +hi def link abnfString String +hi def link abnfProse String +hi def link abnfNumVal Number +hi def link abnfRepeat Repeat + +" vim:noet:ts=8:sts=8:nowrap |
