blob: d86f8e42aeb742020f3bc041a791b8f4b24d8c29 [file] [log] [blame]
Bram Moolenaar437df8f2006-04-27 21:47:44 +00001" Created : Wed 26 Apr 2006 01:20:53 AM CDT
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00002" Modified : Mon 20 Nov 2006 12:14:16 AM PST
Bram Moolenaar437df8f2006-04-27 21:47:44 +00003" Author : Gautam Iyer <gi1242@users.sourceforge.net>
Bram Moolenaarc81e5e72007-05-05 18:24:42 +00004" Description : Vim syntax file for mrxvtrc (for mrxvt-0.5.0 and up)
Bram Moolenaar437df8f2006-04-27 21:47:44 +00005
6" Quit when a syntax file was already loaded
7if exists("b:current_syntax")
8 finish
9endif
10
Bram Moolenaar437df8f2006-04-27 21:47:44 +000011syn case match
12
Bram Moolenaarc81e5e72007-05-05 18:24:42 +000013" Errors
14syn match mrxvtrcError contained '\v\S+'
15
16" Comments
17syn match mrxvtrcComment contains=@Spell '^\s*[!#].*$'
18syn match mrxvtrcComment '\v^\s*[#!]\s*\w+[.*]\w+.*:.*'
Bram Moolenaar437df8f2006-04-27 21:47:44 +000019
20"
Bram Moolenaarc81e5e72007-05-05 18:24:42 +000021" Options.
Bram Moolenaar437df8f2006-04-27 21:47:44 +000022"
Bram Moolenaarc81e5e72007-05-05 18:24:42 +000023syn match mrxvtrcClass '\v^\s*\w+[.*]'
24 \ nextgroup=mrxvtrcOptions,mrxvtrcProfile,@mrxvtrcPOpts,mrxvtrcError
Bram Moolenaar437df8f2006-04-27 21:47:44 +000025
Bram Moolenaarc81e5e72007-05-05 18:24:42 +000026" Boolean options
27syn 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
47syn match mrxvtrcOptions contained nextgroup=mrxvtrcBColon,mrxvtrcError
48 \ '\v<transparent>'
49syn match mrxvtrcBColon contained skipwhite
50 \ nextgroup=mrxvtrcBoolVal,mrxvtrcError ':'
Bram Moolenaar437df8f2006-04-27 21:47:44 +000051syn case ignore
Bram Moolenaarc81e5e72007-05-05 18:24:42 +000052syn keyword mrxvtrcBoolVal contained skipwhite nextgroup=mrxvtrcError
53 \ 0 1 yes no on off true false
Bram Moolenaar437df8f2006-04-27 21:47:44 +000054syn case match
55
Bram Moolenaarc81e5e72007-05-05 18:24:42 +000056" Color options
57syn 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
63syn match mrxvtrcOptions contained nextgroup=mrxvtrcCColon,mrxvtrcError
64 \ '\v<color([0-9]|1[0-5]|BD|UL|RV)>'
65syn match mrxvtrcCColon contained skipwhite
66 \ nextgroup=mrxvtrcColorVal ':'
67syn match mrxvtrcColorVal contained skipwhite nextgroup=mrxvtrcError
68 \ '\v#[0-9a-fA-F]{6}'
Bram Moolenaar437df8f2006-04-27 21:47:44 +000069
Bram Moolenaarc81e5e72007-05-05 18:24:42 +000070" Numeric options
71syn 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
78 \ xftPSize
79syn match mrxvtrcNColon contained skipwhite
80 \ nextgroup=mrxvtrcNumVal,mrxvtrcError ':'
81syn match mrxvtrcNumVal contained skipwhite nextgroup=mrxvtrcError
82 \ '\v[+-]?<(0[0-7]+|\d+|0x[0-9a-f]+)>'
Bram Moolenaar437df8f2006-04-27 21:47:44 +000083
Bram Moolenaarc81e5e72007-05-05 18:24:42 +000084" String options
85syn 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
94 \ winTitleFormat
95syn match mrxvtrcOptions contained nextgroup=mrxvtrcSColon,mrxvtrcError
96 \ '\v<m?font[1-5]?>'
97syn match mrxvtrcSColon contained skipwhite nextgroup=mrxvtrcStrVal ':'
98syn match mrxvtrcStrVal contained '\v\S.*'
99
100" Profile options
101syn cluster mrxvtrcPOpts contains=mrxvtrcPSOpts,mrxvtrcPCOpts,mrxvtrcPNOpts
102syn match mrxvtrcProfile contained nextgroup=@mrxvtrcPOpts,mrxvtrcError
103 \ '\vprofile\d+\.'
104syn keyword mrxvtrcPSOpts contained nextgroup=mrxvtrcSColon,mrxvtrcError
105 \ tabTitle command holdExitText holdExitTitle
106 \ Pixmap workingDirectory titleFormat
107syn keyword mrxvtrcPCOpts contained nextgroup=mrxvtrcCColon,mrxvtrcError
108 \ background foreground
109syn keyword mrxvtrcPNOpts contained nextgroup=mrxvtrcNColon,mrxvtrcError
110 \ holdExit saveLines
111
112" scrollbarStyle
113syn match mrxvtrcOptions contained skipwhite
114 \ nextgroup=mrxvtrcSBstyle,mrxvtrcError
115 \ '\v<scrollbarStyle:'
116syn keyword mrxvtrcSBstyle contained skipwhite nextgroup=mrxvtrcError
117 \ plain xterm rxvt next sgi
118
119" scrollbarAlign
120syn match mrxvtrcOptions contained skipwhite
121 \ nextgroup=mrxvtrcSBalign,mrxvtrcError
122 \ '\v<scrollbarAlign:'
123syn keyword mrxvtrcSBalign contained skipwhite nextgroup=mrxvtrcError
124 \ top bottom
125
126" textShadowMode
127syn match mrxvtrcOptions contained skipwhite
128 \ nextgroup=mrxvtrcTSmode,mrxvtrcError
129 \ '\v<textShadowMode:'
130syn keyword mrxvtrcTSmode contained skipwhite nextgroup=mrxvtrcError
Bram Moolenaar437df8f2006-04-27 21:47:44 +0000131 \ none top bottom left right topleft topright
132 \ botleft botright
133
Bram Moolenaarc81e5e72007-05-05 18:24:42 +0000134" greek_keyboard
135syn match mrxvtrcOptions contained skipwhite
136 \ nextgroup=mrxvtrcGrkKbd,mrxvtrcError
137 \ '\v<greek_keyboard:'
138syn keyword mrxvtrcGrkKbd contained skipwhite nextgroup=mrxvtrcError
139 \ iso ibm
Bram Moolenaar437df8f2006-04-27 21:47:44 +0000140
Bram Moolenaarc81e5e72007-05-05 18:24:42 +0000141" xftWeight
142syn match mrxvtrcOptions contained skipwhite
143 \ nextgroup=mrxvtrcXftWt,mrxvtrcError
144 \ '\v<(xftWeight|xftBoldWeight):'
145syn keyword mrxvtrcXftWt contained skipwhite nextgroup=mrxvtrcError
146 \ light medium demibold bold black
Bram Moolenaar437df8f2006-04-27 21:47:44 +0000147
Bram Moolenaarc81e5e72007-05-05 18:24:42 +0000148" xftSlant
149syn match mrxvtrcOptions contained skipwhite
150 \ nextgroup=mrxvtrcXftSl,mrxvtrcError
151 \ '\v<xftSlant:'
152syn keyword mrxvtrcXftSl contained skipwhite nextgroup=mrxvtrcError
153 \ roman italic oblique
Bram Moolenaar437df8f2006-04-27 21:47:44 +0000154
Bram Moolenaarc81e5e72007-05-05 18:24:42 +0000155" xftWidth
156syn match mrxvtrcOptions contained skipwhite
157 \ nextgroup=mrxvtrcXftWd,mrxvtrcError
158 \ '\v<xftWidth:'
159syn keyword mrxvtrcXftWd contained skipwhite nextgroup=mrxvtrcError
Bram Moolenaar437df8f2006-04-27 21:47:44 +0000160 \ ultracondensed ultraexpanded
161 \ condensed expanded normal
162
Bram Moolenaarc81e5e72007-05-05 18:24:42 +0000163" xftRGBA
164syn match mrxvtrcOptions contained skipwhite
165 \ nextgroup=mrxvtrcXftHt,mrxvtrcError
166 \ '\v<xftRGBA:'
167syn keyword mrxvtrcXftHt contained skipwhite nextgroup=mrxvtrcError
168 \ rgb bgr vrgb vbgr none
Bram Moolenaar437df8f2006-04-27 21:47:44 +0000169
Bram Moolenaarc81e5e72007-05-05 18:24:42 +0000170" preeditType
171syn match mrxvtrcOptions contained skipwhite
172 \ nextgroup=mrxvtrcPedit,mrxvtrcError
173 \ '\v<preeditType:'
174syn keyword mrxvtrcPedit contained skipwhite nextgroup=mrxvtrcError
175 \ OverTheSpot OffTheSpot Root
Bram Moolenaar437df8f2006-04-27 21:47:44 +0000176
Bram Moolenaarc81e5e72007-05-05 18:24:42 +0000177" modifier
178syn match mrxvtrcOptions contained skipwhite
179 \ nextgroup=mrxvtrcMod,mrxvtrcError
180 \ '\v<modifier:'
181syn keyword mrxvtrcMod contained skipwhite nextgroup=mrxvtrcError
Bram Moolenaar437df8f2006-04-27 21:47:44 +0000182 \ alt meta hyper super mod1 mod2 mod3 mod4 mod5
183
Bram Moolenaarc81e5e72007-05-05 18:24:42 +0000184" selectStyle
185syn match mrxvtrcOptions contained skipwhite
186 \ nextgroup=mrxvtrcSelSty,mrxvtrcError
187 \ '\v<selectStyle:'
188syn keyword mrxvtrcSelSty contained skipwhite nextgroup=mrxvtrcError
189 \ old oldword
Bram Moolenaar437df8f2006-04-27 21:47:44 +0000190
191
192"
193" Macros
194"
Bram Moolenaarc81e5e72007-05-05 18:24:42 +0000195syn keyword mrxvtrcOptions contained nextgroup=mrxvtrcKey,mrxvtrcError
196 \ macro
197syn case ignore
198syn match mrxvtrcKey contained skipwhite
199 \ nextgroup=mrxvtrcMacro,mrxvtrcError
200 \ '\v\.((primary|add|ctrl|alt|meta|shift)\+)*\w+:'
201syn case match
Bram Moolenaar437df8f2006-04-27 21:47:44 +0000202
Bram Moolenaarc81e5e72007-05-05 18:24:42 +0000203" Macros without arguments
204syn keyword mrxvtrcMacro contained skipwhite nextgroup=mrxvtrcError
205 \ Dummy Copy Paste ToggleVeryBold
206 \ ToggleTransparency ToggleBroadcast
207 \ ToggleHold SetTitle ToggleMacros
208 \ ToggleFullscreen
Bram Moolenaar437df8f2006-04-27 21:47:44 +0000209
Bram Moolenaarc81e5e72007-05-05 18:24:42 +0000210" Macros with a string argument
211syn keyword mrxvtrcMacro contained skipwhite nextgroup=mrxvtrcStrVal
212 \ Esc Str Exec Scroll PrintScreen SaveConfig
213
214" Macros with a numeric argument
215syn keyword mrxvtrcMacro contained skipwhite
216 \ nextgroup=mrxvtrcNumVal,mrxvtrcError
217 \ Close GotoTab MoveTab ResizeFont
218
219" NewTab macro
220syn keyword mrxvtrcMacro contained skipwhite
221 \ nextgroup=mrxvtrcTitle,mrxvtrcShell,mrxvtrcCmd
222 \ NewTab
223syn region mrxvtrcTitle contained oneline skipwhite
224 \ nextgroup=mrxvtrcShell,mrxvtrcCmd
225 \ start='"' end='"'
226syn match mrxvtrcShell contained nextgroup=mrxvtrcCmd '!'
227syn match mrxvtrcCmd contained '\v[^!" \t].*'
228
229" ToggleSubwin macro
230syn keyword mrxvtrcMacro contained skipwhite
231 \ nextgroup=mrxvtrcSubwin,mrxvtrcError
232 \ ToggleSubwin
233syn match mrxvtrcSubwin contained skipwhite nextgroup=mrxvtrcError
234 \ '\v[-+]?[bmst]>'
Bram Moolenaar437df8f2006-04-27 21:47:44 +0000235
236"
237" Highlighting groups
238"
Bram Moolenaarc81e5e72007-05-05 18:24:42 +0000239hi def link mrxvtrcError Error
Bram Moolenaar437df8f2006-04-27 21:47:44 +0000240hi def link mrxvtrcComment Comment
241
Bram Moolenaarc81e5e72007-05-05 18:24:42 +0000242hi def link mrxvtrcClass Statement
243hi def link mrxvtrcOptions mrxvtrcClass
244hi def link mrxvtrcBColon mrxvtrcClass
245hi def link mrxvtrcCColon mrxvtrcClass
246hi def link mrxvtrcNColon mrxvtrcClass
247hi def link mrxvtrcSColon mrxvtrcClass
248hi def link mrxvtrcProfile mrxvtrcClass
249hi def link mrxvtrcPSOpts mrxvtrcClass
250hi def link mrxvtrcPCOpts mrxvtrcClass
251hi def link mrxvtrcPNOpts mrxvtrcClass
Bram Moolenaar437df8f2006-04-27 21:47:44 +0000252
253hi def link mrxvtrcBoolVal Boolean
254hi def link mrxvtrcStrVal String
255hi def link mrxvtrcColorVal Constant
256hi def link mrxvtrcNumVal Number
257
258hi def link mrxvtrcSBstyle mrxvtrcStrVal
259hi def link mrxvtrcSBalign mrxvtrcStrVal
260hi def link mrxvtrcTSmode mrxvtrcStrVal
261hi def link mrxvtrcGrkKbd mrxvtrcStrVal
262hi def link mrxvtrcXftWt mrxvtrcStrVal
263hi def link mrxvtrcXftSl mrxvtrcStrVal
264hi def link mrxvtrcXftWd mrxvtrcStrVal
265hi def link mrxvtrcXftHt mrxvtrcStrVal
266hi def link mrxvtrcPedit mrxvtrcStrVal
267hi def link mrxvtrcMod mrxvtrcStrVal
268hi def link mrxvtrcSelSty mrxvtrcStrVal
269
270hi def link mrxvtrcMacro Identifier
Bram Moolenaarc81e5e72007-05-05 18:24:42 +0000271hi def link mrxvtrcKey mrxvtrcClass
272hi def link mrxvtrcTitle mrxvtrcStrVal
273hi def link mrxvtrcShell Special
274hi def link mrxvtrcCmd PreProc
275hi def link mrxvtrcSubwin mrxvtrcStrVal
Bram Moolenaar437df8f2006-04-27 21:47:44 +0000276
277let b:current_syntax = "mrxvtrc"