Go to file
ZyX a32db8ed19 eval/typval: Add missing includes, also add a script to find them
Contains unfinished attempt to integrate IWYU (ref #549). To finish it different
job should be done, specifically:

- Instead of feeding IWYU with modified file a mirror source tree should be
  created with the help of CMake which will contain modified sources. This
  solves the problem with IWYU thinking that `*.generated.h` headers should be
  included in place of `*` headers.
- Build IWYU as all other third-party utilities.
- Make modified sources avoid problems with `nvim/func_attr.h` includes and
  various related tricks.

Current script may only be used for manual checks like this:

    ./scripts/check-includes.py \
        --generated-includes-dir build/include \
        --generated-includes-dir build/src/nvim/auto \
        --file src/nvim/eval/typval.c \
        -- -Isrc -Ibuild/include -Ibuild/src/nvim/auto \
           -DINCLUDE_GENERATED_DECLARATIONS

(it is also somewhat fine with `--file src/nvim/eval/typval.h`). I have no idea
why (I mean, why developer think that these lines are needed, why they are
suggested is pretty obvious: because there is typedef which mentions them before
structs are defined), but for typval.h it reports, among other things, that it
should add lines

    struct dictvar_S;
    struct listitem_S;
    struct listvar_S;
    struct listwatch_S;
2017-03-29 10:08:06 +03:00
2017-03-11 15:37:21 +01:00
2017-03-29 10:08:06 +03:00
2016-09-24 14:03:22 -04:00
2016-02-23 18:03:27 +09:00
2017-03-21 12:19:16 +01:00
2017-02-24 11:03:56 +01:00
2017-02-16 16:23:18 +01:00
2015-11-11 19:50:33 -08:00
2017-03-15 15:01:06 +01:00
2017-01-31 08:58:43 +01:00
2014-06-30 13:59:56 -04:00
2017-03-13 15:50:50 +01:00

Neovim

Wiki | Documentation | Twitter | Community | Gitter Chat

Travis Build Status AppVeyor Build status Pull requests waiting for review Coverage Status Coverity Scan Build Clang Scan Build Debian

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

Packages are in Homebrew, Debian, Ubuntu, Fedora, Arch Linux, and more.

Project layout

  • .ci/: Build server scripts
  • cmake/: Build scripts
  • runtime/: Application files
  • src/: Application source code
  • third-party/: CMake sub-project to build third-party dependencies (if the USE_BUNDLED_DEPS flag is undefined or USE_BUNDLED CMake option is false).
  • test/: Test files

What's been done so far

See :help nvim-features for a comprehensive 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.
Description
Vim-fork focused on extensibility and usability
Readme 499 MiB
Languages
Vim Script 40.3%
Lua 31.8%
C 27.1%
CMake 0.4%
Zig 0.1%
Other 0.1%