Minor release: new backward-compatible APIs plus several rendering and robustness fixes. No breaking changes.
✨ Features
- Bracketed paste transformer — new
Shell.PasteTransformer func(text string) stringfield lets applications rewrite a normalized paste payload before insertion (e.g. replace a large paste with a[Pasted text #1 +6 lines]placeholder). (#113, @M09Ic) - Inline suggestion API —
Shell.SetInlineSuggestion/GetInlineSuggestion/ClearInlineSuggestionrender application-provided ghost text after the cursor (AI predictions, remote completions, …), with theinline-suggest-acceptandinline-suggest-accept-wordcommands to accept it.forward-char/vi-forward-charalso fall back to accepting it at end of line. History autosuggest keeps priority. (#114, #115, @M09Ic)
🐛 Fixes
- History panic —
memory.GetLinereturned an out-of-range index panic on history navigation (e.g. Down at the newest entry); it now returns a recoverable error like the file-backed source. (#111, fixes #110 — thanks @SAY-5, reported by @laktak) - Completer panic recovery — a panic in the application-provided completer no longer crashes the shell; it is recovered at readline's boundary and surfaced as a completion error message. (#116)
- Right-edge redraw at terminal bottom — typing input that soft-wraps exactly at the right edge on the last row no longer erases the edge glyph or scrolls a row per keypress. Also unifies the two drifted line-render functions into one. (#117, supersedes #112 — thanks @rztaylor)
Full changelog: v1.2.2...v1.3.0