7
|
1 " Vim syntax file
|
375
|
2 " Language: Quake[1-3] configuration file
|
839
|
3 " Maintainer: Nikolai Weibull <now@bitwi.se>
|
1624
|
4 " Latest Revision: 2007-06-17
|
839
|
5 " quake_is_quake1 - the syntax is to be used for quake1 configs
|
375
|
6 " quake_is_quake2 - the syntax is to be used for quake2 configs
|
|
7 " quake_is_quake3 - the syntax is to be used for quake3 configs
|
839
|
8 " Credits: Tomasz Kalkosinski wrote the original quake3Colors stuff
|
7
|
9
|
375
|
10 if exists("b:current_syntax")
|
7
|
11 finish
|
|
12 endif
|
|
13
|
375
|
14 let s:cpo_save = &cpo
|
|
15 set cpo&vim
|
7
|
16
|
1624
|
17 setlocal iskeyword+=-,+
|
375
|
18
|
|
19 syn keyword quakeTodo contained TODO FIXME XXX NOTE
|
7
|
20
|
375
|
21 syn region quakeComment display oneline start='//' end='$' end=';'
|
|
22 \ keepend contains=quakeTodo,@Spell
|
7
|
23
|
375
|
24 syn region quakeString display oneline start=+"+ skip=+\\\\\|\\"+
|
839
|
25 \ end=+"\|$+ contains=quakeNumbers,
|
|
26 \ @quakeCommands,@quake3Colors
|
7
|
27
|
|
28 syn case ignore
|
375
|
29
|
839
|
30 syn match quakeNumbers display transparent '\<-\=\d\|\.\d'
|
375
|
31 \ contains=quakeNumber,quakeFloat,
|
|
32 \ quakeOctalError,quakeOctal
|
|
33 syn match quakeNumber contained display '\d\+\>'
|
|
34 syn match quakeFloat contained display '\d\+\.\d*'
|
|
35 syn match quakeFloat contained display '\.\d\+\>'
|
839
|
36
|
|
37 if exists("quake_is_quake1") || exists("quake_is_quake2")
|
|
38 syn match quakeOctal contained display '0\o\+\>'
|
|
39 \ contains=quakeOctalZero
|
|
40 syn match quakeOctalZero contained display '\<0'
|
|
41 syn match quakeOctalError contained display '0\o*[89]\d*'
|
|
42 endif
|
375
|
43
|
|
44 syn cluster quakeCommands contains=quakeCommand,quake1Command,
|
|
45 \ quake12Command,Quake2Command,Quake23Command,
|
|
46 \ Quake3Command
|
7
|
47
|
375
|
48 syn keyword quakeCommand +attack +back +forward +left +lookdown +lookup
|
|
49 syn keyword quakeCommand +mlook +movedown +moveleft +moveright +moveup
|
|
50 syn keyword quakeCommand +right +speed +strafe -attack -back bind
|
|
51 syn keyword quakeCommand bindlist centerview clear connect cvarlist dir
|
|
52 syn keyword quakeCommand disconnect dumpuser echo error exec -forward
|
|
53 syn keyword quakeCommand god heartbeat joy_advancedupdate kick kill
|
|
54 syn keyword quakeCommand killserver -left -lookdown -lookup map
|
|
55 syn keyword quakeCommand messagemode messagemode2 -mlook modellist
|
|
56 syn keyword quakeCommand -movedown -moveleft -moveright -moveup play
|
|
57 syn keyword quakeCommand quit rcon reconnect record -right say say_team
|
|
58 syn keyword quakeCommand screenshot serverinfo serverrecord serverstop
|
|
59 syn keyword quakeCommand set sizedown sizeup snd_restart soundinfo
|
|
60 syn keyword quakeCommand soundlist -speed spmap status -strafe stopsound
|
|
61 syn keyword quakeCommand toggleconsole unbind unbindall userinfo pause
|
|
62 syn keyword quakeCommand vid_restart viewpos wait weapnext weapprev
|
7
|
63
|
|
64 if exists("quake_is_quake1")
|
375
|
65 syn keyword quake1Command sv
|
7
|
66 endif
|
|
67
|
|
68 if exists("quake_is_quake1") || exists("quake_is_quake2")
|
375
|
69 syn keyword quake12Command +klook alias cd impulse link load save
|
|
70 syn keyword quake12Command timerefresh changing info loading
|
|
71 syn keyword quake12Command pingservers playerlist players score
|
7
|
72 endif
|
|
73
|
|
74 if exists("quake_is_quake2")
|
375
|
75 syn keyword quake2Command cmd demomap +use condump download drop gamemap
|
|
76 syn keyword quake2Command give gun_model setmaster sky sv_maplist wave
|
|
77 syn keyword quake2Command cmdlist gameversiona gun_next gun_prev invdrop
|
|
78 syn keyword quake2Command inven invnext invnextp invnextw invprev
|
|
79 syn keyword quake2Command invprevp invprevw invuse menu_addressbook
|
|
80 syn keyword quake2Command menu_credits menu_dmoptions menu_game
|
|
81 syn keyword quake2Command menu_joinserver menu_keys menu_loadgame
|
|
82 syn keyword quake2Command menu_main menu_multiplayer menu_options
|
|
83 syn keyword quake2Command menu_playerconfig menu_quit menu_savegame
|
|
84 syn keyword quake2Command menu_startserver menu_video
|
|
85 syn keyword quake2Command notarget precache prog togglechat vid_front
|
|
86 syn keyword quake2Command weaplast
|
7
|
87 endif
|
|
88
|
375
|
89 if exists("quake_is_quake2") || exists("quake_is_quake3")
|
|
90 syn keyword quake23Command imagelist modellist path z_stats
|
7
|
91 endif
|
|
92
|
375
|
93 if exists("quake_is_quake3")
|
|
94 syn keyword quake3Command +info +scores +zoom addbot arena banClient
|
|
95 syn keyword quake3Command banUser callteamvote callvote changeVectors
|
|
96 syn keyword quake3Command cinematic clientinfo clientkick cmd cmdlist
|
|
97 syn keyword quake3Command condump configstrings crash cvar_restart devmap
|
|
98 syn keyword quake3Command fdir follow freeze fs_openedList Fs_pureList
|
|
99 syn keyword quake3Command Fs_referencedList gfxinfo globalservers
|
|
100 syn keyword quake3Command hunk_stats in_restart -info levelshot
|
|
101 syn keyword quake3Command loaddeferred localservers map_restart mem_info
|
|
102 syn keyword quake3Command messagemode3 messagemode4 midiinfo model music
|
|
103 syn keyword quake3Command modelist net_restart nextframe nextskin noclip
|
|
104 syn keyword quake3Command notarget ping prevframe prevskin reset restart
|
|
105 syn keyword quake3Command s_disable_a3d s_enable_a3d s_info s_list s_stop
|
|
106 syn keyword quake3Command scanservers -scores screenshotJPEG sectorlist
|
|
107 syn keyword quake3Command serverstatus seta setenv sets setu setviewpos
|
|
108 syn keyword quake3Command shaderlist showip skinlist spdevmap startOribt
|
|
109 syn keyword quake3Command stats stopdemo stoprecord systeminfo togglemenu
|
|
110 syn keyword quake3Command tcmd team teamtask teamvote tell tell_attacker
|
|
111 syn keyword quake3Command tell_target testgun testmodel testshader toggle
|
|
112 syn keyword quake3Command touchFile vminfo vmprofile vmtest vosay
|
|
113 syn keyword quake3Command vosay_team vote votell vsay vsay_team vstr
|
|
114 syn keyword quake3Command vtaunt vtell vtell_attacker vtell_target weapon
|
|
115 syn keyword quake3Command writeconfig -zoom
|
|
116 syn match quake3Command display "\<[+-]button\(\d\|1[0-4]\)\>"
|
|
117 endif
|
|
118
|
839
|
119 if exists("quake_is_quake3")
|
|
120 syn cluster quake3Colors contains=quake3Red,quake3Green,quake3Yellow,
|
|
121 \ quake3Blue,quake3Cyan,quake3Purple,quake3White,
|
|
122 \ quake3Orange,quake3Grey,quake3Black,quake3Shadow
|
|
123
|
|
124 syn region quake3Red contained start=+\^1+hs=e+1 end=+[$^"\n]+he=e-1
|
|
125 syn region quake3Green contained start=+\^2+hs=e+1 end=+[$^"\n]+he=e-1
|
|
126 syn region quake3Yellow contained start=+\^3+hs=e+1 end=+[$^"\n]+he=e-1
|
|
127 syn region quake3Blue contained start=+\^4+hs=e+1 end=+[$^"\n]+he=e-1
|
|
128 syn region quake3Cyan contained start=+\^5+hs=e+1 end=+[$^"\n]+he=e-1
|
|
129 syn region quake3Purple contained start=+\^6+hs=e+1 end=+[$^"\n]+he=e-1
|
|
130 syn region quake3White contained start=+\^7+hs=e+1 end=+[$^"\n]+he=e-1
|
|
131 syn region quake3Orange contained start=+\^8+hs=e+1 end=+[$^\"\n]+he=e-1
|
|
132 syn region quake3Grey contained start=+\^9+hs=e+1 end=+[$^"\n]+he=e-1
|
|
133 syn region quake3Black contained start=+\^0+hs=e+1 end=+[$^"\n]+he=e-1
|
|
134 syn region quake3Shadow contained start=+\^[Xx]+hs=e+1 end=+[$^"\n]+he=e-1
|
|
135 endif
|
|
136
|
375
|
137 hi def link quakeComment Comment
|
|
138 hi def link quakeTodo Todo
|
|
139 hi def link quakeString String
|
|
140 hi def link quakeNumber Number
|
|
141 hi def link quakeOctal Number
|
|
142 hi def link quakeOctalZero PreProc
|
|
143 hi def link quakeFloat Number
|
|
144 hi def link quakeOctalError Error
|
|
145 hi def link quakeCommand quakeCommands
|
|
146 hi def link quake1Command quakeCommands
|
|
147 hi def link quake12Command quakeCommands
|
|
148 hi def link quake2Command quakeCommands
|
|
149 hi def link quake23Command quakeCommands
|
|
150 hi def link quake3Command quakeCommands
|
|
151 hi def link quakeCommands Keyword
|
|
152
|
839
|
153 if exists("quake_is_quake3")
|
|
154 hi quake3Red ctermfg=Red guifg=Red
|
|
155 hi quake3Green ctermfg=Green guifg=Green
|
|
156 hi quake3Yellow ctermfg=Yellow guifg=Yellow
|
|
157 hi quake3Blue ctermfg=Blue guifg=Blue
|
|
158 hi quake3Cyan ctermfg=Cyan guifg=Cyan
|
|
159 hi quake3Purple ctermfg=DarkMagenta guifg=Purple
|
|
160 hi quake3White ctermfg=White guifg=White
|
|
161 hi quake3Black ctermfg=Black guifg=Black
|
|
162 hi quake3Orange ctermfg=Brown guifg=Orange
|
|
163 hi quake3Grey ctermfg=LightGrey guifg=LightGrey
|
|
164 hi quake3Shadow cterm=underline gui=underline
|
|
165 endif
|
|
166
|
375
|
167 let b:current_syntax = "quake"
|
|
168
|
|
169 let &cpo = s:cpo_save
|
|
170 unlet s:cpo_save
|