summaryrefslogtreecommitdiffstats
path: root/runtime/syntax/mrxvtrc.vim
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/syntax/mrxvtrc.vim')
-rw-r--r--runtime/syntax/mrxvtrc.vim151
1 files changed, 151 insertions, 0 deletions
diff --git a/runtime/syntax/mrxvtrc.vim b/runtime/syntax/mrxvtrc.vim
new file mode 100644
index 0000000000..d3e3129317
--- /dev/null
+++ b/runtime/syntax/mrxvtrc.vim
@@ -0,0 +1,151 @@
+" 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"