home *** CD-ROM | disk | FTP | other *** search
/ vim.ftp.fu-berlin.de / 2015-02-03.vim.ftp.fu-berlin.de.tar / vim.ftp.fu-berlin.de / runtime / dos / syntax / quake.vim < prev    next >
Encoding:
Text File  |  2010-08-14  |  8.5 KB  |  171 lines

  1. " Vim syntax file
  2. " Language:         Quake[1-3] configuration file
  3. " Maintainer:       Nikolai Weibull <now@bitwi.se>
  4. " Latest Revision:  2007-06-17
  5. "               quake_is_quake1 - the syntax is to be used for quake1 configs
  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
  8. " Credits:          Tomasz Kalkosinski wrote the original quake3Colors stuff
  9.  
  10. if exists("b:current_syntax")
  11.   finish
  12. endif
  13.  
  14. let s:cpo_save = &cpo
  15. set cpo&vim
  16.  
  17. setlocal iskeyword+=-,+
  18.  
  19. syn keyword quakeTodo         contained TODO FIXME XXX NOTE
  20.  
  21. syn region  quakeComment      display oneline start='//' end='$' end=';'
  22.                               \ keepend contains=quakeTodo,@Spell
  23.  
  24. syn region  quakeString       display oneline start=+"+ skip=+\\\\\|\\"+
  25.                               \ end=+"\|$+ contains=quakeNumbers,
  26.                               \ @quakeCommands,@quake3Colors
  27.  
  28. syn case ignore
  29.  
  30. syn match quakeNumbers        display transparent '\<-\=\d\|\.\d'
  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\+\>'
  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
  43.  
  44. syn cluster quakeCommands     contains=quakeCommand,quake1Command,
  45.                               \ quake12Command,Quake2Command,Quake23Command,
  46.                               \ Quake3Command
  47.  
  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
  63.  
  64. if exists("quake_is_quake1")
  65.   syn keyword quake1Command   sv
  66. endif
  67.  
  68. if exists("quake_is_quake1") || exists("quake_is_quake2")
  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
  72. endif
  73.  
  74. if exists("quake_is_quake2")
  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
  87. endif
  88.  
  89. if exists("quake_is_quake2") || exists("quake_is_quake3")
  90.   syn keyword quake23Command  imagelist modellist path z_stats
  91. endif
  92.  
  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.  
  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.  
  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.  
  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.  
  167. let b:current_syntax = "quake"
  168.  
  169. let &cpo = s:cpo_save
  170. unlet s:cpo_save
  171.