Changelog

Download latest release →

Build 218

Unreleased

  • Fixed status bar buffer label order not updated after drag to reorder in buffer explorer
  • Fixed nested headings depth issue in file outline for Markdown.
  • Fixed accept closing tag issue and improved autocomplete suggestion ranking in HTML
  • Reduced smooth scroll tail inertia
  • Fixed inline shell path not updated after change to project or file explorer root
  • Removed saved state label on unsaved buffers

Build 217

Oct 2, 2026

Build 214

Sep 28, 2026

  • Bug fix in open and close window with threads still running

Build 213

Sep 28, 2026

  • Added new PHP lexer with minimal syntax highlight and file outline support
  • Fixed memory leak issue related to opening and closing many files without closing window
  • Added html tags, comments, and front matter styling to Markdown
  • Added built-in file outline support to Python, JavaScript, Markdown, Org, Odin, Zig, MATLAB
  • Renamed syntax color lambda to function in themes. This syntax color is now used for function definitions.

Build 211

Sep 23, 2026

  • Removed the active state icon
  • Replaced the template config file one first launch with a smaller sample of the default configuration
  • Performance improvements to selections that are very large. Creating multiple selections now also show the selection with primary caret as less dimmed.
  • Fixed issues with native dialog edit menu not always visible on save/open
  • Added right-click to select from current cursor position to clicked position
  • Minor changes to default themes
  • Added tab list to status bar. The tab list is only visible when there are more than one open buffer. This also support tab multi-select, for example Cmd + Click to toggle active.

Build 210

Sep 17, 2026

  • Various performance improvements
  • Minor UI improvements to search in project
  • Added move cursor right at end of line to unfold if folded
  • Changed Cmd + 1 2 3 ... to navigate between open tabs when many selected tabs, otherwise normal behaviour
  • Added default keybinding Cmd + ; for previous_tab, and Cmd + ' for next_tab. These can also be used to navigate between any selected tabs.
  • Changed inline chat to use > as symbol for prompt line (similar to % for inline shell). This can be changed in config inline_chat_symbol. Removed prefix on chat responses. This change also brings inline chat under Inline command, so uses Cmd + Shift + Return instead of Cmd + K as default.
  • Added pixel-by-pixel momentum-based smooth scrolling. This is a large rewrite of scrolling behaviour for editor, minimap, and scrollbars, so please report any issues found.
  • Added recently opened files to dock icon menu
  • Added click on line info label to switch to word count, this replaces config option show_word_count
  • Added short easing animation to pane open and close
  • Added short easing animation to dialogs that change position or size dynamically
  • Added tab multi-select behavior to the Buffer Explorer dialog, Cmd + B, as well as drag tab outside window to open in new window.
  • Replaced custom title bar with macOS native title bar. This change also replaces the buffer/ tab list in title with native title bar file controls. This included a large rewrite of the buffer management, so please report any issues found.

Build 209

Aug 20, 2026

  • Fixed some cases where code completion ghost text showing after cursor moved issue
  • Fixed find in project sometimes not finding file when in same root as large nested directory (replaced depth-first with breath-first)
  • Fixed auto complete suggestions showing inside comments issue
  • Changed Python lexer decorators to use special styling
  • Minor changes to default light-mode koi theme
  • Added auto complete HTML tag pairs, attributes, and in-string suggestions
  • Added simple match scoring to file indexer filter to show better matched files first in list
  • Added theme koi-mono

Build 208

Aug 17, 2026

  • Fixed extended cursor left overs sometimes not repainted after jump in file issue
  • Fixed selection background sometimes reset after config file saved issue
  • Fixed multi cursor add caret up or down to line with unicode positioned at wrong column issue
  • Fixed auto unfolding code blocks in non active editor issue
  • Fixed highlight match from find in file outside scrolled view issue
  • Minor UI updates to title bar
  • Minor UI updates to dialog windows
  • Added editor command detect_tab_width to automatically set tab width for current buffer
  • Added editor commands for toggle_eol_symbols, eol_mode_lf, eol_mode_crlf, and eol_mode_cr
  • Added cursor trail effect cursor_trail_effect and removed the experimental neon effect
  • Added accept_auto_completion and accept_code_completion to config file to set which editor commands that also can trigger auto complete and code complete
  • Added dist and build to default exclude list for file indexer
  • Added lexer for Mojo (bascially Python with extra keywords)
  • Added lexer for MATLAB
  • Added xml and plist to use HTML lexer

Build 207

Aug 7, 2026

  • Fixed custom editor commands key bindings issue
  • Minor bug fix in tearing off tabs into windows

Build 206

