Skip to content

Releases: Nimaoth/Nev

Nev 0.4.0

04 May 20:01
Compare
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
ac16215
Compare
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
Compare
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
Compare
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
Compare
Choose a tag to compare
Pre-release
v0.1.2-alpha

add terminal version to release folder

First release

13 Aug 16:00
Compare
Choose a tag to compare
First release Pre-release
Pre-release

This first release includes a windows and linux version