| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
out_data_cb() can return without emptying the full RBuffer (no NL was
seen). Because the shell output stream is stopped until space in the
Rbuffer is freed up, no more shell output is written.
To prevent this, output the full RBuffer when write_output() did not
write anything.
write_output() can also process the same RBuffer content more than once,
if no NL was seen. To prevent NUL bytes from producing new lines (if
lines are not written to a buffer), translate NUL to SOH(1).
Fixes #2983
|
| |
|
|
|
|
|
|
|
|
| |
Problem: line2byte() returns one less when 'bin' and 'noeol' are set.
Solution: Only adjust the size for the last line. (Rob Wu)
Original patch:
https://code.google.com/p/vim/source/detail?r=30c9301f33ed76d0b76b9e22362f5e78e26786da
|
|
|
|
|
|
|
|
| |
Problem: 'langmap' is used in command-line mode when checking for mappings.
Solution: Do not use 'langmap' in command-line mode. (Larry Velazquez)
Original patch:
https://code.google.com/p/vim/source/detail?r=5b1eefbf9a532f32a66fa13abbd671488aaafd5c
|
|
|
|
|
|
|
|
| |
Problem: Equivalence class for 'd' does not work correctly.
Solution: Fix 0x1e0f and 0x1d0b. (Dominique Pelle)
Original patch:
https://code.google.com/p/vim/source/detail?r=94b17958585153641ad1e813fa144cad57c7170f
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
parse_msgpack() closes a channel's stream on EOF error and the stream's
close callback close_cb() is queued for the next libuv loop iteration.
When parse_msgpack() returns, it has freed the channel and the queued
stream callback will access this freed memory.
To prevent this, increase the channel's reference count and let the
stream's close callback call decref().
Fixes #3128
|
|
|
|
|
|
|
|
| |
os_get_user_name() requires getuid(), which is only available in UNIX. Return
FAIL for non UNIX systems.
On FAIL os_get_user_name() fills the buffer with the uid. In Windows libuv
uses 0 for uid in stat structs, so 0 is used here too.
|
|
|
|
|
| |
Default to DECSCUSR, except for known cases where other codes are used
or changing cursor shape is unsupported
|
|\
| |
| | |
msgpack viml functions for dump/restore
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Compiler warning was found in [QuickBuild logs][1] from [this page][2]. GCC and
clang on travis appear to be fine. Relevant log parts:
Step Log (master>buildall>build-node?testNode=linux-64>build-and-run-tests>build-and-run-tests-parameterized?buildType=Release>configure-neovim-and-build-nvim)
<…>
16:26:31,364 WARN - /home/quickbuild/buildagent/workspace/root/neovim/pull-requests-automated/src/nvim/eval.c: In function ‘f_msgpackdump’:
16:26:31,364 WARN - /home/quickbuild/buildagent/workspace/root/neovim/pull-requests-automated/src/nvim/eval.c:12371:26: error: ‘cur_tv’ may be used uninitialized in this function [-Werror=uninitialized]
16:26:31,364 WARN - /home/quickbuild/buildagent/workspace/root/neovim/pull-requests-automated/src/nvim/eval.c:12328:21: note: ‘cur_tv’ was declared here
16:26:31,938 WARN - cc1: all warnings being treated as errors
[1]: http://neovim-qb.szakmeister.net/wicket/page?4-1.ILinkListener-content-buildTab-panel-errorContainer-steps-5-logLink
[2]: http://neovim-qb.szakmeister.net/build/2099/overview
|
| |
| |
| |
| |
| | |
Due to a number of places where headers generated from these files are included
gcc with -DEXITFREE produces *loads* of warnings for these functions.
|
| | |
|
| | |
|
| |
| |
| |
| | |
Also cosmetic reduction.
|
| |
| |
| |
| |
| |
| |
| | |
os_scandir() and os_scandir_next() skip over those, because of the
unverlying libuv funcitons behaviour.
Fixes #2954
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Problem: Memory wasted in struct because of aligning.
Solution: Split pos in lnum and col. (Dominique Pelle)
https://github.com/vim/vim/commit/v7-4-600
|
| |
| |
| |
| |
| |
| |
| | |
This is a port of my original contribution to Vim, added in 7.4.687
(https://github.com/vim/vim/commit/v7-4-687). The TUI code has been
heavily refactored (see esp. 25ceadab37edba13f5afa78d8b4723da03ef35f0),
so this required some translation, but the logic is the same.
|
| |
| |
| |
| |
| |
| |
| | |
Currently, there are two functions in the UI API that are called when
the mode changes: insert_mode() and normal_mode(). These can be folded
into a single mode_change() entrypoint which can do whatever it wants
based on the mode it is passed, limited to INSERT and NORMAL for now.
|
|\ \
| | |
| | | |
Move part of syntax/vim.vim to syntax/vim/generated.vim
|
| | |
| | |
| | |
| | | |
Note: list was copied from master (7a6bf3f418c5ad94ac2ac71f21275a87d08e87b9).
I did not add more events there.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
|/ /
| |
| |
| | |
It is not needed to know that os/* uses libuv.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The python-client has it's own test suite, and this isn't even run: see
the has('nvim') call.
Taken from
https://github.com/bfredl/neovim/commit/1acf4ace5224cf12472d2b086f55a74714491d6f
with minor modifications.
"Now that you've done the necessary cleanup, why not go ahead and merge
this." @bfredl
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A menu item can have separate bindings for each Vim mode.
:emenu checks to see which binding it should execute. But, it assumes
it can only be called from Normal mode, so its mode detection is based
on some guesswork. For instance, it detects if you've just used C-O
and, if so, uses the Insert mode binding.
Now that :emenu can be called from any mode (via vim_command), this
commit has it check the actual mode we're in, and simply use the
binding for that mode if we aren't in Normal mode.
|
| |
| |
| |
| | |
also, include some checks.
|
| |
| |
| |
| |
| | |
`nvim --cmd "set co=... lines="` didn't work as expected, and forced to
set those options on VimEnter or afterwards.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Neither setting the 'columns' and 'lines' options nor using the
`:winsize` command resized the terminal window, which caused display
glitches.
Re: #2863
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The test is also split in several blocks and heavily modernized. This was
done to prevent the following quoting and escaping problems during migration:
- the vim command `put =...` treats double quotes as the start of a comment so
they have to be escaped with a backslash
- when inserting control characters on the command line they have to be
escaped with <C-V>
The parts one and two of the test are functional identical so they are wrapped
in a local function. The only difference was which letters where used to test
the same feature.
Part six did test a flag in 'cpoptions' that has been removed in neovim. It
has therefore been removed as well.
Reviewed-by: Michael Reed <Pyrohh@users.noreply.github.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There are more terminals which have bracketed paste support and it
doesnt seem to do any harm with terminals that dont support it eg screen
Reviewed-by: Marco Hinz <mh.codebro@gmail.com>
Reviewed-by: Michael Reed <Pyrohh@users.noreply.github.com>
"+1 Let's see what happens" Justin M. Keyes <justinkz@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
glibc on i386 seems to have an optimization that makes it harder to call
some math functions indirectly from inside an inlined function, causing
compile-time errors with some versions of gcc. This removes inlining on
that platform.
Closes #3071
|
| |
| |
| |
| |
| |
| | |
7.4.774 -> https://github.com/neovim/neovim/pull/2563
7.4.775 -> https://github.com/neovim/neovim/pull/2564
7.4.784 -> https://github.com/neovim/neovim/pull/2792
|
| |
| |
| |
| |
| |
| | |
- Add missing call when the stream is a file
- NULL check because it is possible to call rstream_start with the callback set
to NULL.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There's no way this isn't some long-running joke:
"Just as ':print'. Was apparently added to Vi for
people that keep the shift key pressed too long..."
Note: A user command can overrule this command.
Regarding ':X': the command has been removed for a while, but the
documentation must have been missed, so remove it here.
Reviewed-by: Justin M. Keyes <justinkz@gmail.com>
Helped-by: @jusga
|
| |
| |
| |
| |
| | |
Also handle clipboard errors more like vim: paste from unnamed register
if clipboard provider fails.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The main problem is that <c-c> is a default mapping but also sets got_int.
Because of the former, normal_cmd() is kicked off which eventually leads to
sourcing the clipboard provider. But due to the latter, do_source() throws an
error, because got_int is set.
This is a temporary workaround and sources the clipboard provider before
main_loop(), if &clipboard is set.
References #3023.
|
| |
| |
| |
| |
| |
| | |
Note: the new history value is the max allowed.
Re: https://github.com/neovim/neovim/issues/2676
|
| |
| |
| |
| |
| |
| | |
- CPO_ALL and CPO_VI are identical, so merge them
- No longer check for the environment variable 'VIM_POSIX'
- In vim_diff.txt, mention the removal of 'cpoptions' flags
|
| | |
|
| | |
|
| | |
|
| | |
|