Literal case-sensitive substring search sharing the : command line's editing (cmd_prompt discriminates the prompt; Enter dispatches). Jumps on Enter only — incremental caret-chasing loses to the e-ink refresh cost, same call as the snippet no-popup decision. Wraps with a notice, keeps the caret on a miss, bare / repeats the editor-global last pattern. n/N live in move_by so counts and Visual extension come free; they are not operator targets.
2.2 KiB
2.2 KiB
v0.7 — Search + better git
Part of the Typoena macro plan. Requirements and targets: qfd.md. Load-bearing decisions: adr.md.
Status: / search + n N done in core (2026-07-13, host-tested — 207
editor tests). The :gl pull command landed in the editor (2026-07-11,
host-tested) — Effect::Pull + a firmware stub; the on-device fetch +
fast-forward is still to build.
/forward search,n N— done in core 2026-07-13 (host-tested). Literal, case-sensitive substring (no regex on-device, no smartcase surprises);/reuses the:command line's editing with a/prompt (one command-line mode, as in vim), and the jump happens on Enter only — no incremental caret-chasing, for the same e-ink-refresh reason snippets have no completion popup. Wraps around with a "wrapped" notice; "not found: pat" leaves the caret alone; a bare/+Enter repeats the last pattern, which is editor-global (survives buffer switches, like vim's search register).n/Nare motions (counts work, Visual extends over them); deliberately not operator targets (dnout of scope).- [~]
:gl— pull: fetch + fast-forward only, refuse on divergence and surface it (renamed from the planned:Gpull). Editor command +Effect::Pulldone 2026-07-11 (host-tested); the git-thread fetch/fast-forward ingit_syncremains (only push is wired today).
Sync performance — inherited from the real-repo-sync kaizen (closed 2026-07-13 at 24.1 s end-to-end; target ≤ ~10 s):
- Close the publish gap: 19.8 s today — the splice's 5.0 s and the ~7 s of repo-open/negotiation overhead are the next curves (tradeoff analysis).
- Instrument the residual ~360 ms/loose-write (suspect: FAT directory-op
cost in the freshen/refresh path) — one
sd_bench+p_mmap-miss logging pass. - The images-off-card lever (notes/git-sync-images-and-repo-size.md) composes with the splice — decide whether to take it here.