refactor: Better anchor linking for toc

This commit is contained in:
Igor Támara 2025-11-07 23:24:38 -05:00 committed by CJ van den Berg
parent a239b2b5f2
commit 3b93f62ccd
8 changed files with 70 additions and 130 deletions

View file

@ -30,8 +30,7 @@ and the different [imodes](#hierarchy) present.
Command palette can also be reached left clicking on the current
mode in the status bar.
[]($section.id('tldr'))
## ;TLDR;
## [;TLDR;]($section.id('tldr'))
Once you open the corresponding json file, locate inside the
[imode](#hierarchy)(internal mode) that will accept the key or
@ -46,16 +45,14 @@ like in
To avoid screwing up the combinations, and putting flow in an unusable
state derived from a wrong mapping of key combinations, read on.
[]($section.id('defaults'))
## Resetting keys to factory defaults
## [Resetting keys to factory defaults]($section.id('defaults'))
User configured keybindings are stored in Flow's configuration directory
under `keys/mode.json` where mode can be `flow`, `emacs`, `vim`, `helix`
or customized ones. Removing the keys directory or the particular mode
file can take you out from a broken state.
[]($section.id('modes'))
## Keybinds for each mode
## [Keybinds for each mode]($section.id('modes'))
Keybinds are edited per mode, and other modes inherit what is defined
in your `flow.json` keybindings. Each mode override keybindings of its
@ -66,8 +63,7 @@ flow, and the default ones defined for emacs mode.
[introducing keybindings](/devlog/2024#2024-12-05T20:55:00) showcases
how to get to edit keybindings.
[]($section.id('hierarchy'))
## Keybindings hierarchy
## [Keybindings hierarchy]($section.id('hierarchy'))
Some terminology
@ -134,8 +130,7 @@ and other modes inherit from it. Each mode inherits, extends and
overrides actions and define their internal imodes extending as
required each minimode.
[]($section.id('adding'))
## Adding a Keybinding
## [Adding a Keybinding]($section.id('adding'))
The most basic case to map a keybind to a command was covered in
[TLDR](#tldr) which used the combination of three keys pressed
@ -146,8 +141,7 @@ A common use case is to add a keybinding to invoke an already existing
command and chain it to another, making Flow more suited to your own
needs.
[]($section.id('shell'))
## Running shell commands
## [Running shell commands]($section.id('shell'))
For example, `f5` by default is used to run `zig build test` outputting
its results to a *scratch buffer* called `test`.
@ -190,8 +184,7 @@ want to remap `f5` to a different shell command.
Observe [tasks running](/devlog/2025#2025-01-26T22:11:00) and maybe
consider using more keybindings or running tasks for your projects.
[]($section.id('next'))
## Next steps
## [Next steps]($section.id('next'))
If you realized that there is a handy combination that others can
benefit from or that a mode lacks the combination and it might be