docs(v0.6): mark the palette generalisation delivered in core
Record the > command registry, one-shot/two-step dispatch, and the :e retirement as done in core; note the ISO-8859-15 label constraints (ASCII `...`, `»` hint marker).
This commit is contained in:
@@ -3,10 +3,14 @@
|
||||
> Part of the [Typoena macro plan](macroplan.md). Requirements and targets:
|
||||
> [qfd.md](qfd.md). Load-bearing decisions: [adr.md](adr.md).
|
||||
|
||||
**Status:** render affordances done early; the snippet engine is the remaining
|
||||
work (snippets are net-new scope, added 2026-07-08; reshaped 2026-07-12 from a
|
||||
hard-coded table into a git-synced, Zed-compatible library with a `$` palette
|
||||
launcher — see [`typoena-snippets.md`](typoena-snippets.md) for the file format).
|
||||
**Status:** render affordances done early. The snippet engine (tab-stop core,
|
||||
inline Tab-expansion, hint-on-pause, `$` palette) and the `>` command-palette
|
||||
generalisation are **done in core, host-tested** (187 editor tests); the
|
||||
remaining work is the **firmware boot-read + `just init` catalog** (slice 5, the
|
||||
on-device gate). Snippets are net-new scope, added 2026-07-08; reshaped
|
||||
2026-07-12 from a hard-coded table into a git-synced, Zed-compatible library with
|
||||
a `$` palette launcher — see [`typoena-snippets.md`](typoena-snippets.md) for the
|
||||
file format.
|
||||
|
||||
- [x] Heading lines bolded in render (faux-bold double-strike)
|
||||
- [x] List continuation on Enter inside `- ` / `1. ` (with empty-item exit)
|
||||
@@ -54,26 +58,28 @@ behaviour.
|
||||
malformed file is non-fatal (no snippets, editor runs). Parse lives in the
|
||||
host-testable `editor` crate via `serde_json` — the one new dependency.
|
||||
|
||||
## The palette, generalised (`Cmd-P` · `>` · `$`)
|
||||
## The palette, generalised (`Cmd-P` · `>` · `$`) — done in core
|
||||
|
||||
v0.5 shipped `Cmd-P` = files and `>` = a five-entry settings list (`save_on_idle`,
|
||||
`format_on_save`, `line_numbers` toggles + `theme`/`auto_sync` rotations). v0.6
|
||||
makes the sigils a clean split by verb, and the empty-palette placeholder legends:
|
||||
`Go to file · > settings · $ snippets`.
|
||||
makes the sigils a clean split by verb, and the empty-palette placeholder legends
|
||||
them: `Go to file · > settings · $ snippets`.
|
||||
|
||||
- **bare `Cmd-P`** → *navigate*: go to file (unchanged).
|
||||
- **`>`** → *act on the editor* — the command palette. The pref toggles are just
|
||||
its stateful entries, not a special section. Dispatch differs per entry: a
|
||||
**toggle** flips and the list **stays open** (as today); a **one-shot** (e.g.
|
||||
`format`, `publish`) runs and **closes**; a **parameterised** command morphs
|
||||
the palette into a second **input step** (select `New file` → the box becomes a
|
||||
filename prompt → Enter creates it, scope read from a `repo/`/`local/` prefix as
|
||||
`:enew` does today). This retires `:e` (bare `Cmd-P` covers file-opening;
|
||||
dotfiles get a dedicated `> edit …` command if/when wanted).
|
||||
- **`>`** → *act on the editor* — the command palette, a real action registry (the
|
||||
`PALETTE_CMDS` list, actions first then settings). The pref toggles are just its
|
||||
stateful entries, not a special section. Dispatch is by `PaletteCmd::kind`: a
|
||||
**toggle** flips and the list **stays open**; a **one-shot** (`format`,
|
||||
`publish` — the latter shares `run_publish` with `:sync`) runs and **closes**; a
|
||||
**parameterised** command (`new file...`) morphs the palette into a second
|
||||
**input step** (the box becomes a filename prompt → Enter creates it, scope read
|
||||
from a `repo/`/`local/` prefix as `:enew` does; backspacing past the start steps
|
||||
back to the `>` list). This **retired `:e`** — bare `Cmd-P` covers file-opening;
|
||||
dotfiles can get a dedicated `> edit ...` command if/when wanted.
|
||||
- **`$`** → *insert content* — the snippet launcher above.
|
||||
|
||||
`format` / `publish` as `>` entries are a small opportunistic add (they prove `>`
|
||||
is a real action registry, not a settings box); the headline is snippets.
|
||||
Labels avoid `…`/`↹` — the palette/panel fonts are ISO-8859-15, which has neither
|
||||
glyph — so `new file...` uses ASCII dots and the pause hint leads with `»`.
|
||||
|
||||
## First-time setup — snippet catalog (`just init`)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user