mirror of
https://github.com/vim/vim.git
synced 2025-07-24 10:45:12 -04:00
152 lines
6.2 KiB
VimL
152 lines
6.2 KiB
VimL
|
" Created : Wed 26 Apr 2006 01:20:53 AM CDT
|
||
|
" Modified : Thu 27 Apr 2006 02:29:25 PM CDT
|
||
|
" Author : Gautam Iyer <gi1242@users.sourceforge.net>
|
||
|
" Description : Syntax file for mrxvtrc
|
||
|
|
||
|
" Quit when a syntax file was already loaded
|
||
|
if exists("b:current_syntax")
|
||
|
finish
|
||
|
endif
|
||
|
|
||
|
" Define options.
|
||
|
let s:boolOpts = '(highlightTabOnBell|syncTabTitle|hideTabbar|autohideTabbar|bottomTabbar|hideButtons|syncTabIcon|veryBoldFont|maximized|fullscreen|reverseVideo|loginShell|jumpScroll|scrollBar|scrollbarRight|scrollbarFloating|scrollTtyOutputInhibit|scrollTtyKeypress|scrollWithBuffer|transparent|transparentForce|transparentScrollbar|transparentMenubar|transparentTabbar|tabUsePixmap|utmpInhibit|visualBell|mapAlert|meta8|mouseWheelScrollPage|multibyte_cursor|tripleclickwords|showMenu|xft|xftNomFont|xftSlowOutput|xftAntialias|xftHinting|xftAutoHint|xftGlobalAdvance|tabShell|cmdAllTabs|cmdInitTabs|protectSecondary|thai|borderLess|overrideRedirect|holdExit|broadcast|smartResize|smoothResize|pointerBlank|cursorBlink|noSysConfig|disableMacros|linuxHomeEndKey|sessionMgt)'
|
||
|
|
||
|
let s:colorOpts = '(vt\d+.(foreground|background)|background|foreground|ufBackground|textShadow|i?tab(Foreground|Background)|color([0-9]|1[0-5]|BD|UL|RV)|(scroll|trough|highlight|cursor|pointer|border|tint)Color|cursorColor2)'
|
||
|
|
||
|
let s:numOpts = '(vt\d+.saveLines|maxTabWidth|minVisibleTabs|saveLines|scrollbarThickness|xftmSize|xftSize|desktop|externalBorder|internalBorder|lineSpace|pointerBlankDelay|cursorBlinkInterval|initTermNumber|shading|backgroundFade|bgRefreshInterval|fading|opacity|opacityDegree|xftPSize)'
|
||
|
|
||
|
let s:strOpts = '(vt\d+\.(tabTitle|command)|tabTitle|termName|title|clientName|iconName|bellCommand|holdExitText|backspaceKey|deleteKey|printPipe|cutChars|answerbackString|smClientID|geometry|confFileSave|path|boldFont|m?font[1-5]?|xftFont|xftmFont|xftPFont|inputMethod|greektoggle_key|menu|menubarPixmap|vt\d+\.Pixmap|Pixmap|scrollbarPixmap|tabbarPixmap|appIcon|multichar_encoding)'
|
||
|
|
||
|
syn case match
|
||
|
|
||
|
syn match mrxvtrcComment contains=@Spell '^\s*!.*$'
|
||
|
syn match mrxvtrcComment '\v^\s*!\s*\w+[.*]\w+.*:.*'
|
||
|
|
||
|
"
|
||
|
" Generic options (string / color / number / boolean)
|
||
|
"
|
||
|
syn match mrxvtrcOptErr '\v^\s*\w+[.*]?.{-}(:|$)'
|
||
|
exec 'syn match mrxvtrcBoolOpts nextgroup=mrxvtrcBoolVal,mrxvtrcValErr'
|
||
|
\ '"\v^\w+[.*]'.s:boolOpts.':\s*"'
|
||
|
exec 'syn match mrxvtrcNumOpts nextgroup=mrxvtrcNumVal,mrxvtrcValErr'
|
||
|
\ '"\v^\w+[.*]'.s:numOpts.':\s*"'
|
||
|
exec 'syn match mrxvtrcColorOpts nextgroup=mrxvtrcColorVal'
|
||
|
\ '"\v^\w+[.*]'.s:colorOpts.':\s*"'
|
||
|
exec 'syn match mrxvtrcStrOpts nextgroup=mrxvtrcStrVal,mrxvtrcValErr'
|
||
|
\ '"\v^\w+[.*]'.s:strOpts.':\s*"'
|
||
|
|
||
|
syn case ignore
|
||
|
|
||
|
syn match mrxvtrcValErr contained '\v.+$'
|
||
|
syn keyword mrxvtrcBoolVal contained 0 1 yes no on off true false
|
||
|
syn match mrxvtrcStrVal contained '\v.+$'
|
||
|
syn match mrxvtrcColorVal contained '\v#[0-9a-f]{6}\s*$'
|
||
|
syn match mrxvtrcNumVal contained '\v[+-]?(0[0-7]+|\d+|0x[0-9a-f]+)$'
|
||
|
|
||
|
syn case match
|
||
|
|
||
|
"
|
||
|
" Options with special values
|
||
|
"
|
||
|
syn match mrxvtrcOptions nextgroup=mrxvtrcSBstyle,mrxvtrcValErr
|
||
|
\ '\v^\w+[.*]scrollbarStyle:\s*'
|
||
|
syn keyword mrxvtrcSBstyle contained plain xterm rxvt next sgi
|
||
|
|
||
|
syn match mrxvtrcOptions nextgroup=mrxvtrcSBalign,mrxvtrcValErr
|
||
|
\ '\v^\w+[.*]scrollbarAlign:\s*'
|
||
|
syn keyword mrxvtrcSBalign contained top bottom
|
||
|
|
||
|
syn match mrxvtrcOptions nextgroup=mrxvtrcTSmode,mrxvtrcValErr
|
||
|
\ '\v^\w+[.*]textShadowMode:\s*'
|
||
|
syn keyword mrxvtrcTSmode contained
|
||
|
\ none top bottom left right topleft topright
|
||
|
\ botleft botright
|
||
|
|
||
|
syn match mrxvtrcOptions nextgroup=mrxvtrcGrkKbd,mrxvtrcValErr
|
||
|
\ '\v^\w+[.*]greek_keyboard:\s*'
|
||
|
syn keyword mrxvtrcGrkKbd contained iso ibm
|
||
|
|
||
|
syn match mrxvtrcOptions nextgroup=mrxvtrcXftWt,mrxvtrcValErr
|
||
|
\ '\v^\w+[.*]xftWeight:\s*'
|
||
|
syn keyword mrxvtrcXftWt contained light medium bold
|
||
|
|
||
|
syn match mrxvtrcOptions nextgroup=mrxvtrcXftSl,mrxvtrcValErr
|
||
|
\ '\v^\w+[.*]xftSlant:\s*'
|
||
|
syn keyword mrxvtrcXftSl contained roman italic oblique
|
||
|
|
||
|
syn match mrxvtrcOptions nextgroup=mrxvtrcXftWd,mrxvtrcValErr
|
||
|
\ '\v^\w+[.*]xftWidth:\s*'
|
||
|
syn keyword mrxvtrcXftWd contained
|
||
|
\ ultracondensed ultraexpanded
|
||
|
\ condensed expanded normal
|
||
|
|
||
|
syn match mrxvtrcOptions nextgroup=mrxvtrcXftHt,mrxvtrcValErr
|
||
|
\ '\v^\w+[.*]xftRGBA:\s*'
|
||
|
syn keyword mrxvtrcXftHt contained rgb bgr vrgb vbgr none
|
||
|
|
||
|
syn match mrxvtrcOptions nextgroup=mrxvtrcPedit,mrxvtrcValErr
|
||
|
\ '\v^\w+[.*]preeditType:\s*'
|
||
|
syn keyword mrxvtrcPedit contained OverTheSpot OffTheSpot Root
|
||
|
|
||
|
syn match mrxvtrcOptions nextgroup=mrxvtrcMod,mrxvtrcValErr
|
||
|
\ '\v^\w+[.*]modifier:\s*'
|
||
|
syn keyword mrxvtrcMod contained
|
||
|
\ alt meta hyper super mod1 mod2 mod3 mod4 mod5
|
||
|
|
||
|
syn match mrxvtrcOptions nextgroup=mrxvtrcSelSty,mrxvtrcValErr
|
||
|
\ '\v^\w+[.*]selectStyle:\s*'
|
||
|
syn keyword mrxvtrcSelSty contained old oldword
|
||
|
|
||
|
|
||
|
"
|
||
|
" Macros
|
||
|
"
|
||
|
syn match mrxvtrcOptions nextgroup=mrxvtrcMacro,mrxvtrcValErr
|
||
|
\ '\v\c^\w+[.*]macro.(primary\+)?((ctrl|alt|meta|shift)\+)*\w+:\s*'
|
||
|
syn keyword mrxvtrcMacro contained nextgroup=mrxvtrcMacroArg
|
||
|
\ Dummy Esc Str NewTab Close GotoTab MoveTab
|
||
|
\ Scroll Copy Paste ToggleSubwin ResizeFont
|
||
|
\ ToggleVeryBold ToggleTransparency
|
||
|
\ ToggleBroadcast ToggleHold SetTitle
|
||
|
\ PrintScreen SaveConfig ToggleMacros
|
||
|
syn match mrxvtrcMacroArg contained '.\+$'
|
||
|
|
||
|
|
||
|
unlet s:strOpts s:boolOpts s:colorOpts s:numOpts
|
||
|
|
||
|
"
|
||
|
" Highlighting groups
|
||
|
"
|
||
|
hi def link mrxvtrcComment Comment
|
||
|
|
||
|
hi def link mrxvtrcBoolOpts Statement
|
||
|
hi def link mrxvtrcColorOpts mrxvtrcBoolOpts
|
||
|
hi def link mrxvtrcNumOpts mrxvtrcBoolOpts
|
||
|
hi def link mrxvtrcStrOpts mrxvtrcBoolOpts
|
||
|
hi def link mrxvtrcOptions mrxvtrcBoolOpts
|
||
|
|
||
|
hi def link mrxvtrcBoolVal Boolean
|
||
|
hi def link mrxvtrcStrVal String
|
||
|
hi def link mrxvtrcColorVal Constant
|
||
|
hi def link mrxvtrcNumVal Number
|
||
|
|
||
|
hi def link mrxvtrcSBstyle mrxvtrcStrVal
|
||
|
hi def link mrxvtrcSBalign mrxvtrcStrVal
|
||
|
hi def link mrxvtrcTSmode mrxvtrcStrVal
|
||
|
hi def link mrxvtrcGrkKbd mrxvtrcStrVal
|
||
|
hi def link mrxvtrcXftWt mrxvtrcStrVal
|
||
|
hi def link mrxvtrcXftSl mrxvtrcStrVal
|
||
|
hi def link mrxvtrcXftWd mrxvtrcStrVal
|
||
|
hi def link mrxvtrcXftHt mrxvtrcStrVal
|
||
|
hi def link mrxvtrcPedit mrxvtrcStrVal
|
||
|
hi def link mrxvtrcMod mrxvtrcStrVal
|
||
|
hi def link mrxvtrcSelSty mrxvtrcStrVal
|
||
|
|
||
|
hi def link mrxvtrcMacro Identifier
|
||
|
hi def link mrxvtrcMacroArg String
|
||
|
|
||
|
hi def link mrxvtrcOptErr Error
|
||
|
hi def link mrxvtrcValErr Error
|
||
|
|
||
|
let b:current_syntax = "mrxvtrc"
|