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