neovim: hyperextensible Vim-based text editor

5/25/2023, 9:06:47 AM
hyperextensible Vim-based text editor

neovim is a free open-source hyperextensible Vim-based text editor

Features

  • Modern GUIs
  • API access from any language including C/C++, C#, Clojure, D, Elixir, Go, Haskell, Java/Kotlin, JavaScript/Node.js, Julia, Lisp, Lua, Perl, Python, Racket, Ruby, Rust
  • Embedded, scriptable terminal emulator
  • Asynchronous job control
  • Shared data (shada) among multiple editor instances
  • XDG base directories support
  • Compatible with most Vim plugins, including Ruby and Python plugins

  • API is first-class: discoverable, versioned, documented.
  • MessagePack structured communication enables extensions in any language.
  • Remote plugins run as co-processes, safely and asynchronously.
  • GUIs, IDEs, web browsers can --embed Neovim as an editor or script host.
  • Lua plugins are easy to create just like Vimscript plugins. Your config can live in init.lua!
  • AST-producing parsing engine enables faster, more accurate syntax highlighting, code navigation, refactoring, text objects, and motions.

Usable

  • Builtin LSP client for semantic code inspection and refactoring (go-to definition, "find references", format, …)
  • Strong defaults
  • Works the same everywhere: one build-type, one command
  • Modern terminal features such as cursor styling, focus events, bracketed paste
  • Builtin terminal emulator

License

Apache License Version 2.0

Platforms

macOS

Other Supported Platforms

Windows and Linux

Homepage and Download

Source code

Download and explore the source code

Share