Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

mods.wm.binds

Bind configuration

Type: list of (submodule)

Default: [ ]

Example:

[
  {
    args = [ ];
    command = "killActive";
    key = "Q";
    meta = {
      hyprland = { };
      niri = {
        desc = "Kill the active window";
        repeat = false;
      };
    };
    modKeys = [
      "Mod"
    ];
  }
]

mods.wm.binds.*.args

Additional arguments for the command

Type: list of string

Default: [ ]

Example: [ ]

mods.wm.binds.*.command

Command to execute

Type: (submodule) or one of “spawn”, “spawn-sh”, “quit”, “killActive”, “moveFocusUp”, “moveFocusRight”, “moveFocusDown”, “moveFocusLeft”, “moveWindowUp”, “moveWindowRight”, “moveWindowDown”, “moveWindowLeft”, “focusWorkspace”, “moveToWorkspace”, “toggleFloating”, “toggleFullscreen”

Default: ""

Example: "killActive"

mods.wm.binds.*.key

Key to bind

Type: string

Default: ""

Example: "Q"

mods.wm.binds.*.meta

Custom metadata per bind. Note, only supported environments are taken into account.

Type: submodule

Default: { }

Example: { }

mods.wm.binds.*.meta.hyprland

Niri meta for keybinds

Type: submodule

Default: { }

mods.wm.binds.*.meta.hyprland.repeat

Whether to repeat the keybind on hold

Type: boolean

Default: true

mods.wm.binds.*.meta.niri

Niri meta for keybinds

Type: submodule

Default: { }

mods.wm.binds.*.meta.niri.allowInhibit

Whether to allow inhibiting

Type: boolean

Default: true

mods.wm.binds.*.meta.niri.allowWhileLocked

Whether to allow while locked

Type: boolean

Default: false

mods.wm.binds.*.meta.niri.cooldown

Cooldown on bind

Type: signed integer or floating point number

Default: 0

mods.wm.binds.*.meta.niri.desc

Description for Hotkey overview

Type: string

Default: ""

mods.wm.binds.*.meta.niri.repeat

Whether to repeat the keybind on hold

Type: boolean

Default: true

mods.wm.binds.*.modKeys

List of modifier keys

Type: list of (one of “Mod”, “Super”, “Alt”, “Shift”, “Ctrl”)

Default: [ ]

Example:

[
  "Mod"
]

mods.wm.env

Environment configuration

Type: (submodule) or attribute set of string

Default: { }

Example:

{
  all = {
    EDITOR = "Neovim";
  };
  niri = {
    EDITOR = "Emacs";
  };
}

mods.wm.modKey

Mod key

Type: one of “Mod”, “Super”, “Alt”, “Shift”, “Ctrl”

Default: "Super"

Example: "Alt"

mods.wm.monitors

Monitor configuration

Type: list of (submodule)

Default: [ ]

Example:

[
  {
    name = "DP-1";
    positionX = 0;
    positionY = 0;
    refreshrate = 144;
    resolutionX = 1920;
    resolutionY = 1080;
    scale = 1;
    transform = "0";
    vrr = false;
  }
]

mods.wm.monitors.*.name

Name of the monitor

Type: string

Default: "DP-1"

Example: "DP-1"

mods.wm.monitors.*.positionX

PositionX of the monitor

Type: signed integer or floating point number

Default: 0

Example: 1920

mods.wm.monitors.*.positionY

PositionY of the monitor

Type: signed integer or floating point number

Default: 0

Example: 1080

mods.wm.monitors.*.refreshrate

Refreshrate of the monitor

Type: signed integer or floating point number

Default: 60

Example: 144

mods.wm.monitors.*.resolutionX

ResolutionX of the monitor

Type: signed integer or floating point number

Default: 1920

Example: 2560

mods.wm.monitors.*.resolutionY

ResolutionY of the monitor

Type: signed integer or floating point number

Default: 1080

Example: 1440

mods.wm.monitors.*.scale

Scale of the monitor

Type: signed integer or floating point number

Default: 1

Example: 2

mods.wm.monitors.*.transform

Transform of the monitor

Type: one of “0”, “90”, “180”, “270”, “360”

Default: "0"

Example: "90"

mods.wm.monitors.*.vrr

VRR status of the monitor

Type: boolean

Default: false

Example: true

mods.wm.startup

Start commands

Type: (submodule) or list of string

Default: [ ]

Example:

{
  all = [
    "oxinoti"
  ];
  hyprland = [
    "somehyprlandcommand"
  ];
  niri = [
    "someniricommand"
  ];
}

mods.wm.useDefaultBinds

Whether to use default keybinds

Type: boolean

Default: true

Example: false

mods.wm.useDefaultEnv

Whether to use default env variables

Type: boolean

Default: true

Example: false

mods.wm.useDefaultStartup

Whether to use default autostart commands

Type: boolean

Default: true

Example: false

mods.wm.useDefaultWindowRules

Whether to use default window rules

Type: boolean

Default: true

Example: false

mods.wm.windowRules

Window rules

Type: submodule

Default: { }

Example:

{
  niri = [
    ''
      match app-id=r#"^org\.keepassxc\.KeePassXC$"#
      match app-id=r#"^org\.gnome\.World\.Secrets$"#
      
      block-out-from "screen-capture"
    ''
    ''
      match app-id=r#"^steam$"#
      open-on-workspace "0"
    ''
  ];
}

mods.wm.windowRules.hyprland

Hyprland window rules

Type: list of string

Default: [ ]

Example: [ ]

mods.wm.windowRules.niri

Niri window rules

Type: list of strings concatenated with “\n”

Default: [ ]

Example: [ ]

mods.wm.workspaces

Workspace configuration

Type: list of (submodule)

Default: [ ]

Example:

[
  {
    monitor = "DP-1";
    name = "chat";
  }
]

mods.wm.workspaces.*.default

Whether the workspace is the default workspace. (Currently doesn’t do anything on niri)

Type: boolean

Default: false

Example: true

mods.wm.workspaces.*.monitor

Name of the monitor to bind the workspace to

Type: string

Default: ""

Example: "DP-1"

mods.wm.workspaces.*.name

Name of the workspace

Type: string

Default: ""

Example: "1"