mirror of
https://github.com/vale981/bspwm
synced 2025-03-05 18:01:37 -05:00
399 lines
10 KiB
Groff
399 lines
10 KiB
Groff
.TH BSPWM 1 bspwm
|
|
.SH NAME
|
|
bspwm \- Tiling window manager based on binary space partitioning
|
|
.SH SYNOPSIS
|
|
.B bspwm
|
|
.RI [ -h | -v | "-s PANEL_FIFO" | "-p PANEL_PREFIX" ]
|
|
.P
|
|
.BI bspc " MESSAGE"
|
|
.RI [ ARGUMENTS ]
|
|
.RI [ OPTIONS ]
|
|
.SH DESCRIPTION
|
|
.B bspwm
|
|
is a tiling window manager that represents windows as the leaves of a full binary tree.
|
|
.P
|
|
It is controlled and configured via
|
|
.BR bspc .
|
|
.SH CONFIGURATION
|
|
.B bspwm
|
|
have only two sources of informations: the
|
|
.B X
|
|
events it receives and the messages it reads on a dedicated socket.
|
|
.P
|
|
Its configuration file is
|
|
.IR $XDG_CONFIG_HOME/bspwm/autostart .
|
|
.P
|
|
Keyboard and pointer bindings are defined with
|
|
.BR sxhkd .
|
|
.P
|
|
Example configuration files can be found in the
|
|
.I examples
|
|
directory.
|
|
.SH SPLITTING MODES
|
|
There is only two splitting modes:
|
|
.IR automatic " and " manual .
|
|
.P
|
|
The default mode is
|
|
.IR automatic .
|
|
The
|
|
.I manual
|
|
mode is entered by sending a
|
|
.B presel
|
|
message.
|
|
.P
|
|
Example: insertion of a new node (number 4) into the given tree in
|
|
.I automatic
|
|
mode:
|
|
.EX
|
|
|
|
b c
|
|
/ \\ / \\
|
|
3 a --> 4 b
|
|
^ / \\ ^ / \\
|
|
2 1 3 a
|
|
/ \\
|
|
2 1
|
|
+-------------------------+ +-------------------------+
|
|
| | | | | |
|
|
| | 2 | | | 3 |
|
|
| | | | | |
|
|
| 3 |------------| --> | 4 |------------|
|
|
| ^ | | | ^ | | |
|
|
| | 1 | | | 1 | 2 |
|
|
| | | | | | |
|
|
+-------------------------+ +-------------------------+
|
|
|
|
.EE
|
|
.P
|
|
Same departure, but the mode is
|
|
.IR manual ,
|
|
and a
|
|
.BI presel " up"
|
|
message was sent beforehand:
|
|
.EX
|
|
|
|
b b
|
|
/ \\ / \\
|
|
3 a --> c a
|
|
^ / \\ / \\ / \\
|
|
2 1 4 3 2 1
|
|
^
|
|
+-------------------------+ +-------------------------+
|
|
| | | | | |
|
|
| | 2 | | 4 | 2 |
|
|
| | | | ^ | |
|
|
| 3 |------------| --> |------------|------------|
|
|
| ^ | | | | |
|
|
| | 1 | | 3 | 1 |
|
|
| | | | | |
|
|
+-------------------------+ +-------------------------+
|
|
|
|
.EE
|
|
.SH CONTAINERS
|
|
.P
|
|
Each monitor contains at least one desktop.
|
|
.P
|
|
Each desktop contains at most one tree.
|
|
.SH MESSAGES
|
|
.TP
|
|
.BI get " SETTING"
|
|
Return the value of the given setting.
|
|
.TP
|
|
.BI set " SETTING VALUE"
|
|
Set the value of the given setting.
|
|
.TP
|
|
.BI list " [DESKTOP_NAME]"
|
|
Output the internal representation of the window tree.
|
|
.TP
|
|
.BI list_desktops " [--quiet]"
|
|
Perform a dump of each desktop for the current monitor.
|
|
.TP
|
|
.BI list_monitors " [--quiet]"
|
|
Perform a dump of each monitor.
|
|
.TP
|
|
.BI list_history
|
|
Return the node focus history of each desktop.
|
|
.TP
|
|
.BI list_windows
|
|
Return the list of managed windows (i.e. their identifiers).
|
|
.TP
|
|
.BI list_rules
|
|
Return the list of rules.
|
|
.TP
|
|
.BI presel " left|right|up|down [SPLIT_RATIO]"
|
|
Switch to manual mode and select the splitting direction.
|
|
.TP
|
|
.BI cancel
|
|
Switch to automatic mode.
|
|
.TP
|
|
.BI ratio " VALUE"
|
|
Set the splitting ratio of the focused window.
|
|
.TP
|
|
.BI pad " MONITOR_NAME [TOP_PADDING [RIGHT_PADDING [BOTTOM_PADDING [LEFT_PADDING]]]]"
|
|
Set the padding of the given monitor.
|
|
.TP
|
|
.BI focus " left|right|up|down"
|
|
Focus the neighbor window situated in the given direction.
|
|
.TP
|
|
.BI shift " left|right|up|down"
|
|
Exchange the current window with the given neighbor.
|
|
.TP
|
|
.BI swap " [--keep-focus]"
|
|
Swap the focused window with the last focused window.
|
|
.TP
|
|
.BI push " left|right|up|down"
|
|
Push the fence located in the given direction.
|
|
.TP
|
|
.BI pull " left|right|up|down"
|
|
Pull the fence located in the given direction.
|
|
.TP
|
|
.BI fence_ratio " left|right|up|down VALUE"
|
|
Set the splitting ratio of the fence located in the given direction.
|
|
.TP
|
|
.BI cycle " next|prev [--skip-floating|--skip-tiled|--skip-class-equal|--skip-class-differ]"
|
|
Focus the next or previous window matching the given constraints.
|
|
.TP
|
|
.BI nearest " older|newer [--skip-floating|--skip-tiled|--skip-class-equal|--skip-class-differ]"
|
|
Focus the nearest window matching the given constraints.
|
|
.TP
|
|
.BI biggest
|
|
Return the ID of the biggest tiled window.
|
|
.TP
|
|
.BI circulate " forward|backward"
|
|
Circulate the leaves in the given direction.
|
|
.TP
|
|
.BI grab_pointer " focus|move|resize_side|resize_corner"
|
|
Begin the specified pointer action.
|
|
.TP
|
|
.BI track_pointer " ROOT_X ROOT_Y"
|
|
Pass the pointer root coordinates for the current pointer action.
|
|
.TP
|
|
.BI ungrab_pointer
|
|
End the current pointer action.
|
|
.TP
|
|
.BI toggle_fullscreen
|
|
Toggle the fullscreen state of the current window.
|
|
.TP
|
|
.BI toggle_floating
|
|
Toggle the floating state of the current window.
|
|
.TP
|
|
.BI toggle_locked
|
|
Toggle the locked state of the current window (locked windows will not respond to the
|
|
.B close
|
|
message).
|
|
.TP
|
|
.BI toggle_visibility
|
|
Toggle the visibility of all the managed windows.
|
|
.TP
|
|
.BI close
|
|
Close the focused window.
|
|
.TP
|
|
.BI kill
|
|
Kill the focused window.
|
|
.TP
|
|
.BI send_to " DESKTOP_NAME [--follow]"
|
|
Send the focused window to the given desktop.
|
|
.TP
|
|
.BI drop_to " next|prev [--follow]"
|
|
Send the focused window to the next or previous desktop.
|
|
.TP
|
|
.BI send_to_monitor " MONITOR_NAME [--follow]"
|
|
Send the focused window to the given monitor.
|
|
.TP
|
|
.BI drop_to_monitor " next|prev [--follow]"
|
|
Send the focused window to the next or previous monitor.
|
|
.TP
|
|
.BI use " DESKTOP_NAME"
|
|
Select the given desktop.
|
|
.TP
|
|
.BI use_monitor " MONITOR_NAME"
|
|
Select the given monitor.
|
|
.TP
|
|
.BI alternate
|
|
Alternate between the current and the last focused window.
|
|
.TP
|
|
.BI alternate_desktop
|
|
Alternate between the current and the last focused desktop.
|
|
.TP
|
|
.BI alternate_monitor
|
|
Alternate between the current and the last focused monitor.
|
|
.TP
|
|
.BI add " DESKTOP_NAME ..."
|
|
Make new desktops with the given names.
|
|
.TP
|
|
.BI add_in " MONITOR_NAME DESKTOP_NAME ..."
|
|
Make new desktops with the given names in the given monitor.
|
|
.TP
|
|
.BI rename_monitor " CURRENT_NAME NEW_NAME"
|
|
Rename the monitor named CURRENT_NAME to NEW_NAME.
|
|
.TP
|
|
.BI rename " CURRENT_NAME NEW_NAME"
|
|
Rename the desktop named CURRENT_NAME to NEW_NAME.
|
|
.TP
|
|
.BI remove_desktop " DESKTOP_NAME ..."
|
|
Remove the given desktops.
|
|
.TP
|
|
.BI send_desktop_to " MONITOR_NAME [--follow]"
|
|
Send the current desktop to the given monitor.
|
|
.TP
|
|
.BI cycle_monitor " next|prev"
|
|
Select the next or previous monitor.
|
|
.TP
|
|
.BI cycle_desktop " next|prev [--skip-free|--skip-occupied]"
|
|
Select the next or previous desktop.
|
|
.TP
|
|
.BI layout " monocle|tiled [DESKTOP_NAME ...]"
|
|
Set the layout of the given desktops (current if none given).
|
|
.TP
|
|
.BI cycle_layout
|
|
Cycle the layout of the current desktop.
|
|
.TP
|
|
.BI rotate " clockwise|counter_clockwise|full_cycle"
|
|
Rotate the window tree.
|
|
.TP
|
|
.BI flip " horizontal|vertical"
|
|
Flip the window tree.
|
|
.TP
|
|
.B balance
|
|
Adjust the split ratios so that all windows occupy the same area.
|
|
.TP
|
|
.BI rule " PATTERN [DESKTOP_NAME] [floating] [follow]"
|
|
Create a new rule (PATTERN must match the class or instance name).
|
|
.TP
|
|
.BI remove_rule " UID ..."
|
|
Remove the rules with the given UIDs.
|
|
.TP
|
|
.BI put_status
|
|
Output the current state to the panel fifo.
|
|
.TP
|
|
.BI adopt_orphans
|
|
Manage all the unmanaged windows remaining from a previous session.
|
|
.TP
|
|
.BI restore_layout " FILE_PATH"
|
|
Restore the layout of each desktop from the content of FILE_PATH.
|
|
.TP
|
|
.BI restore_history " FILE_PATH"
|
|
Restore the history of each desktop from the content of FILE_PATH.
|
|
.TP
|
|
.BI quit " [EXIT_STATUS]"
|
|
Quit.
|
|
.SH SETTINGS
|
|
.P
|
|
Colors are either
|
|
.B X
|
|
color names (cf.
|
|
.I COLOR NAMES
|
|
in
|
|
.BR X (7))
|
|
or
|
|
.I #RRGGBB
|
|
, booleans are
|
|
.IR "true " "or " false .
|
|
.P
|
|
All the boolean settings are
|
|
.I false
|
|
by default.
|
|
.TP
|
|
.I focused_border_color
|
|
Color of the border of a focused window of a focused monitor.
|
|
.TP
|
|
.I active_border_color
|
|
Color of the border of a focused window of an unfocused monitor.
|
|
.TP
|
|
.I normal_border_color
|
|
Color of the border of an unfocused window.
|
|
.TP
|
|
.I presel_border_color
|
|
Color of the
|
|
.B presel
|
|
message feedback.
|
|
.TP
|
|
.I focused_locked_border_color
|
|
Color of the border of a focused locked window of a focused monitor.
|
|
.TP
|
|
.I active_locked_border_color
|
|
Color of the border of a focused locked window of an unfocused monitor.
|
|
.TP
|
|
.I normal_locked_border_color
|
|
Color of the border of an unfocused locked window.
|
|
.TP
|
|
.I urgent_border_color
|
|
Color of the border of an urgent window.
|
|
.TP
|
|
.I border_width
|
|
Window border width.
|
|
.TP
|
|
.I window_gap
|
|
Value of the gap that separates windows.
|
|
.TP
|
|
.I split_ratio
|
|
Default split ratio.
|
|
.TP
|
|
.I top_padding
|
|
.TQ
|
|
.I right_padding
|
|
.TQ
|
|
.I bottom_padding
|
|
.TQ
|
|
.I left_padding
|
|
Padding space added at the sides of the current monitor.
|
|
.TP
|
|
.I wm_name
|
|
The value that shall be used for the
|
|
.B _NET_WM_NAME
|
|
property of the root window.
|
|
.TP
|
|
.I borderless_monocle
|
|
Remove borders for tiled windows in monocle mode.
|
|
.TP
|
|
.I gapless_monocle
|
|
Remove gaps for tiled windows in monocle mode.
|
|
.TP
|
|
.I focus_follows_pointer
|
|
Focus the window under the pointer.
|
|
.TP
|
|
.I pointer_follows_monitor
|
|
When focusing a monitor, put the pointer at its center.
|
|
.TP
|
|
.I adaptative_raise
|
|
Prevent floating windows from being raised when they might cover other floating windows.
|
|
.TP
|
|
.I apply_shadow_property
|
|
Enable shadows for floating windows via the
|
|
.B _COMPTON_SHADOW
|
|
property.
|
|
.TP
|
|
.I auto_alernate
|
|
Interpret two consecutive identical
|
|
.B use
|
|
messages as an
|
|
.B alternate
|
|
message.
|
|
.TP
|
|
.I focus_by_distance
|
|
Use window or leaf distance for focus movement.
|
|
.TP
|
|
.I history_aware_focus
|
|
Give priority to the focus history when focusing nodes.
|
|
.SH ENVIRONMENT VARIABLES
|
|
.TP
|
|
.I BSPWM_SOCKET
|
|
The path of the socket used for the communication between
|
|
.BR bspc " and " bspwm .
|
|
.SH AUTHOR
|
|
.EX
|
|
Bastien Dejean <baskerville at lavabit.com>
|
|
.SH CONTRIBUTORS
|
|
.EX
|
|
Ivan Kanakarakis <ivan.kanak at gmail.com>
|
|
Thomas Adam <thomas at xteddy.org>
|
|
.EE
|
|
.SH HOMEPAGE
|
|
.TP
|
|
https://github.com/baskerville/bspwm
|
|
.SH MAILING LIST
|
|
.TP
|
|
bspwm at librelist.com
|
|
.SH SEE ALSO
|
|
.BR monsterwm (1),
|
|
.BR tmux (1).
|