docs(config): document hint mode
3 files · +20 -0
M README.md +1 -0
| @@ -281,6 +281,7 @@ bind.cmd+shift+f = toggle-fullscreen | |||
| 281 | 281 | bind.cmd+s = toggle-stash-visible | |
| 282 | 282 | bind.cmd+shift+s = toggle-window-stash | |
| 283 | 283 | bind.cmd+o = toggle-overview | |
| 284 | + | # bind.cmd+g = hint | |
| 284 | 285 | bind.cmd+tab = switch-column-next | |
| 285 | 286 | bind.cmd+shift+tab = switch-column-prev | |
| 286 | 287 | ||
| @@ -281,6 +281,7 @@ bind.cmd+shift+f = toggle-fullscreen | |||||
| 281 | bind.cmd+s = toggle-stash-visible | 281 | bind.cmd+s = toggle-stash-visible | ||
| 282 | bind.cmd+shift+s = toggle-window-stash | 282 | bind.cmd+shift+s = toggle-window-stash | ||
| 283 | bind.cmd+o = toggle-overview | 283 | bind.cmd+o = toggle-overview | ||
| 284 | + | # bind.cmd+g = hint | |||
| 284 | bind.cmd+tab = switch-column-next | 285 | bind.cmd+tab = switch-column-next | ||
| 285 | bind.cmd+shift+tab = switch-column-prev | 286 | bind.cmd+shift+tab = switch-column-prev | ||
| 286 | 287 | ||||
M docs/config.md +14 -0
| @@ -55,6 +55,7 @@ See [examples/config](../examples/config) for every key with its default. | |||
| 55 | 55 | | `focus.flash-opacity` | `0.6` | Starting opacity of the flash, `0.1` to `1` | | |
| 56 | 56 | | `focus.flash-duration` | `200ms` | Fade duration, `50ms` to `1s`; not scaled by `animations.speed` | | |
| 57 | 57 | | `focus.flash-color` | `border.active` | Flash color `#rrggbb`; empty uses `border.active` | | |
| 58 | + | | `hint.targets` | `clickable` | What [hint mode](#hint-mode) labels: `clickable` (links, URLs and buttons) or `links` (links and URLs only) | | |
| 58 | 59 | | `workspace.<name>.monitor` | focused output | Home monitor of a named workspace | | |
| 59 | 60 | | `workspace.<name>.size` | `inherit` | [Smaller viewport](#workspace-size), e.g. `1920x1080` | | |
| 60 | 61 | | `workspace.<name>.max-columns`, `.overflow` | output values | Per-workspace layout | | |
| @@ -191,6 +192,7 @@ bind.XF86MonBrightnessDown = spawn brightnessctl set 5%- | |||
| 191 | 192 | | `toggle-window-stash` | Move the focused window to the [stash](#stash), or back to its column | | |
| 192 | 193 | | `toggle-stash-visible` | Show or hide the stash | | |
| 193 | 194 | | `toggle-overview` | Open or close the [overview](#overview) | | |
| 195 | + | | `hint` | Label the links and buttons on the focused screen, then click the one you type ([hint mode](#hint-mode)) | | |
| 194 | 196 | | `switch-column-next` / `-prev` | Switch to the previously used column. Hold `cmd` and press again to go further back | | |
| 195 | 197 | | `maximize-column` | Toggle full width for the focused column | | |
| 196 | 198 | | `cycle-column-width` | Grow the focused column by one [cell](#column-widths), then back to equal widths | | |
| @@ -295,3 +297,15 @@ A workspace's stash shows as a pile of cards. Selecting the pile unfolds it into | |||
| 295 | 297 | With `layout.overflow = cascade`, workspaces sit side by side, each band of columns is a lane, and the stash sits under the lanes. Down (or fingers down on the touchpad, with natural scroll off) moves to the lane below; past the last lane it unfolds the stash. Left/right walk the cards; where the carousel does not wrap round, they go to the neighbor workspace past either end. Up leaves the stash for the last lane, at the column you came from. | |
| 296 | 298 | ||
| 297 | 299 | Otherwise, left from the first column unfolds the stash. Up/down walk the cards, the focus-workspace binds change workspace, and right goes back to the columns. | |
| 300 | + | ||
| 301 | + | ### Hint mode | |
| 302 | + | ||
| 303 | + | `hint` labels the links, URLs and buttons visible on the focused screen, so you can click one from the keyboard. No bind is set by default; for example `bind.cmd+g = hint`. | |
| 304 | + | ||
| 305 | + | - Each target gets a label of lowercase letters. With up to 26 targets the labels are one letter, with more they are two. | |
| 306 | + | - Type a label to click its target: the pointer moves to the center of the target and presses the left button. With two-letter labels, the labels that do not match what you typed disappear and the typed letters are dimmed. | |
| 307 | + | - `BackSpace` removes the last typed letter. `Escape` cancels, and so does any other key, which no window receives. | |
| 308 | + | - Only the visible area of windows is scanned: a target covered by another window or outside the screen has no label. Targets on other screens are not labeled. | |
| 309 | + | - `hint.targets = links` labels links and URLs only, not buttons. | |
| 310 | + | - `hint` does nothing while the session is locked, on a rotated or flipped screen, while the overview is open, while a pointer button, drag or pointer constraint is active, or while hint mode is already active. Hint mode ends when the workspace on that screen changes or the overview opens. | |
| 311 | + | - No capture indicator appears: the scan happens inside NeferWL and no client receives the pixels. Screen captures do not contain the labels. | |
| @@ -55,6 +55,7 @@ See [examples/config](../examples/config) for every key with its default. | |||||
| 55 | | `focus.flash-opacity` | `0.6` | Starting opacity of the flash, `0.1` to `1` | | 55 | | `focus.flash-opacity` | `0.6` | Starting opacity of the flash, `0.1` to `1` | | ||
| 56 | | `focus.flash-duration` | `200ms` | Fade duration, `50ms` to `1s`; not scaled by `animations.speed` | | 56 | | `focus.flash-duration` | `200ms` | Fade duration, `50ms` to `1s`; not scaled by `animations.speed` | | ||
| 57 | | `focus.flash-color` | `border.active` | Flash color `#rrggbb`; empty uses `border.active` | | 57 | | `focus.flash-color` | `border.active` | Flash color `#rrggbb`; empty uses `border.active` | | ||
| 58 | + | | `hint.targets` | `clickable` | What [hint mode](#hint-mode) labels: `clickable` (links, URLs and buttons) or `links` (links and URLs only) | | |||
| 58 | | `workspace.<name>.monitor` | focused output | Home monitor of a named workspace | | 59 | | `workspace.<name>.monitor` | focused output | Home monitor of a named workspace | | ||
| 59 | | `workspace.<name>.size` | `inherit` | [Smaller viewport](#workspace-size), e.g. `1920x1080` | | 60 | | `workspace.<name>.size` | `inherit` | [Smaller viewport](#workspace-size), e.g. `1920x1080` | | ||
| 60 | | `workspace.<name>.max-columns`, `.overflow` | output values | Per-workspace layout | | 61 | | `workspace.<name>.max-columns`, `.overflow` | output values | Per-workspace layout | | ||
| @@ -191,6 +192,7 @@ bind.XF86MonBrightnessDown = spawn brightnessctl set 5%- | |||||
| 191 | | `toggle-window-stash` | Move the focused window to the [stash](#stash), or back to its column | | 192 | | `toggle-window-stash` | Move the focused window to the [stash](#stash), or back to its column | | ||
| 192 | | `toggle-stash-visible` | Show or hide the stash | | 193 | | `toggle-stash-visible` | Show or hide the stash | | ||
| 193 | | `toggle-overview` | Open or close the [overview](#overview) | | 194 | | `toggle-overview` | Open or close the [overview](#overview) | | ||
| 195 | + | | `hint` | Label the links and buttons on the focused screen, then click the one you type ([hint mode](#hint-mode)) | | |||
| 194 | | `switch-column-next` / `-prev` | Switch to the previously used column. Hold `cmd` and press again to go further back | | 196 | | `switch-column-next` / `-prev` | Switch to the previously used column. Hold `cmd` and press again to go further back | | ||
| 195 | | `maximize-column` | Toggle full width for the focused column | | 197 | | `maximize-column` | Toggle full width for the focused column | | ||
| 196 | | `cycle-column-width` | Grow the focused column by one [cell](#column-widths), then back to equal widths | | 198 | | `cycle-column-width` | Grow the focused column by one [cell](#column-widths), then back to equal widths | | ||
| @@ -295,3 +297,15 @@ A workspace's stash shows as a pile of cards. Selecting the pile unfolds it into | |||||
| 295 | With `layout.overflow = cascade`, workspaces sit side by side, each band of columns is a lane, and the stash sits under the lanes. Down (or fingers down on the touchpad, with natural scroll off) moves to the lane below; past the last lane it unfolds the stash. Left/right walk the cards; where the carousel does not wrap round, they go to the neighbor workspace past either end. Up leaves the stash for the last lane, at the column you came from. | 297 | With `layout.overflow = cascade`, workspaces sit side by side, each band of columns is a lane, and the stash sits under the lanes. Down (or fingers down on the touchpad, with natural scroll off) moves to the lane below; past the last lane it unfolds the stash. Left/right walk the cards; where the carousel does not wrap round, they go to the neighbor workspace past either end. Up leaves the stash for the last lane, at the column you came from. | ||
| 296 | 298 | ||||
| 297 | Otherwise, left from the first column unfolds the stash. Up/down walk the cards, the focus-workspace binds change workspace, and right goes back to the columns. | 299 | Otherwise, left from the first column unfolds the stash. Up/down walk the cards, the focus-workspace binds change workspace, and right goes back to the columns. | ||
| 300 | + | ||||
| 301 | + | ### Hint mode | |||
| 302 | + | ||||
| 303 | + | `hint` labels the links, URLs and buttons visible on the focused screen, so you can click one from the keyboard. No bind is set by default; for example `bind.cmd+g = hint`. | |||
| 304 | + | ||||
| 305 | + | - Each target gets a label of lowercase letters. With up to 26 targets the labels are one letter, with more they are two. | |||
| 306 | + | - Type a label to click its target: the pointer moves to the center of the target and presses the left button. With two-letter labels, the labels that do not match what you typed disappear and the typed letters are dimmed. | |||
| 307 | + | - `BackSpace` removes the last typed letter. `Escape` cancels, and so does any other key, which no window receives. | |||
| 308 | + | - Only the visible area of windows is scanned: a target covered by another window or outside the screen has no label. Targets on other screens are not labeled. | |||
| 309 | + | - `hint.targets = links` labels links and URLs only, not buttons. | |||
| 310 | + | - `hint` does nothing while the session is locked, on a rotated or flipped screen, while the overview is open, while a pointer button, drag or pointer constraint is active, or while hint mode is already active. Hint mode ends when the workspace on that screen changes or the overview opens. | |||
| 311 | + | - No capture indicator appears: the scan happens inside NeferWL and no client receives the pixels. Screen captures do not contain the labels. | |||
M examples/config +5 -0
| @@ -94,6 +94,9 @@ focus.flash-width = 2 | |||
| 94 | 94 | focus.flash-opacity = 0.6 | |
| 95 | 95 | focus.flash-duration = 200ms | |
| 96 | 96 | focus.flash-color = | |
| 97 | + | # Hint mode labels the links, URLs and buttons on the focused screen: | |
| 98 | + | # clickable (links, URLs and buttons) or links (links and URLs only). | |
| 99 | + | # hint.targets = clickable | |
| 97 | 100 | ||
| 98 | 101 | # Named workspaces are outside the numbered list and require a bind. The bind | |
| 99 | 102 | # shows one; pressing it again returns to the previous workspace. | |
| @@ -195,6 +198,8 @@ bind.cmd+shift+f = toggle-fullscreen | |||
| 195 | 198 | bind.cmd+s = toggle-stash-visible | |
| 196 | 199 | bind.cmd+shift+s = toggle-window-stash | |
| 197 | 200 | bind.cmd+o = toggle-overview | |
| 201 | + | # Label the links and buttons on screen and click one by typing its label. | |
| 202 | + | # bind.cmd+g = hint | |
| 198 | 203 | bind.cmd+q = close-window | |
| 199 | 204 | bind.ctrl+alt+backspace = quit | |
| 200 | 205 | bind.ctrl+cmd+space = spawn fuzzel | |
| @@ -94,6 +94,9 @@ focus.flash-width = 2 | |||||
| 94 | focus.flash-opacity = 0.6 | 94 | focus.flash-opacity = 0.6 | ||
| 95 | focus.flash-duration = 200ms | 95 | focus.flash-duration = 200ms | ||
| 96 | focus.flash-color = | 96 | focus.flash-color = | ||
| 97 | + | # Hint mode labels the links, URLs and buttons on the focused screen: | |||
| 98 | + | # clickable (links, URLs and buttons) or links (links and URLs only). | |||
| 99 | + | # hint.targets = clickable | |||
| 97 | 100 | ||||
| 98 | # Named workspaces are outside the numbered list and require a bind. The bind | 101 | # Named workspaces are outside the numbered list and require a bind. The bind | ||
| 99 | # shows one; pressing it again returns to the previous workspace. | 102 | # shows one; pressing it again returns to the previous workspace. | ||
| @@ -195,6 +198,8 @@ bind.cmd+shift+f = toggle-fullscreen | |||||
| 195 | bind.cmd+s = toggle-stash-visible | 198 | bind.cmd+s = toggle-stash-visible | ||
| 196 | bind.cmd+shift+s = toggle-window-stash | 199 | bind.cmd+shift+s = toggle-window-stash | ||
| 197 | bind.cmd+o = toggle-overview | 200 | bind.cmd+o = toggle-overview | ||
| 201 | + | # Label the links and buttons on screen and click one by typing its label. | |||
| 202 | + | # bind.cmd+g = hint | |||
| 198 | bind.cmd+q = close-window | 203 | bind.cmd+q = close-window | ||
| 199 | bind.ctrl+alt+backspace = quit | 204 | bind.ctrl+alt+backspace = quit | ||
| 200 | bind.ctrl+cmd+space = spawn fuzzel | 205 | bind.ctrl+cmd+space = spawn fuzzel | ||