Fvwm2 (Version 2.3.x) REFERENCE

SYNOPSIS

fvwm2 [[-blackout] \
       [-clientId id] \
       [-cmd config_command] \
       [-d displayname] \
       [-debug] \
       [-debug_stack_ring] \
       [-f config_file] \
       [-h] \
       [-replace] \
       [-restore state_file] \
       [-s] \
       [-version] \
       [-visual visual_class] \
       [-visualId id]]

Command List

Fvwm2 reads commands from the file .fvwm2rc which is searched in the following directories in the order shown:
    $HOME/.fvwm
    $FVWM_USERDIR
    $HOME
If this fails the file system.fvwm2rc is searched in the directory where fvwm2 was installed (/usr/X11R6/lib/X11/fvwm2).

Lines starting with a '#' character are comments. Lines starting with a '*' character are module configuration lines. Lines ending with an escaped newline character ('\') have a continuation line.

The order for inserting configurations lines is:
    1. Colors
    2. Path setup (ModulePath, ImagePath)
    3. Style settings, including the default style.
    4. InitFunction, RestartFunction and ExitFunction definitions
    5. Other Functions. Functions cannot be forward referenced from
       other functions, but they can be backward referenced
    6. Menus definitions. Same caveats about forward referencing
    7. Key and Mouse Bindings
    8. Module options

AddButtonStyle button [state] [style] [-- [!]flag ...]

Adds a button style to button
  button: number (0 - 9), All, Left, Right
  state:  ActiveUp, ActiveDown, Inactive,
          ToggledActiveUp, ToggledActiveDown, ToggledInactive,
          empty string means all states
  style:  Simple, Default, Solid color
          [Vector] count X0xY0@0 X1xY1@1
          X,Y: pixel coordinates
            @0: shadow color, @1: highlight color, @2: background color
            e.g. X0xY0@0 X1xY1@1 draws a line from X0,Y0 to X1,Y1 in the highlight color
            coordinate origin at left top corner, size in percent of height of TitleStyle
          BGradient, CGradient, DGradient, HGradient
          RGradient, SGradient, VGradient, YGradient
            arguments: colorcount startcolor endcolor, or
                       colorcount segmentcount color incr% [color incr% ...] endcolor
          Pixmap file
          MiniIcon file
          TiledPixmap file
  flag:   Raised, Sunk, Flat, UseTitleStyle, UseBorderStyle
          MWMDecorMenue, MWMDecorMIn, MWMDecorMax
          Left, Right, Bottom, Top for pixmaps

AddTitleStyle [state] [style] [-- [!]flag ...]

Adds a title style to a title bar
  state: ActiveUp, ActiveDown, Inactive,
         ToggledActiveUp, ToggledActiveDown, ToggledInactive,
         empty string means all states
  style: see TitleStyle and ButtonStyle
  flag:  Raised, Sunk, Flat

AddToDecor name

Add or divert commands to a decor
  [+ AddButtonStyle ...]
  [+ AddTitleStyle ...]
  [+ BorderStyle ...]
  [+ ButtonStyle ...]
  [+ TitleStyle ...]

AddToFunc name

Begins or adds to a function definition
+ trigger action
  trigger: Click       or C
           DoubleClick or D
           Hold        or H
           Immediate   or I
           Move        or M
  action:  command parameters
    parameters: $c:               class
                $r:               resource name
                $n:               current window name
                $w:               window id
                $d:               current desk number
                $v:               fvwm version
                $x:               x-coordinate of current viewport
                $y:               y-coordinate of current viewport
                $0...$9:          arguments
                $.:               abs dir of current read file
                $*:               all positional parameters
                $[desk.width]     width og whole desktop
                $[desk.height]    height of whole desktop
                $[vp.x]:          x-coordinate of current viewport
                $[vp.y]:          y-coordinate of current viewport
                $[vp.width]:      width of current viewport
                $[vp.height]:     height of current viewport
                $[w.x]:           x-coordinate of current window
                $[w.y]:           x-coordinate of current window
                $[w.width]:       width of current window
                $[w.height]:      width of current window
                $[screen]:        screen number
                $[env-var]:       environment variable
                $[page.nx]:       current page number X
                $[page.ny]:       current page number Y
                $[fg.cs<n>]:      forground colorset
                $[bg.cs<n>]:      background colorset
                $[hilight.cs<n>]: hilight colorset
                $[shadow.cs<n>]:  shadow clorset

AddToMenu menu-name menu-title [Title [top]]

Begins or adds to a menu definition
 + [menu-&label][*xpm-file*][%xpm-file%] command
[+ MissingSubmenuFunc command]
[+ DynamicPopupAction command]
[+ DynamicPopdownAction command]
  menu-name:  @xpm-file@: picture left to text
              ^color^:    color of picture

  menu-label: &:          underline  and hotkey
              "" Nop:     separator
              *xpm-file*: picture above text
              %xpm-file%: picture left to text

All [(condition[, condition...])] command

Execute command on all windows meeting the conditions
  conditions: CurrentDesk
              CurrentPage
              CurrentPageAnyDesk
              Iconic, !Iconic
              Layer [n]
              Maximized, !Maximized
              PlacedByButton3, !PlacedByButton3
              Raised, !Raised
              Shaded, !Shaded
              Sticky, !Sticky
              Transient, !Transient
              Visible, !Visible
              WindowName, wildcards allowed

AnimatedMove [w | m]x[p] [w | m]y[p] [Warp]

Move a window in an animated fashion. Similar to Move command
  x, y: percent of screen width (height) or pixel if p
  w:    relative to current window
  m:    relative to current pointer (mouse)
  Warp: warps cursor

Beep

As you might expect

BorderStyle [state] [style] [-- [!]flag ...]

Defines a border style for windows
  state: Active, Inactive,
         empty string means all states
  style: TiledPixmap, Simple
  flag:  HiddenHandles, NoInset, Flat, Sunk, Raised
         default: HiddenHandles disabled

BugOpts [option [bool], ...]

This command controls several workarounds for bugs in third party programs
  option: FlickeringMoveWorkaround
          MixedVisualWorkaround
          ModalityIsEvil
          QtDialogsWorkaround
          RaiseOverNativeWindows
          RaiseOverUnmanaged
  bool:   true = activate option, false = deactivate option,
          not given or toggle = toggle option

BusyCursor [option bool, ...]

Controls the cursor during the execution of certain commands
  option: DynamicMenu
          ModulSynchronous
          Read
          Wait
          *
  bool:   true = use cursor, false = don't use cursor

ButtonState [ActiveDown bool] [Inactive bool]

Controls which states of the window titles and title buttons are used
  bool: true = use state, false = don't use state

ButtonStyle button [state] [style] [-- [!]flag ...]

Sets the button style for a title-bar button
  button: number (0 - 9), all, Left, Right, Reset
  state:  ActiveUp, ActiveDown, Inactive,
          ToggledActiveUp, ToggledActiveDown, ToggledInactive,
          empty string means all states
  style:  Simple, Default, Solid color
          [Vector] count X0xY0@0 X1xY1@1
          X,Y: pixel coordinates
            @0: shadow color, @1: highlight color, @2: background color
            e.g. X0xY0@0 X1xY1@1 draws a line from X0,Y0 to X1,Y1 in the highlight color
            coordinate origin at left top corner, size percent of height of TitleStyle
          BGradient, CGradient, DGradient, HGradient
          RGradient, SGradient, VGradient, YGradient
            arguments: colorcount startcolor endcolor, or
                       colorcount segmentcount color incr% [color incr% ...] endcolor
          Pixmap file
          MiniIcon file
          TiledPixmap file
          Default [n]
  flag:   Raised, Sunk, Flat, UseTitleStyle, UseBorderStyle
          Left, Right, Top, Bottom, (default = centered) for pixmaps
          MWMDecorStick, MWMDecorShade

ButtonStyle button - [!]flag

Sets state-independent flags for the specified button
  button: number (0 - 9), all, Left, Right
  flag:   Raised, Sunk, Flat, UseTitleStyle, UseBorderStyle
          MWMDecorMenue, MWMDecorMIn, MWMDecorMax, MWMDecorStick, MWMDecorShade
          Clear to clear flags

ChangeDecor name

Changes the decor of a window to decor name
  name: name of decor, or Default

ChangeMenuStyle menustyle menu-name [menuename ...]

Changes the menu style of menu-name to menustyle

ClickTime [milliseconds-delay]

Specifies the maximum delay in milliseconds between a button press and a button release for the Function built-in to consider the action a mouse click
  default: 150 ms

Close

If the window accepts the delete window protocol a message is sent to the window asking it to gracefully remove itself. If the window does not understand the delete window protocol then the window is destroyed as with the Destroy command. Note: if the window accepts the delete window protocol but does not close itself in response, the window is not deleted.

ColorLimit limit

Specifies a limit on the colors used in pixmaps used by fvwm on screens with a limited number of colors
  limit: 0..60, 0 = no limit, default

ColormapFocus FollowsMouse | FollowsFocus

Installs the colormap of the window

CopyMenuStyle orig-menustyle dest-menustyle

Copy orig-menustyle to dest-menustyle, where orig-menustyle is an existing menu style

Current (condition[, condition...]) command

Performs command on the currently focused window if it satisfies all conditions
  conditions: see All

CursorMove horizontal[p] vertical[p]

Moves the mouse pointer by horizontal pages in the X direction and vertical pages in the Y direction. Either or both entries may be negative
  horizontal, vertical: in percent of page, or p for pixel

CursorStyle context [number | name | xpm-file | None | Tiny [fore back]]

Defines a new cursor for the specified context
  context: BOTTOM       (bottom_side)
           BOTTOM_EDGE  (bottom_side)
           BOTTOM_LEFT  (bottom_left_corner)
           BOTTOM_RIGHT (bottom_right_corner)
           DEFAULT      (top_left_arrow)
           DESTROY      (pirate)
           LEFT         (left_side)
           LEFT_EDGE    (left_side)
           MENU         (top_left_arrow)
           MOVE         (fleur)
           POSITION     (top_left_corner)
           RESIZE       (sizing)
           RIGHT        (right_side)
           RIGHT_EDGE   (right_side)
           ROOT         (left_ptr)
           SELECT       (crosshair)
           STROKE       (plus)
           SYS          (hand2)
           TITLE        (top_left_arrow)
           TOP          (top_side)
           TOP_EDGE     (top_side)
           TOP_LEFT     (top_left_corner)
           TOP_RIGHT    (top_right_corner)
           WAIT         (watch)
 number:   as defined in cursorfont.h
 name  :   as defined in cursorfont.h
 xpm-file: name of a cursor file in xpm format
 None:     no cursor
 Tiny:     single pixel cursor

DefaultColors [foreground background]

Sets the default foreground and background colors used in miscellaneous windows

DefaultColorset [n]

Sets the colorset used by the windows controlled by the DefaultColors command

DefaultFont [fontname]

Sets the default font to font

DefaultIcon file

Sets the default icon which is used if a window has neither an client-supplied icon nor an icon supplied via the Icon option of the Style command.

DefaultLayers bottom put top

Changes the layers that are used for the StaysOnBottom, StaysPut, StaysOnTop Style options. Initially, the layers 2, 4 and 6 are used.

Delete

Sends a message to a window asking that it remove itself, frequently causing the application to exit

DeskTopSize horizontal x vertical

Defines the virtual desktop size
  horizontal, vertical: units of physical sreens

Destroy

Destroys an application window, which usually causes the application to crash and burn

DestroyDecor [recreate] decor-name

Deletes the decor defined with AddToDecor

DestroyFunc function-name

Deletes a function, so that subsequent references to it are no longer valid

DestroyMenu [recreate] menu-name

Deletes a menu, so that subsequent references to it are no longer valid

DestroyMenuStyle menustyle

Deletes the menu style named menustyle and changes all menus using this style to the default style

DestroyModuleConfig module-config-string

Deletes module configuration entries

Direction direction (condition[, condition...]) command

Performs command (typically Focus) on a window in the given direction which satisfies all conditions
  conditions: see All
  direction:  North, Northeast, East, Southeast, South, Southwest, West, Northwest

Echo string

Prints a message to stderr

EdgeResistance scrolling moving

Tells how hard it should be to change the desktop viewport by moving the mouse over the edge of the screen and how hard it should be to move a window over the edge of the screen.
  scrolling: milliseconds before viewport move
  moving:    pixels before moving window

EdgeScroll horizontal[p] vertical[p]

Specifies the percentage of a page to scroll when the cursor hits the edge of a page
  horizontal, vertical: percent of page, or pixel if p
                        multiplied by 1000: wrap arround

EdgeThickness 0 | 1 | 2

This is the width or height of the invisible window that fvwm creates on the edges of the screen that are used for the edge scrolling feature.
  0: no edge scrolling
  1: smallest pan frame
  2: default
  the values are pixel

Emulate fvwm | mwm | win

This command affects how miscellaneous things are done by fvwm

EscapeFunc

By default the key sequence Ctrl-Alt-Escape allows to escape from a Wait pause and from a locked ModuleSynchronous command. The EscapeFunc command used with the Key command allows to configure this key sequence

Exec command

Executes command
  use Exec exec command to avoid subshells (no ampersand in command)

ExecUseShell [shell]

Makes the Exec command use the specified shell
  shell: bash, tcsh, ..., sh is default

ExitFunction command [command ...]

Executed when exiting or restarting before actually quitting

FakeClick [command value ...]

This command is mainly intended for debugging fvwm

Flip Focus [NoWarp]

Executes a Focus command as if the user had used the pointer to select the window

Focus [NoWarp]

Sets the keyboard focus to the selected window

Function function-name

Used to bind a previously defined function to a key or mouse button

GnomeButton

Used in conjunction with Mouse to pass mouse button presses on the root window to a GNOME program

GotoDesk prev | arg1 [arg2] [min max]

Switches the current viewport to another desktop

GotoDeskAndPage prev | desk xpage ypage

Switches the current viewport to another desktop and page

GotoPage prev | x[p] y[p]

Moves the desktop viewport to page (x,y)

HideGeometryWindow [Never | Move | Resize]

Hides the position or size window that is usually shown when a window is moved or resized interactively

Iconify [bool]

Iconifies a window if it is not already iconified or de-iconifies it if it is already iconified
  bool: true = iconify only, false = deiconify only
        not given or toggle = toggle state

IgnoreModifiers [modifiers]

Tells fvwm which modifiers to ignore when matching Mouse or Key bindings
  modifiers: see Mouse or Key

ImagePath path[:path ...]

Specifies a colon separated list of directories in which to search for images (both monochrome and pixmap)
  path: full path name of directory

InitFunction command [command ...]

Executed during initialization of fvwm2

Key keyname context modifiers function

Binds a keyboard key to a specified fvwm built-in function
  keyname:   see keysymdef.h
  context:   see Mouse
  modifiers: see Mouse
  function:  function name or - to remove binding

KillModule name [alias]

Causes the module which was invoked with name modulename to be killed. The name may include wildcards. If modulealias is given, only modules started with the given alias are killed

Layer [arg1 arg2] | [default]

Puts the current window in a new layer

Lower

Allows the user to lower a window

Maximize [bool] [horizontal[p] vertical[p]]

Maximize causes the window to alternately switch from a full-screen size to its normal size
  bool:       true = maximize, false = minimize,
              not given or toggle = toggle state
  horizontal: percent of screen, or pixel if p, or Grow, GrowLeft, or GrowRight
  vertical:   percent of screen, or pixel if p, or Grow, GrowUp, or GrowDown

Menu menu-name [position] [double-click-action]

Causes a previously defined menu to be popped up in a sticky manner
  position: [[context-rectangle] [o<n> | c]x[m | p] [o<n> | c]y[m | p]] [special-options]
            context-rectangle:
               Button n:  button #n of the focused window
               Context:   the current window, menu or icon
               Icon:      the focused icon
               Interior:  the inside of the focused window
               Item:      current menu item
               Menu:      the current menu
               Mouse:     a 1x1 rectangle at the mouse position.(default)
               Rectangle: X-geometry-format
               Root:      the root window
               This:      whatever widget the pointer is on
               Title:     the title of the focused window or icon
               Window:    the window with the focus
             special-options: Animated, Mwm, Win, Fixed, WarpTitle, NoWarp, SelectInPlace
             x,y percent of context-rectangle
             o: overlap percentage (o0 = default)
             c: = o50
             m: menu width (height)
             p: pixel

MenuStyle stylename options

Sets a new menu style or changes a previously defined style
  stylename: * for the default menu
  options:   ActiveColorset [n]
             ActiveFore color/ActiveForeOff
             Animation/AnimationOff
             AutomaticHotkeys/automaticHotkeysOff
             Background color
             BorderWidth width
             DeletSubmenus/HoldSubmenus
             DoubleClickTime milliseconds (default 450 ms)
             Font name
             Foreground color
             FVWM/MWM/WIN
             Greyed color
             GreyedColorset [n]
             Hilight3DThick/Hilight3DThin/Hilight3DOff
             Hilight3DThickness -50 ... 50 pixels
             HilightBack color/HilightBackOff
             ItemFormat format
               format: %l = left justified
                       %c = cetered
                       %r = right justified
                       %i = mini-icon
                       %> = submenu triangle right
                       %< = submenu triangle left
                       %| = start or end of hilighted area
                       %s = side picture,
                       <Space>, <Tab> = a space
                       %<Space%gt;, <%Tab> = eight spaces
                       %p = empty area
             MenuColorset [n]
             MenuFace style, see ButtonStyle
             PopdownDelay milliseconds
             PopdownImmediately/PopdownDelayed
             PopupAsRootMenu/PopupAsSubmenu
             PopupDelay milliseconds
             PopupImmediately/PopupDelayed
             PopupOffset x y percent of parent menu
             RemoveSubmenus/HoldSubmenus
             SelectOnRelease [key]
             SeparatorsLong/SeparatorsShort
             SideColor color
             SidePic file
             SubmenusRight/SubmenusLeft
             TitleUnderlines0/TitleUnderlines1/TitleUnderlines2
             TitleWarp/TitleWarpOff
             TrianglesSolid/TrianglesRelief
             VerticalItemSpacing y x
             VerticalTitleSpacing y x

Module module-name

Specifies a module with its optional parameters which should be spawned
  modul-name: FvwmAnimate  (fancy animation of (de)iconification)
              FvwmAudio    (makes sounds to go with window manager actions)
              FvwmAuto     (an auto raise module)
              FvwmBacker   (to change the background when you change desktops)
              FvwmBanner   (to display a spiffy XPM)
              FvwmButtons  (brings up a customizable tool bar)
              FvwmCommandS (a command server to use with shell's FvwmCommand client)
              FvwmCpp      (to preprocess your .fvwm2rc with cpp)
              FvwmDebug    (to debug your configuration)
              FvwmDragWell (the place to drag&drop to)
              FvwmEvent    (trigger various actions by events)
              FvwmForm     (to bring up dialogs)
              FvwmGtk      (to bring up GTK menus and dialogs)
              FvwmIconBox  (like the mwm Icon-Box)
              FvwmIconMan  (like the twm icon manager)
              FvwmIdent    (to get window info)
              FvwmM4       (to preprocess your .fvwm2rc with m4)
              FvwmPager    (a mini version of the desktop)
              FvwmRearange (to rearange windows)
              FvwmSave     (saves the desktop state in .xinitrc  style)
              FvwmSaveDesk (saves the desktop state in fvwm commands)
              FvwmScript   (another powerful dialog toolkit)
              FvwmScroll   (puts scrollbars  on  any window)
              FvwmTalk     (to interactively run fvwm commands)
              FvwmTaskBar  (a Windows like taskbar)
              FvwmTheme    (manages colorsets)
              FvwmWarf     (AfterStep like button bar)
              FvwmWinList  (a window list)
  Note: there may be other modules around

ModulPath path[:path ...]

Specifies a colon separated list of directories in which to search for modules
  path: full path name to directory

ModuleSynchronous [expect-string] [timeout-secs] modulename

The ModuleSynchronous command is very similar to Module. Fvwm stops processing any commands and user input until the module sends a string beginning with "NOP FINISHED STARTUP" back to fvwm

ModuleTimeout timeout

Specifies how many seconds fvwm waits for a module to respond

Mouse Button context codifiers function

Defines a mouse binding
  button: 1, 2, 3, or 0 for any
  context:   any combination of
             A:   any, except title bar buttons
             F:   window frame (the corner)
             I:   Icon
             R:   root window
             S:   window sides
             T:   title bar
             W:   application window
             0-9: title bar button number
                  title bar buttons: 1 3 5 7 9   0 8 6 4 2
  modifiers: any combination of
             A:    any
             C:    Control
             H:    Hold
             L:    Caps-Lock
             M:    Meta (Alt)
             N:    none
             S:    Shift
             0..5: X11 MOD1..MOD5
  function:  command or - to remove binding

Move [[w | m]x[p] | keep [w | m]y[p] | keep [Warp]] | [pointer]

Allows the user to move a window
  see AnimatedMove

MoveThreshold [pixels]

When the user presses a mouse button upon an object fvwm waits to see if the action is a click or a drag. If the mouse moves by more than pixels pixels it is assumed to be a drag. Default is 3 pixels.

MoveToDesk prev | arg1 [arg2] [min max]

Moves the selected window to another desktop
  see GotoDesk

MoveToPage [x[p] y[p]] | [prev]

Moves the selected window to another page (x,y)
  x,y: page
  p:   move relative to current page

Next [(condition[, condition...])] command

Performs command (typically Focus) on the next window which satisfies all conditions
  conditions: see All plus
              CirculateHit
              CirculateHitIcon

None [(condition[, condition...])] command

Performs command if no window which satisfies all conditions exists
  conditions: see All

Nop

Does nothing. This is used to insert a blank line or separator in a menu

OpaqueMoveSize [percentage]

Tells fvwm the maximum size window with which opaque window movement should be used
  default 5

Pick [(condition[, condition...])] command

Works like Function if invoked in the context of a window
  conditions: see All

PipeRead command [quiet]

Causes fvwm to read commands from the output of the command

PlaceAgain [Anim]

Causes the current window's position to be re-computed using the initial window placement logic

PointerKey keyname context modifiers function

This command works exactly like the Key command. The only difference is that the binding operates on the window under the pointer

Popup PopupName [position] [default-action]

This built-in has two purposes: to bind a menu to a key or mouse button, and to bind a sub-menu into a menu
  position: see Menu

Prev [(condition[, condition...])] command

Performs command (typically Focus) on the previous window which satisfies all conditions
  conditions: see All

Quit

Exits fvwm, generally causing X to exit too

QuitScreen

Causes fvwm to stop managing the screen on which the command was issued

QuitSession

Causes a session manager (if any) to shutdown the session

Raise

Allows the user to raise a window. Note that this raises a window only in its layer. To bring a window to the absolute top, use
  AddToFunc raise-to-top
  + I Layer 0 ontop
  + I Raise

RaiseLower

Alternately raises and lowers a window

Read file [Quiet]

Causes fvwm to read commands from the file named filename

Recapture

Causes fvwm to recapture all of its windows

RecaptureWindow

Causes fvwm to recapture the chosen window

Refresh

Causes all windows on the screen to redraw themselves

RefreshWindow

Causes the chosen window to redraw itself

Resize [width[p | c] | keep height[p | c]] | keep | [bottomright | br x y]

Allows to resize a window
  width, height: in percent of page, or p for pixel, or c for client supplied unit
  x, y:          coordinates of bottoright corner

ResizeMove resize-arguments move-arguments

This command does the same as the Resize and Move commands

Restart [window_manager [params]]

Causes FVWM to restart itself

Restart --pass-args window_manager

The same as Restart without parameters but the name for the current window manager is replaced with the specified window_manager and original arguments are preserved.

Restart --dont-preserve-state [other-params]

The same as Restart [other-params] but it does not save any window states over the restart

RestartFunction command [command ...]

Executed during a restart

SaveSession

Causes a session manager (if any) to save the session

SaveQuitSession

Causes a session manager (if any) to save and then shutdown the session

Scroll horizonal[p] vertical[p]

Scrolls the virtual desktop's viewport by horizontal pages in the x-direction and vertical pages in the y-direction
  horizontal, vertical: percent of page, or pixel if p
                        multiplied by 1000: wrap arround

SendToModule modulename string

Sends an arbitrary string (no quotes required) to all modules, whose alias or name matching modulename, which may contain wildcards

SessionExit

Like ExitFunction

SessionInit

like InitFunction

SessionRestart

like RestartFunction

SetAnimation milliseconds-delay [fractions-to-move-list]

Sets the time between frames and the list of fractional offsets to customize the animated moves of the AnimatedMove command and the animation of menus (if the menu style is set to animated; see MenuStyle command)
  fractions-to-move-list: list of numbers between 0 and 1
   default: 10 -.01 0 .01 .03 .08 .18 .3 .45 .6 .75 .85 .90 .94 .97 .99 1.0

SetEnv varname stringvalue

Set an environment variable to a new value, similar to shell's export or setenv command. The variable and its value are inherited by processes started directly by fvwm

Silent command

A number of built in functions require a window to operate on. If no window was selected when such a function is invoked the user is asked to select a window. Sometimes this behavior is unwanted, for example if the function was called by a module and the window that was selected at first does not exist anymore. You can prevent this by putting Silent in front of the fvwm command.

SnapAttraction [[proximity [behavior] [Screen]]

If during an interactive move the window or icon comes within proximity pixels of another the window or icon, it is moved to make the borders adjoin. The default of 0 means that no snapping happens
  proximity: -1(default): no snapping, else number of pixels
  behavior:  All, SameType, Windows, Icons, All is default

SnapGrid [x-grid-size y-grid-size]

During an interactive move a window or icon is positioned such that its location (top left corner) is coincident with the nearest grid point
  x-grid-size, y-grid-size: in pixel, 1(default) = no grid

StartFunction command [command ...]

Executed during initial start of fvwm2

Stick [bool]

Makes a window sticky if it is not already sticky, or non-sticky if it is already sticky
  bool: true = stick, false = unstick,
        not given or toggle = toggle state

Stroke sequence button context modifiers function

Binds a mouse stroke sequence to a specified fvwm built-in function

StrokeFunc [Options]

Causes fvwm to record a mouse stroke sequence and to execute the corresponding action as defined in a Stroke command
  options: NotStayPressed
           EchoSequence
           DrawMotion
           Feedback
           StrokeWidth width

Style windowname options

Used to set attributes of a window to values other than the default or to set the window manager default styles
windowname: name, class, or resource string of an window, (wildcards are allowed)
  options: BackColor color
           BackingStore/BackingStoreOff
           BorderColorset [n]
           BorderWidth pixel
           CaptureHonorsStartsOnPage/CaptureIgnorsStartsOnPage
           CascadePlacement/TileCascadePlacement/TileManualPlacement/
             MinOverlapPlacement/MinOverlapPlacementPercent/ManualPlacement
           CirculateSkip/CirculateHit
           CirculateSkipShade/CirculateSkipShadeOff
           ClickToFocus/MouseFocus | FocusFollowsMouse/SloppyFocus/NeverFocus
           ClickToFocusPassesClickOff/ClickToFocusPassesClick
           ClickToFocusRaisesOff/ClickToFocusRaises
           Color textcolor/bordercolor
           Colorset [n]
           DecorateTransient/NakedTransient
           DepressableBorder/FirmBorder
           FixedPosition/VariablePosition
           Font font
           ForeColor color
           GNOMEIgnoreHints/GNOMEUseHints
           GrabFocusOff/GrabFocusOff
           GrabFocusTransientOff/GrabFocusTransient
           HandleWidth pixel
           HilightBack color
           HilightBorderColorset [n]
           HilightColorset [n]
           HilightFore color
           HintOverride/NoOverride
           IconBox left, top, right, bottom, None, or geometry
           IconFill dir1 dir2
             dir1, dir2: t(op), b(ottom), l(eft), r(ight)
             default: left to right then top to bottom (e.g. l b)
           IconFont font
           IconGrid x y pixel (3x3 = default)
           IconifyWindowGroups/IconifyWindowGroupsOff
           IconOverride/NoIconOverride/NoActiveIconOverride
           IconTitle/NoIconTitle
           IgnoreRestack/AllowRestack
           KeepWindowGroupsOnDesk/ScatterWindowGroups
           Layer n
           Lenience/NoLenience
           LowerTransient/DontLowerTransient
           ManualPlacementHonorsStartsOnPage/ManualPlacementIgnoresStartsOnPage
           MiniIcon file
           MouseFocusClickRaises/MouseFocusClickRaisesOff
           MWMBorder/FvwmBorder
           MWMButtons/FvwmButtons
           MWMDecor/NoDecorHint
           MWMFunctions/NoFuncHint
           NoButton n/Button n
           NoHandles/Handles
           NoIcon/Icon [file]
           NoIconPosition/UseIconPosition
           NoPPosition/UsePPosition
           NoTitle/Title
           OLDecor/NoOLDecor
           ParentalRelativity/Opacity
           RaiseTransient/DontRaiseTransient
           RecaptureHonorsStartsOnPage/RecaptureIgnoresStartsOnPage
           ResizeHintOverrideMaxWindowSize [width[p] height[p]]
           ResizeOpaque/ResizeOutline
           SaveUnder/SaveUnderOff
           SkipMapping/ShowMapping
           StackTransientParent/DontStackTransientParent
           StartIconic/StartNormal
           StartsLowered/StartsRaised
           StartsOnDesk n/StartsOnPage [desk] [x y]/StartsAnywhere
           StartsOnPageIncludesTransients/StartsOnPageIgnoresTransients
           StaysOnTop/StaysPut/StaysOnBottom
           Sticky/Slippery
           StickyIcon/SlipperyIcon
           StippledTitle/StippledTitleOff
           TitleAtBottom/TitleAtTop
           UseDecor name (default not specified)
           UseStyle name
           WindowListSkip/WindowListHit
           WindowShadeShrinks/WinowShadeScrolls
           WindowshadeSteps n

Title

Title for menu, no action

TitleStyle [justification] [Height num]

Sets attributes for the title-bar
  justification: Centered, RightJustified, LeftJustified, Default: Centered
  Height: pixels, must be set after the font

TitleStyle [state] [style] [-- [!]flag ...]

Sets attributes for the title-bar
  state:  ActiveUp, ActiveDown, Inactive,
          ToggledActiveUp, ToggledActiveDown, ToggledInactive,
          empty string means all states
  style:  Simple, Default, Solid color
          BGradient, CGradient, DGradient, HGradient
          RGradient, SGradient, VGradient, YGradient
            arguments: colorcount startcolor endcolor, or
                       colorcount segmentcount color incr% [color incr% ...] endcolor
          Pixmap file
          MiniIcon file
          TiledPixmap file
  flag:   Raised, Sunk, Flat

UnsetEnv variable

Unset an environment variable, similar to shell's export or unsetenv command

UpdateDecor [decor]

This command is kept mainly for backwards compatibility. Since all elements of a decor are updated immediately when they are changed, this command is mostly useless

UpdateStyles

All pending updates of all windows styles and looks are applied immediately

Wait windowname

This built-in is intended to be used in fvwm functions only. It causes execution of a function to pause until a new window with the title windowname appears. Fvwm remains fully functional during a wait

WarpToWindow x[p] y[p]

Warps the cursor to the associated window
 x, y: percent of page, or pixel if p

WindowId [id] [(condition[, condition...])] | [root [screen]] function

The WindowId function is similar to the Next and Prev functions, except that it looks for a specific window id and runs the specified function on it

WindowList [(condition[, condition...])] [position] [options] [double-click-action]

Generates a pop-up menu (and pops it up) in which the title and geometry of each of the windows currently on the desktop are shown
  conditions: see All
  position:   see Menu
  options:    Alphabetic/NotAlphbetic
              CurrentDesk
              Desk desknum
              Function funcname args
              Layer m [n]
              NoDeskSort
              NoGeometry/Geometry
              NoGeometryWithInfo
              NoHotkeys
              NoIcons/Icons/OnlyIcons
              NoNormal/Normal/OnlyNormal
              NoOnBottom/OnBottom/OnlyOnBottom
              NoOnTop/OnTop/OnlyOnTop
              NoSticky/Sticky/OnlySticky
              SelectOnRelease
              UseIconName
              UseListSkip/OnlyListSkip
  action:     see Menu
  default:    AddToFunc WindowListFunc
              + I WindowId $0 Iconify -1
              + I WindowId $0 FlipFocus
              + I WindowId $0 Raise
              + I WindowId $0 WarpToWindow 5p 5p

WindowShade [bool]

Toggles the window shade feature for titled windows. Windows in the shaded state only display a title-bar
  bool: true = force shade, false = force normal,
        not given or toggle: toggle state

XorPixmap [pixmap]

Selects the pixmap with which bits are xor'ed when doing rubber-band window moving or resizing

XORValue number

Changes the value with which bits are xor'ed when doing rubber-band window moving or resizing

Environment variables

  DISPLAY,
  FVWM_MODULEDIR,
  FVWM_USERDIR,
  SESSION_MANAGER,
  SESSION_MANAGER_NAME
  SM_SAVE_DIR

Built in Key and Mouse Bindings

  Key Help R A Popup MenuFvwmRoot
  Key F1 R A Popup MenuFvwmRoot
  Key Tab A M WindowList Root c c NoDeskSort
  Key Escape A MC EscapeFunc

  Mouse 1 TS A FuncFvwmRaiseLowerX Move
  Mouse 1 F  A FuncFvwmRaiseLowerX Resize

  AddToFunc FuncFvwmRaiseLowerX I Raise
  + M $0
  + D Lower

Note on colors

  Please use X11 colornames or the rgb:rrrr/gggg/bbbb (hex) notation

Note on boolean arguments

  yes, on,  true,  t, y means true
  no,  off, false, f, n means false
  toggle means toggle state

Note on gradients

  HGradient is horizontal,
  VGradient is vertical,
  DGradient is diagonal from top left to bottom right,
  BGradient is backwards diagonal from bottom left to top right,
  SGradient is concentric squares,
  CGradient is concentric circles,
  RGradient is a radar like pattern and
  YGradient is a Yin Yang style (but without the dots).

  The gradient styles H, V, B and D are optimized for high
  speed and low memory consumption in menus.

Note on Quoting

Quotes are required only when needed to make fvwm consider two or more words to be a single argument. Unnecessary quoting is allowed. If you want a quote character in your text, you must escape it by using the backslash character. For example, if you have a pop-up menu called "Window-Ops", then you don't need quotes:
    Popup Window-Ops
but if you replace the dash with a space, then you need quotes:
    Popup "Window Ops"

The supported quoting characters are double quotes, single quotes and reverse single quotes. All three kinds of quotes are treated in the same way. Single characters can be quoted with a preceding backslash. Quoting single characters works even inside other kinds of quotes.