summaryrefslogtreecommitdiffstats
path: root/runtime/syntax/cmusrc.vim
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/syntax/cmusrc.vim')
-rw-r--r--runtime/syntax/cmusrc.vim309
1 files changed, 309 insertions, 0 deletions
diff --git a/runtime/syntax/cmusrc.vim b/runtime/syntax/cmusrc.vim
new file mode 100644
index 0000000..b821aff
--- /dev/null
+++ b/runtime/syntax/cmusrc.vim
@@ -0,0 +1,309 @@
+" Vim syntax file
+" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
+" Latest Revision: 2007-06-17
+
+if exists("b:current_syntax")
+ finish
+endif
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+setlocal iskeyword+=-
+
+syn keyword cmusrcTodo contained TODO FIXME XXX NOTE
+
+syn match cmusrcComment contained display '^\s*#.*$'
+
+syn match cmusrcBegin display '^'
+ \ nextgroup=cmusrcKeyword,cmusrcComment
+ \ skipwhite
+
+syn keyword cmusrcKeyword contained add
+ \ nextgroup=cmusrcAddSwitches,cmusrcURI
+ \ skipwhite
+
+syn match cmusrcAddSwitches contained display '-[lpqQ]'
+ \ nextgroup=cmusrcURI
+ \ skipwhite
+
+syn match cmusrcURI contained display '.\+'
+
+syn keyword cmusrcKeyword contained bind
+ \ nextgroup=cmusrcBindSwitches,
+ \ cmusrcBindContext
+ \ skipwhite
+
+syn match cmusrcBindSwitches contained display '-[f]'
+ \ nextgroup=cmusrcBindContext
+ \ skipwhite
+
+syn keyword cmusrcBindContext contained common library playlist queue
+ \ browser filters
+ \ nextgroup=cmusrcBindKey
+ \ skipwhite
+
+syn match cmusrcBindKey contained display '\S\+'
+ \ nextgroup=cmusrcKeyword
+ \ skipwhite
+
+syn keyword cmusrcKeyword contained browser-up colorscheme echo factivate
+ \ filter invert player-next player-pause
+ \ player-play player-prev player-stop quit
+ \ refresh run search-next search-prev shuffle
+ \ unmark win-activate win-add-l win-add-p
+ \ win-add-Q win-add-q win-bottom win-down
+ \ win-mv-after win-mv-before win-next
+ \ win-page-down win-page-up win-remove
+ \ win-sel-cur win-toggle win-top win-up
+ \ win-update
+
+syn keyword cmusrcKeyword contained cd
+ \ nextgroup=cmusrcDirectory
+ \ skipwhite
+
+syn match cmusrcDirectory contained display '.\+'
+
+syn keyword cmusrcKeyword contained clear
+ \ nextgroup=cmusrcClearSwitches
+
+syn match cmusrcClearSwitches contained display '-[lpq]'
+
+syn keyword cmusrcKeyword contained fset
+ \ nextgroup=cmusrcFSetName
+ \ skipwhite
+
+syn match cmusrcFSetName contained display '[^=]\+'
+ \ nextgroup=cmusrcFSetEq
+
+syn match cmusrcFSetEq contained display '='
+ \ nextgroup=cmusrcFilterExpr
+
+syn match cmusrcFilterExpr contained display '.\+'
+
+syn keyword cmusrcKeyword contained load
+ \ nextgroup=cmusrcLoadSwitches,cmusrcURI
+ \ skipwhite
+
+syn match cmusrcLoadSwitches contained display '-[lp]'
+ \ nextgroup=cmusrcURI
+ \ skipwhite
+
+syn keyword cmusrcKeyword contained mark
+ \ nextgroup=cmusrcFilterExpr
+
+syn keyword cmusrcKeyword contained save
+ \ nextgroup=cmusrcSaveSwitches,cmusrcFile
+ \ skipwhite
+
+syn match cmusrcSaveSwitches contained display '-[lp]'
+ \ nextgroup=cmusrcFile
+ \ skipwhite
+
+syn match cmusrcFile contained display '.\+'
+
+syn keyword cmusrcKeyword contained seek
+ \ nextgroup=cmusrcSeekOffset
+ \ skipwhite
+
+syn match cmusrcSeekOffset contained display
+ \ '[+-]\=\%(\d\+[mh]\=\|\%(\%(0\=\d\|[1-5]\d\):\)\=\%(0\=\d\|[1-5]\d\):\%(0\=\d\|[1-5]\d\)\)'
+
+syn keyword cmusrcKeyword contained set
+ \ nextgroup=cmusrcOption
+ \ skipwhite
+
+syn keyword cmusrcOption contained auto_reshuffle confirm_run
+ \ continue play_library play_sorted repeat
+ \ show_hidden show_remaining_time shuffle
+ \ nextgroup=cmusrcSetTest,cmusrcOptEqBoolean
+
+syn match cmusrcSetTest contained display '?'
+
+syn match cmusrcOptEqBoolean contained display '='
+ \ nextgroup=cmusrcOptBoolean
+
+syn keyword cmusrcOptBoolean contained true false
+
+syn keyword cmusrcOption contained aaa_mode
+ \ nextgroup=cmusrcOptEqAAA
+
+syn match cmusrcOptEqAAA contained display '='
+ \ nextgroup=cmusrcOptAAA
+
+syn keyword cmusrcOptAAA contained all artist album
+
+syn keyword cmusrcOption contained buffer_seconds
+ \ nextgroup=cmusrcOptEqNumber
+
+syn match cmusrcOptEqNumber contained display '='
+ \ nextgroup=cmusrcOptNumber
+
+syn match cmusrcOptNumber contained display '\d\+'
+
+syn keyword cmusrcOption contained altformat_current altformat_playlist
+ \ altformat_title altformat_trackwin
+ \ format_current format_playlist format_title
+ \ format_trackwin
+ \ nextgroup=cmusrcOptEqFormat
+
+syn match cmusrcOptEqFormat contained display '='
+ \ nextgroup=cmusrcOptFormat
+
+syn match cmusrcOptFormat contained display '.\+'
+ \ contains=cmusrcFormatSpecial
+
+syn match cmusrcFormatSpecial contained display '%[0-]*\d*[alDntgydfF=%]'
+
+syn keyword cmusrcOption contained color_cmdline_bg color_cmdline_fg
+ \ color_error color_info color_separator
+ \ color_statusline_bg color_statusline_fg
+ \ color_titleline_bg color_titleline_fg
+ \ color_win_bg color_win_cur
+ \ color_win_cur_sel_bg color_win_cur_sel_fg
+ \ color_win_dir color_win_fg
+ \ color_win_inactive_cur_sel_bg
+ \ color_win_inactive_cur_sel_fg
+ \ color_win_inactive_sel_bg
+ \ color_win_inactive_sel_fg
+ \ color_win_sel_bg color_win_sel_fg
+ \ color_win_title_bg color_win_title_fg
+ \ nextgroup=cmusrcOptEqColor
+
+syn match cmusrcOptEqColor contained display '='
+ \ nextgroup=@cmusrcOptColor
+
+syn cluster cmusrcOptColor contains=cmusrcOptColorName,cmusrcOptColorValue
+
+syn keyword cmusrcOptColorName contained default black red green yellow blue
+ \ magenta cyan gray darkgray lightred lightred
+ \ lightgreen lightyellow lightblue lightmagenta
+ \ lightcyan white
+
+syn match cmusrcOptColorValue contained display
+ \ '-1\|0*\%(\d\|[1-9]\d\|1\d\d\|2\%([0-4]\d\|5[0-5]\)\)'
+
+syn keyword cmusrcOption contained id3_default_charset output_plugin
+ \ status_display_program
+ \ nextgroup=cmusrcOptEqString
+
+syn match cmusrcOption contained
+ \ '\%(dsp\|mixer\)\.\%(alsa\|oss\|sun\)\.\%(channel\|device\)'
+ \ nextgroup=cmusrcOptEqString
+
+syn match cmusrcOption contained
+ \ 'dsp\.ao\.\%(buffer_size\|driver\|wav_counter\|wav_dir\)'
+ \ nextgroup=cmusrcOptEqString
+
+syn match cmusrcOptEqString contained display '='
+ \ nextgroup=cmusrcOptString
+
+syn match cmusrcOptString contained display '.\+'
+
+syn keyword cmusrcOption contained lib_sort pl_sort
+ \ nextgroup=cmusrcOptEqSortKeys
+
+syn match cmusrcOptEqSortKeys contained display '='
+ \ nextgroup=cmusrcOptSortKeys
+
+syn keyword cmusrcOptSortKeys contained artist album title tracknumber
+ \ discnumber date genre filename
+ \ nextgroup=cmusrcOptSortKeys
+ \ skipwhite
+
+syn keyword cmusrcKeyword contained showbind
+ \ nextgroup=cmusrcSBindContext
+ \ skipwhite
+
+syn keyword cmusrcSBindContext contained common library playlist queue
+ \ browser filters
+ \ nextgroup=cmusrcSBindKey
+ \ skipwhite
+
+syn match cmusrcSBindKey contained display '\S\+'
+
+syn keyword cmusrcKeyword contained toggle
+ \ nextgroup=cmusrcTogglableOpt
+ \ skipwhite
+
+syn keyword cmusrcTogglableOpt contained auto_reshuffle aaa_mode
+ \ confirm_run continue play_library play_sorted
+ \ repeat show_hidden show_remaining_time shuffle
+
+syn keyword cmusrcKeyword contained unbind
+ \ nextgroup=cmusrcUnbindSwitches,
+ \ cmusrcSBindContext
+ \ skipwhite
+
+syn match cmusrcUnbindSwitches contained display '-[f]'
+ \ nextgroup=cmusrcSBindContext
+ \ skipwhite
+
+syn keyword cmusrcKeyword contained view
+ \ nextgroup=cmusrcView
+ \ skipwhite
+
+syn keyword cmusrcView contained library playlist queue browser filters
+syn match cmusrcView contained display '[1-6]'
+
+syn keyword cmusrcKeyword contained vol
+ \ nextgroup=cmusrcVolume1
+ \ skipwhite
+
+syn match cmusrcVolume1 contained display '[+-]\=\d\+%'
+ \ nextgroup=cmusrcVolume2
+ \ skipwhite
+
+syn match cmusrcVolume2 contained display '[+-]\=\d\+%'
+
+hi def link cmusrcTodo Todo
+hi def link cmusrcComment Comment
+hi def link cmusrcKeyword Keyword
+hi def link cmusrcSwitches Special
+hi def link cmusrcAddSwitches cmusrcSwitches
+hi def link cmusrcURI Normal
+hi def link cmusrcBindSwitches cmusrcSwitches
+hi def link cmusrcContext Type
+hi def link cmusrcBindContext cmusrcContext
+hi def link cmusrcKey String
+hi def link cmusrcBindKey cmusrcKey
+hi def link cmusrcDirectory Normal
+hi def link cmusrcClearSwitches cmusrcSwitches
+hi def link cmusrcFSetName PreProc
+hi def link cmusrcEq Normal
+hi def link cmusrcFSetEq cmusrcEq
+hi def link cmusrcFilterExpr Normal
+hi def link cmusrcLoadSwitches cmusrcSwitches
+hi def link cmusrcSaveSwitches cmusrcSwitches
+hi def link cmusrcFile Normal
+hi def link cmusrcSeekOffset Number
+hi def link cmusrcOption PreProc
+hi def link cmusrcSetTest Normal
+hi def link cmusrcOptBoolean Boolean
+hi def link cmusrcOptEqAAA cmusrcEq
+hi def link cmusrcOptAAA Identifier
+hi def link cmusrcOptEqNumber cmusrcEq
+hi def link cmusrcOptNumber Number
+hi def link cmusrcOptEqFormat cmusrcEq
+hi def link cmusrcOptFormat String
+hi def link cmusrcFormatSpecial SpecialChar
+hi def link cmusrcOptEqColor cmusrcEq
+hi def link cmusrcOptColor Normal
+hi def link cmusrcOptColorName cmusrcOptColor
+hi def link cmusrcOptColorValue cmusrcOptColor
+hi def link cmusrcOptEqString cmusrcEq
+hi def link cmusrcOptString Normal
+hi def link cmusrcOptEqSortKeys cmusrcEq
+hi def link cmusrcOptSortKeys Identifier
+hi def link cmusrcSBindContext cmusrcContext
+hi def link cmusrcSBindKey cmusrcKey
+hi def link cmusrcTogglableOpt cmusrcOption
+hi def link cmusrcUnbindSwitches cmusrcSwitches
+hi def link cmusrcView Normal
+hi def link cmusrcVolume1 Number
+hi def link cmusrcVolume2 Number
+
+let b:current_syntax = "cmusrc"
+
+let &cpo = s:cpo_save
+unlet s:cpo_save