xref: /vim-8.2.3635/runtime/syntax/mrxvtrc.vim (revision b8ff1fb5)
1" Description	: Vim syntax file for mrxvtrc (for mrxvt-0.5.0 and up)
2" Created	: Wed 26 Apr 2006 01:20:53 AM CDT
3" Modified	: Thu 02 Feb 2012 08:37:45 PM EST
4" Maintainer	: GI <[email protected]>, where a='gi1242+vim', b='gmail', c='com'
5
6" Quit when a syntax file was already loaded
7if exists("b:current_syntax")
8  finish
9endif
10
11let s:cpo_save = &cpo
12set cpo&vim
13
14syn case match
15
16" Errors
17syn match	mrxvtrcError	contained	'\v\S+'
18
19" Comments
20syn match	mrxvtrcComment	contains=@Spell '^\s*[!#].*$'
21syn match	mrxvtrcComment	'\v^\s*[#!]\s*\w+[.*]\w+.*:.*'
22
23"
24" Options.
25"
26syn match	mrxvtrcClass	'\v^\s*\w+[.*]'
27	    \ nextgroup=mrxvtrcOptions,mrxvtrcProfile,@mrxvtrcPOpts,mrxvtrcError
28
29" Boolean options
30syn keyword	mrxvtrcOptions	contained nextgroup=mrxvtrcBColon,mrxvtrcError
31				\ highlightTabOnBell syncTabTitle hideTabbar
32				\ autohideTabbar bottomTabbar hideButtons
33				\ syncTabIcon veryBoldFont maximized
34				\ fullscreen reverseVideo loginShell
35				\ jumpScroll scrollBar scrollbarRight
36				\ scrollbarFloating scrollTtyOutputInhibit
37				\ scrollTtyKeypress transparentForce
38				\ transparentScrollbar transparentMenubar
39				\ transparentTabbar tabUsePixmap utmpInhibit
40				\ visualBell mapAlert meta8
41				\ mouseWheelScrollPage multibyte_cursor
42				\ tripleclickwords showMenu xft xftNomFont
43				\ xftSlowOutput xftAntialias xftHinting
44				\ xftAutoHint xftGlobalAdvance cmdAllTabs
45				\ protectSecondary thai borderLess
46				\ overrideRedirect broadcast smartResize
47				\ pointerBlank cursorBlink noSysConfig
48				\ disableMacros linuxHomeEndKey sessionMgt
49				\ boldColors smoothResize useFifo veryBright
50syn match	mrxvtrcOptions	contained nextgroup=mrxvtrcBColon,mrxvtrcError
51				\ '\v<transparent>'
52syn match	mrxvtrcBColon	contained skipwhite
53				\ nextgroup=mrxvtrcBoolVal,mrxvtrcError ':'
54syn case ignore
55syn keyword	mrxvtrcBoolVal	contained skipwhite nextgroup=mrxvtrcError
56				\ 0 1 yes no on off true false
57syn case match
58
59" Color options
60syn keyword	mrxvtrcOptions	contained nextgroup=mrxvtrcCColon,mrxvtrcError
61				\ ufBackground textShadow tabForeground
62				\ itabForeground tabBackground itabBackground
63				\ scrollColor troughColor highlightColor
64				\ cursorColor cursorColor2 pointerColor
65				\ borderColor tintColor
66syn match	mrxvtrcOptions	contained nextgroup=mrxvtrcCColon,mrxvtrcError
67				\ '\v<color([0-9]|1[0-5]|BD|UL|RV)>'
68syn match	mrxvtrcCColon	contained skipwhite
69				\ nextgroup=mrxvtrcColorVal ':'
70syn match	mrxvtrcColorVal	contained skipwhite nextgroup=mrxvtrcError
71				\ '\v#[0-9a-fA-F]{6}'
72
73" Numeric options
74syn keyword	mrxvtrcOptions	contained nextgroup=mrxvtrcNColon,mrxvtrcError
75				\ maxTabWidth minVisibleTabs
76				\ scrollbarThickness xftmSize xftSize desktop
77				\ externalBorder internalBorder lineSpace
78				\ pointerBlankDelay cursorBlinkInterval
79				\ shading backgroundFade bgRefreshInterval
80				\ fading opacity opacityDegree xftPSize
81syn match	mrxvtrcNColon	contained skipwhite
82				\ nextgroup=mrxvtrcNumVal,mrxvtrcError ':'
83syn match	mrxvtrcNumVal	contained skipwhite nextgroup=mrxvtrcError
84				\ '\v[+-]?<(0[0-7]+|\d+|0x[0-9a-f]+)>'
85
86" String options
87syn keyword	mrxvtrcOptions	contained nextgroup=mrxvtrcSColon,mrxvtrcError
88				\ tabTitle termName title clientName iconName
89				\ bellCommand backspaceKey deleteKey
90				\ printPipe cutChars answerbackString
91				\ smClientID geometry path boldFont xftFont
92				\ xftmFont xftPFont inputMethod
93				\ greektoggle_key menu menubarPixmap
94				\ scrollbarPixmap tabbarPixmap appIcon
95				\ multichar_encoding initProfileList
96syn match	mrxvtrcOptions	contained nextgroup=mrxvtrcSColon,mrxvtrcError
97				\ '\v<m?font[1-5]?>'
98syn match	mrxvtrcSColon	contained skipwhite nextgroup=mrxvtrcStrVal ':'
99syn match	mrxvtrcStrVal	contained '\v\S.*'
100
101" Profile options
102syn cluster	mrxvtrcPOpts	contains=mrxvtrcPSOpts,mrxvtrcPCOpts,mrxvtrcPNOpts
103syn match	mrxvtrcProfile	contained nextgroup=@mrxvtrcPOpts,mrxvtrcError
104				\ '\vprofile\d+\.'
105syn keyword	mrxvtrcPSOpts	contained nextgroup=mrxvtrcSColon,mrxvtrcError
106				\ tabTitle command holdExitText holdExitTitle
107				\ Pixmap workingDirectory titleFormat
108				\ winTitleFormat
109syn keyword	mrxvtrcPCOpts	contained nextgroup=mrxvtrcCColon,mrxvtrcError
110				\ background foreground
111syn keyword	mrxvtrcPNOpts	contained nextgroup=mrxvtrcNColon,mrxvtrcError
112				\ holdExit saveLines
113
114" scrollbarStyle
115syn match	mrxvtrcOptions	contained skipwhite
116				\ nextgroup=mrxvtrcSBstyle,mrxvtrcError
117				\ '\v<scrollbarStyle:'
118syn keyword	mrxvtrcSBstyle	contained skipwhite nextgroup=mrxvtrcError
119				\ plain xterm rxvt next sgi
120
121" scrollbarAlign
122syn match	mrxvtrcOptions	contained skipwhite
123				\ nextgroup=mrxvtrcSBalign,mrxvtrcError
124				\ '\v<scrollbarAlign:'
125syn keyword	mrxvtrcSBalign	contained skipwhite nextgroup=mrxvtrcError
126				\ top bottom
127
128" textShadowMode
129syn match	mrxvtrcOptions	contained skipwhite
130				\ nextgroup=mrxvtrcTSmode,mrxvtrcError
131				\ '\v<textShadowMode:'
132syn keyword	mrxvtrcTSmode	contained skipwhite nextgroup=mrxvtrcError
133				\ none top bottom left right topleft topright
134				\ botleft botright
135
136" greek_keyboard
137syn match	mrxvtrcOptions	contained skipwhite
138				\ nextgroup=mrxvtrcGrkKbd,mrxvtrcError
139				\ '\v<greek_keyboard:'
140syn keyword	mrxvtrcGrkKbd	contained skipwhite nextgroup=mrxvtrcError
141				\ iso ibm
142
143" xftWeight
144syn match	mrxvtrcOptions	contained skipwhite
145				\ nextgroup=mrxvtrcXftWt,mrxvtrcError
146				\ '\v<(xftWeight|xftBoldWeight):'
147syn keyword	mrxvtrcXftWt	contained skipwhite nextgroup=mrxvtrcError
148				\ light medium demibold bold black
149
150" xftSlant
151syn match	mrxvtrcOptions	contained skipwhite
152				\ nextgroup=mrxvtrcXftSl,mrxvtrcError
153				\ '\v<xftSlant:'
154syn keyword	mrxvtrcXftSl	contained skipwhite nextgroup=mrxvtrcError
155				\ roman italic oblique
156
157" xftWidth
158syn match	mrxvtrcOptions	contained skipwhite
159				\ nextgroup=mrxvtrcXftWd,mrxvtrcError
160				\ '\v<xftWidth:'
161syn keyword	mrxvtrcXftWd	contained skipwhite nextgroup=mrxvtrcError
162				\ ultracondensed ultraexpanded
163				\ condensed expanded normal
164
165" xftRGBA
166syn match	mrxvtrcOptions	contained skipwhite
167				\ nextgroup=mrxvtrcXftHt,mrxvtrcError
168				\ '\v<xftRGBA:'
169syn keyword	mrxvtrcXftHt	contained skipwhite nextgroup=mrxvtrcError
170				\ rgb bgr vrgb vbgr none
171
172" preeditType
173syn match	mrxvtrcOptions	contained skipwhite
174				\ nextgroup=mrxvtrcPedit,mrxvtrcError
175				\ '\v<preeditType:'
176syn keyword	mrxvtrcPedit	contained skipwhite nextgroup=mrxvtrcError
177				\ OverTheSpot OffTheSpot Root
178
179" modifier
180syn match	mrxvtrcOptions	contained skipwhite
181				\ nextgroup=mrxvtrcMod,mrxvtrcError
182				\ '\v<modifier:'
183syn keyword	mrxvtrcMod	contained skipwhite nextgroup=mrxvtrcError
184				\ alt meta hyper super mod1 mod2 mod3 mod4 mod5
185
186" selectStyle
187syn match	mrxvtrcOptions	contained skipwhite
188				\ nextgroup=mrxvtrcSelSty,mrxvtrcError
189				\ '\v<selectStyle:'
190syn keyword	mrxvtrcSelSty	contained skipwhite nextgroup=mrxvtrcError
191				\ old oldword
192
193
194"
195" Macros
196"
197syn keyword	mrxvtrcOptions	contained nextgroup=mrxvtrcKey,mrxvtrcError
198				\ macro
199syn case ignore
200syn match	mrxvtrcKey	contained skipwhite
201			    \ nextgroup=mrxvtrcMacro,mrxvtrcError
202			    \ '\v\.((primary|add|ctrl|alt|meta|shift)\+)*\w+:'
203syn case match
204
205" Macros without arguments
206syn keyword	mrxvtrcMacro	contained skipwhite nextgroup=mrxvtrcError
207				\ Dummy Copy Paste ToggleVeryBold
208				\ ToggleTransparency ToggleBroadcast
209				\ ToggleHold SetTitle ToggleMacros
210				\ ToggleFullscreen Raise
211
212" Macros with a string argument
213syn keyword	mrxvtrcMacro	contained skipwhite nextgroup=mrxvtrcStrVal
214				\ Esc Str Exec Scroll PrintScreen SaveConfig
215
216" Macros with a numeric argument
217syn keyword	mrxvtrcMacro	contained skipwhite
218				\ nextgroup=mrxvtrcNumVal,mrxvtrcError
219				\ Close GotoTab MoveTab ResizeFont UseFifo
220
221" NewTab macro
222syn keyword	mrxvtrcMacro	contained skipwhite
223				\ nextgroup=mrxvtrcTitle,mrxvtrcShell,mrxvtrcCmd
224				\ NewTab
225syn region	mrxvtrcTitle	contained oneline skipwhite
226				\ nextgroup=mrxvtrcShell,mrxvtrcCmd
227				\ start='"' end='"'
228syn match	mrxvtrcShell	contained nextgroup=mrxvtrcCmd '!'
229syn match	mrxvtrcCmd	contained '\v[^!" \t].*'
230
231" ToggleSubwin macro
232syn keyword	mrxvtrcMacro	contained skipwhite
233				\ nextgroup=mrxvtrcSubwin,mrxvtrcError
234				\ ToggleSubwin
235syn match	mrxvtrcSubwin	contained skipwhite nextgroup=mrxvtrcError
236				\ '\v[-+]?[bmst]>'
237
238"
239" Highlighting groups
240"
241hi def link mrxvtrcError	Error
242hi def link mrxvtrcComment	Comment
243
244hi def link mrxvtrcClass	Statement
245hi def link mrxvtrcOptions	mrxvtrcClass
246hi def link mrxvtrcBColon	mrxvtrcClass
247hi def link mrxvtrcCColon	mrxvtrcClass
248hi def link mrxvtrcNColon	mrxvtrcClass
249hi def link mrxvtrcSColon	mrxvtrcClass
250hi def link mrxvtrcProfile	mrxvtrcClass
251hi def link mrxvtrcPSOpts	mrxvtrcClass
252hi def link mrxvtrcPCOpts	mrxvtrcClass
253hi def link mrxvtrcPNOpts	mrxvtrcClass
254
255hi def link mrxvtrcBoolVal	Boolean
256hi def link mrxvtrcStrVal	String
257hi def link mrxvtrcColorVal	Constant
258hi def link mrxvtrcNumVal	Number
259
260hi def link mrxvtrcSBstyle	mrxvtrcStrVal
261hi def link mrxvtrcSBalign	mrxvtrcStrVal
262hi def link mrxvtrcTSmode	mrxvtrcStrVal
263hi def link mrxvtrcGrkKbd	mrxvtrcStrVal
264hi def link mrxvtrcXftWt	mrxvtrcStrVal
265hi def link mrxvtrcXftSl	mrxvtrcStrVal
266hi def link mrxvtrcXftWd	mrxvtrcStrVal
267hi def link mrxvtrcXftHt	mrxvtrcStrVal
268hi def link mrxvtrcPedit	mrxvtrcStrVal
269hi def link mrxvtrcMod		mrxvtrcStrVal
270hi def link mrxvtrcSelSty	mrxvtrcStrVal
271
272hi def link mrxvtrcMacro	Identifier
273hi def link mrxvtrcKey		mrxvtrcClass
274hi def link mrxvtrcTitle	mrxvtrcStrVal
275hi def link mrxvtrcShell	Special
276hi def link mrxvtrcCmd		PreProc
277hi def link mrxvtrcSubwin	mrxvtrcStrVal
278
279let b:current_syntax = "mrxvtrc"
280
281let &cpo = s:cpo_save
282unlet s:cpo_save
283