Making the plain application keys focus an existing window was the wrong call. It reads well in a demo and it is what macOS does, but it made "give me another terminal" the awkward case -- and on a tiling desktop a second terminal beside the first is the normal way to work, not an edge case. Reaching for the launcher to open a second file manager is not an improvement on anything. So the plain keys do what they always did, and SUPER+ALT is the new capability rather than a tax on the old one: go to the terminal, editor, browser, files, calculator or mail you already have, wherever it is, and start one only if there is none. ALT rather than SHIFT because SUPER+SHIFT is already the window-manipulation space -- Files, Neovim and Settings would have collided with Focus session, Taller and Shorter, and breaking two keys out of the eight-key resize set to make room is the worse trade. Also fixes a real trap found while using it. The Alt-Tab overlay commits on SUPER release, which is a compositor bind running an IPC call; if that call ever fails to land, the overlay stayed up with no keyboard focus, no Escape handler and nothing clickable, so the only way out was an IPC call typed into a terminal it was covering. Clicking outside now dismisses it, clicking a row switches to that window -- which is the obvious thing to try and did nothing -- and an abandoned switch closes itself after ten seconds. Keyboard focus still stays with the compositor, because taking it mid-switch is what would break stepping.
61 lines
2.0 KiB
Markdown
61 lines
2.0 KiB
Markdown
# The keyboard
|
|
|
|
Press `Super + /` at any time to see every shortcut this machine has. That
|
|
list is generated from the live keymap, so it is never out of date, and it
|
|
includes anything you have rebound.
|
|
|
|
This chapter is the shape behind that list, which is the part worth learning
|
|
once.
|
|
|
|
## Three modifiers, three jobs
|
|
|
|
| Modifier | Acts on |
|
|
|---|---|
|
|
| `Super` | The window you are looking at |
|
|
| `Alt` | Workspaces |
|
|
| `Super + Ctrl` | The layout itself: splitting, floating, swapping |
|
|
| `Super + Alt` | The application you already have open |
|
|
|
|
Almost every shortcut follows from this. `Super + H` moves focus left.
|
|
`Alt + H` moves to the workspace on the left. `Super + Ctrl + H` swaps the
|
|
window leftward in the layout.
|
|
|
|
## Directions
|
|
|
|
`H`, `J`, `K`, `L` mean left, down, up, right, as they do in vim. The arrow
|
|
keys work everywhere the letters do, so you never have to learn them if you
|
|
would rather not.
|
|
|
|
Add `Shift` to move the window rather than the focus. `Super + Shift + L`
|
|
takes the current window and moves it to the right.
|
|
|
|
## Opening versus going to
|
|
|
|
`Super + T` opens a terminal. It opens another one every time, which on a
|
|
tiling desktop is the normal way to work rather than an accident.
|
|
|
|
`Super + Alt + T` goes to a terminal you already have, wherever it is, and
|
|
opens one only if there is none. The same pair works for the editor, browser,
|
|
files, calculator and mail.
|
|
|
|
So the plain key means "give me one" and adding `Alt` means "take me to the
|
|
one I have".
|
|
|
|
## The handful worth memorising first
|
|
|
|
| Keys | What it does |
|
|
|---|---|
|
|
| `Super + Space` | Find and open anything |
|
|
| `Super + T` | Terminal (another one) |
|
|
| `Super + Alt + T` | The terminal you already have |
|
|
| `Super + Q` | Close the window |
|
|
| `Super + backtick` | Every window, every workspace |
|
|
| `Super + I` | Settings |
|
|
| `Super + /` | Every other shortcut |
|
|
|
|
## Changing them
|
|
|
|
Settings has a Shortcuts page listing every bind, each of which can be
|
|
reassigned. A rebind moves the shortcut and cannot change what it does, so
|
|
there is no way to make a key do something unexpected by editing it.
|