7
|
1 " Vim syntax file
|
|
2 " Language: AmigaDos
|
6479
|
3 " Maintainer: Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
|
|
4 " Last Change: Oct 23, 2014
|
|
5 " Version: 7
|
|
6 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_AMIGA
|
7
|
7
|
|
8 " For version 5.x: Clear all syntax items
|
|
9 " For version 6.x: Quit when a syntax file was already loaded
|
|
10 if version < 600
|
|
11 syntax clear
|
|
12 elseif exists("b:current_syntax")
|
|
13 finish
|
|
14 endif
|
|
15
|
|
16 syn case ignore
|
|
17
|
|
18 " Amiga Devices
|
|
19 syn match amiDev "\(par\|ser\|prt\|con\|nil\):"
|
|
20
|
|
21 " Amiga aliases and paths
|
|
22 syn match amiAlias "\<[a-zA-Z][a-zA-Z0-9]\+:"
|
|
23 syn match amiAlias "\<[a-zA-Z][a-zA-Z0-9]\+:[a-zA-Z0-9/]*/"
|
|
24
|
|
25 " strings
|
1121
|
26 syn region amiString start=+"+ end=+"+ oneline contains=@Spell
|
7
|
27
|
|
28 " numbers
|
|
29 syn match amiNumber "\<\d\+\>"
|
|
30
|
|
31 " Logic flow
|
|
32 syn region amiFlow matchgroup=Statement start="if" matchgroup=Statement end="endif" contains=ALL
|
|
33 syn keyword amiFlow skip endskip
|
|
34 syn match amiError "else\|endif"
|
|
35 syn keyword amiElse contained else
|
|
36
|
|
37 syn keyword amiTest contained not warn error fail eq gt ge val exists
|
|
38
|
|
39 " echo exception
|
|
40 syn region amiEcho matchgroup=Statement start="\<echo\>" end="$" oneline contains=amiComment
|
|
41 syn region amiEcho matchgroup=Statement start="^\.[bB][rR][aA]" end="$" oneline
|
|
42 syn region amiEcho matchgroup=Statement start="^\.[kK][eE][tT]" end="$" oneline
|
|
43
|
|
44 " commands
|
|
45 syn keyword amiKey addbuffers copy fault join pointer setdate
|
|
46 syn keyword amiKey addmonitor cpu filenote keyshow printer setenv
|
|
47 syn keyword amiKey alias date fixfonts lab printergfx setfont
|
|
48 syn keyword amiKey ask delete fkey list printfiles setmap
|
|
49 syn keyword amiKey assign dir font loadwb prompt setpatch
|
|
50 syn keyword amiKey autopoint diskchange format lock protect sort
|
|
51 syn keyword amiKey avail diskcopy get magtape quit stack
|
|
52 syn keyword amiKey binddrivers diskdoctor getenv makedir relabel status
|
|
53 syn keyword amiKey bindmonitor display graphicdump makelink remrad time
|
|
54 syn keyword amiKey blanker iconedit more rename type
|
|
55 syn keyword amiKey break ed icontrol mount resident unalias
|
|
56 syn keyword amiKey calculator edit iconx newcli run unset
|
|
57 syn keyword amiKey cd endcli ihelp newshell say unsetenv
|
|
58 syn keyword amiKey changetaskpri endshell info nocapslock screenmode version
|
|
59 syn keyword amiKey clock eval initprinter nofastmem search wait
|
|
60 syn keyword amiKey cmd exchange input overscan serial wbpattern
|
|
61 syn keyword amiKey colors execute install palette set which
|
|
62 syn keyword amiKey conclip failat iprefs path setclock why
|
|
63
|
|
64 " comments
|
|
65 syn cluster amiCommentGroup contains=amiTodo,@Spell
|
|
66 syn case ignore
|
|
67 syn keyword amiTodo contained todo
|
|
68 syn case match
|
|
69 syn match amiComment ";.*$" contains=amiCommentGroup
|
|
70
|
|
71 " sync
|
|
72 syn sync lines=50
|
|
73
|
|
74 " Define the default highlighting.
|
|
75 " For version 5.7 and earlier: only when not done already
|
|
76 " For version 5.8 and later: only when an item doesn't have highlighting yet
|
|
77 if version >= 508 || !exists("did_amiga_syn_inits")
|
|
78 if version < 508
|
|
79 let did_amiga_syn_inits = 1
|
|
80 command -nargs=+ HiLink hi link <args>
|
|
81 else
|
|
82 command -nargs=+ HiLink hi def link <args>
|
|
83 endif
|
|
84
|
|
85 HiLink amiAlias Type
|
|
86 HiLink amiComment Comment
|
|
87 HiLink amiDev Type
|
|
88 HiLink amiEcho String
|
|
89 HiLink amiElse Statement
|
|
90 HiLink amiError Error
|
|
91 HiLink amiKey Statement
|
|
92 HiLink amiNumber Number
|
|
93 HiLink amiString String
|
|
94 HiLink amiTest Special
|
|
95
|
|
96 delcommand HiLink
|
|
97 endif
|
|
98
|
|
99 let b:current_syntax = "amiga"
|
|
100
|
|
101 " vim:ts=15
|