| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
| |
Contains the exit value nvim will use.
Before exiting, it is v:null. That way jobs or autocmds (in VimLeavePre or
VimLeave) can check if Neovim is about to quit and with what exit value.
Closes #4666.
|
|
|
|
|
|
|
| |
Problem: The return value of type() is difficult to use.
Solution: Define v:t_ constants. (Ken Takata)
https://github.com/vim/vim/commit/f562e72df726c6191fa305e1c0a113f1cfb87f76
|
|
|
|
|
|
|
| |
Problem: Cannot get the window ID for a mouse click.
Solution: Add v:mouse_winid.
https://github.com/vim/vim/commit/511972d810ea490955161ff5097ec2f57919ceaf
|
|
|
|
|
|
|
| |
Problem: balloon eval only gets the window number, not the ID.
Solution: Add v:beval_winid.
https://github.com/vim/vim/commit/c9721bdc63378cc6123e775ffe43e9cba30322b3
|
|
|
|
|
|
|
|
| |
Problem: A plugin does not know when VimEnter autocommands were already
triggered.
Solution: Add the v:vim_did_enter variable.
https://github.com/vim/vim/commit/1473551a4457d4920b235eeeb9f279e196ee7225
|
|
|
|
|
|
|
|
|
| |
Adds two undocumented v: variables: _null_list and _null_dict because I do not
know a reproducible way to get such lists (though I think I heard about this)
and dictionaries (do not remember hearing about them). NULL strings are obtained
using $XXX_UNEXISTENT_VAR_XXX.
Fixes crash in json_encode($XXX_UNEXISTENT_VAR_XXX). Other added tests worked
fine before this commit.
|
|
|
|
| |
Also makes sure that compiler will error out when new name is longer then
vv_filler.
|
|
|
|
|
|
| |
Error [found][1] by oni-link.
[1]: https://github.com/neovim/neovim/pull/4131/files#r52239384
|
| |
|
|
|
|
|
| |
To get v:none back just rever this commit. This will not make json*() functions
compatible with Vim though.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
receivers.
Add helper functions dict_clear and dict_set_keys_readonly.
|
|
|
|
|
|
|
|
|
| |
Problem: Writing tests for Vim script is hard.
Solution: Add assertEqual(), assertFalse() and assertTrue() functions. Add
the v:errors variable. Add the runtest script. Add a first new
style test script.
https://github.com/vim/vim/commit/43345546ae63710441f066648b8485fb545b3801
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Examples:
let g:SR = [[]]
call add(g:SR[0], g:SR)
wshada
" E952: Unable to dump variable g:SR: container references itself in index 0, index 0
let g:F = {'_TYPE': v:msgpack_types.map, '_VAL': [[{'abc': 1}, function("tr")]]}
wshada
" E951: Error while dumping variable g:F, key {'abc': 1} at index 0 from special map, key '': attempt to dump function reference
" (no msgpack#string available)
" E951: Error while dumping variable g:F, key {="abc": 1} at index 0 from special map, key '': attempt to dump function reference
" (msgpack#string available)
let g:F = {'_TYPE': v:msgpack_types.map, '_VAL': [[g:SR, function("tr")]]}
wshada
" E951: Error while dumping variable g:F, key [[[[{E724@0}]]]] at index 0 from special map, index 1: attempt to dump function reference
call msgpackdump([g:SR])
" E952: Unable to dump msgpackdump() argument, index 0: container references itself in index 0, index 0
Not tested yet.
|
|
|
|
|
|
|
| |
Problem: It is not possible for a plugin to adjust to a changed setting.
Solution: Add the OptionSet autocommand event. (Christian Brabandt)
https://github.com/vim/vim/commit/537443018d41918639695a442c91b34ccec69fc3
|
|
|
|
| |
This writes the logfile and stops profiling.
|
| |
|
|\
| |
| | |
msgpack viml functions for dump/restore
|
| | |
|
|/
|
|
|
| |
Remove static modifier from func_call
Move MAX_FUNC_ARGS definnition from eval.c to eval.h
|
|
|
|
|
|
|
| |
Reviewed-by: Michael Reed <m.reed@mykolab.com>
Reviewed-by: Luke Andrew <luke.github@la.id.au>
Reviewed-by: Justin M. Keyes <justinkz@gmail.com>
Reviewed-by: Florian Walch <florian@fwalch.com>
|
|
|
|
|
|
|
|
|
|
| |
- Remove JobActivity autocmd and v:job_data variable
- Simplify `jobstart` to receive:
- An argument vector
- An optional dictionary which may contain any of the current `jobstart`
options plus `on_stdout`, `on_stderr` and `on_exit` callbacks.
- Refactor and add more job tests
- Update documentation
|
|
|
|
|
| |
This function can be used by API clients to execute a command and capture the
output.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Should be better than gettimeofday() since libuv uses higher resolution
clocks on most UNIX platforms. Libuv also tries to use monotonic clocks,
kernel bugs notwithstanding, which is another win over gettimeofday().
Necessary for Windows, which doesn't have gettimeofday(). In vanilla vim,
Windows uses QueryPerformanceCounter, which is the correct primitive for
this sort of things, but that was removed when slimming up the codebase.
Libuv uses QueryPerformanceCounter to implement uv_hrtime() on Windows so
the behaviour of vim profiling on Windows should now be the same.
The behaviour on Linux should be different (better) though, libuv uses more
accurate primitives than gettimeofday().
Other misc. changes:
- Added function attributes where relevant (const, pure, ...)
- Convert functions to receive scalars: Now that proftime_T is always a
(uint64_t) scalar (and not a struct), it's clearer to convert the
functions to receive it as such instead of a pointer to a scalar.
- Extract profiling funcs to profile.c: make everything clearer and reduces
the size of the "catch-all" ex_cmds2.c
- Add profile.{c,h} to clint and -Wconv:
- Don't use sprintf, use snprintf
- Don't use long, use int16_t/int32_t/...
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
buffer.h:
buflist_getfile() flags
buflist_new() flags
buf_freeall() flags
do_buffer() flags
charset.h:
chartab[] flags
edit.h:
in_cinkeys() flags
change_indent() flags
beginline() flags
insertchar() flags
nv_mousescroll() flags
eval.c
AUTOLOAD_CHAR
eval.h:
enum for vimvars[]
ex_cmds.h:
do_ecmd
read_viminfo flags
ex_cmds2.h:
check_changed() flags
do_source() flags
ex_cmds_defs.h:
BAD_* flags
ex_docmd.h:
VALID_PATH VALID_HEAD
EXMODE_*
do_cmdline() flags
added include
ex_getln.c
*_ESC_CHARS definitions
ex_getln.h:
history table flags - used by add_to_history()
fileio.h:
readfile() flags
event_T definition
getchar.h:
ins_typebuf() flags
KEYLEN_*
globals.h:
NO_SCREEN
NO_BUFFERS
SEA_* defines
current_SID flags
hlf_T enum
HL_FLAGS
do_profiling() flags
schar_T
sattr_T
indent.h:
set_indent() flags
macros.h:
BINARY_FILE_IO flags
mbyte.h:
MB_BYTE2LEN*
ENC_*
memfile.h:
mf_sync() flags
misc1.h:
open_line() flags
message.h:
do_dialog() flags
vim_dialogyesno() flags
DLG_BUTTON_*
normal.h:
find_ident_under_cursor() flags
ops.h:
do_put() flags
operator ID's
option.h:
buf_copy_options() flags
OPT_* flags
os_unix.h:
mch_nodetype() flags
quickfix.h:
skip_vimgrep_pat() flags
regexp.h:
vim_regcomp() flags
values for reg_do_extmatch
search.h:
do_search() flags
search_regcomp() flags
findmatchlimit() flags
syntax.h:
HL_* flags
HL_FOLD is used in buffer_defs.h but nvim
compiles just fine with the defines in
syntax.h
tag.h:
do_tag() flags
find_tags() flags
term.h:
TBUFSZ flags
MOUSE flags
ui.h:
jump_to_mouse() flags
window.h:
file_name_in_line() flags
win_split() flags
MIN_LINES
MIN_COLUMNS
Remove VimClipboard which should have been removed with PR #921.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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.
|
|
|
|
|
|
| |
Change define guards from NEOVIM_XXX_H to NVIM_XXX_H:
- Change header files.
- Change clint correct guard name calculation.
|
|
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.
|