summaryrefslogtreecommitdiffstatshomepage
path: root/src/nvim/api/vim.h
AgeCommit message (Collapse)AuthorFiles
2025-08-14refactor(build): remove INCLUDE_GENERATED_DECLARATIONS guardsbfredl1
These are not needed after #35129 but making uncrustify still play nice with them was a bit tricky. Unfortunately `uncrustify --update-config-with-doc` breaks strings with backslashes. This issue has been reported upstream, and in the meanwhile auto-update on every single run has been disabled.
2023-11-28refactor: fix runtime_defs.h (#26259)zeertzjq1
2023-11-27refactor: fix includes for api/autocmd.hdundargoc1
2023-11-27refactor: move Arena and ArenaMem to memory_defs.h (#26240)zeertzjq1
2023-11-12refactor: replace manual header guards with #pragma oncedundargoc1
It is less error-prone than manually defining header guards. Pretty much all compilers support it even if it's not part of the C standard.
2023-04-07refactor(api): make typed dicts appear as types in the source codebfredl1
problem: can we have Serde? solution: we have Serde at home This by itself is just a change of notation, that could be quickly merged to avoid messy merge conflicts, but upcoming changes are planned: - keysets no longer need to be defined in one single file. `keysets.h` is just the initial automatic conversion of the previous `keysets.lua`. keysets just used in a single api/{scope}.h can be moved to that file, later on. - Typed dicts will have more specific types than Object. this will enable most of the existing manual typechecking boilerplate to be eliminated. We will need some annotation for missing value, i e a boolean will need to be represented as a TriState (none/false/true) in some cases. - Eventually: optional parameters in form of a `Dict opts` final parameter will get added in some form to metadata. this will require a discussion/desicion about type forward compatibility.
2021-10-25refactor(api): move extmark API to its own fileBjörn Linse1
2021-08-22refactor(map): get rid of spurious subsystem_init() functions due to mapsBjörn Linse1
2018-11-24api: implement object namespacesBjörn Linse1
Namespaces is a lightweight concept that should be used to group objects for purposes of bulk operations and introspection. This is initially used for highlights and virtual text in buffers, and is planned to also be used for extended marks. There is no plan use them for privileges or isolation, neither to introduce nanespace-level options.
2014-07-11Remove stdbool.h from files which don't need itPavel Platto1
Done by manual inspection of the output of this script: grep -r -l -w "bool\|true\|false" * | grep 'c$\|h$' > has_bool grep -r -l "stdbool.h" * | grep 'c$\|h$' > has_include grep -F -x -v -f has_bool has_include
2014-06-02Add automatic generation of headersZyX1
- The 'stripdecls.py' script replaces declarations in all headers by includes to generated headers. `ag '#\s*if(?!ndef NEOVIM_).*((?!#\s*endif).*\n)*#ifdef INCLUDE_GENERATED'` was used for this. - Add and integrate gendeclarations.lua into the build system to generate the required includes. - Add -Wno-unused-function - Made a bunch of old-style definitions ANSI This adds a requirement: all type and structure definitions must be present before INCLUDE_GENERATED_DECLARATIONS-protected include. Warning: mch_expandpath (path.h.generated.h) was moved manually. So far it is the only exception.
2014-06-02Move documentation from function declarations to definitionsZyX1
Uses a perl script to move it (scripts/movedocs.pl)
2014-05-28API: Events: Add functions for {un}subscribing to broadcasted eventsThiago de Arruda1
2014-05-23API: Refactor: Return handles instead of indexesThiago de Arruda1
- Define specialized arrays for each remote object type - Implement msgpack_rpc functions for dealing with the new types - Refactor all functions dealing with buffers, windows and tabpages to return/accept handles instead of list indexes.
2014-05-23API: Refactor: Move non-public files to private subdirectoryThiago de Arruda1
2014-05-17Enable -Wconversion for API files and fix errorsThiago de Arruda1
2014-05-17Use more descriptive names for API primitive typesThiago de Arruda1
Instead of exposing native C types to a public API that can be consumed by other platforms, we are now using the following translation: int64_t -> Integer double -> Float bool -> Boolean
2014-05-15Introduce nvim namespace: Fix define guards.Eliseo Martínez1
Change define guards from NEOVIM_XXX_H to NVIM_XXX_H: - Change header files. - Change clint correct guard name calculation.
2014-05-15Introduce nvim namespace: Fix project-local includes.Eliseo Martínez1
Prepend 'nvim/' in all project-local (non-system) includes.
2014-05-15Introduce nvim namespace: Move files.Eliseo Martínez1
Move files from src/ to src/nvim/. - src/nvim/ becomes the new root dir for nvim executable sources. - src/libnvim/ is planned to become root dir of the neovim library.