more markdown linting

This commit is contained in:
NotAShelf 2022-10-19 19:14:08 +03:00
parent b0890a7873
commit eaf7433b99
No known key found for this signature in database
GPG key ID: 5B5C8895F28445F1
7 changed files with 164 additions and 146 deletions

View file

@ -109,7 +109,7 @@ check out your switches in `hyprctl devices`.
## Bind flags ## Bind flags
bind supports flags in this format: `bind` supports flags in this format:
```ini ```ini
bind[flags]=... bind[flags]=...
@ -121,7 +121,7 @@ e.g.:
bindrl=MOD,KEY,exec,amongus bindrl=MOD,KEY,exec,amongus
``` ```
flags: Flags:
```ini ```ini
l -> locked, aka. works also when an input inhibitor is active l -> locked, aka. works also when an input inhibitor is active
@ -130,12 +130,23 @@ e -> repeat, will repeat when held.
m -> mouse, see below m -> mouse, see below
``` ```
Example Usage:
// TODO: ADD EXAMPLES //
```ini
bindl=
bindr=
binde=
# See below for bindm
```
## Mouse Binds ## Mouse Binds
Mouse binds are binds that heavily rely on a mouse, usually its movement. Mouse binds are binds that heavily rely on a mouse, usually its movement.
They will have one less arg, and look for example like this: They will have one less arg, and look for example like this:
``` ```ini
bindm=ALT,mouse:272,movewindow bindm=ALT,mouse:272,movewindow
``` ```
@ -151,7 +162,7 @@ _Available mouse binds_:
_Common mouse buttons' codes:_ _Common mouse buttons' codes:_
``` ```txt
LMB -> 272 LMB -> 272
RMB -> 273 RMB -> 273
``` ```

View file

@ -1,3 +1,5 @@
# Configuring Hyprland
The config is located in `~/.config/hypr/hyprland.conf`. The config is located in `~/.config/hypr/hyprland.conf`.
I recommend you copy the `examples/hyprland.conf`, but you can also edit the I recommend you copy the `examples/hyprland.conf`, but you can also edit the
@ -18,7 +20,7 @@ linked further down here for full configuration instructions.
toggleable / numerical options. toggleable / numerical options.
{{< /hint >}} {{< /hint >}}
# Line style ## Line style
Every config line is a command followed by a value. Every config line is a command followed by a value.
@ -39,12 +41,12 @@ COMMAND = VALUE
is valid. is valid.
# Basic configuring ## Basic configuring
To configure the "options" of Hyprland, animations, styling, etc. see To configure the "options" of Hyprland, animations, styling, etc. see
[Variables](../Variables). [Variables](../Variables).
# Advanced configuring ## Advanced configuring
Some keywords (binds, curves, execs, monitors, etc.) are not variables but define Some keywords (binds, curves, execs, monitors, etc.) are not variables but define
special behaviour. special behaviour.

View file

@ -1,6 +1,6 @@
# Dispatchers # Dispatchers
# Table of contents ## Table of contents
{{< toc >}} {{< toc >}}
@ -19,7 +19,7 @@ layout pages (See the sidebar).
| floatdelta | a float value delta, e.g `-0.2` or `+0.2`. | | floatdelta | a float value delta, e.g `-0.2` or `+0.2`. |
| workspaceopt | see below. | | workspaceopt | see below. |
# Dispatchers ## List of Dispatchers
| Dispatcher | Description | Params | | Dispatcher | Description | Params |
| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------- | | ----------------------------- | ------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------- |
@ -61,13 +61,13 @@ layout pages (See the sidebar).
it is NOT recommended to set DPMS with a keybind directly, as it it is NOT recommended to set DPMS with a keybind directly, as it
might cause undefined behavior. Instead, consider something like might cause undefined behavior. Instead, consider something like
``` ```ini
bind = MOD,KEY,exec,sleep 1 && hyprctl dispatch dpms off bind = MOD,KEY,exec,sleep 1 && hyprctl dispatch dpms off
``` ```
{{< /hint >}} {{< /hint >}}
# Workspaces ## Workspaces
You have seven choices: You have seven choices:
@ -102,7 +102,7 @@ will send it to the currently active _real_ workspace.
## Workspace options ## Workspace options
``` ```txt
allfloat -> makes all new windows floating (also floats/unfloats windows on toggle) allfloat -> makes all new windows floating (also floats/unfloats windows on toggle)
allpseudo -> makes all new windows pseudo (also pseudos/unpseudos on toggle) allpseudo -> makes all new windows pseudo (also pseudos/unpseudos on toggle)
``` ```

