## 19 Advanced Configuration ¶

Variable: *default-package* ¶

  This is the package eval reads and executes in. You might want to set this to `:stumpwm` if you find yourself using a lot of internal stumpwm symbols. Setting this variable anywhere but in your rc file will have no effect.

Variable: *default-bg-color* ¶

  Default color for the desktop background.

Function: run-commands &rest commands ¶

  Run each stumpwm command in sequence. This could be used if you’re used to ratpoison’s rc file and you just want to run commands or don’t know lisp very well. One might put the following in one’s rc file:

      (stumpwm:run-commands
        "escape C-z"
        "exec firefox"
        "split")

Variable: *startup-message* ¶

  This is the message StumpWM displays when it starts. Set it to NIL to suppress.

Variable: *list-hidden-groups* ¶

  Controls whether hidden groups are displayed by ’groups’ and ’vgroups’ commands

Macro: defprogram-shortcut name &key command props map key pullp pull-name pull-key ¶

  Default Values:

        command    (string-downcase (string stumpwm::name))
        props      `'(:class ,(string-capitalize stumpwm::command))
        map        'stumpwm:*top-map*
        key        `(stumpwm:kbd
                     ,(stumpwm:concat "H-"
                                      (subseq stumpwm::command 0 1)))
        pullp      nil
        pull-name  (stumpwm::intern1
                    (stumpwm:concat (string stumpwm::name) "-PULL"))
        pull-key   `(stumpwm:kbd
                     ,(stumpwm:concat "H-M-"
                                      (subseq stumpwm::command 0 1)))

  Define a command and key binding to run or raise a program. If pullp is set, also define a command and key binding to run or pull the program.

Variable: *initializing* ¶

  True when starting stumpwm. Use this variable in your rc file to run code that should only be executed once, when stumpwm starts up and loads the rc file.

Command: loadrc ¶

  Reload the `~/.stumpwmrc` file.

Variable: *ignore-wm-inc-hints* ¶

  Set this to T if you never want windows to resize based on incremental WM_HINTs, like xterm and emacs.

Variable: *max-last-message-size* ¶

  how many previous messages to keep.

Variable: *module-dir* ¶

  The location of the contrib modules on your system.

Function: set-module-dir dir ¶

  Sets the location of the for StumpWM to find modules

Variable: *mouse-focus-policy* ¶

  The mouse focus policy decides how the mouse affects input focus. Possible values are :ignore, :sloppy, and :click. :ignore means stumpwm ignores the mouse. :sloppy means input focus follows the mouse; the window that the mouse is in gets the focus. :click means input focus is transfered to the window you click on.

  If *MOUSE-FOCUS-POLICY* holds any value other than those listed above, mouse focus will behave as though it contains :IGNORE

Variable: *resize-hides-windows* ¶

  Set to T to hide windows during interactive resize

Variable: *root-click-focuses-frame* ¶

  Set to NIL if you don’t want clicking the root window to focus the frame containing the pointer.

Variable: *suppress-frame-indicator* ¶

  Set this to T if you never want to see the frame indicator.

Variable: *suppress-window-placement-indicator* ¶

  Set to T if you never want to see messages that windows were placed according to rules.

Variable: *text-color* ¶

  The color of message text.

Variable: *draw-in-color* ¶

  When NIL color formatters are ignored.

Variable: *timeout-frame-indicator-wait* ¶

  The amount of time a frame indicator timeout takes.

Variable: *top-level-error-action* ¶

  If an error is encountered at the top level, in STUMPWM-INTERNAL-LOOP, then this variable decides what action shall be taken. By default it will print a message to the screen and to *standard-output*.

  Valid values are :message, :break, :abort. :break will break to the debugger. This can be problematic because if the user hit’s a mapped key the ENTIRE keyboard will be frozen and you will have to login remotely to regain control. :abort quits stumpwm.