|
1 | 1 | " Vim syntax file |
2 | | -" Language: AmigaDos |
3 | | -" Maintainer: This runtime file is looking for a new maintainer. |
4 | | -" Former Maintainer: Charles E. Campbell |
5 | | -" Last Change: Aug 31, 2016 |
6 | | -" Version: 10 |
7 | | -" Former URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_AMIGA |
8 | | - |
9 | | -" quit when a syntax file was already loaded |
| 2 | +" Language: AmigaDOS |
| 3 | +" Maintainer: Ola Söder <rolfkopman@gmail.com> |
| 4 | +" First Author: Charles E. Campbell |
| 5 | +" Last Change: 2026 Mar 25 |
| 6 | +" Version: 11 |
| 7 | + |
10 | 8 | if exists("b:current_syntax") |
11 | | - finish |
| 9 | + finish |
12 | 10 | endif |
13 | 11 |
|
14 | 12 | syn case ignore |
15 | 13 |
|
16 | | -" Amiga Devices |
17 | | -syn match amiDev "\(par\|ser\|prt\|con\|nil\):" |
18 | | - |
19 | | -" Amiga aliases and paths |
20 | | -syn match amiAlias "\<[a-zA-Z][a-zA-Z0-9]\+:" |
21 | | -syn match amiAlias "\<[a-zA-Z][a-zA-Z0-9]\+:[a-zA-Z0-9/]*/" |
22 | | - |
23 | | -" strings |
24 | | -syn region amiString start=+"+ end=+"+ oneline contains=@Spell |
25 | | - |
26 | | -" numbers |
27 | | -syn match amiNumber "\<\d\+\>" |
28 | | - |
29 | | -" Logic flow |
30 | | -syn region amiFlow matchgroup=Statement start="if" matchgroup=Statement end="endif" contains=ALL |
31 | | -syn keyword amiFlow skip endskip |
32 | | -syn match amiError "else\|endif" |
33 | | -syn keyword amiElse contained else |
34 | | - |
35 | | -syn keyword amiTest contained not warn error fail eq gt ge val exists |
36 | | - |
37 | | -" echo exception |
38 | | -syn region amiEcho matchgroup=Statement start="\<echo\>" end="$" oneline contains=amiComment |
39 | | -syn region amiEcho matchgroup=Statement start="^\.[bB][rR][aA]" end="$" oneline |
40 | | -syn region amiEcho matchgroup=Statement start="^\.[kK][eE][tT]" end="$" oneline |
41 | | - |
42 | | -" commands |
43 | | -syn keyword amiKey addbuffers copy fault join pointer setdate |
44 | | -syn keyword amiKey addmonitor cpu filenote keyshow printer setenv |
45 | | -syn keyword amiKey alias date fixfonts lab printergfx setfont |
46 | | -syn keyword amiKey ask delete fkey list printfiles setmap |
47 | | -syn keyword amiKey assign dir font loadwb prompt setpatch |
48 | | -syn keyword amiKey autopoint diskchange format lock protect sort |
49 | | -syn keyword amiKey avail diskcopy get magtape quit stack |
50 | | -syn keyword amiKey binddrivers diskdoctor getenv makedir relabel status |
51 | | -syn keyword amiKey bindmonitor display graphicdump makelink remrad time |
52 | | -syn keyword amiKey blanker iconedit more rename type |
53 | | -syn keyword amiKey break ed icontrol mount resident unalias |
54 | | -syn keyword amiKey calculator edit iconx newcli run unset |
55 | | -syn keyword amiKey cd endcli ihelp newshell say unsetenv |
56 | | -syn keyword amiKey changetaskpri endshell info nocapslock screenmode version |
57 | | -syn keyword amiKey clock eval initprinter nofastmem search wait |
58 | | -syn keyword amiKey cmd exchange input overscan serial wbpattern |
59 | | -syn keyword amiKey colors execute install palette set which |
60 | | -syn keyword amiKey conclip failat iprefs path setclock why |
61 | | - |
62 | | -" comments |
63 | | -syn cluster amiCommentGroup contains=amiTodo,@Spell |
64 | | -syn case ignore |
65 | | -syn keyword amiTodo contained todo |
66 | | -syn case match |
67 | | -syn match amiComment ";.*$" contains=amiCommentGroup |
| 14 | +" Directives |
| 15 | +syn match amiDirective "^\.\(key\|k\)\>.*$" contains=amiTemplate |
| 16 | +syn match amiDirective "^\.\(bra\|ket\|dot\|dollar\|dol\|def\|default\)\>.*$" |
68 | 17 |
|
69 | | -" sync |
70 | | -syn sync lines=50 |
| 18 | +" Template arguments |
| 19 | +syn match amiTemplate contained "/[AKSNMF]\>" |
71 | 20 |
|
72 | | -" Define the default highlighting. |
73 | | -if !exists("skip_amiga_syntax_inits") |
| 21 | +" Strings |
| 22 | +syn region amiString start=+"+ end=+"+ oneline contains=amiEscape,amiVar,amiSubst,@Spell |
| 23 | + |
| 24 | +" Escape sequences |
| 25 | +syn match amiEscape contained "\*[nNeE"*]" |
| 26 | + |
| 27 | +" Numbers |
| 28 | +syn match amiNumber "\<\d\+\>" |
| 29 | + |
| 30 | +" Variables |
| 31 | +syn match amiVar "\$[a-zA-Z_][a-zA-Z0-9_]*" |
| 32 | +syn match amiVar "\$\$" |
| 33 | + |
| 34 | +" Parameters |
| 35 | +syn region amiSubst start="<\a" end=">" oneline contains=amiVar |
| 36 | +syn match amiSubst "<\$\$>" |
| 37 | + |
| 38 | +" Devices / assigns / paths |
| 39 | +syn match amiPath "\<[a-zA-Z][a-zA-Z0-9]*:[^ \t]*" |
| 40 | + |
| 41 | +" Redirection |
| 42 | +syn match amiOperator ">>" |
| 43 | +syn match amiOperator "[<>|]" |
74 | 44 |
|
75 | | - hi def link amiAlias Type |
76 | | - hi def link amiComment Comment |
77 | | - hi def link amiDev Type |
78 | | - hi def link amiEcho String |
79 | | - hi def link amiElse Statement |
80 | | - hi def link amiError Error |
81 | | - hi def link amiKey Statement |
82 | | - hi def link amiNumber Number |
83 | | - hi def link amiString String |
84 | | - hi def link amiTest Special |
| 45 | +" Control flow |
| 46 | +syn region amiIfBlock matchgroup=amiConditional start="\<IF\>" matchgroup=amiConditional end="\<ENDIF\>" contains=ALLBUT,amiIfError |
| 47 | +syn keyword amiIfError ELSE ENDIF |
| 48 | +syn keyword amiElse contained ELSE |
| 49 | +syn keyword amiConditional SKIP ENDSKIP |
| 50 | +syn keyword amiLabel LAB |
| 51 | +syn keyword amiRepeat FOREACH |
85 | 52 |
|
| 53 | +" Conditions |
| 54 | +syn keyword amiCondition contained NOT WARN ERROR FAIL EQ GT GE VAL EXISTS |
| 55 | + |
| 56 | +" Echo |
| 57 | +syn region amiEcho matchgroup=amiCommand start="\<echo\>" end="$" oneline contains=amiComment,amiVar,amiSubst,amiBacktick,amiEscape |
| 58 | + |
| 59 | +" Commands |
| 60 | +syn keyword amiCommand ADDAUDIOMODES |
| 61 | +syn keyword amiCommand ADDBUFFERS |
| 62 | +syn keyword amiCommand ADDDATATYPES |
| 63 | +syn keyword amiCommand ADDMONITOR |
| 64 | +syn keyword amiCommand ADDNETINTERFACE |
| 65 | +syn keyword amiCommand ADDNETROUTE |
| 66 | +syn keyword amiCommand ALIAS |
| 67 | +syn keyword amiCommand APPLISTINFO |
| 68 | +syn keyword amiCommand ARP |
| 69 | +syn keyword amiCommand ASK |
| 70 | +syn keyword amiCommand ASSIGN |
| 71 | +syn keyword amiCommand AVAIL |
| 72 | +syn keyword amiCommand BINDDRIVERS |
| 73 | +syn keyword amiCommand BINDMONITOR |
| 74 | +syn keyword amiCommand BREAK |
| 75 | +syn keyword amiCommand BUILDMAPTABLE |
| 76 | +syn keyword amiCommand CACHESTAT |
| 77 | +syn keyword amiCommand CD |
| 78 | +syn keyword amiCommand CHANGETASKPRI |
| 79 | +syn keyword amiCommand CHARSETCONVERT |
| 80 | +syn keyword amiCommand CLIP |
| 81 | +syn keyword amiCommand CLOCK |
| 82 | +syn keyword amiCommand CMD |
| 83 | +syn keyword amiCommand CONCLIP |
| 84 | +syn keyword amiCommand CONFIGURENETINTERFACE |
| 85 | +syn keyword amiCommand COPY |
| 86 | +syn keyword amiCommand COUNTLINES |
| 87 | +syn keyword amiCommand CPU |
| 88 | +syn keyword amiCommand CROSSDOS |
| 89 | +syn keyword amiCommand CUT |
| 90 | +syn keyword amiCommand DATE |
| 91 | +syn keyword amiCommand DELETE |
| 92 | +syn keyword amiCommand DELETENETROUTE |
| 93 | +syn keyword amiCommand DIR |
| 94 | +syn keyword amiCommand DISKCHANGE |
| 95 | +syn keyword amiCommand DISKCOPY |
| 96 | +syn keyword amiCommand DISKDOCTOR |
| 97 | +syn keyword amiCommand DISMOUNT |
| 98 | +syn keyword amiCommand ENDCLI |
| 99 | +syn keyword amiCommand ENDSHELL |
| 100 | +syn keyword amiCommand EVAL |
| 101 | +syn keyword amiCommand EXECUTE |
| 102 | +syn keyword amiCommand FAILAT |
| 103 | +syn keyword amiCommand FAULT |
| 104 | +syn keyword amiCommand FDTOOL |
| 105 | +syn keyword amiCommand FILENOTE |
| 106 | +syn keyword amiCommand FILESIZE |
| 107 | +syn keyword amiCommand FORMAT |
| 108 | +syn keyword amiCommand GET |
| 109 | +syn keyword amiCommand GETENV |
| 110 | +syn keyword amiCommand GETNETSTATUS |
| 111 | +syn keyword amiCommand GROUP |
| 112 | +syn keyword amiCommand HELP |
| 113 | +syn keyword amiCommand HI |
| 114 | +syn keyword amiCommand HISTORY |
| 115 | +syn keyword amiCommand IHELP |
| 116 | +syn keyword amiCommand INFO |
| 117 | +syn keyword amiCommand INITPRINTER |
| 118 | +syn keyword amiCommand INPUT |
| 119 | +syn keyword amiCommand INSTALL |
| 120 | +syn keyword amiCommand INTELLIFONT |
| 121 | +syn keyword amiCommand IPMON |
| 122 | +syn keyword amiCommand IPNAT |
| 123 | +syn keyword amiCommand JOIN |
| 124 | +syn keyword amiCommand KDEBUG |
| 125 | +syn keyword amiCommand LAB |
| 126 | +syn keyword amiCommand LIST |
| 127 | +syn keyword amiCommand LOADMONDRVS |
| 128 | +syn keyword amiCommand LOADRESOURCE |
| 129 | +syn keyword amiCommand LOADWB |
| 130 | +syn keyword amiCommand LOCALE |
| 131 | +syn keyword amiCommand LOCK |
| 132 | +syn keyword amiCommand MAKEDIR |
| 133 | +syn keyword amiCommand MAKELINK |
| 134 | +syn keyword amiCommand MEMSTAT |
| 135 | +syn keyword amiCommand MORE |
| 136 | +syn keyword amiCommand MOUNT |
| 137 | +syn keyword amiCommand MOUNTINFO |
| 138 | +syn keyword amiCommand MOVE |
| 139 | +syn keyword amiCommand NETLOGVIEWER |
| 140 | +syn keyword amiCommand NETSHUTDOWN |
| 141 | +syn keyword amiCommand NEWCLI |
| 142 | +syn keyword amiCommand NEWSHELL |
| 143 | +syn keyword amiCommand OWNER |
| 144 | +syn keyword amiCommand PATH |
| 145 | +syn keyword amiCommand PATHPART |
| 146 | +syn keyword amiCommand PIPE |
| 147 | +syn keyword amiCommand POINTER |
| 148 | +syn keyword amiCommand POOLSTAT |
| 149 | +syn keyword amiCommand POPCD |
| 150 | +syn keyword amiCommand PREPCARD |
| 151 | +syn keyword amiCommand PROMPT |
| 152 | +syn keyword amiCommand PROTECT |
| 153 | +syn keyword amiCommand PUSHCD |
| 154 | +syn keyword amiCommand QUIT |
| 155 | +syn keyword amiCommand REBOOT |
| 156 | +syn keyword amiCommand RELABEL |
| 157 | +syn keyword amiCommand RELOADAPPLIST |
| 158 | +syn keyword amiCommand REMOVENETINTERFACE |
| 159 | +syn keyword amiCommand REMRAD |
| 160 | +syn keyword amiCommand RENAME |
| 161 | +syn keyword amiCommand REQUESTCHOICE |
| 162 | +syn keyword amiCommand REQUESTFILE |
| 163 | +syn keyword amiCommand REQUESTSTRING |
| 164 | +syn keyword amiCommand RESIDENT |
| 165 | +syn keyword amiCommand ROADSHOWCONTROL |
| 166 | +syn keyword amiCommand RUN |
| 167 | +syn keyword amiCommand RX |
| 168 | +syn keyword amiCommand RXC |
| 169 | +syn keyword amiCommand RXLIB |
| 170 | +syn keyword amiCommand RXSET |
| 171 | +syn keyword amiCommand SAY |
| 172 | +syn keyword amiCommand SEARCH |
| 173 | +syn keyword amiCommand SET |
| 174 | +syn keyword amiCommand SETCLOCK |
| 175 | +syn keyword amiCommand SETDATE |
| 176 | +syn keyword amiCommand SETDOSDEBUG |
| 177 | +syn keyword amiCommand SETENV |
| 178 | +syn keyword amiCommand SETFONT |
| 179 | +syn keyword amiCommand SETFONTCHARSET |
| 180 | +syn keyword amiCommand SETKEYBOARD |
| 181 | +syn keyword amiCommand SETMAP |
| 182 | +syn keyword amiCommand SETPATCH |
| 183 | +syn keyword amiCommand SHOW68LOADS |
| 184 | +syn keyword amiCommand SHOWAPPLIST |
| 185 | +syn keyword amiCommand SHOWNETSTATUS |
| 186 | +syn keyword amiCommand SMARTCTL |
| 187 | +syn keyword amiCommand SORT |
| 188 | +syn keyword amiCommand SOUNDPLAYER |
| 189 | +syn keyword amiCommand STACK |
| 190 | +syn keyword amiCommand STATUS |
| 191 | +syn keyword amiCommand SWAPCD |
| 192 | +syn keyword amiCommand TYPE |
| 193 | +syn keyword amiCommand UNALIAS |
| 194 | +syn keyword amiCommand UNSET |
| 195 | +syn keyword amiCommand UNSETENV |
| 196 | +syn keyword amiCommand UPTIME |
| 197 | +syn keyword amiCommand URLOPEN |
| 198 | +syn keyword amiCommand VERSION |
| 199 | +syn keyword amiCommand WAIT |
| 200 | +syn keyword amiCommand WAITFORPORT |
| 201 | +syn keyword amiCommand WBRUN |
| 202 | +syn keyword amiCommand WBSTARTUPCTRL |
| 203 | +syn keyword amiCommand WHICH |
| 204 | +syn keyword amiCommand WHY |
| 205 | + |
| 206 | +" Options |
| 207 | +syn keyword amiOption ADD |
| 208 | +syn keyword amiOption ALL |
| 209 | +syn keyword amiOption APPEND |
| 210 | +syn keyword amiOption BACK |
| 211 | +syn keyword amiOption BODY |
| 212 | +syn keyword amiOption BUF |
| 213 | +syn keyword amiOption BUFFER |
| 214 | +syn keyword amiOption CASE |
| 215 | +syn keyword amiOption CHARSET |
| 216 | +syn keyword amiOption CHECK |
| 217 | +syn keyword amiOption CLEAR |
| 218 | +syn keyword amiOption CLONE |
| 219 | +syn keyword amiOption COPYLINKS |
| 220 | +syn keyword amiOption DATES |
| 221 | +syn keyword amiOption DEBUG |
| 222 | +syn keyword amiOption DEVICE |
| 223 | +syn keyword amiOption DIRS |
| 224 | +syn keyword amiOption DRIVE |
| 225 | +syn keyword amiOption FILE |
| 226 | +syn keyword amiOption FILES |
| 227 | +syn keyword amiOption FOLLOWLINKS |
| 228 | +syn keyword amiOption FORCE |
| 229 | +syn keyword amiOption FROM |
| 230 | +syn keyword amiOption FULL |
| 231 | +syn keyword amiOption HARD |
| 232 | +syn keyword amiOption INTERACTIVE |
| 233 | +syn keyword amiOption LFORMAT |
| 234 | +syn keyword amiOption LOAD |
| 235 | +syn keyword amiOption LOCK |
| 236 | +syn keyword amiOption MULTI |
| 237 | +syn keyword amiOption NAME |
| 238 | +syn keyword amiOption NEGATIVE |
| 239 | +syn keyword amiOption NOHEAD |
| 240 | +syn keyword amiOption NONUM |
| 241 | +syn keyword amiOption NOREPLACE |
| 242 | +syn keyword amiOption NOREQ |
| 243 | +syn keyword amiOption NUMERIC |
| 244 | +syn keyword amiOption OFF |
| 245 | +syn keyword amiOption ON |
| 246 | +syn keyword amiOption PATTERN |
| 247 | +syn keyword amiOption POSITIVE |
| 248 | +syn keyword amiOption PREPEND |
| 249 | +syn keyword amiOption PUBSCREEN |
| 250 | +syn keyword amiOption QUICK |
| 251 | +syn keyword amiOption QUIET |
| 252 | +syn keyword amiOption REMOVE |
| 253 | +syn keyword amiOption REPLACE |
| 254 | +syn keyword amiOption RESET |
| 255 | +syn keyword amiOption SAVE |
| 256 | +syn keyword amiOption SHOW |
| 257 | +syn keyword amiOption SINCE |
| 258 | +syn keyword amiOption SOFT |
| 259 | +syn keyword amiOption SORT |
| 260 | +syn keyword amiOption SUB |
| 261 | +syn keyword amiOption TIMEOUT |
| 262 | +syn keyword amiOption TITLE |
| 263 | +syn keyword amiOption TO |
| 264 | +syn keyword amiOption UNLOCK |
| 265 | +syn keyword amiOption UPTO |
| 266 | +syn keyword amiOption VERBOSE |
| 267 | +syn keyword amiOption WITH |
| 268 | + |
| 269 | +" Comments |
| 270 | +syn match amiComment ";.*$" contains=amiTodo,@Spell |
| 271 | +syn match amiComment "^\.\s.*$" contains=amiTodo,@Spell |
| 272 | +syn match amiComment "^\.$" |
| 273 | + |
| 274 | +" Miscellaneous |
| 275 | +syn keyword amiTodo contained TODO FIXME XXX NOTE |
| 276 | +syn region amiBacktick start="`" end="`" oneline |
| 277 | + |
| 278 | +" Define the default highlighting. |
| 279 | +if !exists("skip_amiga_syntax_inits") |
| 280 | + hi def link amiBacktick Special |
| 281 | + hi def link amiCommand Statement |
| 282 | + hi def link amiComment Comment |
| 283 | + hi def link amiCondition Special |
| 284 | + hi def link amiConditional Conditional |
| 285 | + hi def link amiDirective PreProc |
| 286 | + hi def link amiEcho String |
| 287 | + hi def link amiElse Conditional |
| 288 | + hi def link amiEscape SpecialChar |
| 289 | + hi def link amiIfError Error |
| 290 | + hi def link amiLabel Label |
| 291 | + hi def link amiNumber Number |
| 292 | + hi def link amiOperator Operator |
| 293 | + hi def link amiOption Identifier |
| 294 | + hi def link amiPath Type |
| 295 | + hi def link amiRepeat Repeat |
| 296 | + hi def link amiString String |
| 297 | + hi def link amiSubst Special |
| 298 | + hi def link amiTemplate Type |
| 299 | + hi def link amiTodo Todo |
| 300 | + hi def link amiVar Special |
86 | 301 | endif |
87 | | -let b:current_syntax = "amiga" |
88 | 302 |
|
89 | | -" vim:ts=15 |
| 303 | +let b:current_syntax = "amiga" |
0 commit comments