View file

@ -105,7 +105,7 @@ device:name {
} }
``` ```
the `name` can be easily obtained by doing `hyprctl devices`. The `name` can be easily obtained by doing `hyprctl devices`.
Inside of it, put your config options. All options from the `input` category Inside of it, put your config options. All options from the `input` category
(and all subcategories, e.g. `input:touchpad`) can be put inside, **EXCEPT**: (and all subcategories, e.g. `input:touchpad`) can be put inside, **EXCEPT**:

View file

@ -1,3 +1,5 @@
# Hyprctl
`hyprctl` is a utility for controlling some parts of the compositor from a CLI `hyprctl` is a utility for controlling some parts of the compositor from a CLI
or a script. If you install with `make install`, or any package, it should or a script. If you install with `make install`, or any package, it should
automatically be installed. automatically be installed.
@ -8,7 +10,7 @@ the terminal.
If it's not, go to the repo root and `/hyprctl`. Issue a `make all` and then If it's not, go to the repo root and `/hyprctl`. Issue a `make all` and then
`sudo cp ./hyprctl /usr/bin`. `sudo cp ./hyprctl /usr/bin`.
# Commands ## Using Hyprctl
{{< hint type=warning >}} {{< hint type=warning >}}
@ -21,7 +23,7 @@ For live event handling, see the [socket2](../../IPC/).
{{< /hint >}} {{< /hint >}}
## Control ## Commands
### Dispatch ### Dispatch
@ -107,7 +109,7 @@ hyprctl getoption general:border_size
See [Variables](./Variables) for section and options you can use. See [Variables](./Variables) for section and options you can use.
# Batch ## Batch
You can also use `--batch` to specify a batch of commands to execute You can also use `--batch` to specify a batch of commands to execute
@ -119,7 +121,7 @@ hyprctl --batch "keyword general:border_size 2 ; keyword general:gaps_out 20"
`;` separates the commands `;` separates the commands
# Flags ## Flags
You can specify flags for the request like this: You can specify flags for the request like this:
@ -129,6 +131,6 @@ hyprctl -j monitors
flag list: flag list:
``` ```txt
j -> output in JSON j -> output in JSON
``` ```

View file

