| Commit message (Collapse) | Author | Age |
|\
| |
| | |
screen: show virt_text when 'cursorline' is set
|
| |
| |
| |
| |
| | |
- virtual text disappeared when 'cursorline' was set
- virtual text was shifted when emtpy line was visually selected.
|
|/
|
|
|
|
|
| |
redraw_all_later() isn't guaranteed to update must_redraw after
switching tab, we must do it ourselves.
fixes #9152
|
|\ |
|
| |
| |
| |
| |
| | |
- fix: Use "set PROMPT=$" trick to satisfy screen:expect{any='%$'}
- speedup: Use cmd.exe instead of powershell.
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Avoid clearing the screen in most situations. NOT_VALID should be
equivalent to CLEAR unless some external force messed up the terminal,
for these situations <c-l> and :mode will still clear the screen.
Also eliminate some obsolete code in screen.c, that dealt with that in
vim drawing window 1 can mess up window 2, but this never happens in
nvim.
But what about slow terminals? There is two common meanings in which
a terminal is said to be "slow":
Most commonly (and in the sense of vim:s nottyfast) it means low
bandwidth for sending bytes from nvim to the terminal. If the screen is
very similar before and after the update_screen(CLEAR) this change
should reduce bandwidth. If the screen is quite different, but there is
no new regions of contiguous whitespace, clearing doesn't reduce
bandwidth significantly. If the new screen contains a lot of whitespace,
it will depend of if vsplits are used or not: as long as there is no
vsplits, ce is used to cheaply clear the rest of the line, so
full-screen clear is not needed to reduce bandwith. However a left
vsplit currently needs to be padded with whitespace all the way to the
separator. It is possible ec (clear N chars) can be used to reduce
bandwidth here if this is a problem. (All of this assumes that one
doesn't set Normal guibg=... on a non-BCE terminal, if you do you are
doomed regardless of this change).
Slow can also mean that drawing pixels on the screen is slow. E-ink
screens is a recent example. Avoiding clearing and redrawing the
unchanged part of the screen will always improve performance in these
cases.
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| | |
Problem: Cursorline not removed when using 'cursorbind'. (Justin Keyes)
Solution: Store the last cursor line per window. (closes vim/vim#3488)
https://github.com/vim/vim/commit/4a5abbd6138240d109278fe1f0b45489d22f712d
|
|\ \ |
|
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Sometimes 008_autocommands_spec fails like this:
[ RUN ] autocommands that delete and unload buffers: BufUnload, VimLeave: -- Output to stderr:
CMake Error at /home/travis/build/neovim/neovim/cmake/RunTests.cmake:53 (message):
functional tests failed with error: 1
The final :quit + wait() is a race. Use command() instead, which is
synchronous. Use command('silent! ...') everywhere else too, because
it's clearer instead of feeding input and clearing the expected errors
with CTRL-L.
|
|/ |
|
|
|
|
|
| |
Timer tests are less reliable on Travis CI macOS 10.12 (most egregious).
Also somewhat on 10.13.
|
|\
| |
| | |
API: make nvim_buf_set_virtual_text handle invalid chars
|
| |
| |
| |
| |
| | |
Clients are supposed to supply only valid text, but if it is
invalid, translate it rather than messing up the screen
|
|/
|
|
|
| |
close #9113
ref #9040
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
If swapfile dialog prompts for input, it must be displayed to the user.
fix #8840
fix #9027
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
ref https://github.com/neovim/neovim/issues/9001#issuecomment-421843790
Steps to reproduce:
:set verbose=9
:call system(['echo'])
E730: using List as a String
|
|
|
|
|
|
|
|
|
| |
NB: existing `color default` test was actually enough to trigger the bug,
when ext_newgrid=false is used. I created the `:hi Normal` test as
I thought the builtin colors wouldn't set Normal (unless 'bg' is changed)
But as the root cause actually comes from `:hi Normal`, it makes sense
to still add the separate test (if `color default` here gets optimized to
become a no-op, or something).
|
| |
|
|
|
|
|
|
| |
Give embeders a chance to set up nvim, by processing a request before
startup. This allows an external UI to show messages and prompts from
--cmd and buffer loading (e.g. swap files)
|
| |
|
|
|
|
|
| |
Problem: Incorrect adjusting the popup menu for the preview window.
Solution: Compute position and height properl. (Ronan Pigott) Also show at
least ten items. (closes vim/vim#3414)
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
powershell is slow, and this timeout is "worst case" so it doesn't make
the tests more costly, only avoids a false-positive.
close #8958
|
|\ |
|
| |
| |
| |
| | |
Test changes from 8.0.1020 and 8.0.1048.
|
| |
| |
| |
| |
| |
| |
| | |
expect_err() matches against a pattern. Terminate the pattern with "$"
to check against buffer overrun.
ref #8931
|
|/
|
|
|
|
|
| |
msgpack_rpc_to_object (called by handle_request .. msgpack_rpc_to_array)
always NUL-terminates API Strings.
But handle_request .. msgpack_rpc_get_handler_for operates on a raw
msgpack_object, before preparation.
|
|\ |
|
| | |
|
|\ \
| |/
|/| |
screen.lua: extend snapshot_util() to work with extension state
|
| |
| |
| |
| |
| | |
Simplify handling of attributes: collect new attributes in the same pass
as screen lines are rendered, instead of using two passes.
|
|/
|
|
| |
close #8745
|
| |
|
|
|
|
|
|
| |
Problem: C indent wrong when * immediately follows comment. (John Bowler)
Solution: Do not see "/*" after "*" as a comment start. (closes vim/vim#2321)
https://github.com/vim/vim/commit/f8c53d3d268fc67a29c8c1a4e76fae85762e11b5
|
|
|
|
|
| |
":normal :" might be invoked in various ways, so its safest to always
allow recursive invocation of cmdline mode
|
| |
|
|
|
|
|
| |
As attribute ids is the convention in the UI protocol
Also remove non-threadsafe calls in tui.c to syntax module.
|
|\
| |
| |
| |
| | |
phodge/7688-nvim-buf-lines-should-return-empty-list-for-unloaded-buffer
handle unloaded buffers in nvim_buf_*() functions
|