Skip to content

Window Management

Sweets edited this page Feb 18, 2020 · 1 revision

Windows are managed by the user, hence the manual in manual tiling. Despite this, custard provides means of matching a window by either its name or class in order to automatically apply settings the user prescribes to the window.

When using the match command with a window class (window.class) or window name (window.name), the string is tested as a regular expression.

$ custard - match window.name 'expression' ([setting name] [setting value]...)
$ custard - match window.class 'expression' ([setting name] [setting value]...)
Setting name Default value Accepted inputs Behavior
borders 0 Any positive integer Sets the amount of borders for a matched window. Currently a maximum of three borders is supported.
border.size.inner 0 Any positive integer Sets the inner-border size for a matched window. Unused for single-border windows
border.size.outer 0 Any positive integer Sets the inner-border size for a matched window
border.color.focused #FFFFFFFF Any hexadecimal color, with or without an alpha channel Sets the focused color for a matched window border
border.color.unfocused #676767FF Any hexadecimal color, with or without an alpha channel Sets the unfocused color for a matched window border
border.color.background #000000FF Any hexadecimal color, with or without an alpha channel Sets the background color for a matched window. Also used as a border background color for two or more borders
border.colors.flipped False Any boolean (True or False) Flips border colors between the focus-state color and background color
geometry Monitor default geometry Any geometry name Sets the geometry of a matched window
workspace Current workspace Any positive integer Sets the workspace that a matched window is in by default

Example

To send Chrome to workspace 2

$ custard - match window.name 'Chrom(.+)' \
    workspace 2

To display images in a border-less window

$ custard - match window.class 'feh' \
    borders 0
Clone this wiki locally