1" Vim syntax file 2" Language: Fvwm{1,2} configuration file 3" Maintainer: Gautam Iyer <[email protected]> 4" Previous Maintainer: Haakon Riiser <[email protected]> 5" Last Change: Sat 04 Nov 2006 11:28:37 PM PST 6" 7" Thanks to David Necas (Yeti) for adding Fvwm 2.4 support. 8" 9" 2006-05-09 gi1242: Rewrote fvwm2 syntax completely. Also since fvwm1 is now 10" mostly obsolete, made the syntax file pick fvwm2 syntax by default. 11 12if exists("b:current_syntax") 13 finish 14endif 15 16" Fvwm configuration files are case insensitive 17syn case ignore 18 19" Identifiers in Fvwm can contain most characters, so we only 20" include the most common ones here. 21setlocal iskeyword=_,-,+,.,a-z,A-Z,48-57 22 23" Syntax items common to fvwm1 and fvwm2 config files 24syn cluster fvwmConstants contains=fvwmEnvVar,fvwmNumber 25syn match fvwmEnvVar "\$\w\+" 26syn match fvwmNumber '\v<(\d+|0x[0-9a-f]+)>' 27 28syn match fvwmModConf nextgroup=fvwmModArg "\v^\s*\*\a+" 29syn region fvwmModArg contained contains=fvwmString,fvwmRGBValue 30 \ start='.' skip='\\$' end='$' 31 32syn region fvwmString contains=fvwmBackslash start='"' 33 \ matchgroup=fvwmBackslash skip='\v\\"' end='"' 34syn region fvwmString contains=fvwmBackslash start='`' 35 \ matchgroup=fvwmBackslash skip='\v\\`' end='`' 36syn region fvwmString contains=fvwmBackslash start="'" 37 \ matchgroup=fvwmBackslash skip="\v\\'" end="'" 38syn match fvwmBackslash contained '\\[^"'`]' 39 40syn match fvwmRGBValue "#\x\{3}" 41syn match fvwmRGBValue "#\x\{6}" 42syn match fvwmRGBValue "#\x\{9}" 43syn match fvwmRGBValue "#\x\{12}" 44syn match fvwmRGBValue "rgb:\x\{1,4}/\x\{1,4}/\x\{1,4}" 45 46syn region fvwmComment contains=@Spell start="^\s*#" skip='\\$' end='$' 47 48if (exists("b:fvwm_version") && b:fvwm_version == 1) 49 \ || (exists("use_fvwm_1") && use_fvwm_1) 50 51 " 52 " Syntax highlighting for Fvwm1 files. 53 " 54 55 " Moved from common syntax items 56 syn match fvwmModule "\<Module\s\+\w\+"he=s+6 57 syn keyword fvwmExec Exec 58 syn match fvwmPath "\<IconPath\s.*$"lc=8 contains=fvwmEnvVar 59 syn match fvwmPath "\<ModulePath\s.*$"lc=10 contains=fvwmEnvVar 60 syn match fvwmPath "\<PixmapPath\s.*$"lc=10 contains=fvwmEnvVar 61 syn match fvwmKey "\<Key\s\+\w\+"he=s+3 62 63 " fvwm1 specific items 64 syn match fvwmEnvVar "\$(\w\+)" 65 syn match fvwmWhitespace contained "\s\+" 66 syn region fvwmStyle oneline keepend 67 \ contains=fvwmString,fvwmKeyword,fvwmWhiteSpace 68 \ matchgroup=fvwmFunction 69 \ start="^\s*Style\>"hs=e-5 end="$" 70 71 syn keyword fvwmFunction AppsBackingStore AutoRaise BackingStore Beep 72 \ BoundaryWidth ButtonStyle CenterOnCirculate 73 \ CirculateDown CirculateHit CirculateSkip 74 \ CirculateSkipIcons CirculateUp ClickTime 75 \ ClickToFocus Close Cursor CursorMove 76 \ DecorateTransients Delete Desk DeskTopScale 77 \ DeskTopSize Destroy DontMoveOff 78 \ EdgeResistance EdgeScroll EndFunction 79 \ EndMenu EndPopup Focus Font Function 80 \ GotoPage HiBackColor HiForeColor Icon 81 \ IconBox IconFont Iconify IconPath Key 82 \ Lenience Lower Maximize MenuBackColor 83 \ MenuForeColor MenuStippleColor Module 84 \ ModulePath Mouse Move MWMBorders MWMButtons 85 \ MWMDecorHints MWMFunctionHints 86 \ MWMHintOverride MWMMenus NoBorder 87 \ NoBoundaryWidth Nop NoPPosition NoTitle 88 \ OpaqueMove OpaqueResize Pager PagerBackColor 89 \ PagerFont PagerForeColor PagingDefault 90 \ PixmapPath Popup Quit Raise RaiseLower 91 \ RandomPlacement Refresh Resize Restart 92 \ SaveUnders Scroll SloppyFocus SmartPlacement 93 \ StartsOnDesk StaysOnTop StdBackColor 94 \ StdForeColor Stick Sticky StickyBackColor 95 \ StickyForeColor StickyIcons 96 \ StubbornIconPlacement StubbornIcons 97 \ StubbornPlacement SuppressIcons Title 98 \ TogglePage Wait Warp WindowFont WindowList 99 \ WindowListSkip WindowsDesk WindowShade 100 \ XORvalue 101 102 " These keywords are only used after the "Style" command. To avoid 103 " name collision with several commands, they are contained. 104 syn keyword fvwmKeyword contained 105 \ BackColor BorderWidth BoundaryWidth Button 106 \ CirculateHit CirculateSkip Color DoubleClick 107 \ ForeColor Handles HandleWidth Icon IconTitle 108 \ NoBorder NoBoundaryWidth NoButton NoHandles 109 \ NoIcon NoIconTitle NoTitle Slippery 110 \ StartIconic StartNormal StartsAnyWhere 111 \ StartsOnDesk StaysOnTop StaysPut Sticky 112 \ Title WindowListHit WindowListSkip 113 114" elseif (exists("b:fvwm_version") && b:fvwm_version == 2) 115" \ || (exists("use_fvwm_2") && use_fvwm_2) 116else 117 118 " 119 " Syntax highlighting for fvwm2 files. 120 " 121 syn match fvwmEnvVar "\${\w\+}" 122 syn match fvwmEnvVar "\$\[[^]]\+\]" 123 syn match fvwmEnvVar "\$[$0-9*]" 124 125 syn match fvwmDef contains=fvwmMenuString,fvwmWhitespace 126 \ '^\s*+\s*".\{-}"' 127 syn region fvwmMenuString contains=fvwmIcon,fvwmShortcutKey 128 \ start='^\s*+\s*\zs"' skip='\v\\\\|\\\"' end='"' 129 syn region fvwmIcon contained start='\v\%\%@!' end='%' 130 syn match fvwmShortcutKey contained "&." 131 132 syn keyword fvwmModuleName FvwmAnimate FvwmAudio FvwmAuto FvwmBacker 133 \ FvwmBanner FvwmButtons FvwmCommandS 134 \ FvwmConsole FvwmCpp FvwmDebug FvwmDragWell 135 \ FvwmEvent FvwmForm FvwmGtk FvwmIconBox 136 \ FvwmIconMan FvwmIdent FvwmM4 FvwmPager 137 \ FvwmSave FvwmSaveDesk FvwmScript FvwmScroll 138 \ FvwmTaskBar FvwmWinList FvwmWharf 139 " Obsolete fvwmModuleName: FvwmTheme 140 141 syn keyword fvwmKeyword AddToMenu ChangeMenuStyle CopyMenuStyle 142 \ DestroyMenu DestroyMenuStyle Menu 143 \ Popup TearMenuOff Title BugOpts BusyCursor 144 \ ClickTime ColorLimit ColormapFocus 145 \ DefaultColors DefaultColorset DefaultFont 146 \ DefaultIcon DefaultLayers Deschedule Emulate 147 \ EscapeFunc FakeClick FakeKeypress GlobalOpts 148 \ HilightColor HilightColorset IconFont 149 \ PrintInfo Repeat Schedule State WindowFont 150 \ XSync XSynchronize AnimatedMove 151 \ HideGeometryWindow Layer Lower Move 152 \ MoveToDesk MoveThreshold MoveToPage 153 \ MoveToScreen OpaqueMoveSize PlaceAgain Raise 154 \ RaiseLower ResizeMaximize ResizeMove 155 \ ResizeMoveMaximize RestackTransients 156 \ SetAnimation SnapAttraction SnapGrid 157 \ WindowsDesk XorPixmap XorValue CursorMove 158 \ FlipFocus Focus WarpToWindow Close Delete 159 \ Destroy Iconify Recapture RecaptureWindow 160 \ Refresh RefreshWindow Stick StickAcrossPages 161 \ StickAcrossDesks WindowShade 162 \ WindowShadeAnimate IgnoreModifiers 163 \ EdgeCommand EdgeLeaveCommand GnomeButton 164 \ Stroke StrokeFunc FocusStyle DestroyStyle 165 \ UpdateStyles AddToDecor BorderStyle 166 \ ChangeDecor DestroyDecor UpdateDecor 167 \ DesktopName DeskTopSize EdgeResistance 168 \ EdgeScroll EdgeThickness EwmhBaseStruts 169 \ EWMHNumberOfDesktops GotoDeskAndPage 170 \ GotoPage Scroll Xinerama 171 \ XineramaPrimaryScreen XineramaSls 172 \ XineramaSlsSize XineramaSlsScreens AddToFunc 173 \ Beep DestroyFunc Echo Exec ExecUseShell 174 \ Function Nop PipeRead Read SetEnv Silent 175 \ UnsetEnv Wait DestroyModuleConfig KillModule 176 \ Module ModuleSynchronous ModuleTimeout 177 \ SendToModule Quit QuitScreen QuitSession 178 \ Restart SaveSession SaveQuitSession KeepRc 179 \ NoWindow Break CleanupColorsets 180 181 " Conditional commands 182 syn keyword fvwmKeyword nextgroup=fvwmCondition skipwhite 183 \ All Any Current Next None Pick PointerWindow 184 \ Prev ThisWindow 185 syn keyword fvwmKeyword nextgroup=fvwmDirection skipwhite 186 \ Direction 187 syn keyword fvwmDirection contained nextgroup=fvwmDirection skipwhite 188 \ FromPointer 189 syn keyword fvwmDirection contained nextgroup=fvwmCondition skipwhite 190 \ North Northeast East Southeast South 191 \ Southwest West Northwest Center 192 syn region fvwmCondition contained contains=fvwmCondNames,fvwmString 193 \ matchgroup=fvwmKeyword start='(' skip=',' 194 \ end=')' 195 syn keyword fvwmCondNames contained 196 \ AcceptsFocus AnyScreen CirculateHit 197 \ CirculateHitIcon CirculateHitShaded Closable 198 \ CurrentDesk CurrentGlobalPage 199 \ CurrentGlobalPageAnyDesk CurrentPage 200 \ CurrentPageAnyDesk CurrentScreen FixedSize 201 \ Focused HasHandles HasPointer Iconic 202 \ Iconifiable Maximizable Maximized 203 \ Overlapped PlacedByButton3 PlacedByFvwm Raised 204 \ Shaded Sticky StickyAcrossDesks 205 \ StickyAcrossPages Transient Visible 206 syn keyword fvwmCondNames contained skipwhite nextgroup=@fvwmConstants 207 \ State Layer 208 209 " Test 210 syn keyword fvwmKeyword nextgroup=fvwmTCond skipwhite 211 \ Test 212 syn region fvwmTCond contained contains=fvwmTCNames,fvwmString 213 \ matchgroup=fvwmKeyword start='(' end=')' 214 syn keyword fvwmTCNames contained 215 \ Version EnvIsSet EnvMatch EdgeHasPointer 216 \ EdgeIsActive Start Init Restart Exit Quit 217 \ ToRestart True False F R W X I 218 219 " TestRc 220 syn keyword fvwmKeyword nextgroup=fvwmTRCond skipwhite 221 \ TestRc 222 syn region fvwmTRCond contained contains=fvwmTRNames,fvwmNumber 223 \ matchgroup=fvwmKeyword start='(' end=')' 224 syn keyword fvwmTRNames contained NoMatch Match Error Break 225 226 " Colorsets 227 syn keyword fvwmKeyword nextgroup=fvwmCSArgs skipwhite 228 \ ColorSet 229 syn region fvwmCSArgs contained transparent contains=fvwmCSNames,@fvwmConstants,fvwmString,fvwmRGBValue,fvwmGradient 230 \ start='.' skip='\\$' end='$' 231 syn keyword fvwmCSNames contained 232 \ fg Fore Foreground bg Back Background hi 233 \ Hilite Hilight sh Shade Shadow fgsh Pixmap 234 \ TiledPixmap AspectPixmap RootTransparent 235 \ Shape TiledShape AspectShape Tint fgTint 236 \ bgTint Alpha fgAlpha Dither IconTint 237 \ IconAlpha NoShape Plain Translucent 238 syn match fvwmCSNames contained '\v<Transparent>' 239 syn match fvwmGradient contained '\v<[HVDBSCRY]Gradient>' 240 241 " Styles 242 syn keyword fvwmKeyword nextgroup=fvwmStyleArgs skipwhite 243 \ Style WindowStyle 244 syn region fvwmStyleArgs contained transparent contains=fvwmStyleNames,@fvwmConstants,fvwmString,fvwmRGBValue 245 \ start='.' skip='\\$' end='$' 246 syn keyword fvwmStyleNames contained 247 \ BorderWidth HandleWidth NoIcon Icon MiniIcon 248 \ IconBox IconGrid IconFill IconSize NoTitle 249 \ Title TitleAtBottom TitleAtLeft TitleAtRight 250 \ TitleAtTop LeftTitleRotatedCW 251 \ LeftTitleRotatedCCW RightTitleRotatedCCW 252 \ RightTitleRotatedCW TopTitleRotated 253 \ TopTitleNotRotated BottomTitleRotated 254 \ BottomTitleNotRotated UseTitleDecorRotation 255 \ StippledTitle StippledTitleOff 256 \ IndexedWindowName ExactWindowName 257 \ IndexedIconName ExactIconName Borders 258 \ NoHandles Handles WindowListSkip 259 \ WindowListHit CirculateSkip CirculateHit 260 \ CirculateSkipShaded CirculateHitShaded Layer 261 \ StaysOnTop StaysOnBottom StaysPut Sticky 262 \ Slippery StickyAcrossPages StickyAcrossDesks 263 \ StartIconic StartNormal Color ForeColor 264 \ BackColor Colorset HilightFore HilightBack 265 \ HilightColorset BorderColorset 266 \ HilightBorderColorset IconTitleColorset 267 \ HilightIconTitleColorset 268 \ IconBackgroundColorset IconTitleRelief 269 \ IconBackgroundRelief IconBackgroundPadding 270 \ Font IconFont StartsOnDesk StartsOnPage 271 \ StartsAnyWhere StartsOnScreen 272 \ ManualPlacementHonorsStartsOnPage 273 \ ManualPlacementIgnoresStartsOnPage 274 \ CaptureHonorsStartsOnPage 275 \ CaptureIgnoresStartsOnPage 276 \ RecaptureHonorsStartsOnPage 277 \ RecaptureIgnoresStartsOnPage 278 \ StartsOnPageIncludesTransients 279 \ StartsOnPageIgnoresTransients IconTitle 280 \ NoIconTitle MwmButtons FvwmButtons MwmBorder 281 \ FvwmBorder MwmDecor NoDecorHint MwmFunctions 282 \ NoFuncHint HintOverride NoOverride NoButton 283 \ Button ResizeHintOverride NoResizeOverride 284 \ OLDecor NoOLDecor GNOMEUseHints 285 \ GNOMEIgnoreHints StickyIcon SlipperyIcon 286 \ StickyAcrossPagesIcon StickyAcrossDesksIcon 287 \ ManualPlacement CascadePlacement 288 \ MinOverlapPlacement 289 \ MinOverlapPercentPlacement 290 \ TileManualPlacement TileCascadePlacement 291 \ CenterPlacement MinOverlapPlacementPenalties 292 \ MinOverlapPercentPlacementPenalties 293 \ DecorateTransient NakedTransient 294 \ DontRaiseTransient RaiseTransient 295 \ DontLowerTransient LowerTransient 296 \ DontStackTransientParent 297 \ StackTransientParent SkipMapping ShowMapping 298 \ ScatterWindowGroups KeepWindowGroupsOnDesk 299 \ UseDecor UseStyle NoPPosition UsePPosition 300 \ NoUSPosition UseUSPosition 301 \ NoTransientPPosition UseTransientPPosition 302 \ NoTransientUSPosition UseTransientUSPosition 303 \ NoIconPosition UseIconPosition Lenience 304 \ NoLenience ClickToFocus SloppyFocus 305 \ MouseFocus FocusFollowsMouse NeverFocus 306 \ ClickToFocusPassesClickOff 307 \ ClickToFocusPassesClick 308 \ ClickToFocusRaisesOff ClickToFocusRaises 309 \ MouseFocusClickRaises 310 \ MouseFocusClickRaisesOff GrabFocus 311 \ GrabFocusOff GrabFocusTransientOff 312 \ GrabFocusTransient FPFocusClickButtons 313 \ FPFocusClickModifiers 314 \ FPSortWindowlistByFocus FPClickRaisesFocused 315 \ FPClickDecorRaisesFocused 316 \ FPClickIconRaisesFocused 317 \ FPClickRaisesUnfocused 318 \ FPClickDecorRaisesUnfocused 319 \ FPClickIconRaisesUnfocused FPClickToFocus 320 \ FPClickDecorToFocus FPClickIconToFocus 321 \ FPEnterToFocus FPLeaveToUnfocus 322 \ FPFocusByProgram FPFocusByFunction 323 \ FPFocusByFunctionWarpPointer FPLenient 324 \ FPPassFocusClick FPPassRaiseClick 325 \ FPIgnoreFocusClickMotion 326 \ FPIgnoreRaiseClickMotion 327 \ FPAllowFocusClickFunction 328 \ FPAllowRaiseClickFunction FPGrabFocus 329 \ FPGrabFocusTransient FPOverrideGrabFocus 330 \ FPReleaseFocus FPReleaseFocusTransient 331 \ FPOverrideReleaseFocus StartsLowered 332 \ StartsRaised IgnoreRestack AllowRestack 333 \ FixedPosition VariablePosition 334 \ FixedUSPosition VariableUSPosition 335 \ FixedPPosition VariablePPosition FixedSize 336 \ VariableSize FixedUSSize VariableUSSize 337 \ FixedPSize VariablePSize Closable 338 \ Iconifiable Maximizable 339 \ AllowMaximizeFixedSize IconOverride 340 \ NoIconOverride NoActiveIconOverride 341 \ DepressableBorder FirmBorder MaxWindowSize 342 \ IconifyWindowGroups IconifyWindowGroupsOff 343 \ ResizeOpaque ResizeOutline BackingStore 344 \ BackingStoreOff BackingStoreWindowDefault 345 \ Opacity ParentalRelativity SaveUnder 346 \ SaveUnderOff WindowShadeShrinks 347 \ WindowShadeScrolls WindowShadeSteps 348 \ WindowShadeAlwaysLazy WindowShadeBusy 349 \ WindowShadeLazy EWMHDonateIcon 350 \ EWMHDontDonateIcon EWMHDonateMiniIcon 351 \ EWMHDontDonateMiniIcon EWMHMiniIconOverride 352 \ EWMHNoMiniIconOverride 353 \ EWMHUseStackingOrderHints 354 \ EWMHIgnoreStackingOrderHints 355 \ EWMHIgnoreStateHints EWMHUseStateHints 356 \ EWMHIgnoreStrutHints EWMHUseStrutHints 357 \ EWMHMaximizeIgnoreWorkingArea 358 \ EWMHMaximizeUseWorkingArea 359 \ EWMHMaximizeUseDynamicWorkingArea 360 \ EWMHPlacementIgnoreWorkingArea 361 \ EWMHPlacementUseWorkingArea 362 \ EWMHPlacementUseDynamicWorkingArea 363 \ MoveByProgramMethod Unmanaged State 364 365 " Cursor styles 366 syn keyword fvwmKeyword nextgroup=fvwmCursorStyle skipwhite 367 \ CursorStyle 368 syn case match 369 syn keyword fvwmCursorStyle contained 370 \ POSITION TITLE DEFAULT SYS MOVE RESIZE WAIT 371 \ MENU SELECT DESTROY TOP RIGHT BOTTOM LEFT 372 \ TOP_LEFT TOP_RIGHT BOTTOM_LEFT BOTTOM_RIGHT 373 \ TOP_EDGE RIGHT_EDGE BOTTOM_EDGE LEFT_EDGE 374 \ ROOT STROKE 375 syn case ignore 376 377 " Menu style 378 syn keyword fvwmKeyword nextgroup=fvwmMStyleArgs skipwhite 379 \ MenuStyle 380 syn region fvwmMStyleArgs contained transparent contains=fvwmMStyleNames,@fvwmConstants,fvwmString,fvwmGradient,fvwmRGBValue 381 \ start='.' skip='\\$' end='$' 382 syn keyword fvwmMStyleNames contained 383 \ Fvwm Mwm Win BorderWidth Foreground 384 \ Background Greyed HilightBack HilightBackOff 385 \ ActiveFore ActiveForeOff MenuColorset 386 \ ActiveColorset GreyedColorset Hilight3DThick 387 \ Hilight3DThin Hilight3DOff 388 \ Hilight3DThickness Animation AnimationOff 389 \ Font MenuFace PopupDelay PopupOffset 390 \ TitleWarp TitleWarpOff TitleUnderlines0 391 \ TitleUnderlines1 TitleUnderlines2 392 \ SeparatorsLong SeparatorsShort 393 \ TrianglesSolid TrianglesRelief 394 \ PopupImmediately PopupDelayed 395 \ PopdownImmediately PopdownDelayed 396 \ PopupActiveArea DoubleClickTime SidePic 397 \ SideColor PopupAsRootMenu PopupAsSubmenu 398 \ PopupIgnore PopupClose RemoveSubmenus 399 \ HoldSubmenus SubmenusRight SubmenusLeft 400 \ SelectOnRelease ItemFormat 401 \ VerticalItemSpacing VerticalTitleSpacing 402 \ AutomaticHotkeys AutomaticHotkeysOff 403 404 " Button style 405 syn keyword fvwmKeyword nextgroup=fvwmBNum skipwhite 406 \ ButtonStyle AddButtonStyle 407 syn match fvwmBNum contained 408 \ nextgroup=fvwmBState,fvwmBStyleArgs skipwhite 409 \ '\v<([0-9]|All|Left|Right|Reset)>' 410 syn keyword fvwmBState contained nextgroup=fvwmBStyleArgs skipwhite 411 \ ActiveUp ActiveDown InactiveUp InactiveDown 412 \ Active Inactive ToggledActiveUp 413 \ ToggledActiveDown ToggledInactiveUp 414 \ ToggledInactiveDown ToggledActive 415 \ ToggledInactive AllNormal AllToggled 416 \ AllActive AllInactive AllUp AllDown 417 syn region fvwmBStyleArgs contained contains=fvwmBStyleFlags,fvwmBStyleNames,fvwmGradient,fvwmRGBValue,@fvwmConstants,fvwmString 418 \ start='\S' skip='\\$' end='$' 419 syn keyword fvwmBStyleNames contained 420 \ Simple Default Solid Colorset Vector Pixmap 421 \ AdjustedPixmap ShrunkPixmap StretchedPixmap 422 \ TiledPixmap MiniIcon 423 syn keyword fvwmBStyleFlags contained 424 \ Raised Sunk Flat UseTitleStyle 425 \ UseBorderStyle 426 427 " Border style 428 syn keyword fvwmKeyword skipwhite nextgroup=fvwmBdState,fvwmBdStyleArgs 429 \ BorderStyle 430 syn keyword fvwmBdState contained skipwhite nextgroup=fvwmBdStyleArgs 431 \ Active Inactive 432 syn region fvwmBdStyleArgs contained contains=fvwmBdStyNames,fvwmBdStyFlags 433 \ start='\S' skip='\\$' end='$' 434 syn keyword fvwmBdStyNames contained 435 \ TiledPixmap Colorset 436 syn keyword fvwmBdStyFlags contained 437 \ HiddenHandles NoInset Raised Sunk Flat 438 439 " Title styles 440 syn keyword fvwmKeyword skipwhite nextgroup=fvwmTState,fvwmTStyleArgs 441 \ TitleStyle AddTitleStyle 442 syn keyword fvwmTState contained skipwhite nextgroup=fvwmTStyleArgs 443 \ ActiveUp ActiveDown InactiveUp InactiveDown 444 \ Active Inactive ToggledActiveUp 445 \ ToggledActiveDown ToggledInactiveUp 446 \ ToggledInactiveDown ToggledActive 447 \ ToggledInactive AllNormal AllToggled 448 \ AllActive AllInactive AllUp AllDown 449 syn region fvwmTStyleArgs contained contains=fvwmBStyleNames,fvwmTStyleNames,fvwmMPmapNames,fvwmTStyleFlags,fvwmGradient,fvwmRGBValue,@fvwmConstants 450 \ start='\S' skip='\\$' end='$' 451 syn keyword fvwmTStyleNames contained 452 \ MultiPixmap 453 syn keyword fvwmTStyleNames contained 454 \ LeftJustified Centered RightJustified Height 455 \ MinHeight 456 syn keyword fvwmMPmapNames contained 457 \ Main LeftMain RightMain UnderText LeftOfText 458 \ RightOfText LeftEnd RightEnd Buttons 459 \ LeftButtons RightButtons 460 syn keyword fvwmTStyleFlags contained 461 \ Raised Flat Sunk 462 463 " Button state 464 syn keyword fvwmKeyword nextgroup=fvwmBStateArgs 465 \ ButtonState 466 syn region fvwmBStateArgs contained contains=fvwmBStateTF,fvwmBStateNames 467 \ start='.' skip='\\$' end='$' 468 syn keyword fvwmBStateNames contained ActiveDown Inactive InactiveDown 469 syn keyword fvwmBStateTF contained True False 470 471 " Paths 472 syn keyword fvwmKeyword nextgroup=fvwmPath skipwhite 473 \ IconPath ImagePath LocalePath PixmapPath 474 \ ModulePath 475 syn match fvwmPath contained contains=fvwmEnvVar '\v.+$' 476 477 " Window list command 478 syn keyword fvwmKeyword nextgroup=fvwmWLArgs skipwhite 479 \ WindowList 480 syn region fvwmWLArgs contained 481 \ contains=fvwmCondition,@fvwmConstants,fvwmString,fvwmWLOpts 482 \ start='.' skip='\\$' end='$' 483 syn keyword fvwmWLOpts contained 484 \ Geometry NoGeometry NoGeometryWithInfo 485 \ NoDeskNum NoNumInDeskTitle 486 \ NoCurrentDeskTitle MaxLabelWidth width 487 \ TitleForAllDesks Function funcname Desk 488 \ desknum CurrentDesk NoIcons Icons OnlyIcons 489 \ NoNormal Normal OnlyNormal NoSticky Sticky 490 \ OnlySticky NoStickyAcrossPages 491 \ StickyAcrossPages OnlyStickyAcrossPages 492 \ NoStickyAcrossDesks StickyAcrossDesks 493 \ OnlyStickyAcrossDesks NoOnTop OnTop 494 \ OnlyOnTop NoOnBottom OnBottom OnlyOnBottom 495 \ Layer UseListSkip OnlyListSkip NoDeskSort 496 \ ReverseOrder CurrentAtEnd IconifiedAtEnd 497 \ UseIconName Alphabetic NotAlphabetic 498 \ SortByResource SortByClass NoHotkeys 499 \ SelectOnRelease 500 501 syn keyword fvwmSpecialFn StartFunction InitFunction RestartFunction 502 \ ExitFunction SessionInitFunction 503 \ SessionRestartFunction SessionExitFunction 504 \ MissingSubmenuFunction WindowListFunc 505 506 syn keyword fvwmKeyword skipwhite nextgroup=fvwmKeyWin,fvwmKeyName 507 \ Key PointerKey 508 syn region fvwmKeyWin contained skipwhite nextgroup=fvwmKeyName 509 \ start='(' end=')' 510 syn case match 511 syn match fvwmKeyName contained skipwhite nextgroup=fvwmKeyContext 512 \ '\v<([a-zA-Z0-9]|F\d+|KP_\d)>' 513 syn keyword fvwmKeyName contained skipwhite nextgroup=fvwmKeyContext 514 \ BackSpace Begin Break Cancel Clear Delete 515 \ Down End Escape Execute Find Help Home 516 \ Insert KP_Add KP_Begin KP_Decimal KP_Delete 517 \ KP_Divide KP_Down KP_End KP_Enter KP_Equal 518 \ KP_Home KP_Insert KP_Left KP_Multiply 519 \ KP_Next KP_Page_Down KP_Page_Up KP_Prior 520 \ KP_Right KP_Separator KP_Space KP_Subtract 521 \ KP_Tab KP_Up Left Linefeed Menu Mode_switch 522 \ Next Num_Lock Page_Down Page_Up Pause Print 523 \ Prior Redo Return Right script_switch 524 \ Scroll_Lock Select Sys_Req Tab Undo Up space 525 \ exclam quotedbl numbersign dollar percent 526 \ ampersand apostrophe quoteright parenleft 527 \ parenright asterisk plus comma minus period 528 \ slash colon semicolon less equal greater 529 \ question at bracketleft backslash 530 \ bracketright asciicircum underscore grave 531 \ quoteleft braceleft bar braceright 532 \ asciitilde 533 534 syn match fvwmKeyContext contained skipwhite nextgroup=fvwmKeyMods 535 \ '\v<[][RWDTS_F<^>vI0-9AM-]+>' 536 syn match fvwmKeyMods contained '\v[NCSMLA1-5]+' 537 syn case ignore 538 539 syn keyword fvwmKeyword skipwhite nextgroup=fvwmMouseWin,fvwmMouseButton 540 \ Mouse 541 syn region fvwmMouseWin contained skipwhite nextgroup=fvwmMouseButton 542 \ start='(' end=')' 543 syn match fvwmMouseButton contained skipwhite nextgroup=fvwmKeyContext 544 \ '[0-5]' 545endif 546 547" Define syntax highlighting groups 548 549" 550" Common highlighting groups 551" 552hi def link fvwmComment Comment 553hi def link fvwmEnvVar Macro 554hi def link fvwmNumber Number 555hi def link fvwmKeyword Keyword 556hi def link fvwmPath Constant 557hi def link fvwmModConf Macro 558hi def link fvwmRGBValue Constant 559hi def link fvwmString String 560hi def link fvwmBackslash SpecialChar 561 562 563" 564" Highlighting groups for fvwm1 specific items 565" 566hi def link fvwmExec fvwmKeyword 567hi def link fvwmKey fvwmKeyword 568hi def link fvwmModule fvwmKeyword 569hi def link fvwmFunction Function 570 571" 572" Highlighting groups for fvwm2 specific items 573" 574hi def link fvwmSpecialFn Type 575hi def link fvwmCursorStyle fvwmStyleNames 576hi def link fvwmStyleNames Identifier 577hi def link fvwmMStyleNames fvwmStyleNames 578hi def link fvwmCSNames fvwmStyleNames 579hi def link fvwmGradient fvwmStyleNames 580hi def link fvwmCondNames fvwmStyleNames 581hi def link fvwmTCNames fvwmStyleNames 582hi def link fvwmTRNames fvwmStyleNames 583hi def link fvwmWLOpts fvwmStyleNames 584 585hi def link fvwmBNum Number 586hi def link fvwmBState Type 587hi def link fvwmBStyleNames fvwmStyleNames 588hi def link fvwmBStyleFlags Special 589 590hi def link fvwmBStateTF Constant 591hi def link fvwmBStateNames fvwmStyleNames 592 593hi def link fvwmBdState fvwmBState 594hi def link fvwmBdStyNames fvwmStyleNames 595hi def link fvwmBdStyFlags fvwmBStyleFlags 596 597hi def link fvwmTState fvwmBState 598hi def link fvwmTStyleNames fvwmStyleNames 599hi def link fvwmMPmapNames fvwmBStyleFlags 600hi def link fvwmTStyleFlags fvwmBStyleFlags 601 602hi def link fvwmDirection fvwmBStyleFlags 603 604hi def link fvwmKeyWin Constant 605hi def link fvwmMouseWin fvwmKeyWin 606hi def link fvwmKeyName Special 607hi def link fvwmKeyContext fvwmKeyName 608hi def link fvwmKeyMods fvwmKeyName 609hi def link fvwmMouseButton fvwmKeyName 610 611hi def link fvwmMenuString String 612hi def link fvwmIcon Type 613hi def link fvwmShortcutKey SpecialChar 614 615hi def link fvwmModuleName Function 616 617let b:current_syntax = "fvwm" 618