Mercurial > repo
view src/ploki/syntax/ploki.vim @ 5647:8f86ed41e52a
<ais523> ` rm canary; ln -s bin/\\? canary
author | HackBot |
---|---|
date | Sun, 21 Jun 2015 18:43:19 +0000 |
parents | ac0403686959 |
children |
line wrap: on
line source
" Vim syntax file " Language: ploki " Maintainer: Lukas Mai " Last Change: 2010-02-28 " Version: 0.15 if version < 600 sy clear elseif exists('b:current_syntax') finish endif syn match plokiStuff /.\+/ contains=plokiList,plokiNumber,plokiSpcErr,plokiSpecial,plokiFunc,plokiString contained syn match plokiList /#<\|#>/ syn match plokiNumber /\.\d\+\%([Ee][-+]\=\d\+\)\=/ syn match plokiNumber /\d\+\%(\.\d*\)\=\%([Ee][-+]\=\d\+\)\=/ syn match plokiSpcErr /\\/ syn match plokiSpecial \ /\\\%([!?@_]\|\d\+\|ARG\|AUSG\|EING\|E\|FEHL\|PI\)\=/ syn match plokiFunc /\\\%(ARG:\|ENV\|[LQRU]\)/ syn match plokiFunc \ /@\%([-+]\|ABS\|ACOS\|APERS\|ASIN\|ATAN2\=\|CHR\|COS\|DEF-P\|EDD-P\|ENV\|ERR-P\|EVAL\|GET\|INT\|IO-P\|LAPERS\|LEGS\|LENGTH\|L[GN]\|NEG\|NOT\|NUM\|OMFG\|ORD\|RE\%(MOVE\|NAEM\|VERSE\)\|SAG\|SAPERS\|SIN\|SQRT\|STR\|SUCH\|TAN\|TYPE OF\)/ syn match plokiEscErr /\\/ contained syn match plokiEscape /\\\%([abfnrtv"\\V]\|c.\|x\x\x\=\|\o\{1,3}\)/ contained syn match plokiString '"\%(\%(??/\n\)\@![^"\\]\)*\%(\\c\=.\%(\%(??/\n\)\@![^"\\]\)*\)*"\=' \ contains=plokiEscape,plokiEscErr nextgroup=plokiCont syn match plokiGarbage '\%(\%(??/\n\)\@!.\)\+' contained nextgroup=plokiCont syn match plokiCmd \ /#\|A[BN]RUF\|CLAUDS\|END\|FLUSH\|GO\%(FOR\|TO\)\|IACS\|IF\|KTHX\|LEE\=T\|RESET\|SET\|WUNT/ \ contained syn match plokiCmd /#!\|ELSE\|END IF\|FI/ contained nextgroup=plokiGarbage syn region plokiComment matchgroup=plokiCmd start=/REM/ end=/$/ \ contained contains=plokiComment syn match plokiWord /\S\+/ contained nextgroup=plokiGarbage syn match plokiCmd /NEXT\s*/ contained nextgroup=plokiWord syn match plokiLabel /^\s*\%(FOR\s*\S\+\|\d*\)\s*/ \ nextgroup=plokiCmd,plokiComment,plokiSpcErr,plokiSpecial,plokiFunc,plokiString " ^... around a bug(?) syn match plokiCont '??/\n' nextgroup=plokiStuff syn match plokiInsert /^\s*INSERT\%(\%( DA\)\=\)\@>\s*\S\+\%(\s\+\S\+\)*\s*HERE\s*$/ contains=plokiInsFile syn match plokiInsFile /\%(^\s*INSERT\%(\%( DA\)\=\)\@>\s*\)\@<=\S\+\%(\s\+\S\+\)*\%(\s*HERE\s*$\)\@=/ contained if version >= 508 || !exists('did_ploki_syn_inits') if version < 508 let did_ploki_syn_inits = 1 command -nargs=+ HiLink hi link <args> else command -nargs=+ HiLink hi def link <args> endif HiLink plokiinsFile String HiLink plokiInsert Preproc HiLink plokiCont Preproc HiLink plokiLabel Label HiLink plokiGarbage Comment HiLink plokiComment Comment HiLink plokiCmd Type HiLink plokiWord Label HiLink plokiString String HiLink plokiEscape SpecialChar HiLink plokiEscErr Error HiLink plokiFunc Function HiLink plokiSpecial Special HiLink plokiSpcErr Error HiLink plokiNumber Number HiLink plokiList Preproc delc HiLink endif let b:current_syntax = 'ploki'