0.2.23
Improvements
-
Windows-1251 Encoding: Added support for Windows-1251 (Cyrillic) encoding for loading and saving Cyrillic-script text files (#1453). Available in the encoding selector; auto-detected for text mixing uppercase and lowercase Cyrillic letters.
-
Theme Editor and Package Manager: Multi-panel plugin UIs now behave like native splits — per-panel mouse-wheel scrolling and scrollbars, draggable panel dividers, and the theme editor's own colors now use the active theme.
-
File Finder in Command Palette (Ctrl+P): Much faster and more responsive on large local and remote trees — file enumeration runs in the background with results streaming in as they're found, typing a path like
etc/hostsproduces instant filesystem-confirmed matches, and ranking now reliably prefers contiguous matches (resultsfindsresults.jsonfirst) including multi-term queries that reconstruct a path or identifier (etc hosts→/etc/hosts,save file→save_file.rs). -
Review Diff: Brought back features that were dropped in the rewrite in version 0.2.22: stage, unstage, and discard individual hunks; jump between hunks with
n/p; leave line comments (c) and overall session notes (N), edit or delete them with confirmation, see notes in the file list panel, and export your review notes to a markdown file. Redesigned toolbar of styled key hints that adapts to the focused panel. -
Keybinding Editor: Special keys like Esc, Tab, and Enter can now be bound — press Enter on the key field to enter capture mode, then the next keypress is recorded as-is (#1501). Fixed parent modal to be dimmed while a sub-dialog is open.
-
Customizable Status Bar: The left and right sides of the status bar are now configurable via the Settings UI using a new DualList picker (transfer items between Available/Included columns, reorder with arrows). Includes a new
{clock}element that displays HH:MM with a blinking colon. Thanks @1612elphi! -
LSP Status Bar Indicator: Simplified to a single color-coded "LSP" label — clicking LSP in the status bar now opens an interactive popup with per-server status and actions (restart, stop, view log).
-
Universal LSP Servers: LSP servers configured for all languages are now spawned once per project instead of once per opened language, eliminating duplicate processes.
Bug Fixes
-
Regression - Fixed multi-byte UTF-8 characters not being parsed correctly in the input handler, and IME-composed characters delivered as key-up events being ignored on Windows (#1538). Thanks @wellorbetter! Reported by @AugustusZane.
-
Fixed blank panels appearing after terminal resize.
-
Fixed terminal mode not being exited when the active buffer is switched to a non-terminal.
-
Fixed Review Diff hunk navigation (
n/p) not working in the diff panel, files panel not receiving focus on launch, hunk-level comments not displaying (#1503), and deleted-file drill-down crashing. -
Fixed Settings UI section headers being invisible in the high-contrast theme.
-
Fixed word wrap producing single-character-per-line output on narrow terminals with deeply indented code — the hanging indent was being double-counted (#1502).
-
Fixed LSP completion popup showing duplicate entries when reopened (#1514).
-
Fixed LSP
auto_startbeing ignored on a per-server basis when multiple servers are configured for one language — opening a file no longer drags in every enabled server, only those individually markedauto_start. -
Fixed mouse input issue - mouse state not being restored in the terminal - after leaving Fresh (Windows only, #1530).