@ -10,19 +10,19 @@ the layout pages and not here. (See the Sidebar for Dwindle and Master layouts)
## Variable types ## Variable types
| type | description | | type | description |
|---|---| | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| int | integer | | int | integer |
| bool | boolean, `true` or `false` (`yes` or `no`, `0` or `1`) - any numerical value that is not `0` or `1` will cause undefined behaviour. | | bool | boolean, `true` or `false` (`yes` or `no`, `0` or `1`) - any numerical value that is not `0` or `1` will cause undefined behaviour. |
| float | floating point number | | float | floating point number |
| color | color (see hint below for color info) | | color | color (see hint below for color info) |
| vec2 | vector with 2 values (float), separated by a space (e.g. `0 0` or `-10.9 99.1`) | | vec2 | vector with 2 values (float), separated by a space (e.g. `0 0` or `-10.9 99.1`) |
| MOD | a string modmask (e.g. `SUPER` or `SUPERSHIFT` or `SUPER + SHIFT` or `SUPER and SHIFT` or `CTRL_SHIFT` or empty for none. You are allowed to put any separators you please except for a `,`) | | MOD | a string modmask (e.g. `SUPER` or `SUPERSHIFT` or `SUPER + SHIFT` or `SUPER and SHIFT` or `CTRL_SHIFT` or empty for none. You are allowed to put any separators you please except for a `,`) |
| str | a string | | str | a string |
{{< hint type=info >}} {{< hint type=info >}}
***Colors:*** **_Colors:_**
You have 3 options: You have 3 options:
@ -32,8 +32,7 @@ rgb(), e.g. `rgb(b3ff1a)`
legacy, e.g. `0xeeb3ff1a` -> ARGB order legacy, e.g. `0xeeb3ff1a` -> ARGB order
**_Mod list:_**
***Mod list:***
```ini ```ini
SHIFT CAPS CTRL/CONTROL ALT MOD2 MOD3 SUPER/WIN/LOGO/MOD4 MOD5 SHIFT CAPS CTRL/CONTROL ALT MOD2 MOD3 SUPER/WIN/LOGO/MOD4 MOD5
@ -45,20 +44,20 @@ SHIFT CAPS CTRL/CONTROL ALT MOD2 MOD3 SUPER/WIN/LOGO/MOD4 MOD5
### General ### General
| name | description | type | default | | name | description | type | default |
|---|---|---|---|---| | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----- | ---------- |
| sensitivity | mouse sensitivity (legacy, may cause bugs if not 1, prefer `input:sensitivity`) | float | 1.0 | | sensitivity | mouse sensitivity (legacy, may cause bugs if not 1, prefer `input:sensitivity`) | float | 1.0 |
| border_size | self-explanatory | int | 1 | | border_size | self-explanatory | int | 1 |
| no_border_on_floating | disable borders for floating windows | bool | false | | no_border_on_floating | disable borders for floating windows | bool | false |
| gaps_in | gaps between windows | int | 5 | | gaps_in | gaps between windows | int | 5 |
| gaps_out | gaps between windows and monitor edges | int | 20 | | gaps_out | gaps between windows and monitor edges | int | 20 |
| col.inactive_border | self-explanatory | color | 0xffffffff | | col.inactive_border | self-explanatory | color | 0xffffffff |
| col.active_border | self-explanatory | color | 0xff444444 | | col.active_border | self-explanatory | color | 0xff444444 |
| cursor_inactive_timeout | in seconds, after how many seconds of cursor's inactivity to hide it. Set to `0` for never. | int | 0 | | cursor_inactive_timeout | in seconds, after how many seconds of cursor's inactivity to hide it. Set to `0` for never. | int | 0 |
| damage_tracking | Makes the compositor redraw only the needed bits of the display. Saves on resources by not redrawing when not needed. Available modes: `none, monitor, full`. You don't need to know what different modes do, just always use `full`. | str | full | | damage_tracking | Makes the compositor redraw only the needed bits of the display. Saves on resources by not redrawing when not needed. Available modes: `none, monitor, full`. You don't need to know what different modes do, just always use `full`. | str | full |
| layout | which layout to use. (Available: `dwindle`, `master`) | str | dwindle | | layout | which layout to use. (Available: `dwindle`, `master`) | str | dwindle |
| no_cursor_warps | if true, will not warp the cursor in many cases (focusing, keybinds, etc) | bool | false | | no_cursor_warps | if true, will not warp the cursor in many cases (focusing, keybinds, etc) | bool | false |
| apply_sens_to_raw | if on, will also apply the sensitivity to raw mouse output (e.g. sensitivity in games) **NOTICE:** ***really*** not recommended. | bool | false | | apply_sens_to_raw | if on, will also apply the sensitivity to raw mouse output (e.g. sensitivity in games) **NOTICE:** **_really_** not recommended. | bool | false |
{{< hint type=warning >}} {{< hint type=warning >}}
Prefer using `input:sensitivity` over `general:sensitivity` to avoid bugs, especially with Wine/Proton apps. Prefer using `input:sensitivity` over `general:sensitivity` to avoid bugs, especially with Wine/Proton apps.
@ -66,27 +65,27 @@ Prefer using `input:sensitivity` over `general:sensitivity` to avoid bugs, espec
### Decoration ### Decoration
| name | description | type | default | | name | description | type | default |
|---|---|---|---|---| | ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----- | ---------- |
| rounding | rounded corners' radius (in layout px) | int | 0 | | rounding | rounded corners' radius (in layout px) | int | 0 |
| multisample_edges | enable antialiasing (no-jaggies) for rounded corners | bool | true | | multisample_edges | enable antialiasing (no-jaggies) for rounded corners | bool | true |
| active_opacity | self-explanatory, only for windows. (0.0 - 1.0) | float | 1.0 | | active_opacity | self-explanatory, only for windows. (0.0 - 1.0) | float | 1.0 |
| inactive_opacity | self-explanatory, only for windows. (0.0 - 1.0) | float | 1.0 | | inactive_opacity | self-explanatory, only for windows. (0.0 - 1.0) | float | 1.0 |
| fullscreen_opacity | self-explanatory, only for windows. (0.0 - 1.0) | float | 1.0 | | fullscreen_opacity | self-explanatory, only for windows. (0.0 - 1.0) | float | 1.0 |
| blur | enable kawase window background blur | bool | true | | blur | enable kawase window background blur | bool | true |
| blur_size | blur size (distance) | int | 8 | | blur_size | blur size (distance) | int | 8 |
| blur_passes | the amount of passes to perform | int | 1 | | blur_passes | the amount of passes to perform | int | 1 |
| blur_ignore_opacity | make the blur layer ignore the opacity of the window | bool | false | | blur_ignore_opacity | make the blur layer ignore the opacity of the window | bool | false |
| blur_new_optimizations | whether to enable further optimizations to the blur. Recommended to turn on, as it will massively improve performance, but some people have experienced graphical issues | bool | false | | blur_new_optimizations | whether to enable further optimizations to the blur. Recommended to turn on, as it will massively improve performance, but some people have experienced graphical issues | bool | false |
| drop_shadow | enable drop shadows on windows | bool | true | | drop_shadow | enable drop shadows on windows | bool | true |
| shadow_range | Shadow range ("size") in layout px | int | 4 | | shadow_range | Shadow range ("size") in layout px | int | 4 |
| shadow_render_power | (1 - 4), in what power to render the falloff (more power, the faster the falloff) | int | 3 | | shadow_render_power | (1 - 4), in what power to render the falloff (more power, the faster the falloff) | int | 3 |
| shadow_ignore_window | if true, the shadow will not be rendered behind the window itself, only around it. | bool | true | | shadow_ignore_window | if true, the shadow will not be rendered behind the window itself, only around it. | bool | true |
| col.shadow | shadow's color. Alpha dictates shadow's opacity. | color | 0xee1a1a1a | | col.shadow | shadow's color. Alpha dictates shadow's opacity. | color | 0xee1a1a1a |
| col.shadow_inactive | inactive shadow color. (if not set, will fall back to col.shadow) | color | unset | | col.shadow_inactive | inactive shadow color. (if not set, will fall back to col.shadow) | color | unset |
| shadow_offset | shadow's rendering offset. | vec2 | [0, 0] | | shadow_offset | shadow's rendering offset. | vec2 | [0, 0] |
| dim_inactive | enables dimming of inactive windows | bool | false | | dim_inactive | enables dimming of inactive windows | bool | false |
| dim_strength | how much inactive windows should be dimmed, 0.0 - 1.0 | float | 0.5 | | dim_strength | how much inactive windows should be dimmed, 0.0 - 1.0 | float | 0.5 |
{{< hint type=info >}} {{< hint type=info >}}
@ -107,9 +106,9 @@ Using `blur_new_optimizations` with an animated wallpaper may actually increase
### Animations ### Animations
| name | description | type | default | | name | description | type | default |
|---|---|---|---|---| | ------- | ----------------- | ---- | ------- |
| enabled | enable animations | bool | true | | enabled | enable animations | bool | true |
{{< hint type=info >}} {{< hint type=info >}}
@ -119,35 +118,36 @@ _[More about Animations](../Animations)._
### Input ### Input
| name | description | type | default | | name | description | type | default |
|---|---|---|---|---| | --------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- | ----- | --------- |
| kb_layout | Appropriate XKB keymap parameter | str | us | | kb_layout | Appropriate XKB keymap parameter | str | us |
| kb_variant | Appropriate XKB keymap parameter | str | \[EMPTY\] | | kb_variant | Appropriate XKB keymap parameter | str | \[EMPTY\] |
| kb_model | Appropriate XKB keymap parameter | str | \[EMPTY\] | | kb_model | Appropriate XKB keymap parameter | str | \[EMPTY\] |
| kb_options | Appropriate XKB keymap parameter | str | \[EMPTY\] | | kb_options | Appropriate XKB keymap parameter | str | \[EMPTY\] |
| kb_rules | Appropriate XKB keymap parameter | str | \[EMPTY\] | | kb_rules | Appropriate XKB keymap parameter | str | \[EMPTY\] |
| kb_file | If you prefer, you can use a path to an .xkb file. | str | \[EMPTY\] | | kb_file | If you prefer, you can use a path to an .xkb file. | str | \[EMPTY\] |
| follow_mouse | (0/1/2/3) enable mouse following (focus on enter new window) - See the note below for more info | int | 1 | | follow_mouse | (0/1/2/3) enable mouse following (focus on enter new window) - See the note below for more info | int | 1 |
| float_switch_override_focus | if enabled (1 or 2), focus will follow mouse if changing from tiled to floating and vice versa. 2 will also follow mouse on float -> float switches | int | 1 | | float_switch_override_focus | if enabled (1 or 2), focus will follow mouse if changing from tiled to floating and vice versa. 2 will also follow mouse on float -> float switches | int | 1 |
| repeat_rate | in repeats per second, the repeat rate for held keys | int | 25 | | repeat_rate | in repeats per second, the repeat rate for held keys | int | 25 |
| repeat_delay | in ms, the repeat delay (grace period) before the spam | int | 600 | | repeat_delay | in ms, the repeat delay (grace period) before the spam | int | 600 |
| natural_scroll | enable natural scroll | bool | false | | natural_scroll | enable natural scroll | bool | false |
| numlock_by_default | lock numlock by default | bool | false | | numlock_by_default | lock numlock by default | bool | false |
| force_no_accel | force no mouse acceleration, bypasses most of your pointer settings to get as raw of a signal as possible. | bool | false | | force_no_accel | force no mouse acceleration, bypasses most of your pointer settings to get as raw of a signal as possible. | bool | false |
| sensitivity | set the libinput sensitivity. This **HAS** to be from -1 to 1, or else it will be clamped. | float | 0.0 | | sensitivity | set the libinput sensitivity. This **HAS** to be from -1 to 1, or else it will be clamped. | float | 0.0 |
| left_handed | switches RMB and LMB | bool | false | | left_handed | switches RMB and LMB | bool | false |
| accel_profile | set the libinput acceleration profile. Can be one of `adaptive`, `flat`. | str | \[EMPTY\] | accel_profile | set the libinput acceleration profile. Can be one of `adaptive`, `flat`. | str | \[EMPTY\] |
| scroll_method | set the libinput scroll method. Can be one of `2fg` (2 fingers), `edge`, `on_button_down`, `no_scroll`. | str | \[EMPTY\] | scroll_method | set the libinput scroll method. Can be one of `2fg` (2 fingers), `edge`, `on_button_down`, `no_scroll`. | str | \[EMPTY\] |
{{< hint type=info >}} {{< hint type=info >}}
### Follow Mouse ### Follow Mouse
- 0 - disabled - 0 - disabled
- 1 - full - 1 - full
- 2 - loose. Will focus mouse on other windows on focus but not the keyboard. - 2 - loose. Will focus mouse on other windows on focus but not the keyboard.
- 3 - full loose, will not refocus on click, but allow mouse focus to be - 3 - full loose, will not refocus on click, but allow mouse focus to be
detached from the keyboard like in 2. detached from the keyboard like in 2.
{{< /hint >}} {{< /hint >}}
{{< hint type=info >}} {{< hint type=info >}}
For switchable keyboard configs, take a look at [the uncommon tips & tricks page entry](../Uncommon-tips--tricks/#switchable-keyboard-layouts). For switchable keyboard configs, take a look at [the uncommon tips & tricks page entry](../Uncommon-tips--tricks/#switchable-keyboard-layouts).
@ -157,19 +157,20 @@ For switchable keyboard configs, take a look at [the uncommon tips & tricks page
_Subcategory `input:touchpad:`_ _Subcategory `input:touchpad:`_
| name | description | type | default | | name | description | type | default |
|---|---|---|---|---| | ----------------------- | ------------------------------------ | ----- | ------- |
| disable_while_typing | disables the touchpad while typing | bool | true | | disable_while_typing | disables the touchpad while typing | bool | true |
| natural_scroll | self-explanatory | bool | false | | natural_scroll | self-explanatory | bool | false |
| clickfinger_behavior | self-explanatory | bool | false | | clickfinger_behavior | self-explanatory | bool | false |
| middle_button_emulation | self-explanatory | bool | false | | middle_button_emulation | self-explanatory | bool | false |
| tap-to-click | self-explanatory | bool | true | | tap-to-click | self-explanatory | bool | true |
| drag_lock | enable dragging with drag lock | bool | false | | drag_lock | enable dragging with drag lock | bool | false |
| scroll_factor | control the amount of scroll applied | float | 1.0 | scroll_factor | control the amount of scroll applied | float | 1.0 |
{{< hint type=important >}} {{< hint type=important >}}
A subcategory is a nested category: A subcategory is a nested category:
```
```ini
input { input {
# ... # ...
# ... # ...
@ -188,10 +189,10 @@ Doing `input:touchpad {` is **invalid**!
_Subcategory `input:touchdevice:`_ _Subcategory `input:touchdevice:`_
| name | description | type | default | | name | description | type | default |
|---|---|---|---|---| | --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------ | --------- |
| transform | transform the input from touchdevices. The possible transformations are the same as [those of the monitors](../Monitors/#rotating-and-the-default-workspace) | int | 0 | | transform | transform the input from touchdevices. The possible transformations are the same as [those of the monitors](../Monitors/#rotating-and-the-default-workspace) | int | 0 |
| output | the output to bind touch devices. Empty means unset and will use the current / autodetected. | string | \[EMPTY\] | | output | the output to bind touch devices. Empty means unset and will use the current / autodetected. | string | \[EMPTY\] |
### Per-device input config ### Per-device input config
@ -199,39 +200,39 @@ Described [here](../Keywords#per-device-input-configs).
## Gestures ## Gestures
| name | description | type | default | | name | description | type | default |
|---|---|---|---|---| | ---------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----- | ------- |
| workspace_swipe | enable workspace swipe gesture | bool | false | | workspace_swipe | enable workspace swipe gesture | bool | false |
| workspace_swipe_fingers | how many fingers for the gesture | int | 3 | | workspace_swipe_fingers | how many fingers for the gesture | int | 3 |
| workspace_swipe_distance | in px, the distance of the gesture | int | 300 | | workspace_swipe_distance | in px, the distance of the gesture | int | 300 |
| workspace_swipe_invert | invert the direction | bool | true | | workspace_swipe_invert | invert the direction | bool | true |
| workspace_swipe_min_speed_to_force | minimum speed in px per timepoint to force the change ignoring `cancel_ratio`. Setting to `0` will disable this mechanic. | int | 30 | | workspace_swipe_min_speed_to_force | minimum speed in px per timepoint to force the change ignoring `cancel_ratio`. Setting to `0` will disable this mechanic. | int | 30 |
| workspace_swipe_cancel_ratio | (0.0 - 1.0) how much the swipe has to proceed in order to commence it. (0.7 -> if > 0.7 * distance, switch, if less, revert) | float | 0.5 | | workspace_swipe_cancel_ratio | (0.0 - 1.0) how much the swipe has to proceed in order to commence it. (0.7 -> if > 0.7 \* distance, switch, if less, revert) | float | 0.5 |
## Misc ## Misc
| name | description | type | default | | name | description | type | default |
|---|---|---|---|---| | ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---- | --------- |
| disable_hyprland_logo | disables the hyprland logo background. :( | bool | false | | disable_hyprland_logo | disables the hyprland logo background. :( | bool | false |
| disable_splash_rendering | disables the hyprland splash rendering. (requires a monitor reload to take effect) | bool | false | | disable_splash_rendering | disables the hyprland splash rendering. (requires a monitor reload to take effect) | bool | false |
| no_vfr | disables VFR (variable frame rate) - VFR increases battery life at the expense of possible issues on a few monitors. | bool | true | | no_vfr | disables VFR (variable frame rate) - VFR increases battery life at the expense of possible issues on a few monitors. | bool | true |
| damage_entire_on_snapshot | (deprecated: do not enable) Damage the entire monitor when rendering snapshots. Recommended with transformed displays. Do not use without transformed displays. | bool | false | | damage_entire_on_snapshot | (deprecated: do not enable) Damage the entire monitor when rendering snapshots. Recommended with transformed displays. Do not use without transformed displays. | bool | false |
| mouse_move_enables_dpms | If DPMS is set to off, wake up the monitors if the mouse moves. | bool | false | | mouse_move_enables_dpms | If DPMS is set to off, wake up the monitors if the mouse moves. | bool | false |
| always_follow_on_dnd | Will make mouse focus follow the mouse when drag and dropping. Recommended to leave it enabled, especially for people using focus follows mouse at 0. | bool | true | | always_follow_on_dnd | Will make mouse focus follow the mouse when drag and dropping. Recommended to leave it enabled, especially for people using focus follows mouse at 0. | bool | true |
| layers_hog_keyboard_focus | If true, will make keyboard-interactive layers keep their focus on mouse move (e.g. wofi, bemenu) | bool | true | | layers_hog_keyboard_focus | If true, will make keyboard-interactive layers keep their focus on mouse move (e.g. wofi, bemenu) | bool | true |
| animate_manual_resizes | If true, will animate manual window resizes/moves | bool | false | | animate_manual_resizes | If true, will animate manual window resizes/moves | bool | false |
| disable_autoreload | If true, the config will not reload automatically on save, and instead needs to be reloaded with `hyprctl reload`. Might save on battery. | bool | false | | disable_autoreload | If true, the config will not reload automatically on save, and instead needs to be reloaded with `hyprctl reload`. Might save on battery. | bool | false |
| enable_swallow | Enable window swallowing | bool | false | | enable_swallow | Enable window swallowing | bool | false |
| swallow_regex | The *class* regex to be used for windows that should be swallowed (usually, a terminal) | str | \[EMPTY\] | | swallow_regex | The _class_ regex to be used for windows that should be swallowed (usually, a terminal) | str | \[EMPTY\] |
## Binds ## Binds
| name | description | type | default | | name | description | type | default |
|---|---|---|---|---| | ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---- | ------- |
| pass_mouse_when_bound | if disabled, will not pass the mouse events to apps / dragging windows around if a keybind has been triggered. | bool | false | | pass_mouse_when_bound | if disabled, will not pass the mouse events to apps / dragging windows around if a keybind has been triggered. | bool | false |
| scroll_event_delay | in ms, how many ms to wait after a scroll event to allow to pass another one for the binds. | int | 300 | | scroll_event_delay | in ms, how many ms to wait after a scroll event to allow to pass another one for the binds. | int | 300 |
| workspace_back_and_forth | If enabled, an attempt to switch to the currently focused workspace will instead switch to the previous workspace. Akin to i3's *auto_back_and_forth*. | bool | false | | workspace_back_and_forth | If enabled, an attempt to switch to the currently focused workspace will instead switch to the previous workspace. Akin to i3's _auto_back_and_forth_. | bool | false |
| allow_workspace_cycles | If enabled, workspaces don't forget their previous workspace, so cycles can be created by switching to the first workspace in a sequence, then endlessly going to the previous workspace. | bool | false | | allow_workspace_cycles | If enabled, workspaces don't forget their previous workspace, so cycles can be created by switching to the first workspace in a sequence, then endlessly going to the previous workspace. | bool | false |
## Debug ## Debug
@ -241,12 +242,12 @@ Only for developers.
{{< /hint >}} {{< /hint >}}
| name | description | type | default | | name | description | type | default |
|---|---|---|---|---| | ------------ | ---------------------------------------------------------------------- | ---- | ------- |
| overlay | print the debug performance overlay. Disable VFR for accurate results. | bool | false | | overlay | print the debug performance overlay. Disable VFR for accurate results. | bool | false |
| damage_blink | (epilepsy warning!) flash areas updated with damage tracking | bool | false | | damage_blink | (epilepsy warning!) flash areas updated with damage tracking | bool | false |
| disable_logs | self-explanatory | bool | false | | disable_logs | self-explanatory | bool | false |
| disable_time | disables time logging | bool | true | | disable_time | disables time logging | bool | true |
## More ## More

View file

@ -14,10 +14,10 @@ You can set window rules to achieve different behaviours from the active contain
windowrule=RULE,WINDOW windowrule=RULE,WINDOW
``` ```
+ `RULE` is a rule (and a param if applicable) - `RULE` is a rule (and a param if applicable)
+ `WINDOW` is a RegEx, either: - `WINDOW` is a RegEx, either:
+ plain RegEx (for matching a window class); - plain RegEx (for matching a window class);
+ `title:` followed by a regex (for matching a window's title) - `title:` followed by a regex (for matching a window's title)
#### Examples #### Examples
@ -33,7 +33,8 @@ rule system, window rules V2 were implemented.
In V2, you are allowed to match multiple variables. In V2, you are allowed to match multiple variables.
the `RULE` field is unchanged, but in the `WINDOW` field, you can put regexes for multiple values like so: the `RULE` field is unchanged, but in the `WINDOW` field, you can put regexes
for multiple values like so:
```ini ```ini
windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
@ -48,11 +49,12 @@ xwayland - 0/1
floating - 0/1 floating - 0/1
``` ```
Keep in mind that you *have* to declare at least one field, but not all. Keep in mind that you _have_ to declare at least one field, but not all.
{{< hint type=tip >}} {{< hint type=tip >}}
To get more information about a window's class, title, XWayland status or its size; you can use `hyprctl clients`. To get more information about a window's class, title, XWayland status or its size;
you can use `hyprctl clients`.
{{< /hint >}} {{< /hint >}}
@ -81,7 +83,7 @@ To get more information about a window's class, title, XWayland status or its si
| pin | pins the window _note: floating only_ | | pin | pins the window _note: floating only_ |
| noanim | disables the animations for the window | | noanim | disables the animations for the window |
### Examples ### Example Rules
```ini ```ini
windowrule = move 100 100,^(kitty)$ windowrule = move 100 100,^(kitty)$
@ -93,10 +95,10 @@ windowrule = noblur,^(firefox)$
{{< hint type=tip >}} {{< hint type=tip >}}
Opacity is _always_ a PRODUCT of all opacities. E.g. active_opacity to Opacity is _always_ a PRODUCT of all opacities. E.g. active*opacity to
0.5 and windowrule opacity to 0.5 will result in a total opacity 0.25. You are 0.5 and windowrule opacity to 0.5 will result in a total opacity 0.25. You are
allowed to set opacities over 1, but any opacity product over 1 will cause allowed to set opacities over 1, but any opacity product over 1 will cause
graphical glitches. E.g. 0.5 _2 = 1, and it will be fine, 0.5_ 4 will cause graphical glitches. E.g. 0.5 \_2 = 1, and it will be fine, 0.5* 4 will cause
graphical glitches. graphical glitches.
{{< /hint >}} {{< /hint >}}