| Commit message (Collapse) | Author | Age |
... | |
| |
| |
| |
| |
| |
| | |
Problem: Redraw when highlight is set with same names. (Ozaki Kiichi)
Solution: Only free and save a name when it changed. (closes vim/vim#2120)
https://github.com/vim/vim/commit/452030e530aad9b08fcfa71737d098b33c752b85
|
| |
| |
| |
| |
| |
| | |
Problem: Terminal window does not have colors in the GUI.
Solution: Lookup the GUI color.
https://github.com/vim/vim/commit/26af85d97ba1ed0ade6cdd41890ca04ed879b9c7
|
|\ \
| | |
| | | |
vim-patch:8.1.{495,505,531,533,583,623,630,641,686,715,833,1012,1221,1651}
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: :filter only supports some commands.
Solution: Add :filter support for more commands. (Marcin Szamotulski,
closes vim/vim#2856)
https://github.com/vim/vim/commit/f86db78fed78541cefdb706e4779ce5ae9ca7820
|
|\ \ \
| |/ /
|/| | |
highlight: expose builtin highlight groups using hl_group_set event
|
| | | |
|
| | | |
|
|/ / |
|
|/ |
|
|
|
|
|
|
|
| |
ext_message doesn't set msg_col. Add a space and let client deal with
wrapping. When using silent redirect show the unwrapped message form.
Removed check is already part of msg_advance()
|
|
|
|
| |
Also add `hi blend=` attribute to override transparency of indiviual attributes.
|
|
|
|
|
|
| |
Problem: There is no hint that syntax is disabled for 'redrawtime'.
Solution: Add a message.
https://github.com/vim/vim/commit/0a6efcd27d62935c465b4406c0c0db9be10a0ddb
|
|
|
|
|
|
| |
Problem: May access freed memory when syntax HL times out. (Philipp Gesang)
Solution: Clear b_sst_first when clearing b_sst_array.
https://github.com/vim/vim/commit/95892c27b242cdbc78e622c7a861a4e15aec7a30
|
|
|
|
|
|
|
| |
Problem: Functionality for signs is spread out over several files.
Solution: Move most of the sign functionality into sign.c. (Yegappan
Lakshmanan, closes vim/vim#3751)
https://github.com/vim/vim/commit/bbea47075cc4e7826e9f8c203e4272ba023ed7b0
|
| |
|
|
|
|
|
|
|
|
| |
Problem: Clearing a pointer takes two lines.
Solution: Add VIM_CLEAR() and replace vim_clear(). (Hirohito Higashi,
closes #2629)
vim-patch:8.0.1481
|
|
|
|
|
|
| |
Problem: Clever compiler warns for buffer being too small.
Solution: Make the buffer bigger (even though it's not really needed).
https://github.com/vim/vim/commit/5431589d25e73892fcf7ad1eaca53f742c1c9303
|
|
|
|
|
|
|
| |
Problem: Syntax timeout not used correctly.
Solution: Do not pass the timeout to syntax_start() but set it explicitly.
(Yasuhiro Matsumoto, closes vim/vim#2139)
https://github.com/vim/vim/commit/f3d769a585040ac47f7054057758809024ef6377
|
| |
|
|
|
|
|
|
| |
Problem: Syntax highlighting can make cause a freeze.
Solution: Apply 'redrawtime' to syntax highlighting, per window.
https://github.com/vim/vim/commit/06f1ed2f78c5c03af95054fc3a8665df39dec362
|
| |
|
|
|
|
|
|
|
|
|
| |
Problem: When 'hlsearch' is set and matching with the last search pattern
is very slow, Vim becomes unusable. Cannot quit search by
pressing CTRL-C.
Solution: When the search times out set a flag and don't try again. Check
for timeout and CTRL-C in NFA loop that adds states.
https://github.com/vim/vim/commit/fbd0b0af6800f6ff89857863d6a07ea03f09ff6c
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Note about shada.c:
- shada_read_next_item_start was intentionally shadowing `unpacked` and
`i` because many of the macros (e.g. ADDITIONAL_KEY) implicitly
depended on those variable names.
- Macros were changed to parameterize `unpacked` (but not `i`). Macros
like CLEAR_GA_AND_ERROR_OUT do control-flow (goto), so any other
approach is messy.
|
|
|
|
|
|
|
|
| |
Problem: Segfault when pattern with \z() is very slow.
Solution: Check for NULL regprog. Add "nfa_fail" to test_override() to be
able to test this. Fix that 'searchhl' resets called_emsg.
https://github.com/vim/vim/commit/bcf9442307075bac40d44328c8bf7ea21857b138
closes #8788
|
|
|
|
| |
ref #6380
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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: Cannot cleanup before loading another colorscheme.
Solution: Add the ColorSchemePre autocommand event.
https://github.com/vim/vim/commit/60a68362aa73f4a6cb534688978f9dc2b16e60fe
|
| |
|
|
|
|
|
|
|
|
|
| |
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)
|
| |
|
| |
|
| |
|
|
|
|
|
| |
As attribute ids is the convention in the UI protocol
Also remove non-threadsafe calls in tui.c to syntax module.
|
|
|
|
|
| |
Removing uses and related dead code in the locallity of changes of
the two parent commits.
|
|
|
|
|
|
|
| |
First step towards implemening issue #7401.
The same can be done for all deprecated mb_ functions in follow-up
patches.
|
|\ |
|
| |
| |
| |
| |
| |
| | |
Problem: Occasional memory use after free.
Solution: Use the highlight table directly, don't keep a pointer.
https://github.com/vim/vim/commit/414168d97fad45387a3d7dd16449d15b27079ad8
|
| |
| |
| |
| |
| |
| | |
Problem: Using freed memory with ":hi Normal".
Solution: Get "item" again after updating the table.
https://github.com/vim/vim/commit/b4ea1914b8ca7c368253bd96e6b3cb9e3392da1c
|
| |
| |
| |
| |
| |
| | |
Problem: The :highlight command causes a redraw even when nothing changed.
Solution: Only set "need_highlight_changed" when an attribute changed.
https://github.com/vim/vim/commit/99433291b135094d9592c41f96d3ccd60073e2c1
|
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: With 8 colors the bold attribute is not set properly.
Solution: Move setting HL_TABLE() out of lookup_color. (closes vim/vim#1901)
https://github.com/vim/vim/commit/12d853fae1fc37c33874b5cf1e40a2dfaf04268c
Use TriState on lookup_color() to avoid 'NOLINT' comments.
|
| |
| |
| |
| |
| |
| | |
Problem: Terminal colors depend on the system.
Solution: Use the highlight color lookup tables.
https://github.com/vim/vim/commit/b41bf8e6b45a773456031954bca1bc4212cbffbe
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Refactor all affected functions:
- add const
- declare and initialize on same line
- update boolean declarations from int with bool
|
| | |
|
| |
| |
| |
| |
| |
| | |
Add const to parameters and variables.
Declare and init variables on same line.
Use `sizeof(*ptr)` to calculate size for malloc().
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add const on parameters and variables.
Update declarations to avoid typecasts.
Use `sizeof(*ptr)` for malloc() to reduce effect of type changes.
ie. short to int16_t
Update syn_compare_stub() variable declarations for consistency.
|