diff options
author | Björn Linse <bjorn.linse@gmail.com> | 2021-09-19 12:11:41 +0200 |
---|---|---|
committer | Björn Linse <bjorn.linse@gmail.com> | 2021-09-26 15:44:40 +0200 |
commit | ac3288d556965b0aaae03c59244278700eb598e8 (patch) | |
tree | f5593187d9173f066ddb65d5110f528fde980531 /src/nvim/runtime.h | |
parent | b3b02eb52943fdc8ba74af3b485e9d11655bc9c9 (diff) | |
download | rneovim-ac3288d556965b0aaae03c59244278700eb598e8.tar.gz rneovim-ac3288d556965b0aaae03c59244278700eb598e8.tar.bz2 rneovim-ac3288d556965b0aaae03c59244278700eb598e8.zip |
fix(runtime): ordering of loading packages with user config
site packages must be sourced before user config
NOTE: we only consider dirs exactly matching "after" to be an AFTER dir.
vim8 considers all dirs like "foo/bar_after", "Xafter" etc, as an
"after" dir in SOME codepaths not not in ALL codepaths.
Diffstat (limited to 'src/nvim/runtime.h')
-rw-r--r-- | src/nvim/runtime.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/nvim/runtime.h b/src/nvim/runtime.h index b40c2b670e..db31ae4e1e 100644 --- a/src/nvim/runtime.h +++ b/src/nvim/runtime.h @@ -7,10 +7,30 @@ typedef void (*DoInRuntimepathCB)(char_u *, void *); +typedef struct { + char *path; + bool after; +} SearchPathItem; + +typedef kvec_t(SearchPathItem) RuntimeSearchPath; +typedef kvec_t(char *) CharVec; + // last argument for do_source() #define DOSO_NONE 0 #define DOSO_VIMRC 1 // loading vimrc file +// Used for flags in do_in_path() +#define DIP_ALL 0x01 // all matches, not just the first one +#define DIP_DIR 0x02 // find directories instead of files +#define DIP_ERR 0x04 // give an error message when none found +#define DIP_START 0x08 // also use "start" directory in 'packpath' +#define DIP_OPT 0x10 // also use "opt" directory in 'packpath' +#define DIP_NORTP 0x20 // do not use 'runtimepath' +#define DIP_NOAFTER 0x40 // skip "after" directories +#define DIP_AFTER 0x80 // only use "after" directories +#define DIP_LUA 0x100 // also use ".lua" files +#define DIP_DIRFILE 0x200 // find both files and directories + #ifdef INCLUDE_GENERATED_DECLARATIONS # include "runtime.h.generated.h" |