annotate src/ploki/syntax/ploki.vim @ 12242:4cb3e3831a45 draft

<b_jonas> addwhatis wisdom(5hackeso) - no description
author HackEso <hackeso@esolangs.org>
date Thu, 05 Dec 2019 23:40:31 +0000
parents ac0403686959
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4223
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
1 " Vim syntax file
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
2 " Language: ploki
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
3 " Maintainer: Lukas Mai
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
4 " Last Change: 2010-02-28
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
5 " Version: 0.15
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
6
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
7 if version < 600
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
8 sy clear
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
9 elseif exists('b:current_syntax')
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
10 finish
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
11 endif
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
12
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
13 syn match plokiStuff /.\+/ contains=plokiList,plokiNumber,plokiSpcErr,plokiSpecial,plokiFunc,plokiString contained
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
14
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
15 syn match plokiList /#<\|#>/
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
16 syn match plokiNumber /\.\d\+\%([Ee][-+]\=\d\+\)\=/
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
17 syn match plokiNumber /\d\+\%(\.\d*\)\=\%([Ee][-+]\=\d\+\)\=/
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
18 syn match plokiSpcErr /\\/
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
19 syn match plokiSpecial
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
20 \ /\\\%([!?@_]\|\d\+\|ARG\|AUSG\|EING\|E\|FEHL\|PI\)\=/
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
21 syn match plokiFunc /\\\%(ARG:\|ENV\|[LQRU]\)/
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
22 syn match plokiFunc
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
23 \ /@\%([-+]\|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\)/
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
24 syn match plokiEscErr /\\/ contained
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
25 syn match plokiEscape /\\\%([abfnrtv"\\V]\|c.\|x\x\x\=\|\o\{1,3}\)/ contained
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
26 syn match plokiString '"\%(\%(??/\n\)\@![^"\\]\)*\%(\\c\=.\%(\%(??/\n\)\@![^"\\]\)*\)*"\='
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
27 \ contains=plokiEscape,plokiEscErr nextgroup=plokiCont
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
28 syn match plokiGarbage '\%(\%(??/\n\)\@!.\)\+' contained nextgroup=plokiCont
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
29 syn match plokiCmd
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
30 \ /#\|A[BN]RUF\|CLAUDS\|END\|FLUSH\|GO\%(FOR\|TO\)\|IACS\|IF\|KTHX\|LEE\=T\|RESET\|SET\|WUNT/
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
31 \ contained
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
32 syn match plokiCmd /#!\|ELSE\|END IF\|FI/ contained nextgroup=plokiGarbage
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
33 syn region plokiComment matchgroup=plokiCmd start=/REM/ end=/$/
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
34 \ contained contains=plokiComment
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
35 syn match plokiWord /\S\+/ contained nextgroup=plokiGarbage
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
36 syn match plokiCmd /NEXT\s*/ contained nextgroup=plokiWord
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
37 syn match plokiLabel /^\s*\%(FOR\s*\S\+\|\d*\)\s*/
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
38 \ nextgroup=plokiCmd,plokiComment,plokiSpcErr,plokiSpecial,plokiFunc,plokiString
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
39 " ^... around a bug(?)
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
40
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
41 syn match plokiCont '??/\n' nextgroup=plokiStuff
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
42
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
43 syn match plokiInsert /^\s*INSERT\%(\%( DA\)\=\)\@>\s*\S\+\%(\s\+\S\+\)*\s*HERE\s*$/ contains=plokiInsFile
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
44 syn match plokiInsFile /\%(^\s*INSERT\%(\%( DA\)\=\)\@>\s*\)\@<=\S\+\%(\s\+\S\+\)*\%(\s*HERE\s*$\)\@=/ contained
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
45
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
46 if version >= 508 || !exists('did_ploki_syn_inits')
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
47 if version < 508
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
48 let did_ploki_syn_inits = 1
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
49 command -nargs=+ HiLink hi link <args>
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
50 else
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
51 command -nargs=+ HiLink hi def link <args>
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
52 endif
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
53
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
54 HiLink plokiinsFile String
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
55 HiLink plokiInsert Preproc
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
56 HiLink plokiCont Preproc
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
57 HiLink plokiLabel Label
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
58 HiLink plokiGarbage Comment
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
59 HiLink plokiComment Comment
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
60 HiLink plokiCmd Type
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
61 HiLink plokiWord Label
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
62 HiLink plokiString String
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
63 HiLink plokiEscape SpecialChar
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
64 HiLink plokiEscErr Error
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
65 HiLink plokiFunc Function
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
66 HiLink plokiSpecial Special
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
67 HiLink plokiSpcErr Error
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
68 HiLink plokiNumber Number
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
69 HiLink plokiList Preproc
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
70
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
71 delc HiLink
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
72 endif
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
73
ac0403686959 <oerjan> rm -rf src/ploki; mv ploki src
HackBot
parents:
diff changeset
74 let b:current_syntax = 'ploki'