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

Cheatsheet

A one-page reference for the default Mosaico keyboard shortcuts and CLI actions. Print it, pin it, or just keep this tab open.

Tip: every shortcut shown here can be remapped in ~/.config/mosaico/keybindings.toml. See Keyboard Bindings for the full configuration reference.

At a Glance

Alt + H/J/K/L            focus left/down/up/right
Alt + Shift + H/J/K/L    move/swap window left/down/up/right
Alt + 1 .. Alt + 8       switch to workspace N
Alt + Shift + 1 .. 8     send focused window to workspace N
Alt + N                  cycle layout (BSP -> VStack -> 3Col)
Alt + T                  toggle monocle (full-screen one window)
Alt + M                  minimize focused window
Alt + Q                  close focused window
Alt + Shift + R          retile (re-apply current layout)
Alt + Shift + P          pause / unpause all mosaico hotkeys

Focus

Move keyboard focus between tiled windows. Left and right cross monitors when no neighbor exists in that direction; up and down stay on the current monitor.

ShortcutActionCLI
Alt + HFocus leftmosaico action focus left
Alt + JFocus downmosaico action focus down
Alt + KFocus upmosaico action focus up
Alt + LFocus rightmosaico action focus right

Move

Swap the focused window with its neighbor in the given direction. Left and right can move a window between adjacent monitors; up and down swap within the same monitor.

ShortcutActionCLI
Alt + Shift + HMove leftmosaico action move left
Alt + Shift + JMove downmosaico action move down
Alt + Shift + KMove upmosaico action move up
Alt + Shift + LMove rightmosaico action move right

Workspaces

Each monitor has up to 8 workspaces. The default mode is per-monitor: switching workspace only affects the focused monitor. Set workspaces.mode = "global" in config.toml to flip every monitor in lockstep, like Windows virtual desktops. See Workspaces.

ShortcutActionCLI
Alt + 1Switch to workspace 1mosaico action goto-workspace-1
Alt + 2Switch to workspace 2mosaico action goto-workspace-2
Alt + 8Switch to workspace 8mosaico action goto-workspace-8
Alt + Shift + 1Send window to workspace 1mosaico action send-to-workspace-1
Alt + Shift + 2Send window to workspace 2mosaico action send-to-workspace-2
Alt + Shift + 8Send window to workspace 8mosaico action send-to-workspace-8

Layout

Cycle through Mosaico’s three tiling algorithms or switch the focused workspace into monocle mode (one window fills the work area). Retile forces a fresh re-application of the current layout.

ShortcutActionCLI
Alt + NCycle layout (BSP -> VerticalStack -> ThreeColumn -> …)mosaico action cycle-layout
Alt + TToggle monocle modemosaico action toggle-monocle
Alt + Shift + RRetilemosaico action retile

Per-workspace layout overrides are configured under [workspaces.layouts] in config.toml. See Tiling & Layouts.

Window

ShortcutActionCLI
Alt + QClose focused windowmosaico action close-focused
Alt + MMinimize focused windowmosaico action minimize-focused

Daemon

Pause every Mosaico hotkey (including the pause hotkey itself stays active so you can resume) when running a full-screen application that needs to claim its own keybindings. The status bar shows a red PAUSED pill while paused.

ShortcutActionCLI
Alt + Shift + PToggle pause / resumemosaico pause / mosaico unpause
Start the daemonmosaico start
Stop the daemonmosaico stop
Check statusmosaico status
Reload config (automatic)edit config.toml, save
Diagnose setupmosaico doctor

Modifier Keys

KeywordKey
altAlt
shiftShift
ctrlControl
winWindows / Super

Combine in keybindings.toml with modifiers = ["alt", "shift"].

Recognised Key Names

TypeExamples
LettersA .. Z (case-insensitive)
Digits0 .. 9
FunctionF1 .. F12
NamedEnter, Escape, Tab, Space, Backspace, Delete, Insert, Home, End, PageUp, PageDown, Up, Down, Left, Right

Set them in ~/.config/mosaico/keybindings.toml like this:

[[keybinding]]
action = "focus-left"
key = "H"
modifiers = ["alt"]

[[keybinding]]
action = "send-to-workspace-3"
key = "3"
modifiers = ["alt", "shift"]

Themes at a Glance

[theme]
name = "catppuccin"   # catppuccin, rose-pine, tokyo-night
flavor = "mocha"      # depends on family (see below)
FamilyFlavors
catppuccinmocha, macchiato, frappe, latte
rose-pinemain, moon, dawn
tokyo-nightnight, storm, day

See Theming for palette colors per family.

Border Colors at a Glance

[borders]
width = 4              # 0 disables every border
corner_style = "small" # square / small / round

[borders.colors]
focused = ""           # empty = theme default
monocle = ""           # empty = theme default
unfocused = ""         # empty = theme default; "none" disables unfocused borders

See Focus Borders for the full lifecycle.

See Also