[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
The following is a list of commands that don’t really fit in any other section.
Start emacs unless it is already running, in which case focus it.
Warp the mouse the lower right corner of the current head.
Warp the mouse to the specified location.
Warp the mouse by the specified amount from its current position.
Simulate a pointer button event at the current pointer location. Note: this function rarely works.
Display the date and time.
Evaluate the s-expression and display the result(s).
Send the string of characters to the current window as if they’d been typed.
Reload StumpWM using asdf
.
Reload the ‘~/.stumpwmrc’ file.
Quit StumpWM.
Restart stumpwm. This is handy if a new stumpwm executable has been made and you wish to replace the existing process with it.
Any run-time customizations will be lost after the restart.
Soft Restart StumpWM. The lisp process isn’t restarted. Instead, control jumps to the very beginning of the stumpwm program. This differs from RESTART, which restarts the unix process.
Since the process isn’t restarted, existing customizations remain after the restart.
Echo the X selection.
Stuff the string string into the X selection.
Command mode allows you to type ratpoison commands without needing the <C-t> prefix. Keys not bound in StumpWM will still get sent to the current window. To exit command mode, type <C-g>.
When an unhandled error occurs, StumpWM restarts and attempts to continue. Unhandled errors should be reported to the mailing list so they can be fixed. Use this command to copy the unhandled error and backtrace to the X11 selection so you can paste in your email when submitting the bug report.
List all available commands.
Display the last message. If the previous command was lastmsg, then continue cycling back through the message history.
List all the properties of the current window and their values, like xprop.
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") |
Create a command function and store its interactive hints in *command-hash*. The local variable %interactivep% can be used to check if the command was called interactively. If it is non-NIL then it was called from a keybinding or from the colon command.
INTERACTIVE-ARGS is a list of the following form: ((TYPE PROMPT) (TYPE PROMPT) ...)
each element in INTERACTIVE-ARGS declares the type and prompt for the command’s arguments.
TYPE can be one of the following:
A yes or no question returning T or NIL.
A lisp variable
A lisp function
A stumpwm command as a string.
A key sequence starting from *TOP-MAP*
An existing window number
An integer number
A string
A single key chord
An existing window’s name
A direction symbol. One of :UP :DOWN :LEFT :RIGHT
A gravity symbol. One of :center :top :right :bottom :left :top-right :top-left :bottom-right :bottom-left
An existing group
A frame
A shell command
The rest of the input yes to be parsed.
An existing stumpwm module
Note that new argument types can be created with DEFINE-STUMPWM-TYPE.
PROMPT can be string. In this case, if the corresponding argument is missing from an interactive call, stumpwm will use prompt for its value using PROMPT. If PROMPT is missing or nil, then the argument is considered an optional interactive argument and is not prompted for when missing.
Alternatively, instead of specifying nil for PROMPT or leaving it out, an element can just be the argument type.
Create a new type that can be used for command arguments. type can be any symbol.
When body is evaluated input is bound to the
argument-line. It is passed to argument-pop
,
argument-pop-rest
, etc. prompt is the prompt that should
be used when prompting the user for the argument.
(define-stumpwm-type :symbol (input prompt) (or (find-symbol (string-upcase (or (argument-pop input) ;; Whitespace messes up find-symbol. (string-trim " " (completing-read (current-screen) prompt ;; find all symbols in the ;; stumpwm package. (let (acc) (do-symbols (s (find-package "STUMPWM")) (push (string-downcase (symbol-name s)) acc)) acc))) (throw 'error "Abort."))) "STUMPWM") (throw 'error "Symbol not in STUMPWM package"))) (defcommand "symbol" (sym) ((:symbol "Pick a symbol: ")) (message "~a" (with-output-to-string (s) (describe sym s)))) |
This code creates a new type called :symbol
which finds the
symbol in the stumpwm package. The command symbol
uses it and
then describes the symbol.
Run the shell command, cmd, unless an existing window matches props. props is a property list with the following keys:
:class
Match the window’s class.
:instance
Match the window’s instance or resource-name.
:role
Match the window’s WM_WINDOW_ROLE
.
:title
Match the window’s title.
By default, the global *run-or-raise-all-groups* decides whether to search all groups or the current one for a running instance. all-groups overrides this default. Similarily for *run-or-raise-all-screens* and all-screens.
When this is T
the run-or-raise
function searches all groups for a
running instance. Set it to NIL to search only the current group.
When this is T
the run-or-raise
function searches all screens for a
running instance. Set it to NIL
to search only the current screen. If
*run-or-raise-all-groups* is NIL
this variable has no effect.
Display a menu with the active restarts and let the user pick one. Error is the error being recovered from. If the user aborts the menu, the error is re-signalled.
Execute BODY. If an error occurs allow the user to pick a restart from a menu of possible restarts. If a restart is not chosen, resignal the error.
This is the message StumpWM displays when it starts. Set it to NIL to suppress.
Suppress abort message when non-nil.
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.
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.
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.
12.1 Menus | ||
12.2 StumpWM’s Data Directory | ||
12.3 Debugging StumpWM | ||
12.4 Timers | ||
12.5 Getting Help |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Some commands present the options in a menu. The following are the menu key bindings:
Highlight the previous menu option.
Highlight the next menu option.
Abort the menu.
Select the highlighted option.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
If you want to store StumpWM data between sessions, the recommended method is to store them in ‘~/.stumpwm.d/’. StumpWM supplies some functions to make doing this easier.
The directory used by stumpwm to store data between sessions.
Return a pathname inside stumpwm’s data dir with the specified name and type
Open a file in StumpWM’s data directory. keyword arguments are sent directly to OPEN. Note that IF-EXISTS defaults to :supersede, instead of :error.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Set this variable to a number > 0 to turn on debugging. The greater the number the more debugging output.
This is the stream debugging output is sent to. It defaults to *error-output*. It may be more convenient for you to pipe debugging output directly to a file.
Elect to redirect all output to the specified file. For instance, if you want everything to go to ~/stumpwm.d/debug-output.txt you would do:
(redirect-all-output (data-dir-file "debug-output" "txt")) |
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
StumpWM has a timer system similar to that of Emacs.
Perform an action after a delay of SECS seconds. Repeat the action every REPEAT seconds, if repeat is non-nil. SECS and REPEAT may be reals. The action is to call FUNCTION with arguments ARGS.
Remove TIMER from the list of active timers.
Return T if TIMER is a timer structure.
[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
Either interactively type the key sequence or supply it as text. This command prints the command bound to the specified key sequence.
Print the online help associated with the specified variable.
Print the online help associated with the specified function.
Print the key sequences bound to the specified command.
List the modifiers stumpwm recognizes and what MOD-X it thinks they’re on.
[ << ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This document was generated by David Bjergaard on November 1, 2014 using texi2html 1.82.