| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
| |
Problem: The feedkeys test has a one second delay.
Solution: Avoid need_wait_return() to delay. (Hirohito Higashi)
https://github.com/vim/vim/commit/9e496854a9fe56699687a4f86003fad115b3b375
|
| |
|
|
|
|
|
|
|
|
| |
Problem: Using feedkeys() with an empty string disregards 'x' option.
Solution: Make 'x' work with an empty string. (Thinca)
When integrating the patch to nvim, used same logic but different code
based on nvim codebase. New test passed.
https://github.com/vim/vim/commit/74c5bbf13435a7ab1e3461078bbcb1200f0451e1
|
| |\ |
|
| | |
| |
| |
| |
| |
| |
| |
| | |
- rename to shell_xescape_xquote
- move to os/shell.c
- disallow NULL argument
- eliminate casts, nesting
- test: empty shellxquote/shellxescape
|
| | |
| |
| |
| | |
Fixes #2773
|
| |\ \
| |/
|/| |
Fix OpenBSD builds
|
| | |
| |
| |
| |
| |
| | |
Add compiler check for -Wno-static-in-inline, the option is only
supported in gcc >= 4.4, and some systems still ship with earlier
versions of gcc (see #5300).
|
| | | |
|
| |/
|
|
|
|
|
|
|
|
| |
Removing a job too early from the joblist gives garbage collection the
chance to also remove the job dictionary.
Can be triggered with ASAN while waiting 'updatetime'ms (~5 seconds)
before closing the terminal window opened with:
nvim -u NONE +'call termopen("true",{})'
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Before this change,
nvim -i /etc/shada
segfaults on exit if the file does not exist and user does not have
permissions to create the file at /etc/shada.
Closes #5296
Reported in #5277
https://github.com/neovim/neovim/issues/5277#issuecomment-243937255
|
| |
|
|
|
|
|
|
|
|
| |
Closes #5291
Restores behaviour identical to Vim. If the user calls the VimScript
function 'getcwd()' and the working directory cannot be found (for
example because the directory has been deleted since the last time it
was used) an empty string needs to be returned instead of throwing an
error.
|
| |
|
|
|
|
|
| |
Problem: When ":doautocmd" is used modelines are used even when no
autocommands were executed. (Daniel Hahler)
Solution: Skip processing modelines. (closes vim/vim#854)
https://github.com/vim/vim/commit/1610d052413e0ed664498853a47acc2d677a22d1
|
| |
|
|
|
|
|
| |
Problem: It is not easy to see unrecognized error lines below the current
error position.
Solution: Add ":clist +count".
https://github.com/vim/vim/commit/e8fea0728a2fa1fe78ef0ac90dee1a84bd7ef9fb
|
| |
|
|
|
|
|
|
| |
Move typedef expand_T to types.h for tests
Fix lint error for old style comments
Describe 'check_ff_value' valid values as an initial test.
Fix 'get_sts_value' comment inaccuracy and add unit test for it
|
| |
|
|
| |
When a new tabpage gets created it will copy the local working directory
of the previous one, if there is any.
|
| |
|
|
|
|
| |
Problem: Using CTRL-] in the help on "{address}." doesn't work.
Solution: Recognize an item in {}. (Hirohito Higashi, closes vim/vim#814)
https://github.com/vim/vim/commit/28b942a064dd486cc241894b625ab72f5a5c6d1b
|
| |
|
|
|
|
|
| |
As discussed on #5243 and #5283.
Helped-by: John Szakmeister <john@szakmeister.net>
Helped-by: Justin M. Keyes <justinkz@gmail.com>
|
| |\
| |
| | |
Fix error-handling of strtoimax boundary conditions
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
strtoimax is only required to set errno if there is an
underflow/overflow. In those conditions, strtoimax returns
INTMAX_MIN/INTMAX_MAX respectively, so that's the only time we should be
checking the value of errno.
Even in those conditions, errno needs to be set to a known good value
before calling strtoimax to differentiate between "value is actually
INTMAX_MAX/MIN" and "value over/underflows".
Closes #5279
|
| |/ |
|
| |
|
|
|
|
|
|
|
|
|
| |
(#5282)
If a conversion for a container fails in object_to_vim(), the memory for
the container in the returned/converted value is freed, but the returned
value keeps a pointer to the freed memory. Calling later clear_tv() on
this value leads to an invalid memory access.
Set v_type to VAR_UNKNOWN in the converted value on failure, so that
clear_tv() has no effect.
|
| |
|
|
| |
This applies both to msgpack-rpc and eval.
|
| | |
|
| |
|
|
| |
Blacklist deprecated functions and functions depending on channel_id
|
| |
|
|
| |
make api functions highlighted as builtins in vim.vim
|
| | |
|
| |
|
|
| |
also allow handle==0 meaning curbuf/curwin/curtab
|
| | |
|
| |
|
|
| |
header generator.
|
| |
|
|
|
|
|
|
|
| |
Problems:
- Disables cross-compiling (alternative: keeps two hash implementations which
need to be synchronized with each other).
- Puts code-specific name literals into CMakeLists.txt.
- Workaround for lua’s absence of bidirectional pipe communication is rather
ugly.
|
| | |
|
| |
|
|
|
|
| |
Removes all kinds of problems with sorting, provides a ready-to-use function
list representation for genvimvim.lua, does not require specifying function name
twice (VimL function name (string) + f_ function name).
|
| |
|
|
|
|
|
| |
Problem: Invoking mark_adjust() when adding a new line below the last line
is pointless.
Solution: Skip calling mark_adjust() when appending below the last line.
https://github.com/vim/vim/commit/82faa259cc42379f2a17d598a2a39d14048685b0
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Inherited signal mask may block SIGCHLD, which causes libuv to hang at
epoll_wait.
Closes #5230
Helped-by: Nicolas Hillegeer <nicolas@hillegeer.com>
Helped-by: John Szakmeister <john@szakmeister.net>
Note: the #pragma gymnastics are a workaround for broken system headers on
macOS.
signal.h:
int sigaddset(sigset_t *, int);
#define sigaddset(set, signo) (*(set) |= __sigbits(signo), 0)
sys/_types/_sigset.h:
typedef __darwin_sigset_t sigset_t;
sys/_types.h:
typedef __uint32_t __darwin_sigset_t; /* [???] signal set */
sigset_t is defined as unsigned int, but the sigaddset() ORs it with an int,
mixing the types. So GCC generates a sign-conversion warning:
sig.c:9:13: warning: implicit conversion changes signedness: 'int' to 'unsigned int' [-Wsign-conversion]
(*(&s) |= __sigbits((sigset_t) 20), 0);
~~ ^~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
System headers are normally ignored when the compiler generates warnings:
https://gcc.gnu.org/onlinedocs/cpp/System-Headers.html
> GCC gives code found in system headers special treatment. All warnings,
> other than those generated by ‘#warning’ (see Diagnostics), are suppressed
> while GCC is processing a system header. Macros defined in a system header
> are immune to a few warnings wherever they are expanded. This immunity is
> granted on an ad-hoc basis, when we find that a warning generates lots of
> false positives because of code in macros defined in system headers.
Instead of the #pragma workaround, we could cast the sigset_t pointer:
# if defined(__APPLE__)
sigaddset((int *)&mask, SIGCHLD);
# else
sigaddset(&mask, SIGCHLD);
# endif
but that could break if the headers are later fixed.
|
| |
|
|
| |
Use new nvim_ui_ prefix to avoid breaking change.
|
| | |
|
| |
|
|
|
| |
When USE_ICONV is defined, iconv.h references various errno constants,
but errno.h is only being included when HAVE_ICONV_H is not defined.
This causes build failures on at least GNU/Hurd.
|
| |\ |
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| | |
Problem: User commands don't support modifiers.
Solution: Add the <mods> item. (Yegappan Lakshmanan, closes vim/vim#829)
https://github.com/vim/vim/commit/63a60ded3fd584847a05dccf058026e682abad90
|
| |\ \ |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
For any script--not just `:global` commands--there is no reason to
update the system clipboard until the script is finished, so disable it
during do_cmdline().
Before this change, 'clipboard=unnamedplus' causes scripted editing to
be extremely slow (e.g. `:normal` in a while-loop).
Closes #3534
|
| | |/ |
|
| |/
|
|
|
| |
Remove redundant item availibility checks when constructing
complete items from a dict.
|
| |\ |
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Links to Search by default
screen.c: Combine CursorLine with QuickFixLine
- HLF_QFL takes priority over HLF_CUL
docs: Updated to mention QuickFixLine
runtime: Added QuickFixLine to nvimHLGroup
tests: QuickFixLine highlight
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
* sub_joining_lines: Optimization for :%s/\n//
* sub_grow_buf: Allocation of buffer to contain replacement text
* sub_parse_flags: Parse {flags} from :s command into subflags_T
Although this doesn't reduce do_sub's size enough to satisfy lint, it
covers the more straightforward pieces.
|
| | | |
|