Commit Graph

640 Commits

Author SHA1 Message Date
erw7
8e496b9dfd Merge pull request #14268 from erw7/fix-p_ch-problem
screen: fix problem with p_ch
2021-04-04 12:04:36 +09:00
Lewis Russell
0b7e5eeb62 vim-patch:8.1.1631: displaying signs is inefficient
+ support for neovim's dynamic width signcolumn

Problem:    Displaying signs is inefficient.
Solution:   Avoid making multiple calls to get information about a placed
            sign. (Yegappan Lakshmanan, closes #4586)
2021-04-03 23:39:56 +01:00
erw7
581b2bcde0 screen: fix problem with p_ch
When the screen is resized, p_ch is not re-set to the appropriate value.
As a result, access to invalid addresses was occurring.
2021-04-03 15:27:46 +09:00
Jan Edmund Lazo
4f3396e128 clang/'Logic error': assert nonnull p_extra 2021-04-02 08:43:51 -04:00
Jan Edmund Lazo
3b04ba7544 vim-patch:8.2.2655: The -w command line argument doesn't work
Problem:    The -w command line argument doesn't work.
Solution:   Don't set 'window' when set with the -w argument. (closes vim/vim#8011)
0a1a6a1aa4

Cherry-pick Test_w_arg() from patch v8.2.0509.
2021-04-01 07:23:04 -04:00
zeertzjq
f89bfa6869 vim-patch:8.2.2454: leading space can not be made visible (#14138)
Problem:    Leading space can not be made visible.
Solution:   Add "lead:" to 'listchars'. (closes vim/vim#7772)
91478ae49a
2021-03-29 21:26:11 -04:00
VVKot
2922f6e34b vim-patch:8.1.0126: various problems with 'vartabstop'
Problem:    Various problems with 'vartabstop'.
Solution:   Fix memory leak.  Fix crash. Add a few more tests. (Christian
            Brabandt, closes vim/vim#3076)
307ac5c68e
2021-03-28 08:37:04 +01:00
VVKot
7ee09c61fe vim-patch:8.1.0116: display problem with 'vartabstop' and 'linebreak'
Problem:    Display problem with 'vartabstop' and 'linebreak'. (Chauca
            Fuentes)
Solution:   Call tabstop_padding(). (Christian Brabandt, closes vim/vim#3076)
a87b72cc31
2021-03-28 08:37:03 +01:00
VVKot
6752ac4968 vim-patch:8.1.0105: all tab stops are the same
Problem:    All tab stops are the same.
Solution:   Add the variable tabstop feature. (Christian Brabandt,
            closes vim/vim#2711)
04958cbaf2
2021-03-28 08:37:01 +01:00
Jan Edmund Lazo
618b17f575 vim-patch:8.2.2045: highlighting a character too much with incsearch
Problem:    Highlighting a character too much with incsearch.
Solution:   Check "search_match_endcol". (Christian Brabandt, closes vim/vim#7360)
448465e687
2021-03-27 01:12:44 -04:00
Björn Linse
ed20089877 Merge pull request #14194 from bfredl/provide_virt
memory error with ephemeral virt_text
2021-03-23 15:54:09 +01:00
Björn Linse
06c191848b decorations: memory error with ephemeral virt_text 2021-03-23 13:58:18 +01:00
Matthieu Coudron
f2e1709d49 fix: stop using CursorLineNr in front of fillers
filling lines in diff mode.
2021-03-22 23:33:17 +01:00
Björn Linse
243820ebd0 floats: add borders (MS-DOS MODE) 2021-03-22 23:18:40 +01:00
Björn Linse
08ca5207cd w_grid_alloc: baseline impl 2021-03-22 15:42:26 +01:00
Björn Linse
3c8583e43b Merge pull request #14020 from chentau/float_resize
Update lines after shrinking floating window
2021-03-14 08:35:48 +01:00
chentau
8fe19d9d89 screen: make ui_compositor aware of the intended size of a float 2021-03-11 12:27:29 -08:00
Björn Linse
7844ca2e05 Merge pull request #14065 from bfredl/overlaymode
more virt_text display options
2021-03-10 13:28:07 +01:00
Björn Linse
425bc438ae decorations: add additional styling of virt_text overlays 2021-03-10 12:11:05 +01:00
Jan Edmund Lazo
f7f7146588 vim-patch:8.2.2577: compiler warning for type conversion
Problem:    Compiler warning for type conversion.
Solution:   Add a typecast. (Mike Williams)
9355ae4149

N/A patches for version.c:

vim-patch:8.1.0783: compiler warning for signed/unsigned

Problem:    Compiler warning for signed/unsigned.
Solution:   Add type cast.  Change type of buffer. (Ozaki Kiichi, closes vim/vim#3827)
63c0ccd2b6

Neovim was refactored to prefer char type for string functions, not char_u.

vim-patch:8.2.2152: screenpos() does not include the WinBar offset

Problem:    screenpos() does not include the WinBar offset.
Solution:   Use W_WINROW() instead of directly using w_window. (closes vim/vim#7487)
8dd46e72cf

W_WINROW() was removed so port only the test changes.
The test is currently skipped.
2021-03-09 18:38:04 -05:00
Jan Edmund Lazo
a5bacdbfb4 vim-patch:8.1.1901: the +insert_expand feature is not always available
Problem:    The +insert_expand feature is not always available.
Solution:   Graduate the +insert_expand feature.
e2c453d38f
2021-03-01 23:41:10 -05:00
Björn Linse
4781333a7a decorations: allow virt_text overlay at any column 2021-02-22 09:40:06 +01:00
Jan Edmund Lazo
fd44bd4d4f vim-patch:8.2.1056: wrong display when mixing match conceal and syntax conceal
Problem:    Wrong display when mixing match conceal and syntax conceal.
Solution:   Adjust how conceal flags are used. (closes vim/vim#6327, closes vim/vim#6303)
211dd3fd82
2021-02-13 17:05:06 -05:00
Jan Edmund Lazo
34291eba80 vim-patch:8.2.1058: multiline conceal causes display errors
Problem:    Multiline conceal causes display errors.
Solution:   Do not allow conceal cross over EOL. (closes vim/vim#6326, closes vim/vim#4854,
            closes vim/vim#6302)
fc838d6cb0

Port test_conceal.vim but skip tests that require screendumps.
2021-02-13 16:15:00 -05:00
Jan Edmund Lazo
f1fdeaf667 option: use char* for set_string_option_direct()
"name" param was cast to (const char *).
All calls to set_string_option_direct() cast 1st arg
from (char *) to (char_u *).
Remove these useless casts.
2021-02-07 17:27:59 -05:00
Matthieu Coudron
87afc90317 screen.c: fix an issue with wrap and folds
Before this commit, a folded line would display a trailing character
with
bin/nvim -u ~/test.vim --cmd "hi NonText ctermbg=3" --cmd "hi Search ctermbg=2" --cmd "set listchars+=extends:X nowrap list"  ~/test.txt
2021-01-07 21:58:57 +01:00
Matthieu Coudron
b419e39a2a screen.c: fix last character on foldtext
Last character on a folded line was sometimes highlighted with the
"Search" highlight. Solves this along with some remaining "curwin".
2021-01-06 21:02:40 +01:00
Matthieu Coudron
2ea3127697 screen.c: fix display of signcolumn=auto in diffs (#13688)
sign_id was not reset when filler lines were involved, thus causing a
bad alignment between columns.

You could check that before this commit,

    bin/nvim -u NORC  --cmd "setglobal signcolumn=yes:4" --cmd "set diffopt+=foldcolumn:0" -d ../test1.txt ../test2.txt

would result in an irregular column width.
2021-01-05 21:23:35 +01:00
Jan Edmund Lazo
b01a60b1aa Revert "vim-patch:8.1.0822: peeking and flushing output slows down execution"
This reverts commit 0519a75f6e.
2020-12-31 16:44:53 -05:00
Jan Edmund Lazo
723e009214 Revert "vim-patch:8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc"
This reverts commit 44bb7147e4.

Avoid regression mentioned in c64cce906e (commitcomment-45554271)
2020-12-31 16:44:53 -05:00
Matthieu Coudron
52163c66b9 fix(fold): highlight even in folds (#13643) 2020-12-30 15:17:41 +01:00
Jan Edmund Lazo
f5383705d1 Merge pull request #13624 from janlazo/vim-8.2.2234
vim-patch:8.1.1032,8.2.{429,1785,2234,2235,2237,2241}
2020-12-28 20:14:48 -05:00
Matthieu Coudron
b0215afc84 fix(fold): dont highlight search results on folded lines (#13616)
Behavior may change in future but for now stick to legacy behavior.
2020-12-29 01:19:24 +01:00
Jan Edmund Lazo
26dfeb42dd vim-patch:8.1.1032: warnings from clang static analyzer
Problem:    Warnings from clang static analyzer. (Yegappan Lakshmanan)
Solution:   Fix relevant warnings.
2c519cf3bf
2020-12-28 18:34:01 -05:00
Jan Edmund Lazo
44bb7147e4 vim-patch:8.1.1192: mode is not cleared when leaving Insert mode with mapped Esc
Problem:    Mode is not cleared when leaving Insert mode with mapped Esc.
Solution:   Clear the mode when redraw_cmdline is set. (closes vim/vim#4269)
4c25bd785a
2020-12-26 02:34:13 -05:00
Jan Edmund Lazo
0519a75f6e vim-patch:8.1.0822: peeking and flushing output slows down execution
Problem:    Peeking and flushing output slows down execution.
Solution:   Do not update the mode message when global_busy is set.  Do not
            flush when only peeking for a character. (Ken Takata)
cb574f4154
2020-12-25 19:25:30 -05:00
Matthieu Coudron
7add3ef996 fix: appease linter 2020-12-24 00:21:05 +01:00
Matthieu Coudron
45166313cc refactor: de-curwin-ify update_topline/curs_columns 2020-12-23 16:53:35 +01:00
Matthieu Coudron
4d9520ec86 refactor: pass the window to get_(side)scrolloff_value
to less rely on curwin
2020-12-23 16:21:10 +01:00
Matthieu Coudron
15e616a057 folds: use Folded highlight even with spell on (#13393)
the highlight was not used with spell enabled on folded lines.
Thanks to lervag for the nice report.
2020-11-29 14:26:59 +01:00
shade-of-noon
2d5dd85eef screen.c: Allow showbreak to override cursorline. (#13372)
I also added relevant tests.

Close #13369
2020-11-25 16:47:03 +01:00
Matthieu Coudron
7eb0c16dc8 fix(fold): use Folded highlight even with spell on
Partially addresses https://github.com/neovim/neovim/issues/12982. It's
more a quickfix while reworking folds.
2020-11-23 21:06:56 +01:00
Matthieu Coudron
4f1fc0f6d5 refactor: pass window to was_set_insecurely
working on get_foldtext and wanted to get rid of the curwin backup/restore.
Turns out it's not possible else f_foldtext is run on the same window.
Kept the cleanup anyway.
2020-11-23 21:06:56 +01:00
Björn Linse
a4986ab47f decorations: allow nvim_set_hl to break existing links
also add `default` flag to NOT break existing links/defs
2020-11-21 11:24:14 +01:00
Björn Linse
8497d4b3ea decoration: split out "decoration" from "extmark" module
Decorations will only grow more complex. move the to a separate
file, so that extmark.c remains about extmarks.
2020-11-07 09:55:17 +01:00
Björn Linse
d1091bc658 Merge pull request #12870 from bfredl/themepark
Color themes (per window/line) and lua theme providers
2020-11-01 21:54:51 +01:00
Björn Linse
c146eddc8b api: add API for themes
co-author: hlpr98 <hlpr98@gmail.com> (dict2hlattrs function)

orange is sus??

NOVEMBER DAWN

erase the lie that is redraw_later()
2020-11-01 19:14:56 +01:00
Rom Grk
10bf69a43e vim-patch:8.2.1909: number of status line items is limited to 80
Problem:    Number of status line items is limited to 80.
Solution:   Dynamically allocate the arrays. (Rom Grk, closes vim/vim#7181)
8133cc6bf4

The members of stl_item_T have not been prefixed with stl_ contrary to
the vim patch because the amount of stl_ prefixes on single lines of
code in that region was hurtful to readability.
2020-10-31 19:54:06 -04:00
TJ DeVries
1afe6dd2f4 fixup: bfredl comments 2020-10-22 16:08:32 -04:00
Jan Edmund Lazo
54d07b648c vim-patch:8.2.0943: displaying ^M or ^J depends on current buffer
Problem:    Displaying ^M or ^J depends on current buffer.
Solution:   Pass the displayed buffer to transchar(). (closes vim/vim#6225)
32ee627750

N/A patches for version.c:

vim-patch:8.2.0862: ":term ++curwin" makes the current buffer hidden

Problem:    ":term ++curwin" makes the current buffer hidden. (Harm te
            Hennepe)
Solution:   Do not hide the current buffer. (closes vim/vim#6170)
b10090928c
2020-10-18 01:24:02 -04:00