Commit Graph

12399 Commits

Author SHA1 Message Date
Michael Vilim
bed95b37b2 vim-patch:8.1.0449: fix display of 'rnu' with folded lines #9481
Problem:    When 'rnu' is set folded lines are not displayed correctly.
            (Vitaly Yashin)
Solution:   When only redrawing line numbers do draw folded lines.
            (closes vim/vim#3484)
7701f30856

---
Explanation:
Before this patch, relative line numbers would update on a cursor
movement and overwrite fold highlighting in the line number columns.
Other operations can cause the fold highlighting to overwrite the line
number styles. Together, this causes the highlighting in the line number
columns to flicker back and forth while editing.

Test case: create `t.vim` with these contents:

    set fdm=marker rnu foldcolumn=2
    call setline(1, ["{{{1", "nline 1", "{{{1", "line 2"])

and then call `nvim -u NORC -S t.vim` and press `j`; observe that the fold
highlighting disappears.
2019-01-11 01:44:15 +01:00
Marco Hinz
3f10c5b533 clipboard/macOS: assume that pbcopy works #9480
Avoids ~30-60 ms startup cost for users of clipboard=unnamed.
2019-01-10 09:11:36 +01:00
Justin M. Keyes
6d8b5989bc
Merge #9472 from justinmk/pvs-warnings2 2019-01-10 08:56:38 +01:00
Pedro L. Ramos
57c7e1d4a0 vim-patch:8.1.0648: custom operators can't act upon forced motion
Problem:    Custom operators can't act upon a forced motion. (Christian
            Wellenbrock)
