@oh-my-pi/pi-tui 18.8.8 → 18.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +56 -221
- package/dist/types/charts/chart-plan.d.ts +595 -13
- package/dist/types/charts/chart-svg.d.ts +38 -9
- package/dist/types/charts/table-data.d.ts +70 -2
- package/dist/types/chat/table-chart.d.ts +3 -2
- package/dist/types/chat/user-message.d.ts +12 -1
- package/dist/types/chrome/shared.d.ts +9 -0
- package/dist/types/chrome/transcript-container.d.ts +1 -0
- package/dist/types/components/editor.d.ts +6 -0
- package/dist/types/components/form.d.ts +1 -0
- package/dist/types/components/markdown.d.ts +7 -0
- package/dist/types/components/tree-view.d.ts +7 -0
- package/dist/types/kitty-graphics.d.ts +2 -2
- package/dist/types/loop-watchdog.d.ts +8 -7
- package/dist/types/multiplexers/cmux.d.ts +16 -0
- package/dist/types/multiplexers/herdr.d.ts +26 -0
- package/dist/types/multiplexers/notify.d.ts +13 -0
- package/dist/types/multiplexers/orca.d.ts +12 -0
- package/dist/types/multiplexers/screen.d.ts +9 -0
- package/dist/types/multiplexers/tmux.d.ts +29 -0
- package/dist/types/multiplexers/types.d.ts +100 -0
- package/dist/types/multiplexers/wmux.d.ts +12 -0
- package/dist/types/multiplexers/zellij.d.ts +12 -0
- package/dist/types/overlays/agent-hub-projection.d.ts +4 -3
- package/dist/types/overlays/agent-hub-types.d.ts +9 -0
- package/dist/types/overlays/annotation-overlay.d.ts +2 -0
- package/dist/types/overlays/model-browser.d.ts +9 -1
- package/dist/types/overlays/settings-defs.d.ts +1 -0
- package/dist/types/overlays/usage-display.d.ts +3 -1
- package/dist/types/setup/scenes/types.d.ts +1 -0
- package/dist/types/status-line/component.d.ts +2 -0
- package/dist/types/status-line/host.d.ts +4 -1
- package/dist/types/status-line/types.d.ts +11 -2
- package/dist/types/terminal-capabilities.d.ts +24 -32
- package/dist/types/terminal-multiplexer.d.ts +127 -14
- package/dist/types/terminal.d.ts +12 -4
- package/dist/types/theme/schema.d.ts +11 -2
- package/dist/types/theme/theme-class.d.ts +7 -0
- package/dist/types/tmux.d.ts +1 -4
- package/dist/types/tools/eval.d.ts +21 -2
- package/dist/types/tools/output-meta.d.ts +11 -1
- package/dist/types/tools/streaming-output.d.ts +9 -0
- package/package.json +9 -9
- package/src/charts/chart-plan.ts +4802 -88
- package/src/charts/chart-svg.ts +4315 -351
- package/src/charts/table-data.ts +1076 -34
- package/src/chat/assistant-message.ts +27 -9
- package/src/chat/chat-transcript-builder.ts +1 -3
- package/src/chat/svg-figure.ts +45 -8
- package/src/chat/table-chart.ts +7 -11
- package/src/chat/user-message.ts +40 -2
- package/src/chrome/shared.ts +53 -0
- package/src/chrome/transcript-container.ts +32 -9
- package/src/components/editor.ts +38 -5
- package/src/components/form.ts +8 -0
- package/src/components/markdown.ts +45 -2
- package/src/components/settings-list.ts +2 -0
- package/src/components/tree-view.ts +38 -8
- package/src/kitty-graphics.ts +4 -4
- package/src/loop-watchdog.ts +18 -13
- package/src/multiplexers/cmux.ts +29 -0
- package/src/multiplexers/herdr.ts +64 -0
- package/src/multiplexers/notify.ts +24 -0
- package/src/multiplexers/orca.ts +16 -0
- package/src/multiplexers/screen.ts +15 -0
- package/src/multiplexers/tmux.ts +40 -0
- package/src/multiplexers/types.ts +110 -0
- package/src/multiplexers/wmux.ts +16 -0
- package/src/multiplexers/zellij.ts +24 -0
- package/src/overlays/agent-hub-projection.ts +51 -14
- package/src/overlays/agent-hub-types.ts +6 -0
- package/src/overlays/annotation-overlay.ts +2 -1
- package/src/overlays/model-browser.ts +43 -7
- package/src/overlays/model-hub.ts +12 -19
- package/src/overlays/settings-defs.ts +4 -3
- package/src/overlays/settings-selector.ts +10 -1
- package/src/overlays/tree-selector.ts +21 -16
- package/src/overlays/usage-display.ts +10 -4
- package/src/setup/scenes/model.ts +2 -1
- package/src/setup/scenes/types.ts +1 -0
- package/src/status-line/component.ts +65 -11
- package/src/status-line/host.ts +4 -1
- package/src/status-line/segments.ts +21 -16
- package/src/status-line/types.ts +12 -2
- package/src/terminal-capabilities.ts +65 -181
- package/src/terminal-multiplexer.ts +112 -33
- package/src/terminal.ts +73 -32
- package/src/theme/schema-validation.ts +1 -0
- package/src/theme/schema.ts +14 -1
- package/src/theme/session-color.ts +1 -7
- package/src/theme/theme-class.ts +26 -1
- package/src/theme/theme-schema.json +5 -1
- package/src/theme/theme.ts +7 -4
- package/src/tmux.ts +4 -11
- package/src/tools/eval.ts +56 -16
- package/src/tools/output-meta.ts +23 -3
- package/src/tools/streaming-output.ts +29 -2
- package/src/tools/todo.ts +4 -1
- package/src/tui.ts +33 -18
- package/src/windows-input-mode.ts +8 -0
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,61 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [18.9.0] - 2026-10-11
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- Added opt-in JSON editing for free-form array settings while keeping credential values masked; settings editors now surface submission and validation errors.
|
|
10
|
+
- Added ghost-text predictions to the editor via the new `Editor.prediction` callback. Press Tab or Right at the end of a line to accept the suggested text without submitting.
|
|
11
|
+
- Expanded table-chart support with stacked, waterfall, timeline, dots, range, slope, butterfly, bullet, ladder, histogram, and stat charts, including error whiskers, share bars, status matrices, and richer before/after visualizations.
|
|
12
|
+
- Added richer table-chart planning and presentation controls, including titles, ordering, grouping, shading, normalization, reference lines, polarity, rivals, focus rows, and model-driven selection for smart mode. Charts now identify key findings, highlight best values and changes, and adapt scales and labels for clearer comparisons.
|
|
13
|
+
- Added the optional `assistantMessageText` theme token for coloring assistant reply prose while preserving the terminal default when unset or empty.
|
|
14
|
+
- Added optional status-line support for showing saved usage resets that expire soon and warning once per conversation when a reset expires within 24 hours.
|
|
15
|
+
|
|
16
|
+
### Changed
|
|
17
|
+
|
|
18
|
+
- Improved table-chart planning to prefer waterfall charts over share bars for complex data sets and enforce segment limits for share-chart legibility
|
|
19
|
+
- Reduced the time required to rebuild long sessions on resume, particularly sessions with repeated wait polls or todo updates.
|
|
20
|
+
- Output summaries now identify the first and last lines omitted by column limits, and truncation notices point to the `:raw` selector for retrieving complete lines.
|
|
21
|
+
|
|
22
|
+
### Fixed
|
|
23
|
+
|
|
24
|
+
- Fixed session model selection and setup displaying role chips for roles that resolve to a non-chat runner rather than the model used by the session.
|
|
25
|
+
- Improved table-chart parsing and rendering across repeated labels, grouped and paired values, percentages, units, currency, durations, model sizes, links, identifiers, and sparse or side-by-side tables. Charts now avoid duplicate or misleading plots and preserve meaningful comparisons.
|
|
26
|
+
- Fixed table-chart scaling for outliers, stacked groups, zeros, logarithmic shading, and values spanning multiple orders of magnitude.
|
|
27
|
+
- Fixed `/tree` stalling or using excessive memory when opened on long sessions with many branch points.
|
|
28
|
+
- Fixed extension status messages losing SGR colors and text styles in the status line.
|
|
29
|
+
- Fixed the eval status list omitting status events discarded from long-running cells.
|
|
30
|
+
- Fixed loop-blocked diagnostics to attribute stalls to the correct work phase or terminal writes instead of reporting misleading unknown causes.
|
|
31
|
+
- Fixed Agent Hub and status-line spending totals losing cumulative subagent costs after compaction, parking, or follow-up turns.
|
|
32
|
+
- Fixed dead-key input on older Windows Terminal versions so quotes are entered correctly with Space, Enter, and Tab.
|
|
33
|
+
- Fixed SIXEL graphics detection on terminals, including native Windows Terminal, so SVG figures and inline images work without forcing a graphics protocol.
|
|
34
|
+
- Fixed overflow transcript rendering so user messages no longer appear as blank padding bars or leave stray prompt markers across terminal rows.
|
|
35
|
+
|
|
36
|
+
## [18.8.9] - 2026-10-10
|
|
37
|
+
|
|
38
|
+
### Breaking Changes
|
|
39
|
+
|
|
40
|
+
- Removed the `isInsideTmux()`, `isInsideZellij()`, and `isInsideHerdr()` exports; use `hasTerminalMultiplexerSession("tmux" | "zellij" | "herdr", env)` instead ([#13620](https://github.com/can1357/oh-my-pi/pull/13620) by [@anatoli-tsinovoy](https://github.com/anatoli-tsinovoy))
|
|
41
|
+
|
|
42
|
+
### Added
|
|
43
|
+
|
|
44
|
+
- `classifyTerminalMultiplexer()` reports `"orca"` inside Orca terminals while `isInsideTerminalMultiplexer()` stays false there, so Orca keeps the direct-terminal render path; `TERMINAL_MULTIPLEXER_ENV_KEYS` lists every environment variable multiplexer detection reads ([#13620](https://github.com/can1357/oh-my-pi/pull/13620) by [@anatoli-tsinovoy](https://github.com/anatoli-tsinovoy))
|
|
45
|
+
- Added `terminalMultiplexerSessions()`, `terminalMultiplexerForTerm()`, `classifyTerminalMultiplexerModule()`, and `routeTerminalMultiplexerNotification()`, driven by one multiplexer registry that now owns notification routing and per-multiplexer capability overrides ([#13620](https://github.com/can1357/oh-my-pi/pull/13620) by [@anatoli-tsinovoy](https://github.com/anatoli-tsinovoy))
|
|
46
|
+
- Added `change` and `progress` table-chart kinds with `ChartSpec.baseline` and `TableColumn.scores`: a before/after table whose rows have their own units charts each metric as a factor of the baseline column (rows without two numbers are named in the caption), and `analyzeTable` reads whole-number scores (`12/12`, `154/160`) as the percent of their total, keeping `a / b` pairs and lists as written
|
|
47
|
+
|
|
48
|
+
### Changed
|
|
49
|
+
|
|
50
|
+
- `StatusLineComponent.describeComposerFacts()` includes the configured `git` segment among the composer's facts (branch and status, the `status.git` click action, pinned so it outlasts the other facts) instead of leaving the branch to Tern's pane header ([#15220](https://github.com/can1357/oh-my-pi/pull/15220) by [@H4vC](https://github.com/H4vC))
|
|
51
|
+
- Small-multiple table charts with more than three panels and at most six categories draw as bands of per-metric panels with a color legend, and `worthCharting` counts their panels like categories
|
|
52
|
+
- Table charts take the look of Apple's charts and Tern: a UI sans, hairline gridlines, rounded bars and cells, smooth lines over a soft area fill, dot legends, left-aligned category labels that never run off the edge, and axes labeled in one unit (`0, 5k, 10k`)
|
|
53
|
+
- Line charts whose series differ 8× or more in size stack panels on their own axes instead of flattening the smaller lines, and their end labels no longer overlap
|
|
54
|
+
- SVG figure series colors `--c1`…`--c6` are an even-weight palette led by the theme accent's hue instead of syntax colors
|
|
55
|
+
|
|
56
|
+
### Fixed
|
|
57
|
+
|
|
58
|
+
- Fixed `parseCell` throwing on table cells such as `3 constructor` or `2 valueOf calls`, and reading a `constructor` cell as a missing value
|
|
59
|
+
|
|
5
60
|
## [18.8.8] - 2026-10-10
|
|
6
61
|
|
|
7
62
|
### Breaking Changes
|
|
@@ -2784,224 +2839,4 @@
|
|
|
2784
2839
|
- Fixed numbered list items showing "1." for all items when code blocks break list continuity
|
|
2785
2840
|
- Fixed width overflow protection in overlay compositing to prevent TUI crashes
|
|
2786
2841
|
|
|
2787
|
-
|
|
2788
|
-
|
|
2789
|
-
### Fixed
|
|
2790
|
-
|
|
2791
|
-
- Remove trailing space padding from Text, Markdown, and TruncatedText components when no background color is set (fixes copied text including unwanted whitespace)
|
|
2792
|
-
|
|
2793
|
-
## [4.6.0] - 2026-01-12
|
|
2794
|
-
|
|
2795
|
-
### Added
|
|
2796
|
-
|
|
2797
|
-
- Add fuzzy matching module (`fuzzyMatch`, `fuzzyFilter`) for command autocomplete
|
|
2798
|
-
- Add `getExpandedText()` to editor for expanding paste markers
|
|
2799
|
-
- Add backslash+enter newline fallback for terminals without Kitty protocol
|
|
2800
|
-
|
|
2801
|
-
### Fixed
|
|
2802
|
-
|
|
2803
|
-
- Remove Kitty protocol query timeout that caused shift+enter delays
|
|
2804
|
-
- Add bracketed paste check to prevent false key release/repeat detection
|
|
2805
|
-
- Rendering optimizations: only re-render changed lines
|
|
2806
|
-
- Refactor input component to use keybindings manager
|
|
2807
|
-
|
|
2808
|
-
## [4.4.4] - 2026-01-11
|
|
2809
|
-
|
|
2810
|
-
### Fixed
|
|
2811
|
-
|
|
2812
|
-
- Fixed Ctrl+Enter sequences to insert new lines in the editor
|
|
2813
|
-
|
|
2814
|
-
## [4.2.1] - 2026-01-11
|
|
2815
|
-
|
|
2816
|
-
### Changed
|
|
2817
|
-
|
|
2818
|
-
- Improved file autocomplete to show directory listing when typing `@` with no query, and fall back to prefix matching when fuzzy search returns no results
|
|
2819
|
-
|
|
2820
|
-
### Fixed
|
|
2821
|
-
|
|
2822
|
-
- Fixed editor redraw glitch when canceling autocomplete suggestions
|
|
2823
|
-
- Fixed `fd` tool detection to automatically find `fd` or `fdfind` in PATH when not explicitly configured
|
|
2824
|
-
|
|
2825
|
-
## [4.1.0] - 2026-01-10
|
|
2826
|
-
|
|
2827
|
-
### Added
|
|
2828
|
-
|
|
2829
|
-
- Added persistent prompt history storage support via `setHistoryStorage()` method, allowing history to be saved and restored across sessions
|
|
2830
|
-
|
|
2831
|
-
## [4.0.0] - 2026-01-10
|
|
2832
|
-
|
|
2833
|
-
### Added
|
|
2834
|
-
|
|
2835
|
-
- `EditorComponent` interface for custom editor implementations
|
|
2836
|
-
- `StdinBuffer` class to split batched stdin into individual sequences
|
|
2837
|
-
- Overlay compositing via `TUI.showOverlay()` and `TUI.hideOverlay()` for `ctx.ui.custom()` with `{ overlay: true }`
|
|
2838
|
-
- Kitty keyboard protocol flag 2 support for key release events (`isKeyRelease()`, `isKeyRepeat()`, `KeyEventType`)
|
|
2839
|
-
- `setKittyProtocolActive()`, `isKittyProtocolActive()` for Kitty protocol state management
|
|
2840
|
-
- `kittyProtocolActive` property on Terminal interface to query Kitty protocol state
|
|
2841
|
-
- `Component.wantsKeyRelease` property to opt-in to key release events (default false)
|
|
2842
|
-
- Input component `onEscape` callback for handling escape key presses
|
|
2843
|
-
|
|
2844
|
-
### Changed
|
|
2845
|
-
|
|
2846
|
-
- Terminal startup now queries Kitty protocol support before enabling event reporting
|
|
2847
|
-
- Default editor `newLine` binding now uses `shift+enter` only
|
|
2848
|
-
|
|
2849
|
-
### Fixed
|
|
2850
|
-
|
|
2851
|
-
- Key presses no longer dropped when batched with other events over SSH
|
|
2852
|
-
- TUI now filters out key release events by default, preventing double-processing of keys
|
|
2853
|
-
- `matchesKey()` now correctly matches Kitty protocol sequences for unmodified letter keys
|
|
2854
|
-
- Crash when pasting text with trailing whitespace exceeding terminal width through Markdown rendering
|
|
2855
|
-
|
|
2856
|
-
## [3.32.0] - 2026-01-08
|
|
2857
|
-
|
|
2858
|
-
### Fixed
|
|
2859
|
-
|
|
2860
|
-
- Fixed text wrapping allowing long whitespace tokens to exceed line width
|
|
2861
|
-
|
|
2862
|
-
## [3.20.0] - 2026-01-06
|
|
2863
|
-
|
|
2864
|
-
### Added
|
|
2865
|
-
|
|
2866
|
-
- Added `isCapsLock` helper function for detecting Caps Lock key press via Kitty protocol
|
|
2867
|
-
- Added `isCtrlY` helper function for detecting Ctrl+Y keyboard input
|
|
2868
|
-
- Added configurable editor keybindings with typed key identifiers and action matching
|
|
2869
|
-
- Added word-wrapped editor rendering for long lines
|
|
2870
|
-
|
|
2871
|
-
### Changed
|
|
2872
|
-
|
|
2873
|
-
- Settings list descriptions now wrap to the available width instead of truncating
|
|
2874
|
-
|
|
2875
|
-
### Fixed
|
|
2876
|
-
|
|
2877
|
-
- Fixed Shift+Enter detection in legacy terminals that send ESC+CR sequence
|
|
2878
|
-
|
|
2879
|
-
## [3.15.1] - 2026-01-05
|
|
2880
|
-
|
|
2881
|
-
### Fixed
|
|
2882
|
-
|
|
2883
|
-
- Fixed editor cursor blinking by allowing terminal cursor positioning when enabled.
|
|
2884
|
-
|
|
2885
|
-
## [3.15.0] - 2026-01-05
|
|
2886
|
-
|
|
2887
|
-
### Added
|
|
2888
|
-
|
|
2889
|
-
- Added `inputCursor` symbol for customizing the text input cursor character
|
|
2890
|
-
- Added `symbols` property to `EditorTheme`, `MarkdownTheme`, and `SelectListTheme` interfaces for component-level symbol customization
|
|
2891
|
-
- Added `SymbolTheme` interface for customizing UI symbols including cursors, borders, spinners, and box-drawing characters
|
|
2892
|
-
- Added support for custom spinner frames in the Loader component
|
|
2893
|
-
|
|
2894
|
-
## [3.9.1337] - 2026-01-04
|
|
2895
|
-
|
|
2896
|
-
### Added
|
|
2897
|
-
|
|
2898
|
-
- Added `setTopBorder()` method to Editor component for displaying custom status content in the top border
|
|
2899
|
-
- Added `getWidth()` method to TUI class for retrieving terminal width
|
|
2900
|
-
- Added rounded corner box-drawing characters to Editor component borders
|
|
2901
|
-
|
|
2902
|
-
### Changed
|
|
2903
|
-
|
|
2904
|
-
- Changed Editor component to use proper box borders with vertical side borders instead of horizontal-only borders
|
|
2905
|
-
- Changed cursor style from block to thin blinking bar (▏) at end of line
|
|
2906
|
-
|
|
2907
|
-
## [1.500.0] - 2026-01-03
|
|
2908
|
-
|
|
2909
|
-
### Added
|
|
2910
|
-
|
|
2911
|
-
- Added `getText()` method to Text component for retrieving current text content
|
|
2912
|
-
|
|
2913
|
-
## [1.337.1] - 2026-01-02
|
|
2914
|
-
|
|
2915
|
-
### Added
|
|
2916
|
-
|
|
2917
|
-
- TabBar component for horizontal tab navigation
|
|
2918
|
-
- Emergency terminal restore to prevent corrupted state on crashes
|
|
2919
|
-
- Overhauled UI with welcome screen and powerline footer
|
|
2920
|
-
- Theme-configurable HTML export colors
|
|
2921
|
-
- `ctx.ui.theme` getter for styling status text with theme colors
|
|
2922
|
-
|
|
2923
|
-
### Changed
|
|
2924
|
-
|
|
2925
|
-
- Forked to @oh-my-pi scope with unified versioning across all packages
|
|
2926
|
-
|
|
2927
|
-
### Fixed
|
|
2928
|
-
|
|
2929
|
-
- Strip OSC 8 hyperlink sequences in `visibleWidth()`
|
|
2930
|
-
- Crash on Unicode format characters in `visibleWidth()`
|
|
2931
|
-
- Markdown code block syntax highlighting
|
|
2932
|
-
|
|
2933
|
-
## [1.337.0] - 2026-01-02
|
|
2934
|
-
|
|
2935
|
-
Initial release under @oh-my-pi scope. See previous releases at [badlogic/pi-mono](https://github.com/badlogic/pi-mono).
|
|
2936
|
-
|
|
2937
|
-
## [1.5.0] - 2026-01-03
|
|
2938
|
-
|
|
2939
|
-
### Added
|
|
2940
|
-
|
|
2941
|
-
- Added `getText()` method to Text component for retrieving current text content
|
|
2942
|
-
|
|
2943
|
-
## [0.50.0] - 2026-01-26
|
|
2944
|
-
|
|
2945
|
-
### Added
|
|
2946
|
-
|
|
2947
|
-
- Added `fullRedraws` readonly property to TUI class for tracking full screen redraws
|
|
2948
|
-
- Added `PI_TUI_WRITE_LOG` environment variable to capture raw ANSI output for debugging
|
|
2949
|
-
|
|
2950
|
-
### Fixed
|
|
2951
|
-
|
|
2952
|
-
- Fixed appended lines not being committed to scrollback, causing earlier content to be overwritten when viewport fills ([#954](https://github.com/badlogic/pi-mono/issues/954))
|
|
2953
|
-
- Slash command menu now only triggers when the editor input is otherwise empty ([#904](https://github.com/badlogic/pi-mono/issues/904))
|
|
2954
|
-
- Center-anchored overlays now stay vertically centered when resizing the terminal taller after a shrink ([#950](https://github.com/badlogic/pi-mono/pull/950) by [@nicobailon](https://github.com/nicobailon))
|
|
2955
|
-
- Fixed editor multi-line insertion handling and lastAction tracking ([#945](https://github.com/badlogic/pi-mono/pull/945) by [@Perlence](https://github.com/Perlence))
|
|
2956
|
-
- Fixed editor word wrapping to reserve a cursor column ([#934](https://github.com/badlogic/pi-mono/pull/934) by [@Perlence](https://github.com/Perlence))
|
|
2957
|
-
- Fixed editor word wrapping to use single-pass backtracking for whitespace handling ([#924](https://github.com/badlogic/pi-mono/pull/924) by [@Perlence](https://github.com/Perlence))
|
|
2958
|
-
- Fixed Kitty image ID allocation and cleanup to prevent image ID collisions between modules
|
|
2959
|
-
|
|
2960
|
-
## [0.49.3] - 2026-01-22
|
|
2961
|
-
|
|
2962
|
-
### Added
|
|
2963
|
-
|
|
2964
|
-
- `codeBlockIndent` property on `MarkdownTheme` to customize code block content indentation (default: 2 spaces) ([#855](https://github.com/badlogic/pi-mono/pull/855) by [@terrorobe](https://github.com/terrorobe))
|
|
2965
|
-
- Added Alt+Delete as hotkey for delete word forwards ([#878](https://github.com/badlogic/pi-mono/pull/878) by [@Perlence](https://github.com/Perlence))
|
|
2966
|
-
|
|
2967
|
-
### Changed
|
|
2968
|
-
|
|
2969
|
-
- Fuzzy matching now scores consecutive matches higher and penalizes gaps more heavily for better relevance ([#860](https://github.com/badlogic/pi-mono/pull/860) by [@mitsuhiko](https://github.com/mitsuhiko))
|
|
2970
|
-
|
|
2971
|
-
### Fixed
|
|
2972
|
-
|
|
2973
|
-
- Autolinked emails no longer display redundant `(mailto:...)` suffix in markdown output ([#888](https://github.com/badlogic/pi-mono/pull/888) by [@terrorobe](https://github.com/terrorobe))
|
|
2974
|
-
- Fixed viewport tracking and cursor positioning for overlays and content shrink scenarios
|
|
2975
|
-
- Autocomplete now allows searches with `/` characters (e.g., `folder1/folder2`) ([#882](https://github.com/badlogic/pi-mono/pull/882) by [@richardgill](https://github.com/richardgill))
|
|
2976
|
-
- Directory completions for `@` file attachments no longer add trailing space, allowing continued autocomplete into subdirectories
|
|
2977
|
-
|
|
2978
|
-
## [0.49.1] - 2026-01-18
|
|
2979
|
-
|
|
2980
|
-
### Added
|
|
2981
|
-
|
|
2982
|
-
- Added undo support to Editor with Ctrl+- hotkey. Undo coalesces consecutive word characters into one unit (fish-style). ([#831](https://github.com/badlogic/pi-mono/pull/831) by [@Perlence](https://github.com/Perlence))
|
|
2983
|
-
- Added legacy terminal support for Ctrl+symbol keys (Ctrl+\, Ctrl+], Ctrl+-) and their Ctrl+Alt variants. ([#831](https://github.com/badlogic/pi-mono/pull/831) by [@Perlence](https://github.com/Perlence))
|
|
2984
|
-
|
|
2985
|
-
## [0.49.0] - 2026-01-17
|
|
2986
|
-
|
|
2987
|
-
### Added
|
|
2988
|
-
|
|
2989
|
-
- Added `showHardwareCursor` getter and setter to control cursor visibility while keeping IME positioning active. ([#800](https://github.com/badlogic/pi-mono/pull/800) by [@ghoulr](https://github.com/ghoulr))
|
|
2990
|
-
- Added Emacs-style kill ring editing with yank and yank-pop keybindings. ([#810](https://github.com/badlogic/pi-mono/pull/810) by [@Perlence](https://github.com/Perlence))
|
|
2991
|
-
- Added legacy Alt+letter handling and Alt+D delete word forward support in the editor keymap. ([#810](https://github.com/badlogic/pi-mono/pull/810) by [@Perlence](https://github.com/Perlence))
|
|
2992
|
-
|
|
2993
|
-
## [0.48.0] - 2026-01-16
|
|
2994
|
-
|
|
2995
|
-
### Added
|
|
2996
|
-
|
|
2997
|
-
- `EditorOptions` with optional `paddingX` for horizontal content padding, plus `getPaddingX()`/`setPaddingX()` methods ([#791](https://github.com/badlogic/pi-mono/pull/791) by [@ferologics](https://github.com/ferologics))
|
|
2998
|
-
|
|
2999
|
-
### Changed
|
|
3000
|
-
|
|
3001
|
-
- Hardware cursor is now disabled by default for better terminal compatibility. Set `PI_HARDWARE_CURSOR=1` to enable (replaces `PI_NO_HARDWARE_CURSOR=1` which disabled it).
|
|
3002
|
-
|
|
3003
|
-
### Fixed
|
|
3004
|
-
|
|
3005
|
-
- Decode Kitty CSI-u printable sequences in the editor so shifted symbol keys (e.g., `@`, `?`) work in terminals that enable Kitty keyboard protocol ([#779](https://github.com/badlogic/pi-mono/pull/779) by [@iamd3vil](https://github.com/iamd3vil))
|
|
3006
|
-
|
|
3007
|
-
Older entries are archived in [packages/tui/CHANGELOG.md@01e0b5c26e26](https://github.com/can1357/oh-my-pi/blob/01e0b5c26e267dff08c305f51d1ab56ec5a2f05d/packages/tui/CHANGELOG.md).
|
|
2842
|
+
Older entries are archived in [packages/tui/CHANGELOG.md@60347ef0f214](https://github.com/can1357/oh-my-pi/blob/60347ef0f214fa63df596d143477268da3f0c904/packages/tui/CHANGELOG.md).
|