General
Settings → General: startup, window behavior, the Pro layout behaviors, and updates.
General is the first pane and the only one with no lock at all on its free sections. It mixes everyday settings with a dimmed Pro Features group at the bottom. Those controls stay visible (and show your saved values) but are disabled until you upgrade.
Startup
| Control | Default | What it does | Config key |
|---|---|---|---|
| Launch FazerWM at login | off | Registers FazerWM as a macOS login item. While the key is unset in YAML, the toggle simply shows the real OS state, so a registration you added by hand in System Settings isn't misreported as off. If the toggle says on but registration failed, the pane shows an orange warning with the fix. | app.launchAtLogin |
Window Behavior
| Control | Default | What it does | Config key |
|---|---|---|---|
| New windows follow mouse | on | New windows open on the display under the cursor. | layout.newWindowsFollowMouse |
| Default window width | 2x | How wide a new tiled window is, in one of three modes (see below). A live preview strip shows the resolved width on each connected display. | layout.defaultWindowWidth |
| Window gaps | 6 px | Logical pixels between all windows, columns, and screen edges. Slider 0–50. | layout.gaps |
Width modes
The segmented control picks the mode; the contextual row beneath it sets the value:
| Mode | Row | Meaning |
|---|---|---|
| across | Stepper 1–8 | N windows fit across on a 16:9 display; wider displays fit more columns. The most adaptive mode. |
| % | Slider 10–100% | A fixed fraction of the display width. |
| pt | Field + stepper 400–5120 | A fixed width in points, regardless of display size. |
Switching modes remembers each mode's last value, so toggling 2x → 50% → back restores 2x. See Column Widths & Resizing for how widths behave after a window exists.
Pro Features PRO
All of the controls below are dimmed and disabled on the free tier (the whole group carries a lock icon in the pane header). Your saved values are kept and simply enforced to their gated default while unlocked. See Pro & Licensing.
| Control | Default | What it does | Config key |
|---|---|---|---|
| Pointer follows focused | Window | Where the cursor warps on focus changes: Display (only when focus lands on another display; the default), Window (always center on the focused window), or None. Free tier forces None. Windows with an avoidMouse rule are never warped. | layout.pointerFollowsFocus |
| Couple workspaces across displays | off | One workspace spans all displays; switching switches every screen at once. Free tier forces off. | layout.coupleWorkspaces |
| Focused window location | Keep in View | Where the focused column lands on the strip: Keep in View (free) or Center (Pro). Hyper+C toggles the session between the two without changing this setting. | layout.focusBehaviour |
| Wrap focus & moves across displays | on | Focus and move actions continue onto the adjacent display at a workspace edge. Free tier forces off. | layout.crossDisplayWrap |
| Require two presses to cross displays | on | A detent for wrap: the first press at an edge arms, the second press crosses. Prevents accidental display jumps. Only meaningful while wrap is on. | layout.crossDisplayWrapDetent |
| Focus after window close | Stay on Workspace | Who gets focus when a window closes: Stay on Workspace (keep focusing something in this workspace; never jumps displays) or Last Focused Window (the MRU window, wherever it lives). Free tier forces Last Focused. | layout.focusAfterClose |
| Stream FPS | 15 | Frame rate of live window thumbnails (Overview, tab tooltips). Slider 5–60; the free tier caps streaming at 1 FPS. | layout.thumbnails.streamFPS |
Updates
| Control | Default | What it does | Config key |
|---|---|---|---|
| Beta updates | off | Receive pre-release builds from the beta channel. Checking starts as soon as the change is saved; stable updates are always offered either way. | app.betaUpdates |
| Check for Updates… | — | Runs an update check immediately, independent of the automatic schedule. | — |
YAML equivalent
app:
launchAtLogin: false
betaUpdates: false
layout:
newWindowsFollowMouse: true
defaultWindowWidth: 2x # or "50%" or "1280pt"
gaps: 6
# ── Pro Features (forced to gated defaults on the free tier) ──
pointerFollowsFocus: window # display | window | none
coupleWorkspaces: false
focusBehaviour: keepInView # keepInView | center
crossDisplayWrap: true
crossDisplayWrapDetent: true
focusAfterClose: stayOnWorkspace # stayOnWorkspace | lastFocused
thumbnails:
streamFPS: 15