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