Skip to content

scratchpad

github-actions[bot] edited this page Oct 5, 2026 · 5 revisions

mangowm supports two types of scratchpads: the standard pool (Sway-like) and named scratchpads.

Standard Scratchpad

Any window can be sent to the "scratchpad" pile, which hides it. You can then cycle through them.

Keybindings:

# Send current window to scratchpad
bind=SUPER,i,minimized

# Toggle (show/hide) the scratchpad
bind=ALT,z,toggle_scratchpad

# Retrieve window from scratchpad (restore)
bind=SUPER+SHIFT,i,restore_minimized

Named Scratchpad

Named scratchpads are bound to specific keys and applications. When triggered, mangowm will either launch the app (if not running) or toggle its visibility.

1. Define the Window Rule

You must identify the app using a unique app_id or title and mark it as a named scratchpad. The application must support setting a custom app_id or title at launch. Common examples:

  • st -c my-appid — sets the app_id
  • kitty -T my-title — sets the window title
  • foot --app-id my-appid — sets the app_id

Use none as a placeholder when you only want to match by one field.

# Match by app_id
window_rule=is_named_scratchpad:1,width:1280,height:800,app_id:st-yazi

# Match by title
window_rule=is_named_scratchpad:1,width:1000,height:700,title:kitty-scratch

2. Bind the Toggle Key

Format: bind=MOD,KEY,toggle_named_scratchpad,app_id,title,command

Use none for whichever field you are not matching on.

# Match by app_id: launch 'st' with class 'st-yazi' running 'yazi'
bind=alt,h,toggle_named_scratchpad,st-yazi,none,st -c st-yazi -e yazi

# Match by title: launch 'kitty' with window title 'kitty-scratch'
bind=alt,k,toggle_named_scratchpad,none,kitty-scratch,kitty -T kitty-scratch

Appearance

You can customize the size of scratchpad windows relative to the screen.

scratchpad_width_ratio=0.8
scratchpad_height_ratio=0.9
scratchpad_color=0x516c93ff

Special Workspace (Tag 0)

The special workspace (Tag 0) provides an overlay workspace of windows that can be summoned anywhere with full layout support (Scroller, Master/Stack, Dwindle, etc.). When Tag 0 is active, windows from the underlying workspace remain visible in the background, and all windows on the special workspace are displayed above them.

Keybindings

# Toggle the special workspace overlay (Tag 0)
bind=SUPER,s,toggle_special_tag

# Move focused window to/from the special workspace
bind=SUPER+SHIFT,s,tag_special_tag

# Silently send active window to the special workspace without switching
bind=SUPER+CTRL,s,tag_special_silent

Window Rules for Special Workspace

You can automatically assign applications to launch directly on the special workspace using tags:0:

# Automatically open Spotify and Discord in the special workspace
window_rule=tags:0,app_id:spotify
window_rule=tags:0,app_id:discord

Configuration Options

You can configure background dimming and custom layout gaps for the special workspace:

# Background dim level when special workspace is active (0.0 to 1.0, default 0.5)
special_dim=0.5

# Inner and outer gaps for windows on the special workspace
special_gap_inner_horizontal=10
special_gap_inner_vertical=10
special_gap_outer_horizontal=20
special_gap_outer_vertical=20

Clone this wiki locally