Solution:   Add the forced motion to the mode() result. (Christian Brabandt,
            closes vim/vim#3490)
5976f8ff00

closes #8667
closes #9476

Christian Wellenbrock:

> For (most) built in text objects it's possible to force operation on
> them to be linewise, for example by using `dVab` (`:h o_V`,
> `motion_force`). When using custom text objects (defined as mappings
> by plugins for example), this doesn't currently work.
>
> Example:
>
>     onoremap x viw
>
> Open a file with a few lines each containing some words. With the
> cursor on any word, try:
>
> 1. `dw` (builtin) deletes some characters
> 2. `dVw` (builtin) deletes linewise
> 3. `dx` (from mapping) deletes some characters
> 4. `dVx` (from mapping) deletes some characters, but should delete
>    linewise

ref: https://github.com/wellle/targets.vim/issues/214
ref: https://gitter.im/neovim/neovim?at=5b379ff7f1664406610e7483
2019-01-10 08:50:07 +01:00
Björn Linse
1ca2c8950f
Merge pull request #9479 from bfredl/redrawsign
screen: remove ad-hoc code path for redrawing signs.
2019-01-09 21:26:49 +01:00
Björn Linse
8510d5ff86
Merge pull request #9445 from bfredl/pum_api
API: select items in popupmenu
2019-01-09 11:43:19 +01:00
Justin M. Keyes
fc4ca5bdd8 CMake: Feature-detect __builtin_{add,sub}_overflow 2019-01-09 10:41:17 +01:00
Justin M. Keyes
596f020e90 PVS/V1028: cast operands, not the result 2019-01-09 10:41:17 +01:00
Justin M. Keyes
6b6a4d63ec assert.h: Check overflow with STRICT_ADD, STRICT_SUB 2019-01-09 10:41:17 +01:00
erw7
a4076e5dcf win/TUI: fix text overrides line numbers #9474
fixes #9461
2019-01-09 10:40:02 +01:00
Björn Linse
d5d8deec06 bufhl: simplify redraw logic
using changed_lines_buf was technically incorrect, as the buffer wasn't
modififed.
2019-01-09 10:30:09 +01:00
Björn Linse
b819795661 remove dead argument of redrawWinline 2019-01-09 10:23:26 +01:00
Björn Linse
ead222d2cd screen: avoid redrawing windows immediately when debug signs are placed. 2019-01-09 10:22:48 +01:00
Björn Linse
ae218c108f api: select items in popupmenu 2019-01-09 10:17:48 +01:00
Björn Linse
aadfea7159
Merge pull request #9477 from bfredl/nocmdredraw
API: don't directly call update_screen() in API functions
2019-01-09 10:06:09 +01:00
Björn Linse
9452532036 API: don't directly call update_screen() in API functions
There is no need to call update_screen() directly in an API function,
mode input processing invokes update_screen() as needed. And if the API
call is done in a context where redraw is disabled, then redraw is
disabled for a reason. A lot of API functions are of equal semantical
strength (nvim_call_function and nvim_execute_lua can also do whatever,
nvim_command is not special), this inconsistency has no purpose.
2019-01-08 23:31:48 +01:00
Justin M. Keyes
eaabec459a doc: CONTRIBUTING.md 2019-01-08 22:50:43 +01:00
Justin M. Keyes
c8e78abaf9 pvscheck.sh: Skip install if dir exists 2019-01-08 01:30:46 +01:00
Justin M. Keyes
0ccb9704d7
vim-patch:8.1.0700: using "gt" sometimes does not redraw a tab (#9464)
Problem:    Using "gt" sometimes does not redraw a tab. (Jason Franklin)
Solution:   Always set must_redraw in redraw_all_later().
04b4e1a424

ref bf3250a8ad (r31852304)

> I fixed it in a more general way, in that if we don't find a window
> that doesn't have the redraw type set it, then it will not set
> must_redraw, even though that's clearly intended.

ref #9152
ref #9155

NA patches:
vim-patch:8.1.0698
vim-patch:8.1.0699
2019-01-07 22:33:57 +01:00
Justin M. Keyes
3081f60989
Merge #9466 from janlazo/vim-8.1.0696 2019-01-07 22:28:00 +01:00
Jan Edmund Lazo
b5216a3e5b lint 2019-01-07 01:00:13 -05:00
Jan Edmund Lazo
5395dd6209 vim-patch:8.1.0696: when test_edit fails 'insertmode' may not be reset
Problem:    When test_edit fails 'insertmode' may not be reset and the next
            test may get stuck. (James McCoy)
Solution:   Always reset 'insertmode' after executing a test.  Avoid that an
            InsertCharPre autocommand or a 'complete' function can change the
            state. (closes vim/vim#3768)
8ad16da729
2019-01-06 20:30:38 -05:00
Jan Edmund Lazo
0c42e0e8b1 editorconfig: set default tab width to 8 (#9467)
Vim patches may include tabs in Vimscript test files.
editorconfig uses "indent_size" for tabs if "tab_width" is unset
so the user sees 2-width tabs.
2019-01-07 02:15:19 +01:00
Justin M. Keyes
ea7504cf8e
Merge #9459 from janlazo/vim-8.1.0677 2019-01-06 13:02:40 +01:00
Justin M. Keyes
072448a2c9
Merge #8604 from janlazo/vim-8.0.0286 2019-01-06 12:45:37 +01:00
Jan Edmund Lazo
fba80f5edc vim-patch:8.1.0685: get_buf_tv() is named inconsistently
Problem:    get_buf_tv() is named inconsistently.
Solution:   Rename it to tv_get_buf(). (Yegappan Lakshmanan, closes vim/vim#3759)
f2d79fa92d
2019-01-05 23:10:00 -05:00
Jan Edmund Lazo
758955d1b6 vim-patch:8.1.0687: sentence text object in Visual mode is not tested
Problem:    Sentence text object in Visual mode is not tested.
Solution:   Add a test. (Dominique Pelle, closes vim/vim#3758)
6d3a1940be
2019-01-05 22:45:31 -05:00
Jan Edmund Lazo
772f4ce9f8 vim-patch:8.1.0677: look-behind match may use the wrong line number
Problem:    Look-behind match may use the wrong line number. (Dominique Pelle)
Solution:   Use the line number in regsave instead of the one in behind_pos,
            we may be looking at the previous line. (closes vim/vim#3749)
866f355814
2019-01-05 22:43:46 -05:00
Justin M. Keyes
f3d2d3c814
Merge #9458 from justinmk/pvs-warnings 2019-01-06 02:32:30 +01:00
Jan Edmund Lazo
624f5c8be3 vim-patch:8.1.0683: spell highlighting does not always end
Problem:    Spell highlighting does not always end. (Gary Johnson)
Solution:   Also reset char_attr when spell errors are highlighted.
637532b3c0
2019-01-05 17:29:11 -05:00
Jan Edmund Lazo
40f7ce96c3 vim-patch:8.1.0674: leaking memory when updating a single line
Problem:    Leaking memory when updating a single line.
Solution:   Do not call start_search_hl() twice.
6d5b4f566a
2019-01-05 17:29:11 -05:00
Jan Edmund Lazo
fd674c875b vim-patch:8.0.0286: not always redrawing after screen resize
Problem:    When concealing is active and the screen is resized in the GUI it
            is not immediately redrawn.
Solution:   Use update_prepare() and update_finish() from
            update_single_line().
c10f0e7cb0
2019-01-05 17:29:11 -05:00
Justin M. Keyes
2d1214ef46 PVS/V501: diff.c: silence warning
False positive: vim_fgets has side effects.

ref 8586770e1f
2019-01-05 23:19:23 +01:00
Justin M. Keyes
46fc0437ba PVS/V547: Expression is always false 2019-01-05 23:19:23 +01:00
Justin M. Keyes
2a325892c2 PVS/V1026: normal.c: signed integer overflow
> V1026 The 'curwin->w_curswant' variable is incremented in the loop.
> Undefined behavior will occur in case of signed integer overflow.
2019-01-05 00:52:31 +01:00
Justin M. Keyes
3e558468cf PVS/V547: indent.c: xmalloc() never returns NULL 2019-01-05 00:33:26 +01:00
Justin M. Keyes
38b4ca26b5
Merge #9454 from justinmk/pvs-warnings 2019-01-04 23:45:21 +01:00
Justin M. Keyes
292b1790c8 release.sh: Format issue-numbers in descriptions [ci skip] 2019-01-04 06:03:47 +01:00
Justin M. Keyes
e22bf529c1 release.sh: fix exclusion pattern [ci skip]
grep support of "\s" pattern is unreliable.
2019-01-04 06:03:37 +01:00
Justin M. Keyes
7436a62168
Merge #9451 from justinmk/build
build: fix `doc_html` target
2019-01-04 11:36:49 +01:00
Justin M. Keyes
58538d1210 PVS/V547: window.c: Expression is always true 2019-01-04 02:29:43 +01:00
Justin M. Keyes
6abdc0aeec PVS/V547: viml/parser/expressions.c: Expression is always true 2019-01-04 02:29:38 +01:00
Justin M. Keyes
788ade1d29 PVS/V751: tui.c, Parameter is not used
False positive. Documentation for grid_scroll says "`cols` is always
zero, reserved for future use".
2019-01-04 02:29:35 +01:00
Justin M. Keyes
423b6d9907 PVS/V535: shada.c: variable reassigned in inner loop
False positive: `i` is intentionally, temporarily reassigned.
See a70fde1b45 #9425
2019-01-04 02:29:31 +01:00
Justin M. Keyes
6a432d4a0d PVS/V547: diff.c: xmalloc() never returns NULL
Normally we consider OOM to be fatal, but the diff module has extra
functionality to handle OOM in case huge files are compared. Use
try_malloc instead of xmalloc in that case.
2019-01-04 02:29:22 +01:00
Justin M. Keyes
a1e97b18f1 PVS/V547: diff.c: Expression is always true 2019-01-04 02:29:17 +01:00
Justin M. Keyes
8586770e1f PVS/V501: diff.c: silence warning
False positive: vim_fgets has side effects.
2019-01-04 02:29:11 +01:00
Justin M. Keyes
6b3fa0689c build: remove cmake/GenerateHelptags.cmake.in
This file wasn't used since e1cc0fe996.  That may have been
accidental, but it's not needed anymore anyway.  Also the "Workaround
for hanging" is no longer relevant.
2019-01-04 02:25:17 +01:00
Justin M. Keyes
685b2028dc build: fix doc_html target
ref 24f2cc55a8 #9430
2019-01-04 02:17:23 +01:00
Justin M. Keyes
c403a95a52
Merge #9446 'Visual: highlight char-at-cursor' 2019-01-04 01:53:13 +01:00