summaryrefslogtreecommitdiff
path: root/runtime/syntax/quake.vim
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/syntax/quake.vim')
-rw-r--r--runtime/syntax/quake.vim242
1 files changed, 107 insertions, 135 deletions
diff --git a/runtime/syntax/quake.vim b/runtime/syntax/quake.vim
index 1ae8c71af..b86d52804 100644
--- a/runtime/syntax/quake.vim
+++ b/runtime/syntax/quake.vim
@@ -1,162 +1,134 @@
" Vim syntax file
-" Language: Quake[1-3] Configuration File
-" Maintainer: Nikolai Weibull <source@pcppopper.org>
-" URL: http://www.pcppopper.org/vim/syntax/pcp/quake/
-" Latest Revision: 2004-05-22
-" arch-tag: a95793d7-cab3-4544-a78c-1cea47b5870b
-" Variables: quake_is_quake1 - the syntax is to be used for quake1 configs
-" quake_is_quake2 - the syntax is to be used for quake2 configs
-" quake_is_quake3 - the syntax is to be used for quake3 configs
-
-
-if version < 600
- syntax clear
-elseif exists("b:current_syntax")
+" Language: Quake[1-3] configuration file
+" Maintainer: Nikolai Weibull <nikolai+work.vim@bitwi.se>
+" Latest Revision: 2005-06-29
+" quake_is_quake2 - the syntax is to be used for quake2 configs
+" quake_is_quake3 - the syntax is to be used for quake3 configs
+
+if exists("b:current_syntax")
finish
endif
+let s:cpo_save = &cpo
+set cpo&vim
-" Set iskeyword since we need `-' (and potentially others) in keywords.
-" For version 5.x: Set it globally
-" For version 6.x: Set it locally
-if version >= 600
- command -nargs=1 SetIsk setlocal iskeyword=<args>
-else
- command -nargs=1 SetIsk set iskeyword=<args>
-endif
-SetIsk 48-57,65-90,97-122,+,-,_
-delcommand SetIsk
-
+setlocal iskeyword=@,48-57,+,-,_
-" comments
-syn region quakeComment display oneline start="//" end="$" end=";" keepend contains=quakeTodo
+syn keyword quakeTodo contained TODO FIXME XXX NOTE
-" todo
-syn keyword quakeTodo contained TODO FIXME XXX NOTE
+syn region quakeComment display oneline start='//' end='$' end=';'
+ \ keepend contains=quakeTodo,@Spell
-" string (can contain numbers (which should be hilighted as such)
-syn region quakeString display oneline start=+"+ skip=+\\"+ end=+"\|$+ contains=quakeNumbers,@quakeCommands
+syn region quakeString display oneline start=+"+ skip=+\\\\\|\\"+
+ \ end=+"\|$+ contains=quakeNumbers,@quakeCommands
-" number
syn case ignore
-syn match quakeNumbers display transparent "\<\d\|\.\d" contains=quakeNumber,quakeFloat,quakeOctalError,quakeOctal
-syn match quakeNumber display contained "\d\+\>"
-" Flag the first zero of an octal number as something special
-syn match quakeOctal display contained "0\o\+\>" contains=quakeOctalZero
-syn match quakeOctalZero display contained "\<0"
-" floating point number, with dot
-syn match quakeFloat display contained "\d\+\.\d*"
-" floating point number, starting with a dot
-syn match quakeFloat display contained "\.\d\+\>"
-" flag an octal number with wrong digits
-syn match quakeOctalError display contained "0\o*[89]\d*"
-syn case match
-" commands
-syn case ignore
-syn cluster quakeCommands contains=quakeCommand,quake1Command,quake12Command,Quake2Command,Quake23Command,Quake3Command
-
-syn keyword quakeCommand +attack +back +forward +left +lookdown +lookup
-syn keyword quakeCommand +mlook +movedown +moveleft +moveright +moveup
-syn keyword quakeCommand +right +speed +strafe -attack -back bind
-syn keyword quakeCommand bindlist centerview clear connect cvarlist dir
-syn keyword quakeCommand disconnect dumpuser echo error exec -forward
-syn keyword quakeCommand god heartbeat joy_advancedupdate kick kill
-syn keyword quakeCommand killserver -left -lookdown -lookup map
-syn keyword quakeCommand messagemode messagemode2 -mlook modellist
-syn keyword quakeCommand -movedown -moveleft -moveright -moveup play
-syn keyword quakeCommand quit rcon reconnect record -right say say_team
-syn keyword quakeCommand screenshot serverinfo serverrecord serverstop
-syn keyword quakeCommand set sizedown sizeup snd_restart soundinfo
-syn keyword quakeCommand soundlist -speed spmap status -strafe stopsound
-syn keyword quakeCommand toggleconsole unbind unbindall userinfo pause
-syn keyword quakeCommand vid_restart viewpos wait weapnext weapprev
+syn match quakeNumbers display transparent '\<\d\|\.\d'
+ \ contains=quakeNumber,quakeFloat,
+ \ quakeOctalError,quakeOctal
+syn match quakeNumber contained display '\d\+\>'
+syn match quakeOctal contained display '0\o\+\>'
+ \ contains=quakeOctalZero
+syn match quakeOctalZero contained display '\<0'
+syn match quakeFloat contained display '\d\+\.\d*'
+syn match quakeFloat contained display '\.\d\+\>'
+syn match quakeOctalError contained display '0\o*[89]\d*'
+
+syn cluster quakeCommands contains=quakeCommand,quake1Command,
+ \ quake12Command,Quake2Command,Quake23Command,
+ \ Quake3Command
+
+syn keyword quakeCommand +attack +back +forward +left +lookdown +lookup
+syn keyword quakeCommand +mlook +movedown +moveleft +moveright +moveup
+syn keyword quakeCommand +right +speed +strafe -attack -back bind
+syn keyword quakeCommand bindlist centerview clear connect cvarlist dir
+syn keyword quakeCommand disconnect dumpuser echo error exec -forward
+syn keyword quakeCommand god heartbeat joy_advancedupdate kick kill
+syn keyword quakeCommand killserver -left -lookdown -lookup map
+syn keyword quakeCommand messagemode messagemode2 -mlook modellist
+syn keyword quakeCommand -movedown -moveleft -moveright -moveup play
+syn keyword quakeCommand quit rcon reconnect record -right say say_team
+syn keyword quakeCommand screenshot serverinfo serverrecord serverstop
+syn keyword quakeCommand set sizedown sizeup snd_restart soundinfo
+syn keyword quakeCommand soundlist -speed spmap status -strafe stopsound
+syn keyword quakeCommand toggleconsole unbind unbindall userinfo pause
+syn keyword quakeCommand vid_restart viewpos wait weapnext weapprev
if exists("quake_is_quake1")
-syn keyword quake1Command sv
+ syn keyword quake1Command sv
endif
if exists("quake_is_quake1") || exists("quake_is_quake2")
-syn keyword quake12Command +klook alias cd impulse link load save
-syn keyword quake12Command timerefresh changing info loading
-syn keyword quake12Command pingservers playerlist players score
+ syn keyword quake12Command +klook alias cd impulse link load save
+ syn keyword quake12Command timerefresh changing info loading
+ syn keyword quake12Command pingservers playerlist players score
endif
if exists("quake_is_quake2")
-syn keyword quake2Command cmd demomap +use condump download drop gamemap
-syn keyword quake2Command give gun_model setmaster sky sv_maplist wave
-syn keyword quake2Command cmdlist gameversiona gun_next gun_prev invdrop
-syn keyword quake2Command inven invnext invnextp invnextw invprev
-syn keyword quake2Command invprevp invprevw invuse menu_addressbook
-syn keyword quake2Command menu_credits menu_dmoptions menu_game
-syn keyword quake2Command menu_joinserver menu_keys menu_loadgame
-syn keyword quake2Command menu_main menu_multiplayer menu_options
-syn keyword quake2Command menu_playerconfig menu_quit menu_savegame
-syn keyword quake2Command menu_startserver menu_video
-syn keyword quake2Command notarget precache prog togglechat vid_front
-syn keyword quake2Command weaplast
+ syn keyword quake2Command cmd demomap +use condump download drop gamemap
+ syn keyword quake2Command give gun_model setmaster sky sv_maplist wave
+ syn keyword quake2Command cmdlist gameversiona gun_next gun_prev invdrop
+ syn keyword quake2Command inven invnext invnextp invnextw invprev
+ syn keyword quake2Command invprevp invprevw invuse menu_addressbook
+ syn keyword quake2Command menu_credits menu_dmoptions menu_game
+ syn keyword quake2Command menu_joinserver menu_keys menu_loadgame
+ syn keyword quake2Command menu_main menu_multiplayer menu_options
+ syn keyword quake2Command menu_playerconfig menu_quit menu_savegame
+ syn keyword quake2Command menu_startserver menu_video
+ syn keyword quake2Command notarget precache prog togglechat vid_front
+ syn keyword quake2Command weaplast
endif
+syn case match
+
if exists("quake_is_quake2") || exists("quake_is_quake3")
-syn keyword quake23Command imagelist modellist path z_stats
+ syn keyword quake23Command imagelist modellist path z_stats
endif
if exists("quake_is_quake3")
-syn keyword quake3Command +info +scores +zoom addbot arena banClient
-syn keyword quake3Command banUser callteamvote callvote changeVectors
-syn keyword quake3Command cinematic clientinfo clientkick cmd cmdlist
-syn keyword quake3Command condump configstrings crash cvar_restart devmap
-syn keyword quake3Command fdir follow freeze fs_openedList Fs_pureList
-syn keyword quake3Command Fs_referencedList gfxinfo globalservers
-syn keyword quake3Command hunk_stats in_restart -info levelshot
-syn keyword quake3Command loaddeferred localservers map_restart mem_info
-syn keyword quake3Command messagemode3 messagemode4 midiinfo model music
-syn keyword quake3Command modelist net_restart nextframe nextskin noclip
-syn keyword quake3Command notarget ping prevframe prevskin reset restart
-syn keyword quake3Command s_disable_a3d s_enable_a3d s_info s_list s_stop
-syn keyword quake3Command scanservers -scores screenshotJPEG sectorlist
-syn keyword quake3Command serverstatus seta setenv sets setu setviewpos
-syn keyword quake3Command shaderlist showip skinlist spdevmap startOribt
-syn keyword quake3Command stats stopdemo stoprecord systeminfo togglemenu
-syn keyword quake3Command tcmd team teamtask teamvote tell tell_attacker
-syn keyword quake3Command tell_target testgun testmodel testshader toggle
-syn keyword quake3Command touchFile vminfo vmprofile vmtest vosay
-syn keyword quake3Command vosay_team vote votell vsay vsay_team vstr
-syn keyword quake3Command vtaunt vtell vtell_attacker vtell_target weapon
-syn keyword quake3Command writeconfig -zoom
-syn match quake3Command display "\<[+-]button\(\d\|1[0-4]\)\>"
-endif
-
-syn case match
-
-" Define the default highlighting.
-" For version 5.7 and earlier: only when not done already
-" For version 5.8 and later: only when an item doesn't have highlighting yet
-if version >= 508 || !exists("did_screen_syn_inits")
- if version < 508
- let did_screen_syn_inits = 1
- command -nargs=+ HiLink hi link <args>
- else
- command -nargs=+ HiLink hi def link <args>
- endif
-
- HiLink quakeComment Comment
- HiLink quakeTodo Todo
- HiLink quakeString String
- HiLink quakeNumber Number
- HiLink quakeOctal Number
- HiLink quakeOctalZero Number
- HiLink quakeFloat Number
- HiLink quakeOctalError Error
- HiLink quakeCommand quakeCommands
- HiLink quake1Command quakeCommands
- HiLink quake12Command quakeCommands
- HiLink quake2Command quakeCommands
- HiLink quake23Command quakeCommands
- HiLink quake3Command quakeCommands
- HiLink quakeCommands Keyword
-
- delcommand HiLink
+ syn keyword quake3Command +info +scores +zoom addbot arena banClient
+ syn keyword quake3Command banUser callteamvote callvote changeVectors
+ syn keyword quake3Command cinematic clientinfo clientkick cmd cmdlist
+ syn keyword quake3Command condump configstrings crash cvar_restart devmap
+ syn keyword quake3Command fdir follow freeze fs_openedList Fs_pureList
+ syn keyword quake3Command Fs_referencedList gfxinfo globalservers
+ syn keyword quake3Command hunk_stats in_restart -info levelshot
+ syn keyword quake3Command loaddeferred localservers map_restart mem_info
+ syn keyword quake3Command messagemode3 messagemode4 midiinfo model music
+ syn keyword quake3Command modelist net_restart nextframe nextskin noclip
+ syn keyword quake3Command notarget ping prevframe prevskin reset restart
+ syn keyword quake3Command s_disable_a3d s_enable_a3d s_info s_list s_stop
+ syn keyword quake3Command scanservers -scores screenshotJPEG sectorlist
+ syn keyword quake3Command serverstatus seta setenv sets setu setviewpos
+ syn keyword quake3Command shaderlist showip skinlist spdevmap startOribt
+ syn keyword quake3Command stats stopdemo stoprecord systeminfo togglemenu
+ syn keyword quake3Command tcmd team teamtask teamvote tell tell_attacker
+ syn keyword quake3Command tell_target testgun testmodel testshader toggle
+ syn keyword quake3Command touchFile vminfo vmprofile vmtest vosay
+ syn keyword quake3Command vosay_team vote votell vsay vsay_team vstr
+ syn keyword quake3Command vtaunt vtell vtell_attacker vtell_target weapon
+ syn keyword quake3Command writeconfig -zoom
+ syn match quake3Command display "\<[+-]button\(\d\|1[0-4]\)\>"
endif
-" vim: set sts=2 sw=2:
+hi def link quakeComment Comment
+hi def link quakeTodo Todo
+hi def link quakeString String
+hi def link quakeNumber Number
+hi def link quakeOctal Number
+hi def link quakeOctalZero PreProc
+hi def link quakeFloat Number
+hi def link quakeOctalError Error
+hi def link quakeCommand quakeCommands
+hi def link quake1Command quakeCommands
+hi def link quake12Command quakeCommands
+hi def link quake2Command quakeCommands
+hi def link quake23Command quakeCommands
+hi def link quake3Command quakeCommands
+hi def link quakeCommands Keyword
+
+let b:current_syntax = "quake"
+
+let &cpo = s:cpo_save
+unlet s:cpo_save