river/doc/riverctl.1.scd
2020-06-16 15:48:53 +02:00

136 lines
3.9 KiB
Markdown

RIVERCTL(1) "github.com/ifreund/river" "General Commands Manual"
# NAME
riverctl - command-line interface for controlling river
# SYNOPSIS
*riverctl* *close*|*declare-mode*|*enter-mode*|*exit*|*focus-output*|
*focus-view*|*layout*|*map*|*mod-master-count*|*mod-master-factor*|
*send-to-output*|*set-focused-tags*|*set-view-tags*|*spawn*|*toggle-float*|
*toggle-focused-tags*|*toggle-view-tags*|*zoom* [_command specific arguments_]
# DESCRIPTION
*riverctl* is a command-line interface inspired by bspc from bspwm
used to control and configure river.
# COMMANDS
## ACTIONS
*close*
Close the focused view.
*exit*
Exit the compositor, terminating the Wayland session.
*focus-output* *next*|*previous*
Focus next or previous output.
*focus-view* *next*|*previous*
Focus next or previous view in the stack.
*layout* *full*|_command_
Provide a command which river will use for generating the layout of
non-floating windows on the currently focused output. See
*river-layouts*(1) for details on the expected formatting of the output
of layout commands. Alternatively, "full"can be given instead of a
command to cause river to use its single internal layout, in which
windows span the entire width and height of the output.
*mod-master-count* _integer_
Increase or decrease the number of master views. _integer_ can be
positive or negative.
*mod-master-factor* _float_
Make the master area bigger or smaller. _float_ is a positive or
negative floating point number (such as 0.05) where 1 corresponds to
the whole screen.
*send-to-output* *next*|*previous*
Send the focused view to the next or the previous output.
*spawn* _shell_command_
Run _shell_command_ using _/bin/sh -c_. Put single quotes around
_shell_command_ if you do not want special characters to get
interpreted by your shell before the command gets passed to _/bin/sh_.
*toggle-float*
If the focused view is floating, make it tiled. If it is tiled, make
it floating.
*zoom*
Bump the focused view to the top of the layout stack to make it the
new master.
## ACTIONS ON TAGS
Tags are like workspaces but more flexible: You can assign views to
multiple tags and look at multiple tags at once. A _tagmask_ is used
to represent which tags are visible. The following commands take a
_tagmask_ in base 10 as argument but _tagmasks_ are best understood in
binary: 000000001 means that the first tag is visible; 111111111 means
that tag 1 through 9 are visible.
*set-focused-tags* _tagmask_
Show the tags specified with _tagmask_.
*set-view-tags* _tagmask_
Assign focused view to tags specified with _tagmask_.
*toggle-focused-tags* _tagmask_
Toggle visibility of tags specified with _tagmask_.
*toggle-view-tags* _tagmask_
Toggle tags of focused view as specified with _tagmask_.
## CONFIGURATION COMMANDS
*declare-mode* _name_
Create a new mode called _name_ for use in mappings.
*enter-mode* _name_
Switch to given mode if it exits.
*map* _mode_ _modifiers_ _key_ _command_
_mode_ is either *normal* (the default mode) or a mode created with
*declare-mode*. _modifiers_ is a list of one or more of the following
modifiers separated with a plus sign:
- Shift
- Lock (Caps lock)
- Control (Ctrl)
- Mod (Alt)
- Mod2
- Mod3
- Mod4 (Super, Logo, Windows)
- Mod5
_key_ is an XKB key name. See _/usr/include/xkbcommon/xkbcommon-keysyms.h_
for a list of special key names. _command_ can be any of the above commands.
A mapping without modifiers can be created by passing an empty string as
the modifiers argument.
*set-option* _option_ _value_
Set _option_ to a specified _value_. List of valid options:
- *border_width* _non-negative_integer_
- *border_color_focused* _RGB/RGBA_hex_code_
- *border_color_unfocused* _RGB/RGBA_hex_code_
- *outer_padding* _non-negative_integer_
- *view_padding* _non-negative_integer_
# EXAMPLES
Bind bemenu-run to Super+P:
riverctl map normal Mod4 P spawn bemenu-run
See _contrib/config.sh_ for some basic keybindings.
# SEE ALSO
*river*(1), *bspc*(1)