Aug 6, 2026

  • Fixed minor bug with fold headers inside comments in C lexer
  • Fixed minor styling inconsistency when selecting items in command palette
  • Fixed fold symbols not immediately updated after large insert issue
  • Fixed multi-line italic rich text issue in Markdown lexer
  • Fixed config file sometimes open in wrong editor window issue
  • Fixed bug in selection overlay causing smaller documents to fall back to cheaper selection rendering
  • Replaced default key bindings for move_line_up, now used for move_caret_to_fold_above (too easy to misclick)
  • Increased max matches for project/disk search to 100,000 (was 20,000)
  • Performance improvements to adding cursors to each line in selection (should now handle many more thousands of lines than before)
  • Accepting a function name from auto complete list now inserts () and moves cursor inside (might make this per lexer or optional later)
  • Replaced old example scripts in /Application Support/Koi/.hackerman-scripts with new ones using updated scripting API
  • Added some color to the app icon
  • Added many improvements to scripting API
  • Added better labels to built in commands in command palette
  • Added command to insert cursor on each line in selection, add_cursors_to_line_starts
  • Added dynamic font weights based on system appearance unless setting your own font_weight in config file
  • Added adaptive themes with system appearance monitoring (use "adaptive" theme to switch automatically when system changes)
  • Added tips and other info to quick start guide shown on editor empty state

Build 205

Aug 5, 2026

  • Fixed keyboard and mouse select/unselect multiple buffers in buffer explorer issue
  • Fixed multiple active buffers in buffer explorer styling issue
  • Fixed bug in is_hexstr
  • Increased shell timeout timer to 10 seconds (was 0.5 seconds)
  • Removed double click on tab to close (too easy to misclick)
  • Added code completion on indented lines after newline (for fast pre-fill line without type)

Build 204

Aug 2, 2026

  • Toggle file explorer with text in filter selects all text for faster replace (no text in filter still focus on list on open)
  • Multiple cursor edit performance improvements (should be much snappier now, also in very large files)
  • Fixed view pos in config file jump on save issue
  • Added dracula, gruvbox, tokyo-night, catppuccin, and nord themes
  • Added focus_main_editor, focus_split_editor commands
  • Removed toggle_newspaper_scroll, transpose_line commands

Build 203

Jul 29, 2026

  • Fixed select all not updating line info in status bar when cursor at BOF issue
  • Fixed indexer blocking UI on large files issue (moved strip comment and string words to own thread)
  • Minor UI changes to tear off buffer and drag and drop window preview
  • Added drag to reorder buffers in title bar (still experimental)
  • Added model label again to show which models are active and moved working indicator to left side in status bar

Build 202

Jul 28, 2026

  • Minor bug fix

Build 201

Jul 28, 2026

  • Fixed quickstart overlay rendering on empty saved buffers issues (should only be shown on empty unsaved buffers)
  • Fixed line numbers not updated until focus after tear of buffer into own window issue
  • Fixed save/open file last dir used updated after saving config issue (should only update on non-config saves)
  • Fixed update file explorer root from filtered results issue
  • Fixed lexer colors not found issue on saving plain text files
  • Minor perfomance optimization on cursor movements

Build 200

Jul 26, 2026

  • Fixed tab first indenting then replacing single selections issue (now only indenting)
  • Fixed unable to copy selection after indent issue
  • Fixed bug in selection overlay that triggered line highlight redraw on type
  • Removed option to submit selection as prompt (now current line is prompt)
  • Removed smart line comments in HTML files with nested JavaScript, CSS, and PHP (not currently supported in lexer)
  • Disabled background indexing on startup in very large files (0.5M+ lines)

Build 199

  • Fixed update file explorer root from filtered trees issue (should now work in both normal and filtered trees)
  • Fixed minor behavior inconsistency in command palette
  • Fixed shortcut issue in native dialogs (save, open)
  • Fixed minor behavior inconsistency in some clickable labels
  • Fixed code complete sometimes triggered from modifier key presses (now only called on printable keys)

Build 198

  • Fixed hotspot links in Org and Markdown
  • Fixed minor lexer naming issue
  • Fixed C lexer fold header in comments issue (removed other symbols than { ... })
  • Fixed minor styling inconsistency in filter inputs
  • Fixed highlight word on partial selections (previously stripped leading ws, now only exact matches)
  • Removed #+begin_assistant, #+begin_assist, #+begin_ai, and #+begin_chat headers from org lexer
  • Removed inline code execution in Org files (got rid of dependencies quickjs, hy, and lupa)
  • Added quick start overlay to empty windows

Build 197

  • Minor bug fix

Build 196

  • Fixed background indexing not cancelled properly (threading issue)
  • Fixed newline issue around folded code blocks
  • Fixed Python lexer fold skipped empty line after class definition issue
  • Removed words in comments and strings from auto complete suggestions
  • Added Tab key press as quick accept in completion list

Build 195

  • Minor UI changes to find in file and search explorer (replaced buttons with flags)
  • Added horizontal auto scroll when typing close to edge

Build 194

  • Removed AI code complete suggestions from auto complete list (code complete now shows up as ghost text only, accept with Right arrow key)
  • Fixed auto complete dialog overlapping text at edges issue

Build 193

  • Minor bug fix

Build 192

  • Keyboard navigation improvements to auto complete list
  • Fixed auto complete list position issue after drag in minimap
  • Find in file performance improvements
  • Disabled highlight all matches on select in very large files
  • Disabled auto search on type in very large files (0.5M+ lines)

Build 191

  • Fixed rich text styling issue in split editor
  • Added search flags to find in file