Mercurial > vim
annotate runtime/syntax/mush.vim @ 33392:3d3d0492824e
Added tag v9.0.1954 for changeset 6d326000432329e86e9f286f165871bbc9e82b73
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Fri, 29 Sep 2023 20:00:07 +0200 |
parents | 46763b01cd9a |
children |
rev | line source |
---|---|
7 | 1 " MUSHcode syntax file |
856 | 2 " Maintainer: Rick Bird <nveid@nveid.com> |
557 | 3 " Based on vim Syntax file by: Bek Oberin <gossamer@tertius.net.au> |
4 " Last Updated: Fri Nov 04 20:28:15 2005 | |
5 " | |
10048
43efa4f5a8ea
commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Christian Brabandt <cb@256bit.org>
parents:
856
diff
changeset
|
6 " quit when a syntax file was already loaded |
43efa4f5a8ea
commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Christian Brabandt <cb@256bit.org>
parents:
856
diff
changeset
|
7 if exists("b:current_syntax") |
7 | 8 finish |
9 endif | |
10 | |
11 | |
12 " regular mush functions | |
557 | 13 |
14 syntax keyword mushFunction contained @@ abs accent accname acos add after align | |
15 syntax keyword mushFunction contained allof alphamax alphamin and andflags | |
16 syntax keyword mushFunction contained andlflags andlpowers andpowers ansi aposs art | |
17 syntax keyword mushFunction contained asin atan atan2 atrlock attrcnt band baseconv | |
18 syntax keyword mushFunction contained beep before blank2tilde bnand bnot bor bound | |
19 syntax keyword mushFunction contained brackets break bxor cand cansee capstr case | |
20 syntax keyword mushFunction contained caseall cat ceil center checkpass children | |
21 syntax keyword mushFunction contained chr clone cmds cnetpost comp con config conn | |
22 syntax keyword mushFunction contained controls convsecs convtime convutcsecs cor | |
23 syntax keyword mushFunction contained cos create ctime ctu dec decrypt default | |
24 syntax keyword mushFunction contained delete die dig digest dist2d dist3d div | |
25 syntax keyword mushFunction contained division divscope doing downdiv dynhelp e | |
26 syntax keyword mushFunction contained edefault edit element elements elist elock | |
27 syntax keyword mushFunction contained emit empire empower encrypt endtag entrances | |
28 syntax keyword mushFunction contained eq escape etimefmt eval exit exp extract fdiv | |
29 syntax keyword mushFunction contained filter filterbool findable first firstof | |
30 syntax keyword mushFunction contained flags flip floor floordiv fmod fold | |
31 syntax keyword mushFunction contained folderstats followers following foreach | |
32 syntax keyword mushFunction contained fraction fullname functions get get_eval grab | |
33 syntax keyword mushFunction contained graball grep grepi gt gte hasattr hasattrp | |
34 syntax keyword mushFunction contained hasattrpval hasattrval hasdivpower hasflag | |
35 syntax keyword mushFunction contained haspower haspowergroup hastype height hidden | |
36 syntax keyword mushFunction contained home host hostname html idle idlesecs | |
37 syntax keyword mushFunction contained idle_average idle_times idle_total if ifelse | |
38 syntax keyword mushFunction contained ilev iname inc index indiv indivall insert | |
39 syntax keyword mushFunction contained inum ipaddr isdaylight isdbref isint isnum | |
40 syntax keyword mushFunction contained isword itemize items iter itext last lattr | |
41 syntax keyword mushFunction contained lcon lcstr ldelete ldivisions left lemit | |
42 syntax keyword mushFunction contained level lexits lflags link list lit ljust lmath | |
43 syntax keyword mushFunction contained ln lnum loc localize locate lock loctree log | |
44 syntax keyword mushFunction contained lparent lplayers lports lpos lsearch lsearchr | |
45 syntax keyword mushFunction contained lstats lt lte lthings lvcon lvexits lvplayers | |
46 syntax keyword mushFunction contained lvthings lwho mail maildstats mailfrom | |
47 syntax keyword mushFunction contained mailfstats mailstats mailstatus mailsubject | |
48 syntax keyword mushFunction contained mailtime map match matchall max mean median | |
49 syntax keyword mushFunction contained member merge mid min mix mod modulo modulus | |
50 syntax keyword mushFunction contained money mtime mudname mul munge mwho name nand | |
51 syntax keyword mushFunction contained nattr ncon nearby neq nexits next nor not | |
52 syntax keyword mushFunction contained nplayers nsemit nslemit nsoemit nspemit | |
53 syntax keyword mushFunction contained nsremit nszemit nthings null num nvcon | |
54 syntax keyword mushFunction contained nvexits nvplayers nvthings obj objeval objid | |
55 syntax keyword mushFunction contained objmem oemit ooref open or ord orflags | |
56 syntax keyword mushFunction contained orlflags orlpowers orpowers owner parent | |
57 syntax keyword mushFunction contained parse pcreate pemit pi pickrand playermem | |
58 syntax keyword mushFunction contained pmatch poll ports pos poss power powergroups | |
59 syntax keyword mushFunction contained powers powover program prompt pueblo quitprog | |
60 syntax keyword mushFunction contained quota r rand randword recv regedit regeditall | |
61 syntax keyword mushFunction contained regeditalli regediti regmatch regmatchi | |
62 syntax keyword mushFunction contained regrab regraball regraballi regrabi regrep | |
63 syntax keyword mushFunction contained regrepi remainder remit remove repeat replace | |
64 syntax keyword mushFunction contained rest restarts restarttime reswitch | |
65 syntax keyword mushFunction contained reswitchall reswitchalli reswitchi reverse | |
66 syntax keyword mushFunction contained revwords right rjust rloc rnum room root | |
67 syntax keyword mushFunction contained round s scan scramble search secs secure sent | |
68 syntax keyword mushFunction contained set setdiff setinter setq setr setunion sha0 | |
69 syntax keyword mushFunction contained shl shr shuffle sign signal sin sort sortby | |
70 syntax keyword mushFunction contained soundex soundlike soundslike space spellnum | |
71 syntax keyword mushFunction contained splice sql sqlescape sqrt squish ssl | |
72 syntax keyword mushFunction contained starttime stats stddev step strcat strinsert | |
73 syntax keyword mushFunction contained stripaccents stripansi strlen strmatch | |
74 syntax keyword mushFunction contained strreplace sub subj switch switchall t table | |
75 syntax keyword mushFunction contained tag tagwrap tan tel terminfo textfile | |
76 syntax keyword mushFunction contained tilde2blank time timefmt timestring tr | |
77 syntax keyword mushFunction contained trigger trim trimpenn trimtiny trunc type u | |
78 syntax keyword mushFunction contained ucstr udefault ufun uldefault ulocal updiv | |
79 syntax keyword mushFunction contained utctime v vadd val valid vcross vdim vdot | |
80 syntax keyword mushFunction contained version visible vmag vmax vmin vmul vsub | |
81 syntax keyword mushFunction contained vtattr vtcount vtcreate vtdestroy vtlcon | |
82 syntax keyword mushFunction contained vtloc vtlocate vtmaster vtname vtref vttel | |
83 syntax keyword mushFunction contained vunit wait where width wipe wordpos words | |
84 syntax keyword mushFunction contained wrap xcon xexits xget xor xplayers xthings | |
85 syntax keyword mushFunction contained xvcon xvexits xvplayers xvthings zemit zfun | |
86 syntax keyword mushFunction contained zmwho zone zwho | |
87 | |
7 | 88 " only highligh functions when they have an in-bracket immediately after |
557 | 89 syntax match mushFunctionBrackets "\i*(" contains=mushFunction |
90 " | |
7 | 91 " regular mush commands |
557 | 92 syntax keyword mushAtCommandList contained @ALLHALT @ALLQUOTA @ASSERT @ATRCHOWN @ATRLOCK @ATTRIBUTE @BOOT |
93 syntax keyword mushAtCommandList contained @BREAK @CEMIT @CHANNEL @CHAT @CHOWN @CHOWNALL @CHZONE @CHZONEALL | |
94 syntax keyword mushAtCommandList contained @CLOCK @CLONE @COBJ @COMMAND @CONFIG @CPATTR @CREATE @CRPLOG @DBCK | |
95 syntax keyword mushAtCommandList contained @DECOMPILE @DESTROY @DIG @DISABLE @DIVISION @DOING @DOLIST @DRAIN | |
96 syntax keyword mushAtCommandList contained @DUMP @EDIT @ELOCK @EMIT @EMPOWER @ENABLE @ENTRANCES @EUNLOCK @FIND | |
97 syntax keyword mushAtCommandList contained @FIRSTEXIT @FLAG @FORCE @FUNCTION @EDIT @GREP @HALT @HIDE @HOOK @KICK | |
98 syntax keyword mushAtCommandList contained @LEMIT @LEVEL @LINK @LIST @LISTMOTD @LOCK @LOG @LOGWIPE @LSET @MAIL @MALIAS | |
99 syntax keyword mushAtCommandList contained @MAP @MOTD @MVATTR @NAME @NEWPASSWORD @NOTIFY @NSCEMIT @NSEMIT @NSLEMIT | |
100 syntax keyword mushAtCommandList contained @NSOEMIT @NSPEMIT @NSPEMIT @NSREMIT @NSZEMIT @NUKE @OEMIT @OPEN @PARENT @PASSWORD | |
101 syntax keyword mushAtCommandList contained @PCREATE @PEMIT @POLL @POOR @POWERLEVEL @PROGRAM @PROMPT @PS @PURGE @QUOTA | |
102 syntax keyword mushAtCommandList contained @READCACHE @RECYCLE @REJECTMOTD @REMIT @RESTART @SCAN @SEARCH @SELECT @SET | |
103 syntax keyword mushAtCommandList contained @SHUTDOWN @SITELOCK @SNOOP @SQL @SQUOTA @STATS @SWITCH @SWEEP @SWITCH @TELEPORT | |
104 syntax keyword mushAtCommandList contained @TRIGGER @ULOCK @UNDESTROY @UNLINK @UNLOCK @UNRECYCLE @UPTIME @UUNLOCK @VERB | |
105 syntax keyword mushAtCommandList contained @VERSION @WAIT @WALL @WARNINGS @WCHECK @WHEREIS @WIPE @ZCLONE @ZEMIT | |
7 | 106 syntax match mushCommand "@\i\I*" contains=mushAtCommandList |
107 | |
108 | |
557 | 109 syntax keyword mushCommand AHELP ANEWS ATTRIB_SET BRIEF BRIEF BUY CHANGES DESERT |
110 syntax keyword mushCommand DISMISS DROP EMPTY ENTER EXAMINE FOLLOW GET GIVE GOTO | |
111 syntax keyword mushCommand HELP HUH_COMMAND INVENTORY INVENTORY LOOK LEAVE LOOK | |
112 syntax keyword mushCommand GOTO NEWS PAGE PAGE POSE RULES SAY SCORE SEMIPOSE | |
113 syntax keyword mushCommand SPECIALNEWS TAKE TEACH THINK UNFOLLOW USE WHISPER WHISPER | |
114 syntax keyword mushCommand WARN_ON_MISSING WHISPER WITH | |
7 | 115 |
116 syntax match mushSpecial "\*\|!\|=\|-\|\\\|+" | |
117 syntax match mushSpecial2 contained "\*" | |
118 | |
557 | 119 syn region mushString start=+L\="+ skip=+\\\\\|\\"+ end=+"+ contains=mushSpecial,mushSpecial2,@Spell |
120 | |
121 | |
7 | 122 syntax match mushIdentifier "&[^ ]\+" |
123 | |
124 syntax match mushVariable "%r\|%t\|%cr\|%[A-Za-z0-9]\+\|%#\|##\|here" | |
125 | |
126 " numbers | |
127 syntax match mushNumber +[0-9]\++ | |
128 | |
129 " A comment line starts with a or # or " at the start of the line | |
130 " or an @@ | |
131 syntax keyword mushTodo contained TODO FIXME XXX | |
557 | 132 syntax cluster mushCommentGroup contains=mushTodo |
133 syntax match mushComment "^\s*@@.*$" contains=mushTodo | |
134 syntax match mushComment "^#[^define|^ifdef|^else|^pragma|^ifndef|^echo|^elif|^undef|^warning].*$" contains=mushTodo | |
135 syntax match mushComment "^#$" contains=mushTodo | |
136 syntax region mushComment matchgroup=mushCommentStart start="/@@" end="@@/" contains=@mushCommentGroup,mushCommentStartError,mushCommentString,@Spell | |
137 syntax region mushCommentString contained start=+L\=\\\@<!"+ skip=+\\\\\|\\"+ end=+"+ end=+@@/+me=s-1 contains=mushCommentSkip | |
138 syntax match mushCommentSkip contained "^\s*@@\($\|\s\+\)" | |
139 | |
140 | |
141 syntax match mushCommentStartError display "/@@"me=e-1 contained | |
142 | |
143 " syntax match mushComment +^".*$+ contains=mushTodo | |
144 " Work on this one | |
145 " syntax match mushComment +^#.*$+ contains=mushTodo | |
146 | |
147 syn region mushPreCondit start="^\s*\(%:\|#\)\s*\(if\|ifdef\|ifndef\|elif\)\>" skip="\\$" end="$" end="//"me=s-1 contains=mushComment | |
148 syn match mushPreCondit display "^\s*\(%:\|#\)\s*\(else\|endif\)\>" | |
149 | |
150 syn cluster mushPreProcGroup contains=mushPreCondit,mushIncluded,mushInclude,mushDefine,mushSpecial,mushString,mushCommentSkip,mushCommentString,@mushCommentGroup,mushCommentStartError | |
151 | |
152 syn region mushIncluded display contained start=+"+ skip=+\\\\\|\\"+ end=+"+ | |
153 syn match mushIncluded display contained "<[^>]*>" | |
154 syn match mushInclude display "^\s*\(%:\|#\)\s*include\>\s*["<]" contains=mushIncluded | |
155 syn region mushDefine start="^\s*\(%:\|#\)\s*\(define\|undef\)\>" skip="\\$" end="$" end="//"me=s-1 contains=ALLBUT,@mushPreProcGroup,@Spell | |
156 syn region mushPreProc start="^\s*\(%:\|#\)\s*\(pragma\>\|line\>\|warning\>\|warn\>\|error\>\)" skip="\\$" end="$" keepend contains=ALLBUT,@mushPreProcGroup | |
157 | |
7 | 158 |
159 syntax region mushFuncBoundaries start="\[" end="\]" contains=mushFunction,mushFlag,mushAttributes,mushNumber,mushCommand,mushVariable,mushSpecial2 | |
160 | |
161 " FLAGS | |
162 syntax keyword mushFlag PLAYER ABODE BUILDER CHOWN_OK DARK FLOATING | |
163 syntax keyword mushFlag GOING HAVEN INHERIT JUMP_OK KEY LINK_OK MONITOR | |
164 syntax keyword mushFlag NOSPOOF OPAQUE QUIET STICKY TRACE UNFINDABLE VISUAL | |
165 syntax keyword mushFlag WIZARD PARENT_OK ZONE AUDIBLE CONNECTED DESTROY_OK | |
166 syntax keyword mushFlag ENTER_OK HALTED IMMORTAL LIGHT MYOPIC PUPPET TERSE | |
167 syntax keyword mushFlag ROBOT SAFE TRANSPARENT VERBOSE CONTROL_OK COMMANDS | |
168 | |
169 syntax keyword mushAttribute aahear aclone aconnect adesc adfail adisconnect | |
170 syntax keyword mushAttribute adrop aefail aenter afail agfail ahear akill | |
171 syntax keyword mushAttribute aleave alfail alias amhear amove apay arfail | |
172 syntax keyword mushAttribute asucc atfail atport aufail ause away charges | |
173 syntax keyword mushAttribute cost desc dfail drop ealias efail enter fail | |
174 syntax keyword mushAttribute filter forwardlist gfail idesc idle infilter | |
175 syntax keyword mushAttribute inprefix kill lalias last lastsite leave lfail | |
176 syntax keyword mushAttribute listen move odesc odfail odrop oefail oenter | |
177 syntax keyword mushAttribute ofail ogfail okill oleave olfail omove opay | |
178 syntax keyword mushAttribute orfail osucc otfail otport oufail ouse oxenter | |
179 syntax keyword mushAttribute oxleave oxtport pay prefix reject rfail runout | |
180 syntax keyword mushAttribute semaphore sex startup succ tfail tport ufail | |
181 syntax keyword mushAttribute use va vb vc vd ve vf vg vh vi vj vk vl vm vn | |
182 syntax keyword mushAttribute vo vp vq vr vs vt vu vv vw vx vy vz | |
183 | |
184 | |
185 | |
10048
43efa4f5a8ea
commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Christian Brabandt <cb@256bit.org>
parents:
856
diff
changeset
|
186 " The default methods for highlighting. Can be overridden later |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
187 hi def link mushAttribute Constant |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
188 hi def link mushCommand Function |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
189 hi def link mushNumber Number |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
190 hi def link mushSetting PreProc |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
191 hi def link mushFunction Statement |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
192 hi def link mushVariable Identifier |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
193 hi def link mushSpecial Special |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
194 hi def link mushTodo Todo |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
195 hi def link mushFlag Special |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
196 hi def link mushIdentifier Identifier |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
197 hi def link mushDefine Macro |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
198 hi def link mushPreProc PreProc |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
199 hi def link mushPreProcGroup PreProc |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
200 hi def link mushPreCondit PreCondit |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
201 hi def link mushIncluded cString |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
202 hi def link mushInclude Include |
557 | 203 |
204 | |
205 | |
206 " Comments | |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
207 hi def link mushCommentStart mushComment |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
208 hi def link mushComment Comment |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
209 hi def link mushCommentString mushString |
557 | 210 |
7 | 211 |
212 | |
213 let b:current_syntax = "mush" | |
214 | |
215 " mush: ts=17 |