Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Roadmap

The roadmap is an overview of the project direction. Detailed plans and priorities are tracked in milestones (these are tentative and may be changed or dropped at any time):

  • Version numbers (0.1, 0.2, …) track production releases. The next upcoming version has a (estimated) target date.
  • backlog holds low-priority items.
  • needs-owner holds zero-priority items (no feasible path to completion).

Next

Concrete high-level feature areas and changes.

0.12+: "The year of Nvim OOTB"

  • Prepare for 1.0
  • stdlib: image API
  • No more "Press Enter"
  • UI :connect: #5035
  • Plugin manager
  • packspec / pkg.json
  • Redesign --remote
  • File-change detection
  • multicursor, super-macros
  • Task abstraction, structured concurrency: vim.async
  • Unified event interface, nvim_on()
  • Redesign (simplify) remote plugin concept, eliminate :UpdateRemotePlugins
    • Lua remote plugin host
  • Externalized UI: window layout events, messages
  • LSP: vim.lsp.server()

Completed

Here are the headline features of the previous releases; for details see the release notes.

0.11

0.10

  • Default colorscheme
  • LSP inlay hints
  • TermRequest, TermResponse
  • treesitter: builtin parsers for bash, markdown, python
  • vim.snippet
  • vim.iter
  • vim.lpeg, vim.re, vim.glob, vim.base64

0.9

0.8

  • LSP improvements (v3.16 spec coverage, configuration, LspAttach)
  • Lua API: vim.fs, vim.cmd{}, measure require() in --startuptime, :map/:command/:au can print Lua source location
  • treesitter API: use queries to define spellcheck regions (aka "spellsitter")
  • vim.ui_attach()
  • UI and RPC performance
  • user-defined command preview
  • cmdheight=0
  • clickable statusline

0.7

  • Tree-sitter integration (highlighting, folds)
  • TUI: extended keys (CTRL-i vs TAB, SHIFT modifier, …!)
  • Global statusline: laststatus=3

0.6

  • Unified diagnostics API
  • Updated defaults

0.5 + 0.5.1

0.4

  • Lua "stdlib"
  • Externalized UI: multigrid
  • Externalized UI: floating windows
  • Externalized UI: messages

0.3.x

  • API: buffer update events
  • Vimscript expression parser: nvim_parse_expression()
  • Windows: MSVC support
  • 0.2.1 Built-in Lua:vim.api, :lua, nvim_execute_lua(), …
  • 0.2.1 Externalize UI components: cmdline, wildmenu
  • 0.2.1 Windows :terminal
  • 0.2.1 Pre-packaged "universal" binary for Linux

0.2.x

  • Windows support
  • Externalized UI: popumenu
  • Externalized UI: tabline
  • Pre-packaged builds for Windows and macOS

0.1.x

  • First public release
  • Publish a stable product that can be used as a benchmark for progress

What is Neovim?

Neovim is a Vim-based text editor engineered for extensibility and usability, to encourage new applications and contributions.

Discuss

Visit #neovim:matrix.org or #neovim on irc.libera.chat to chat with the team.