neovim/test/functional
bfredl 66ac327db2 refactor(drawline): remove LineDrawState and wlv->saved_n_extra
We do not need an enum to keep track of what place in win_line() we
currently are at. We already have a variable which keeps track where
in the code we currently are (and thus what part of the line we are
currently rendering), it is called the _program counter_. When we need
non-linear or self-referential control-flow anyway for a laugh, we
have a mechanism for that, it is called _function calls_.

Do not "save" and "restore" the wlv->n_extra state every time the
columns are to be drawn. This sort of thing needs to go away. Instead of
setting the n_extra variables and then going to the outer while loop,
the text in the columns can be rendered by just simply putting the text
into the cells of the screen line, right away. Even in nvim this can be
tricky sometimes, luckily we can use function calls to abstract this
logic, which means that this handy data structure called the _call
stack_ is handling saving away state temporarily, and restoring it back
when we need it again.

Lastly, but not least, as we now have direct control how signs
are rendered, these can be stored as schar_T[2] and be directly
put on screen as such.
2023-12-22 10:54:28 +01:00
..
api fix(api): don't set coladd of mark (#26648) 2023-12-19 08:01:05 +08:00
autocmd test: avoid repeated screen lines in expected states 2023-12-09 22:15:02 +08:00
core test(core/job_spec): fix flakiness (#26623) 2023-12-18 07:09:32 +08:00
editor test: avoid repeated screen lines in expected states 2023-12-09 22:15:02 +08:00
ex_cmds test: avoid repeated screen lines in expected states 2023-12-09 22:15:02 +08:00
fixtures build: remove PVS 2023-11-12 21:26:39 +01:00
legacy test: avoid repeated screen lines in expected states 2023-12-09 22:15:02 +08:00
lua refactor: soft-deprecate diagnostic signs configured with :sign-define (#26618) 2023-12-18 11:04:44 -06:00
options test: "diff" flag of 'fillchars' (#26657) 2023-12-19 22:46:38 +08:00
plugin test: avoid repeated screen lines in expected states 2023-12-09 22:15:02 +08:00
provider test: avoid repeated screen lines in expected states 2023-12-09 22:15:02 +08:00
shada fix(shada): update marks when using delmarks! (#24978) 2023-09-03 10:34:09 +08:00
terminal feat(highlight): tweak default color scheme 2023-12-16 14:43:03 +01:00
treesitter fix(lua): memory leak when using invalid syntax with exists() (#26530) 2023-12-12 20:34:02 +08:00
ui refactor(drawline): remove LineDrawState and wlv->saved_n_extra 2023-12-22 10:54:28 +01:00
vimscript test: avoid repeated screen lines in expected states 2023-12-09 22:15:02 +08:00
example_spec.lua
helpers.lua refactor(runtime): rewrite 'vim' color scheme in Lua 2023-12-21 11:06:39 +01:00
preload.lua test: remove unused variable (#21552) 2022-12-29 07:20:42 +08:00