diff options
| author | Mehmet Samet Duman <yongdohyun@projecttick.org> | 2026-04-04 12:41:27 +0300 |
|---|---|---|
| committer | Mehmet Samet Duman <yongdohyun@projecttick.org> | 2026-04-04 12:41:27 +0300 |
| commit | 4f2d36194b4f299aa7509d815c07121039ea833b (patch) | |
| tree | f3ded014bad3a4c76ff6a22b8726ebaab68c3d13 /mnv/runtime/syntax/vroom.mnv | |
| parent | 5b578e70c314723a3cde5c9bfc2be0bf1dadc93b (diff) | |
| download | Project-Tick-4f2d36194b4f299aa7509d815c07121039ea833b.tar.gz Project-Tick-4f2d36194b4f299aa7509d815c07121039ea833b.zip | |
NOISSUE change uvim folder name to mnv
Signed-off-by: Mehmet Samet Duman <yongdohyun@projecttick.org>
Diffstat (limited to 'mnv/runtime/syntax/vroom.mnv')
| -rw-r--r-- | mnv/runtime/syntax/vroom.mnv | 110 |
1 files changed, 110 insertions, 0 deletions
diff --git a/mnv/runtime/syntax/vroom.mnv b/mnv/runtime/syntax/vroom.mnv new file mode 100644 index 0000000000..351404151a --- /dev/null +++ b/mnv/runtime/syntax/vroom.mnv @@ -0,0 +1,110 @@ +" MNV syntax file +" Language: Vroom (mnv testing and executable documentation) +" Maintainer: David Barnett (https://github.com/google/mnv-ft-vroom) +" Last Change: 2014 Jul 23 + +" quit when a syntax file was already loaded +if exists('b:current_syntax') + finish +endif + +let s:cpo_save = &cpo +set cpo-=C + + +syn include @vroomMNV syntax/mnv.mnv +syn include @vroomShell syntax/sh.mnv + +syntax region vroomAction + \ matchgroup=vroomOutput + \ start='\m^ ' end='\m$' keepend + \ contains=vroomControlBlock + +syntax region vroomAction + \ matchgroup=vroomOutput + \ start='\m^ & ' end='\m$' keepend + \ contains=vroomControlBlock + +syntax match vroomOutput '\m^ &$' + +syntax region vroomMessageBody + \ matchgroup=vroomMessage + \ start='\m^ \~ ' end='\m$' keepend + \ contains=vroomControlBlock + +syntax region vroomColoredAction + \ matchgroup=vroomInput + \ start='\m^ > ' end='\m$' keepend + \ contains=mnvNotation,vroomControlBlock +syntax region vroomAction + \ matchgroup=vroomInput + \ start='\m^ % ' end='\m$' keepend + \ contains=mnvNotation,vroomControlBlock + +syntax region vroomAction + \ matchgroup=vroomContinuation + \ start='\m^ |' end='\m$' keepend + +syntax region vroomAction + \ start='\m^ \ze:' end='\m$' keepend + \ contains=@vroomMNV,vroomControlBlock + +syntax region vroomAction + \ matchgroup=vroomDirective + \ start='\m^ @\i\+' end='\m$' keepend + \ contains=vroomControlBlock + +syntax region vroomSystemAction + \ matchgroup=vroomSystem + \ start='\m^ ! ' end='\m$' keepend + \ contains=@vroomShell,vroomControlBlock + +syntax region vroomHijackAction + \ matchgroup=vroomHijack + \ start='\m^ \$ ' end='\m$' keepend + \ contains=vroomControlBlock + +syntax match vroomControlBlock contains=vroomControlEscape,@vroomControls + \ '\v \([^&()][^()]*\)$' + +syntax match vroomControlEscape '\m&' contained + +syntax cluster vroomControls + \ contains=vroomDelay,vroomMode,vroomBuffer,vroomRange + \,vroomChannel,vroomBind,vroomStrictness +syntax match vroomRange '\v\.(,\+?(\d+|\$)?)?' contained +syntax match vroomRange '\v\d*,\+?(\d+|\$)?' contained +syntax match vroomBuffer '\v\d+,@!' contained +syntax match vroomDelay '\v\d+(\.\d+)?s' contained +syntax match vroomMode '\v<%(regex|glob|verbatim)' contained +syntax match vroomChannel '\v<%(stderr|stdout|command|status)>' contained +syntax match vroomBind '\v<bind>' contained +syntax match vroomStrictness '\v\<%(STRICT|RELAXED|GUESS-ERRORS)\>' contained + +highlight default link vroomInput Identifier +highlight default link vroomDirective vroomInput +highlight default link vroomControlBlock vroomInput +highlight default link vroomSystem vroomInput +highlight default link vroomOutput Statement +highlight default link vroomContinuation Constant +highlight default link vroomHijack Special +highlight default link vroomColoredAction Statement +highlight default link vroomSystemAction vroomSystem +highlight default link vroomHijackAction vroomHijack +highlight default link vroomMessage vroomOutput +highlight default link vroomMessageBody Constant + +highlight default link vroomControlEscape Special +highlight default link vroomBuffer vroomInput +highlight default link vroomRange Include +highlight default link vroomMode Constant +highlight default link vroomDelay Type +highlight default link vroomStrictness vroomMode +highlight default link vroomChannel vroomMode +highlight default link vroomBind vroomMode + +let b:current_syntax = 'vroom' + + +let &cpo = s:cpo_save +unlet s:cpo_save |
