Vim-fork focused on extensibility and usability
Go to file
ZyX 7109f63e3c main: Flush file in place of closing it, also do error reporting
Apparently on travis OS X systems it crashes when cleaning up streams with
stdout closed:

    (lldb) bt all
    * thread #1: tid = 0x0000, 0x00007fff8703df06 libsystem_kernel.dylib`__pthread_kill + 10, stop reason = signal SIGSTOP
      * frame #0: 0x00007fff8703df06 libsystem_kernel.dylib`__pthread_kill + 10
        frame #1: 0x00007fff93a764ec libsystem_pthread.dylib`pthread_kill + 90
        frame #2: 0x00007fff97c056df libsystem_c.dylib`abort + 129
        frame #3: 0x00007fff97bccdd8 libsystem_c.dylib`__assert_rtn + 321
        frame #4: 0x0000000107a4e106 nvim`uv__close(fd=<unavailable>) + 102 at core.c:521
        frame #5: 0x0000000107a5307d nvim`uv__loop_close(loop=0x00007fff5847c018) + 77 at loop.c:118
        frame #6: 0x0000000107a4d149 nvim`uv_loop_close(loop=0x00007fff5847c018) + 57 at uv-common.c:626
        frame #7: 0x000000010783e5bc nvim`stream_set_blocking(fd=0, blocking=true) + 204 at stream.c:34
        frame #8: 0x000000010795d66b nvim`mch_exit(r=0) + 91 at os_unix.c:147
        frame #9: 0x00000001078d5663 nvim`command_line_scan(parmp=0x00007fff5847c760) + 1779 at main.c:787
        frame #10: 0x00000001078d4393 nvim`main(argc=2, argv=0x00007fff5847c898) + 163 at main.c:249
        frame #11: 0x00007fff8cdd65ad libdyld.dylib`start + 1
        frame #12: 0x00007fff8cdd65ad libdyld.dylib`start + 1
2017-07-04 19:58:02 +03:00
busted/outputHandlers tests: Rename neovim output handler to nvim 2017-04-10 03:51:51 +03:00
ci Merge #6789 from ZyX-I/lua-path 2017-06-27 02:29:15 +02:00
cmake Merge #6789 from ZyX-I/lua-path 2017-06-27 02:29:15 +02:00
config build: Do not check for obsolete <termio.h> 2016-12-24 17:41:06 +01:00
contrib cmake: Remove custom "Dev" build-type. (#6932) 2017-06-29 09:29:40 +02:00
man 'guicursor': Empty means "block cursor in all modes". 2017-04-01 23:14:05 +02:00
runtime provider/clipboard.vim: Handle missing g:clipboard keys 2017-06-28 09:42:03 +02:00
scripts scripts: Tell curl to follow redirects 2017-06-29 20:25:51 -04:00
src main: Flush file in place of closing it, also do error reporting 2017-07-04 19:58:02 +03:00
test os/fileio: Add ability to use os/fileio.c for file descriptors 2017-07-04 18:37:01 +03:00
third-party Update deps (#6885) 2017-06-17 03:17:34 +00:00
unicode Update unicode files 2017-06-29 17:46:29 -04:00
.editorconfig add .editorconfig 2016-02-23 18:03:27 +09:00
.gitignore test: Use workspace-local temp directory. 2017-03-30 02:55:00 +02:00
.travis.yml ci: Bump clang version to 4.0 2017-06-15 00:14:57 -04:00
appveyor.yml ci/appveyor: fix cache pattern 2017-04-11 02:37:39 +02:00
BACKERS.md Update backer URL 2015-11-11 19:50:33 -08:00
CMakeLists.txt cmake: Remove custom "Dev" build-type. (#6932) 2017-06-29 09:29:40 +02:00
CONTRIBUTING.md doc: *standard-path*, *$NVIM_LOG_FILE* 2017-06-07 00:40:13 +02:00
ISSUE_TEMPLATE.md doc: precision, concision, elision 2016-06-03 17:11:10 -04:00
LICENSE LICENSE: add LuaJIT notice. #899 2014-06-30 13:59:56 -04:00
Makefile ci: Also lint lua code in src/nvim/lua 2017-05-25 16:50:06 +03:00
README.md doc: README.md (#6839) 2017-06-02 23:45:32 +02:00

Neovim

Wiki | Documentation | Twitter | Community | Gitter Chat

Travis Build Status AppVeyor Build status Coverage Status Coverity Scan Build Clang Scan Build PVS-studio Check

Debian Downloads

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

See the wiki and Roadmap for more information.

Throughput Graph

Install from source

make CMAKE_BUILD_TYPE=RelWithDebInfo
sudo make install

See the wiki for details.

Install from package

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

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

Project layout

├─ ci/            Build server scripts
├─ cmake/         Build scripts
├─ runtime/       User plugins/docs
├─ src/           Source code
├─ third-party/   CMake subproject to build dependencies 
└─ test/          Test code
  • third-party/ is activated if USE_BUNDLED_DEPS is undefined or the USE_BUNDLED CMake option is true.
  • Source README
  • Test README

Features

See :help nvim-features for the full list!

License

Neovim is licensed under the terms of the Apache 2.0 license, except for parts that were contributed under the Vim license.

  • Contributions committed before b17d96 remain under the Vim license.

  • Contributions committed after b17d96 are licensed under Apache 2.0 unless those contributions were copied from Vim (identified in the commit logs by the vim-patch token).

See LICENSE for details.

Vim is Charityware.  You can use and copy it as much as you like, but you are
encouraged to make a donation for needy children in Uganda.  Please see the
kcc section of the vim docs or visit the ICCF web site, available at these URLs:

        http://iccf-holland.org/
        http://www.vim.org/iccf/
        http://www.iccf.nl/

You can also sponsor the development of Vim.  Vim sponsors can vote for
features.  The money goes to Uganda anyway.