1 " Created : Wed 26 Apr 2006 01:20:53 AM CDT
2 " Modified : Mon 20 Nov 2006 12:14:16 AM PST
3 " Author : Gautam Iyer <gi1242@users.sourceforge.net>
4 " Description : Vim syntax file for mrxvtrc (for mrxvt-0.5.0 and up)
6 " Quit when a syntax file was already loaded
7 if exists("b:current_syntax")
14 syn match mrxvtrcError contained '\v\S+'
17 syn match mrxvtrcComment contains=@Spell '^\s*[!#].*$'
18 syn match mrxvtrcComment '\v^\s*[#!]\s*\w+[.*]\w+.*:.*'
23 syn match mrxvtrcClass '\v^\s*\w+[.*]'
24 \ nextgroup=mrxvtrcOptions,mrxvtrcProfile,@mrxvtrcPOpts,mrxvtrcError
27 syn keyword mrxvtrcOptions contained nextgroup=mrxvtrcBColon,mrxvtrcError
28 \ highlightTabOnBell syncTabTitle hideTabbar
29 \ autohideTabbar bottomTabbar hideButtons
30 \ syncTabIcon veryBoldFont maximized
31 \ fullscreen reverseVideo loginShell
32 \ jumpScroll scrollBar scrollbarRight
33 \ scrollbarFloating scrollTtyOutputInhibit
34 \ scrollTtyKeypress scrollWithBuffer
35 \ transparentForce transparentScrollbar
36 \ transparentMenubar transparentTabbar
37 \ tabUsePixmap utmpInhibit visualBell mapAlert
38 \ meta8 mouseWheelScrollPage multibyte_cursor
39 \ tripleclickwords showMenu xft xftNomFont
40 \ xftSlowOutput xftAntialias xftHinting
41 \ xftAutoHint xftGlobalAdvance cmdAllTabs
42 \ protectSecondary thai borderLess
43 \ overrideRedirect broadcast
44 \ smartResize smoothResize pointerBlank
45 \ cursorBlink noSysConfig disableMacros
46 \ linuxHomeEndKey sessionMgt
47 syn match mrxvtrcOptions contained nextgroup=mrxvtrcBColon,mrxvtrcError
49 syn match mrxvtrcBColon contained skipwhite
50 \ nextgroup=mrxvtrcBoolVal,mrxvtrcError ':'
52 syn keyword mrxvtrcBoolVal contained skipwhite nextgroup=mrxvtrcError
53 \ 0 1 yes no on off true false
57 syn keyword mrxvtrcOptions contained nextgroup=mrxvtrcCColon,mrxvtrcError
58 \ ufBackground textShadow tabForeground
59 \ itabForeground tabBackground itabBackground
60 \ scrollColor troughColor highlightColor
61 \ cursorColor cursorColor2 pointerColor
62 \ borderColor tintColor
63 syn match mrxvtrcOptions contained nextgroup=mrxvtrcCColon,mrxvtrcError
64 \ '\v<color([0-9]|1[0-5]|BD|UL|RV)>'
65 syn match mrxvtrcCColon contained skipwhite
66 \ nextgroup=mrxvtrcColorVal ':'
67 syn match mrxvtrcColorVal contained skipwhite nextgroup=mrxvtrcError
71 syn keyword mrxvtrcOptions contained nextgroup=mrxvtrcNColon,mrxvtrcError
72 \ maxTabWidth minVisibleTabs
73 \ scrollbarThickness xftmSize xftSize desktop
74 \ externalBorder internalBorder lineSpace
75 \ pointerBlankDelay cursorBlinkInterval
76 \ shading backgroundFade bgRefreshInterval
77 \ fading focusDelay opacity opacityDegree
79 syn match mrxvtrcNColon contained skipwhite
80 \ nextgroup=mrxvtrcNumVal,mrxvtrcError ':'
81 syn match mrxvtrcNumVal contained skipwhite nextgroup=mrxvtrcError
82 \ '\v[+-]?<(0[0-7]+|\d+|0x[0-9a-f]+)>'
85 syn keyword mrxvtrcOptions contained nextgroup=mrxvtrcSColon,mrxvtrcError
86 \ tabTitle termName title clientName iconName
87 \ bellCommand backspaceKey deleteKey
88 \ printPipe cutChars answerbackString
89 \ smClientID geometry path boldFont xftFont
90 \ xftmFont xftPFont inputMethod
91 \ greektoggle_key menu menubarPixmap
92 \ scrollbarPixmap tabbarPixmap appIcon
93 \ multichar_encoding initProfileList
95 syn match mrxvtrcOptions contained nextgroup=mrxvtrcSColon,mrxvtrcError
97 syn match mrxvtrcSColon contained skipwhite nextgroup=mrxvtrcStrVal ':'
98 syn match mrxvtrcStrVal contained '\v\S.*'
101 syn cluster mrxvtrcPOpts contains=mrxvtrcPSOpts,mrxvtrcPCOpts,mrxvtrcPNOpts
102 syn match mrxvtrcProfile contained nextgroup=@mrxvtrcPOpts,mrxvtrcError
104 syn keyword mrxvtrcPSOpts contained nextgroup=mrxvtrcSColon,mrxvtrcError
105 \ tabTitle command holdExitText holdExitTitle
106 \ Pixmap workingDirectory titleFormat
107 syn keyword mrxvtrcPCOpts contained nextgroup=mrxvtrcCColon,mrxvtrcError
108 \ background foreground
109 syn keyword mrxvtrcPNOpts contained nextgroup=mrxvtrcNColon,mrxvtrcError
113 syn match mrxvtrcOptions contained skipwhite
114 \ nextgroup=mrxvtrcSBstyle,mrxvtrcError
115 \ '\v<scrollbarStyle:'
116 syn keyword mrxvtrcSBstyle contained skipwhite nextgroup=mrxvtrcError
117 \ plain xterm rxvt next sgi
120 syn match mrxvtrcOptions contained skipwhite
121 \ nextgroup=mrxvtrcSBalign,mrxvtrcError
122 \ '\v<scrollbarAlign:'
123 syn keyword mrxvtrcSBalign contained skipwhite nextgroup=mrxvtrcError
127 syn match mrxvtrcOptions contained skipwhite
128 \ nextgroup=mrxvtrcTSmode,mrxvtrcError
129 \ '\v<textShadowMode:'
130 syn keyword mrxvtrcTSmode contained skipwhite nextgroup=mrxvtrcError
131 \ none top bottom left right topleft topright
135 syn match mrxvtrcOptions contained skipwhite
136 \ nextgroup=mrxvtrcGrkKbd,mrxvtrcError
137 \ '\v<greek_keyboard:'
138 syn keyword mrxvtrcGrkKbd contained skipwhite nextgroup=mrxvtrcError
142 syn match mrxvtrcOptions contained skipwhite
143 \ nextgroup=mrxvtrcXftWt,mrxvtrcError
144 \ '\v<(xftWeight|xftBoldWeight):'
145 syn keyword mrxvtrcXftWt contained skipwhite nextgroup=mrxvtrcError
146 \ light medium demibold bold black
149 syn match mrxvtrcOptions contained skipwhite
150 \ nextgroup=mrxvtrcXftSl,mrxvtrcError
152 syn keyword mrxvtrcXftSl contained skipwhite nextgroup=mrxvtrcError
153 \ roman italic oblique
156 syn match mrxvtrcOptions contained skipwhite
157 \ nextgroup=mrxvtrcXftWd,mrxvtrcError
159 syn keyword mrxvtrcXftWd contained skipwhite nextgroup=mrxvtrcError
160 \ ultracondensed ultraexpanded
161 \ condensed expanded normal
164 syn match mrxvtrcOptions contained skipwhite
165 \ nextgroup=mrxvtrcXftHt,mrxvtrcError
167 syn keyword mrxvtrcXftHt contained skipwhite nextgroup=mrxvtrcError
168 \ rgb bgr vrgb vbgr none
171 syn match mrxvtrcOptions contained skipwhite
172 \ nextgroup=mrxvtrcPedit,mrxvtrcError
174 syn keyword mrxvtrcPedit contained skipwhite nextgroup=mrxvtrcError
175 \ OverTheSpot OffTheSpot Root
178 syn match mrxvtrcOptions contained skipwhite
179 \ nextgroup=mrxvtrcMod,mrxvtrcError
181 syn keyword mrxvtrcMod contained skipwhite nextgroup=mrxvtrcError
182 \ alt meta hyper super mod1 mod2 mod3 mod4 mod5
185 syn match mrxvtrcOptions contained skipwhite
186 \ nextgroup=mrxvtrcSelSty,mrxvtrcError
188 syn keyword mrxvtrcSelSty contained skipwhite nextgroup=mrxvtrcError
195 syn keyword mrxvtrcOptions contained nextgroup=mrxvtrcKey,mrxvtrcError
198 syn match mrxvtrcKey contained skipwhite
199 \ nextgroup=mrxvtrcMacro,mrxvtrcError
200 \ '\v\.((primary|add|ctrl|alt|meta|shift)\+)*\w+:'
203 " Macros without arguments
204 syn keyword mrxvtrcMacro contained skipwhite nextgroup=mrxvtrcError
205 \ Dummy Copy Paste ToggleVeryBold
206 \ ToggleTransparency ToggleBroadcast
207 \ ToggleHold SetTitle ToggleMacros
210 " Macros with a string argument
211 syn keyword mrxvtrcMacro contained skipwhite nextgroup=mrxvtrcStrVal
212 \ Esc Str Exec Scroll PrintScreen SaveConfig
214 " Macros with a numeric argument
215 syn keyword mrxvtrcMacro contained skipwhite
216 \ nextgroup=mrxvtrcNumVal,mrxvtrcError
217 \ Close GotoTab MoveTab ResizeFont
220 syn keyword mrxvtrcMacro contained skipwhite
221 \ nextgroup=mrxvtrcTitle,mrxvtrcShell,mrxvtrcCmd
223 syn region mrxvtrcTitle contained oneline skipwhite
224 \ nextgroup=mrxvtrcShell,mrxvtrcCmd
226 syn match mrxvtrcShell contained nextgroup=mrxvtrcCmd '!'
227 syn match mrxvtrcCmd contained '\v[^!" \t].*'
230 syn keyword mrxvtrcMacro contained skipwhite
231 \ nextgroup=mrxvtrcSubwin,mrxvtrcError
233 syn match mrxvtrcSubwin contained skipwhite nextgroup=mrxvtrcError
237 " Highlighting groups
239 hi def link mrxvtrcError Error
240 hi def link mrxvtrcComment Comment
242 hi def link mrxvtrcClass Statement
243 hi def link mrxvtrcOptions mrxvtrcClass
244 hi def link mrxvtrcBColon mrxvtrcClass
245 hi def link mrxvtrcCColon mrxvtrcClass
246 hi def link mrxvtrcNColon mrxvtrcClass
247 hi def link mrxvtrcSColon mrxvtrcClass
248 hi def link mrxvtrcProfile mrxvtrcClass
249 hi def link mrxvtrcPSOpts mrxvtrcClass
250 hi def link mrxvtrcPCOpts mrxvtrcClass
251 hi def link mrxvtrcPNOpts mrxvtrcClass
253 hi def link mrxvtrcBoolVal Boolean
254 hi def link mrxvtrcStrVal String
255 hi def link mrxvtrcColorVal Constant
256 hi def link mrxvtrcNumVal Number
258 hi def link mrxvtrcSBstyle mrxvtrcStrVal
259 hi def link mrxvtrcSBalign mrxvtrcStrVal
260 hi def link mrxvtrcTSmode mrxvtrcStrVal
261 hi def link mrxvtrcGrkKbd mrxvtrcStrVal
262 hi def link mrxvtrcXftWt mrxvtrcStrVal
263 hi def link mrxvtrcXftSl mrxvtrcStrVal
264 hi def link mrxvtrcXftWd mrxvtrcStrVal
265 hi def link mrxvtrcXftHt mrxvtrcStrVal
266 hi def link mrxvtrcPedit mrxvtrcStrVal
267 hi def link mrxvtrcMod mrxvtrcStrVal
268 hi def link mrxvtrcSelSty mrxvtrcStrVal
270 hi def link mrxvtrcMacro Identifier
271 hi def link mrxvtrcKey mrxvtrcClass
272 hi def link mrxvtrcTitle mrxvtrcStrVal
273 hi def link mrxvtrcShell Special
274 hi def link mrxvtrcCmd PreProc
275 hi def link mrxvtrcSubwin mrxvtrcStrVal
277 let b:current_syntax = "mrxvtrc"