Skip to content

Releases: Nimaoth/Nev

Nev 0.5.0

22 Apr 13:15

Choose a tag to compare

0.5.0 (2026-04-22)

  • Introduced a new WASM-based plugin system with dynamic API dispatching, thread support, and plugin state restoring on reload
  • Moved Vim motions to the new plugin system and removed the old one
  • Added a builtin ctags-based language server with hover, signature help, and completion
  • Implemented debugger watches, multiple variable views, inline value display, and recursive variable search
  • Added variable filtering, separate debugger views, and inlay hints for debugger values. Breakpoints now move when editing text
  • Added support for nested treesitter languages (e.g. code blocks inside markdown)
  • Added markdown features like inline image preview with GIF support, and table alignment
  • Added context lines with improved rendering and detection
  • Implemented auto-insertion of matching braces, quotes, and closing characters with improved auto indenting
  • Auto-coloring for brackets
  • Unsaved file temp save/restore
  • Somewhat configurable status line
  • New themes (dark blue, gruvbox dark)
  • Added git status display
  • More Perforce integration with diffing, changelists, and file adding
  • Added support for different line heights and font sizes
  • Major refactor to make the editor extensible through modules. Converted debugger, terminal, and LSP to modules. Added experimental dynamically linked module support with build tooling
  • Lots of bug fixes (and new bugs)
  • Rerender on resize
  • On windows: change title bar color to match theme
  • Undo tree
  • Scroll bars (not interactable)
  • Support for loading UTF-16 encoded files (No support for saving as anything other than UTF-8!)
  • Highlight changes within lines in diff view.
  • Highlight parenthesis in different colors
  • Nimble no longer supported for installing dependencies (use atlas instead. nimble build* commands should still work)
  • Add more minimal toast message style
  • Added commands for downloading prebuilt treesitter wasm parsers from Nimaoth/tree-sitter-wasm-binaries

Nev 0.4.0

04 May 20:01

Choose a tag to compare

  • You can now define an alias for commands, with the ability to run multiple commands in one alias and forward arguments or
    supply default arguments.
  • You can now define multi key keybindings with keys which produce characters (like w) in modes that consume input (like insert mode) while still being able to insert the original key by waiting or pressing another key which is not in the bound sequence.
    • Example: when you bind jj in insert mode to exit to normal mode, three things can happen:
      • You press j once then after a configured delay the j will be inserted as text
      • You press j twice in a row, faster than the configured delay, then it will exit to normal mode
      • You press j once followed by another key (e.g k) faster than the configured delay. j will be inserted and
        the next key press will be handled as usual.
  • Added the ability to show signs on each line in a sign column, to show breakpoints, errors, code actions, etc.
  • Added support LSP for code actions and rename
  • Added support for multiple language servers attached to one document
  • Added builtin language server to provide auto completion and goto definition for paths
  • Changed how language servers are configured.
  • Added builtin terminal emulator based on libvterm
  • Added command all which runs all arguments as commands. Arguments need to be arrays.
  • Remove carriage return from text when pasting from clipboard.
  • Added command line argument --monitor to specify which monitor to open the window on (Windows only).
  • Added support for line numbers for goto-definition for the path language server (supported formats: path:line, path:line:column, path(line, column)).
  • Added support for rendering bold and italic text (currently only for terminals)
  • More customizable layout options
  • More configurable input modes, most default keybindings are now defined in here
  • Added experimental lisp interpreter as plugin to experiment with a way of allowing you to define more complex keybindings
    without having to install multiple compilers and compile something. More info

Nev 0.3.0

01 May 13:48

Choose a tag to compare

  • Removed NimScript plugins, for now only wasm plugins are supported (Lua plugins might be added later)
  • File content is now stored as a rope CRDT instead of a string array. This allows a bunch of improvements:
    • Better performance for big files and long lines
    • Treesitter parsing is now done on a background thread
    • File loading is now completely asynchronous, so no freezes when opening large files.
  • Customizable language detection using regex
  • Support WASM treesitter parsers
  • Integrate wasmtime as new WASM engine, for now only for treesitter parsers
  • Added command for installing treesitter parsers (install-treesitter-parser, requires tree-sitter-cli and git)
  • Added smooth scrolling
  • Added command for browsing docs (explore-help)
  • Added settings browser (browse-settings)
  • Added key binding preview while waiting for further input in longer keybindings
  • Added regex based goto-definition/goto-references/goto-symbol etc if no language server is available (requires ripgrep). Regexes can be configured per language
  • Improved document completions to run mostly on a background thread (except filtering) and cache the entire document
  • Added inlay hints to preview colors detected using regex, e.g. "#feabee" can be detected, and an inlay hint in the corresponding color will be shown before the text. Has to be configured per language.
  • Git view improvements:
    • Added keybindings to navigate changes without switching focus to the preview
    • Added ability to stage/unstage/revert individual changes, from git view or while diff is open
  • Added expression evaluation for basic arithmetic like 1+2, and keybindings that add/subtract from a number at the cursor location
  • Added option to disable line wrapping
  • Added horizontal scrolling
  • Added highlighting of all instances of text matching the current selection
  • Added toast messages for errors
  • Added commands to create/delete files/directories in file explorer.
  • Reworked settings
  • Recent sessions, finders to open recent sessions or find sessions
  • Open session in new pane in tmux or zellij
  • Shell command line: Run shell commands and show the output in a text editor. Not a full terminal, but good enough for some things.
  • Many small fixes and improvements

Nev v0.2.1

30 Jun 14:47

Choose a tag to compare

Fixed some bugs, more docs, more vscode keybindings

Notes:

  • The gui version is called astg/ast-gui, the terminal version ast. Both are dynamically linked
  • If you run into errors with glibc versions you have to compile the editor yourself for now, or use ast-musl which is statically linked

Full Changelog: v0.2.0...v0.2.1

Nev v0.2.0

29 Jun 22:17

Choose a tag to compare

Lots of changes since the last version

Incomplete list:

  • Fuzzy search
  • Better auto completion system
  • More LSP integration
  • Basic debugging with DAP
  • More complete Vim and VSCode keybindings
  • Much better support for linux and the terminal version (both windows and linux)
  • and many small improvements

Notes:

  • The gui version is called astg, the terminal version ast
  • The release_linux_musl.zip only contains the terminal version
  • If you run into errors with glibc versions you have to compile the editor yourself for now, or use the musl version which is statically linked

First kind of usable version

05 Jan 17:04

Choose a tag to compare

Pre-release
v0.1.2-alpha

add terminal version to release folder

First release

13 Aug 16:00

Choose a tag to compare

First release Pre-release
Pre-release

This first release includes a windows and linux version