Go to file
github-actions[bot] 0627b7902f docs: update version.c (#37212)
vim-patch:8.2.1857: Vim9: using job_status() on an unused var gives an error
vim-patch:8.2.2064: terminal: cursor is on while redrawing, causing flicker
vim-patch:8.2.3585: crash when passing float to "term_rows" of term_start()
vim-patch:8.2.3640: freeze when calling term_wait() in a close callback
vim-patch:8.2.3666: libvterm is outdated
vim-patch:8.2.3803: GUI: crash with 'writedelay' set using a terminal window
vim-patch:8.2.4695: JSON encoding could be faster
vim-patch:8.2.4699: hard to reproduce hang when reading from a channel
vim-patch:8.2.4757: list of libraries to suppress lsan errors is outdated
vim-patch:8.2.4788: large payload for LSP message not tested
vim-patch:8.2.4830: possible endless loop if there is unused typahead
vim-patch:8.2.5055: statusline is not updated when terminal title changes
vim-patch:9.0.0235: 'autoshelldir' does not work with chunked respose
vim-patch:9.0.0394: Cygwin: multibyte characters may be broken in terminal window
vim-patch:9.0.0524: build instructions for MS-Windows are outdated
vim-patch:9.0.0774: the libvterm code is outdated
vim-patch:9.0.1269: channel test often fails on Mac OS
vim-patch:9.0.1487: Content-type header for LSP channel not according to spec
vim-patch:9.0.1498: in a terminal window the cursor may jump around
vim-patch:9.0.1509: error message lacks mentioning the erroneous argument
vim-patch:9.0.1527: crash when using negative value for term_cols
vim-patch:9.0.1627: no generic mechanism to test syntax plugins
vim-patch:9.0.1628: syntax tests fail on FreeBSD
vim-patch:9.0.1692: Android not handling AI_V4MAPPED ai_flag
vim-patch:9.0.1790: Redundant LSP Content-Type header
vim-patch:b147d3148 tests: Improve the codestyle test (#12988)
vim-patch:9.0.1922: LSP server request message is misinterpreted as a response message
vim-patch:9.0.1927: patch 1916 (fixed terminal size) not optimal
vim-patch:9.0.1929: runtime tests fail with tiny vim
vim-patch:9.0.1939: still a problem when processing LSP RPC requests
vim-patch:4ae16d721 Improve CONTRIBUTING.md
vim-patch:74a233184 NSIS: Possibility to include translated license and README.txt files (#14311)
vim-patch:3ac83c714 The CODEOWNERS File is not useful
vim-patch:b7258738f runtime(doc): fix typo in usr_52.txt
vim-patch:f5c8f520b runtime(doc): fix typo in vim9script help file (#14782)
vim-patch:bad9577b9 runtime(doc): include some vim9 script examples in the help
vim-patch:98fb81846 runtime(comment): clarify the usage of 'commentstring' option value
vim-patch:9.1.0473: term_start() does not clear vertical modifier
vim-patch:9.1.0475: cmod_split modifier is always reset in term_start()
vim-patch:9d85d4dcf runtime(manpager): avoid readonly prompt
vim-patch:9.1.0606: tests: generated files may cause failure in test_codestyle
vim-patch:9.1.0639: channel timeout may wrap around
vim-patch:9.1.0643: terminal: cursor may end up on invalid position
vim-patch:166f89e04 runtime(doc): update vim90 to vim91 in docs
vim-patch:914213616 runtime(comment): add gC mapping to (un)comment rest of line
vim-patch:0fb25515c runtime(comment): fix syntax error
vim-patch:e021f39b7 runtime(comment): commenting might be off by one column
vim-patch:7b27fc49a runtime(comment): consider &tabstop in lines after whitespace indent
vim-patch:9.1.0763: tests: cannot run single syntax tests
vim-patch:f64bafd98 runtime(comment): fix commment toggle with mixed tabs & spaces
vim-patch:9.1.0787: cursor position changed when using hidden terminal
vim-patch:55adc5b46 runtime(doc): update coding style documentation
vim-patch:feea1b444 Add an .editorconfig file to repository
vim-patch:ba0b45857 translation(am): Remove duplicate keys in desktop files
vim-patch:de6a31301 runtime(doc): mention auto-format using clang-format for sound.c/sign.c
vim-patch:9.1.0989: Vim9: Whitespace after the final enum value causes a syntax error
vim-patch:9.1.1047: Makefiles uses non-portable syntax
vim-patch:9.1.1061: tests: test_glvs fails when unarchiver not available
vim-patch:7ceca3eb0 runtime(syntax-tests): Support "wait-free" test failure
vim-patch:9.1.1229: the comment plugin can be improved
vim-patch:20e46fa65 Improve contributing guide by adding a section on signing off commits
vim-patch:9.1.1240: Regression with ic/ac text objects and comment plugin
vim-patch:9.1.1254: need more tests for the comment plugin
vim-patch:9.1.1259: some issues with comment package and tailing spaces
vim-patch:9.1.1293: comment plugin does not handle 'exclusive' selection for comment object
vim-patch:9.1.1336: comment plugin does not support case-insensitive 'commentstring'
vim-patch:9.1.1348: still E315 with the terminal feature
vim-patch:55f9e2bef runtime(doc): Tweak documentation style in develop.txt
vim-patch:9.1.1399: tests: test_codestyle fails for auto-generated files
vim-patch:9.1.1456: comment plugin fails toggling if 'cms' contains \
vim-patch:aef2e53cf runtime(comment): handle special chars ^$[ robustly
vim-patch:1cbe3e89c runtime(comment): add <Plug>-mappings
vim-patch:9.1.1536: tests: test_plugin_comment uses wrong :Check command
vim-patch:58706ac04 Update editorconfig and the documented C-style for sign.c/sound.c
vim-patch:9.1.1597: CI reports leaks in libgtk3 library
vim-patch:46ec89902 runtime(doc): update develop assumptions
vim-patch:bc51ec53d runtime(doc): Update CONTRIBUTING and clarify use of Vim9 script
vim-patch:d1833d282 runtime(doc): allow more C99 features
vim-patch:0ed08788a runtime(doc): document use of proto files in develop.txt
vim-patch:05662b63b runtime(doc): Tweak spacing in develop.txt
vim-patch:e89efc22b runtime(doc): update Vim policy
vim-patch:fabe9a4c8 nsis: Getting the Vim version number via makensis
vim-patch:9.1.1841: patch 9.1.1840 adds python build dependency
vim-patch:bcf6c32b5 runtime(doc): Tweak documentation in develop.txt
vim-patch:9.1.1905: tabpanel: truncates terminal output
vim-patch:9.1.1912: tests: test_plugin_comment fails
vim-patch:ef7a577b2 runtime(doc): Remove outdated agide.org link
vim-patch:9.1.2025: conpty terminal process may not start
vim-patch:ce1636548 runtime(doc): Emphasize adding tests when contributing
vim-patch:d09be1584 runtime(doc): Update Contributing.md on the use of AI
vim-patch:9.1.2039: if_ruby: crash when using Ruby/dyn 4.0
vim-patch:0115da33b CI: Missing test of Vim with ConPTY on Windows
vim-patch:9.1.2047: MS-Windows: style issue in gui_w32.c
vim-patch:9.1.2048: MS-Windows: backspace behavior wrong with ConPTY
vim-patch:9.1.2053: MS-Windows: May use wrong find command
vim-patch:0ed8ba307 Always force LF line endings in old test .ok files
vim-patch:a735e44b3 translation(ru): updated menu files according to the patch 9.1.1989
vim-patch:416d1a5e2 translation(ru): added a disclaimer to the license translation
vim-patch:0084e4bd1 gitattributes: mark test21.ok binary, drop test42.in
vim-patch:aa58f1fe4 CI: build failure in if_perl.xs
vim-patch:9.1.2065: GvimExt cannot be linked statically using MinGW
vim-patch:5516fc534 runtime(syntax-tests): Adapt "runtime/syntax/testdir/vimcmd" for "src/testdir/util/shared.vim"
vim-patch:9.1.2073: auto/configure needs to be regenerated
vim-patch:9.1.2074: Compile error with Motif GUI
vim-patch:da44ef6a9 runtime(c,cpp): Add reference links to noreturn tests
vim-patch:8211f556d runtime(syntax-tests): tests: sh_10 fails on MacOS runners
vim-patch:9.1.2091: Ruby integration does not work correctly
vim-patch:9.1.2096: Vim9: truthiness issue with objects
vim-patch:9.1.2099: different line endings in ja.sjis.po and ja.po
vim-patch:284f8669e CI: Reorder path in Windows CI runners and move Python3 before $PATH
vim-patch:9.1.2101: Vim9: more truthiness issues

vim-patch:8.2.0572: using two lines for free and reset
vim-patch:8.2.2291: Vim9: cannot use "null" for v:null
vim-patch:8.2.2961: keys typed during a :normal command are discarded

vim-patch:9.0.1567: profiler calculation may be wrong on 32 bit builds
vim-patch:9.0.1776: No support for stable Python 3 ABI
vim-patch:9.0.1859: heap-use-after-free in bt_normal()
vim-patch:9.0.2052: win32: using deprecated wsock32 api

vim-patch:9.1.2052: Compile error when disabling linebreak feature
vim-patch:5e37e31: runtime(tutor): fix wrong motion in instruction
vim-patch:9.1.2067: shadow variable warning in menu.c
vim-patch:f78629b: runtime(doc): Fix typo at :help 'fsync'
2026-01-25 09:57:34 +08:00
2026-01-25 09:57:34 +08:00
2025-05-04 22:55:19 +02:00
2025-12-30 01:44:52 -05:00
2026-01-05 16:34:51 -08:00
2026-01-14 13:16:38 -05:00
2025-01-11 10:34:12 +01:00
2025-12-06 20:33:02 -05:00
2025-12-15 13:55:15 -05:00

Neovim

Documentation | Chat

Coverity Scan analysis Packages Debian CI Downloads

Neovim is a project that seeks to aggressively refactor Vim in order to:

See the Introduction wiki page and Roadmap for more information.

Features

See :help nvim-features for the full list, and :help news for noteworthy changes in the latest version!

Install from package

Pre-built packages for Windows, macOS, and Linux are found on the Releases page.

Managed packages are in Homebrew, Debian, Ubuntu, Fedora, Arch Linux, Void Linux, Gentoo, and more!

Install from source

See BUILD.md and supported platforms for details.

The build is CMake-based, but a Makefile is provided as a convenience. After installing the dependencies, run the following command.

make CMAKE_BUILD_TYPE=RelWithDebInfo
sudo make install

To install to a non-default location:

make CMAKE_BUILD_TYPE=RelWithDebInfo CMAKE_INSTALL_PREFIX=/full/path/
make install

CMake hints for inspecting the build:

  • cmake --build build --target help lists all build targets.
  • build/CMakeCache.txt (or cmake -LAH build/) contains the resolved values of all CMake variables.
  • build/compile_commands.json shows the full compiler invocations for each translation unit.

Transitioning from Vim

See :help nvim-from-vim for instructions.

Project layout

├─ cmake/           CMake utils
├─ cmake.config/    CMake defines
├─ cmake.deps/      subproject to fetch and build dependencies (optional)
├─ runtime/         plugins and docs
├─ src/nvim/        application source code (see src/nvim/README.md)
│  ├─ api/          API subsystem
│  ├─ eval/         Vimscript subsystem
│  ├─ event/        event-loop subsystem
│  ├─ generators/   code generation (pre-compilation)
│  ├─ lib/          generic data structures
│  ├─ lua/          Lua subsystem
│  ├─ msgpack_rpc/  RPC subsystem
│  ├─ os/           low-level platform code
│  └─ tui/          built-in UI
└─ test/            tests (see test/README.md)

License

Neovim contributions since b17d96 are licensed under the Apache 2.0 license, except for contributions copied from Vim (identified by the vim-patch token). See LICENSE.txt for details.

Description
Vim-fork focused on extensibility and usability
Readme 407 MiB
Languages
Vim Script 40.8%
Lua 31%
C 27.4%
CMake 0.4%
Zig 0.1%
Other 0.1%