Problem: Index in getjumplist() may be wrong. (Epheien)
Solution: Call cleanup_jumplist() earlier. (Yegappan Lakshmanan,
closesvim/vim#3941)
57ee2b6e0b
Problem: Getting the jump list requires parsing the output of :jumps.
Solution: Add getjumplist(). (Yegappan Lakshmanan, closesvim/vim#2609)
4f50588ba3
Problem: Undofile() reports wrong name. (Francisco Giordano)
Solution: Clean up the name before changing path separators. (closesvim/vim#4392,
closesvim/vim#4394)
e9ebc9a91c
Problem: If writing runs into a conversion error the backup file is
deleted. (Arseny Nasokin)
Solution: Don't delete the backup file is the file was overwritten and a
conversion error occurred. (Christian Brabandt, closesvim/vim#4387)
cf0bfd9ade
Problem: Running tests may cause the window to move.
Solution: Correct the reported window position for the offset with the
position after ":winpos". Works around an xterm bug.
f8191c5f07
The test.functional.helpers and test.unit.helpers modules now include
all of the public functions from test.helpers, so there is no need to
separately require('test.helpers').
This is where "pure functions" can live, which can be shared by Nvim and
test logic which may not have a running Nvim instance available.
If in the future we use Nvim itself as the Lua engine for tests, then
these functions could be moved directly onto the `vim` Lua module.
closes#6580
Automatically include all "global helper" util functions in the
unit.helpers and functional.helpers and modules. So tests don't need to
expicitly do:
local global_helpers = require('test.helpers')
- don't underflow itr->p pointer (C standard only allows one past the end, not
one before the beginning)
- make sure itr->p->i is always initialized (even when not used)
- don't rely on `NULL < &object` (likely UB)
Problem: Hang when concealing the '>' shown for a wide char that doesn't
fit in the last cell.
Solution: Put back the pointer when the '>' is not going to be displayed.
(closesvim/vim#4377)
0ebe12be86
* bugfix
* use NormalFloat for floating window background
* use floating window by default
* correctly use nvim_open_win()
* use nvim_win_set_option to set window local option
* use nvim_buf_set_option for buffer options
* renamed augroup to nvim_termdebug_close_hover to be consistent with
nvim_terminal_... augroup
* commit 36257d0f97b396467bef7a5937befd894fb23e31
Author: Kwon-Young Choi <kwon-young.choi@hotmail.fr>
Date: Sat May 5 16:57:45 2018 +0200
Port of the termdebug.vim plugin to neovim terminal feature.
For neovim compatibility,
The vim specific calls were replaced with neovim specific calls:
term_start -> term_open
term_sendkeys -> jobsend
term_getline -> getbufline
job_info && term_getjob -> using linux command ps to get the tty
fix1: forgot to port EndDebug callback to neovim
fix2: use nvim_get_chan_info to get pty of job
remove the use of communication buffer by using jobstart instead
of termopen
fix3: get gdbbuf using nvim_get_chan_info
* cleaned up if has('nvim') to remove vim support.
added neovim floating window support for expression evaluation
* improvred documentation, cleaned up vim menu code, fixed bug when
floating window feature is not available
Previously, ordinary redraws were missing from terminal mode. Instead,
there was an async callback that invoked update_screen() on terminal
data regardless of mode (as if :redraw! was invoked by a timer).
This created some issues:
- async changes to an unrelated ordinary buffer were not always redrawn in
terminal mode
- screen cursor position was not properly updated in terminal mode (partial
fix, will be properly fixed in a follow up PR)
- ad-hoc logic was needed for interaction with special states such as
inccommand or horizontal wildmenu.
Instead redraw terminal mode just like any other state. This disables forced
redraws in cmdline mode, which were inconisent which async changes to
normal buffers (which are not redrawn in cmdline mode).
- redraw! in an invisible buffer rendered the screen unusable.
- storing the autocmd window handle and using it in API function could lead
to crashes. Unregister the handle when the window is not active.