Commit Graph

10396 Commits

Author SHA1 Message Date
Björn Linse
2c15f695a8 luahl: temporary workaround for virt_text ownership ambiguity 2020-09-13 07:46:39 +02:00
Björn Linse
4042975df4 luahl: global the luahl 2020-09-13 07:46:39 +02:00
Björn Linse
18a3a89822 luahl 2020-09-13 07:46:39 +02:00
Jan Edmund Lazo
4d3ef578e9
Merge pull request #12883 from janlazo/vim-8.2.1640
vim-patch:8.1.{1296,1297,1298},8.2.{1640,1645,1646,1648,1649,1654,1655,1661}
2020-09-12 15:04:56 -04:00
erw7
397be5d380 UI: fix cursor not displayed after hiding and un-hiding #12811
- TUI: Fix a case where the cursor was not displayed after hiding the
  cursor and then setting it to be displayed again.
- Change to reset everything before setting guicursor.

fixes #12800
close #12811

Steps to reproduce:

    nvim -u NORC
    :set termguicolors
    :hi nCursor guifg=red guibg=red
    :hi iCursor guifg=green guibg=green
    :hi cCursor guifg=blue guibg=blue
    :set guicursor=n:block-nCursor,i:hor25-iCursor,c:ver25-cCursor
    :set guicursor-=c:ver25-cCursor

Actual behaviour: Cursor is a blue vertical.
Expected behaviour: Cursor should be the default color block.
2020-09-12 11:42:42 -07:00
Jan Edmund Lazo
b23907e7ce
Merge pull request #12721 from aufarg/vim-8.1.0265
[RDY] vim-patch:8.1.{265,271,273,274,275,277,278,279,280,281,282,284,286,291,295,296,320,321,339,351,392,399,552}
2020-09-12 10:51:59 -04:00
Jan Edmund Lazo
20b745b45b
vim-patch:8.1.1298: invalid argument test fails without X clipboard
Problem:    Invalid argument test fails without X clipboard.
Solution:   Test -display only with the +xterm_clipboard feature.
5416b75031

N/A patches for version.c:

vim-patch:8.2.1640: Amiga: missing header for getgrgid()

Problem:    Amiga: missing header for getgrgid().
Solution:   Add the grp.h header. (Ola Söder, closes vim/vim#6906)
f842cd9e28

vim-patch:8.2.1645: GTK3: icons become broken images when resized

Problem:    GTK3: icons become broken images when resized.
Solution:   Use gtk_image_new_from_icon_name(). (closes vim/vim#6916)
            Fix compiler warnings.
81a4cf469a

vim-patch:8.2.1646: Amiga: Unnecessary #include

Problem:    Amiga: Unnecessary #include.
Solution:   Remove the #include. (Ola Söder, closes vim/vim#6908)
33e3346322

vim-patch:8.2.1648: Amiga: no common build file for Amiga (-like) systems

Problem:    Amiga: no common build file for Amiga (-like) systems.
Solution:   Turn Make_morph.mak into Make_ami.mak. (Ola Söder, closes vim/vim#6805)
a62372be1f

vim-patch:8.2.1649: GTK3: using old file chooser

Problem:    GTK3: using old file chooser.
Solution:   Use native file chooser on GTK 3.20 and above. (Yogeshwar
            Velingker, closes vim/vim#6909)
3e4cc9671c

vim-patch:8.2.1654: when job writes to hidden buffer current window is wrong

Problem:    When job writes to hidden buffer current window has display
            errors.  (Johnny McArthur)
Solution:   Use aucmd_prepbuf() instead of switch_to_win_for_buf().
            (closes vim/vim#6925)
ad9ec5e799

vim-patch:8.2.1655: cannot build with Strawberry Perl 5.32.0

Problem:    Cannot build with Strawberry Perl 5.32.0.
Solution:   Use Perl_sv_2pvbyte_flags. (closes vim/vim#6921)
895a7a472d

vim-patch:8.2.1661: cannot connect to 127.0.0.1 for host with only IPv6 addresses

Problem:    Cannot connect to 127.0.0.1 for host with only IPv6 addresses.
Solution:   pass AI_V4MAPPED flag to getaddrinfo. (Filipe Brandenburger,
            closes vim/vim#6931)
c6a67c92bc
2020-09-11 18:34:25 -04:00
Jan Edmund Lazo
2ab6ec9e48
vim-patch:8.1.1297: invalid argument test fails without GTK
Problem:    Invalid argument test fails without GTK.
Solution:   Test -display and --display separately.
240f7abab0
2020-09-11 18:23:47 -04:00
Jan Edmund Lazo
978dd99f45
vim-patch:8.1.1296: crash when using invalid command line argument
Problem:    Crash when using invalid command line argument.
Solution:   Check for options not being initialized.
27821260c0
2020-09-11 18:23:46 -04:00
Björn Linse
997147e4bb
Merge pull request #12889 from vigoux/bytetrack-open-line
Fix invalid events with `o` `<CR>` and `autoindent`
2020-09-11 19:30:46 +02:00
Thomas Vigouroux
a8f71676a1 fix(bufupdates): avoid sending empty updates 2020-09-11 14:48:10 +02:00
Thomas Vigouroux
f0e258cf85 fix(bytetrack): send correct events when opening lines
a bit of test cleanup

ärrår

feeel

SPLIT

fix: sned correct updates on <CR>
2020-09-11 14:38:58 +02:00
Aufar Gilbran
466ff35dfd vim-patch:8.1.0552: saved last search pattern may not be restored
Problem:    Saved last search pattern may not be restored.
Solution:   Call restore_last_search_pattern().  Add a check for balancing
            saving and restoring the last search pattern.
01a060da74
2020-09-11 10:37:52 +08:00
Aufar Gilbran
f7d2e37e36 vim-patch:8.1.0399: 'hlsearch' highlight remains in other window
Problem:    'hlsearch' highlight remains in other window after cancelling
            command.
Solution:   Redraw all windows. Also remove unnecessary delays. (closes vim/vim#3437)
65985ac998
2020-09-11 10:37:52 +08:00
Aufar Gilbran
112092fa15 vim-patch:8.1.0392: error while typing :/foo/s// with 'incsearch' enabled
Problem:    Error while typing :/foo/s// with 'incsearch' enabled.
Solution:   Do not give search errors when highlighting matches.
50eb16c3b2
2020-09-11 10:37:52 +08:00
Aufar Gilbran
b0042cafc0 vim-patch:8.1.0356: using :s with 'incsearch' prevents CTRL-R CTRL-W
Problem:    Using :s with 'incsearch' prevents CTRL-R CTRL-W. (Boris Staletic)
Solution:   When past the pattern put cursor back in the start position.
            (closes vim/vim#3413)
99f043a57d
2020-09-11 10:37:52 +08:00
Aufar Gilbran
e2dc2a6bd7 vim-patch:8.1.0351: 'incsearch' for :/foo/s//<Esc> changes last search pattern
Problem:    'incsearch' for :/foo/s//<Esc> changes last search pattern.
Solution:   Save the last search pattern earlier.
198cb66d65
2020-09-11 10:37:52 +08:00
Aufar Gilbran
b59c293c25 vim-patch:8.1.0339: wrong highlight when 'incsearch' set and cancelling :s
Problem:    Wrong highlight when 'incsearch' set and cancelling :s.
Solution:   Reset search line range. (Hirohito Higashi, Masamichi Abe)
f13daa46da
2020-09-11 10:37:52 +08:00
Aufar Gilbran
f2743cfb65 vim-patch:8.1.0321: 'incsearch' regression: /\v highlights everything
Problem:    'incsearch' regression: /\v highlights everything.
Solution:   Put back the empty_pattern() check.
4edfe2d2a2
2020-09-11 10:37:52 +08:00
Aufar Gilbran
4770a2bac5 vim-patch:8.1.0320: too much 'incsearch' highlight for pat matching everything
Problem:    Too much 'incsearch' highlight for pattern matching everything.
Solution:   Add the skiplen to the command and remove the line range.
            (Christian Brabandt)  Check for empty pattern earlier.
8b0d5ce881
2020-09-11 10:37:52 +08:00
Aufar Gilbran
5f5d08a88e vim-patch:8.1.0296: command parsing for 'incsearch' is a bit ugly
Problem:    Command parsing for 'incsearch' is a bit ugly.
Solution:   Return when there is no pattern.  Put common checks together.
111bbd61e9
2020-09-11 10:37:52 +08:00
Aufar Gilbran
77bb48e740 vim-patch:8.1.0295: no 'incsearch' highlighting for :vimgrep and similar
Problem:    No 'incsearch' highlighting for :vimgrep and similar commands.
Solution:   Parse the :vimgrep command and similar ones to locate the search
            pattern. (Hirohito Higashi, closes vim/vim#3344)
264cf5cfaf
2020-09-11 10:33:20 +08:00
Aufar Gilbran
ab7e101540 vim-patch:8.1.0291: 'incsearch' highlighting not used for :sort
Problem:    'incsearch' highlighting not used for :sort.
Solution:   Handle pattern in :sort command.
81f56536b1
2020-09-11 10:33:20 +08:00
Aufar Gilbran
c0102c140c vim-patch:8.1.0286: 'incsearch' does not apply to :smagic and :snomagic
Problem:    'incsearch' does not apply to :smagic and :snomagic.
Solution:   Add support. (Hirohito Higashi)
167ae42685
2020-09-11 10:33:20 +08:00
Aufar Gilbran
68f6abef16 vim-patch:8.1.0284: 'cursorline' highlighting wrong with 'incsearch'
Problem:    'cursorline' highlighting wrong with 'incsearch'.
Solution:   Move the cursor back if the match is outside the range.
2f6a346a4c
2020-09-11 10:33:20 +08:00
Aufar Gilbran
b24dabf266 vim-patch:8.1.0282: 'incsearch' does not work with command modifiers
Problem:    'incsearch' does not work with command modifiers.
Solution:   Skip command modifiers.
33c4dbb74b
2020-09-11 10:33:20 +08:00
Aufar Gilbran
ba59ee9a15 ex_docmd: merge parse_state_T with exarg_T 2020-09-11 10:33:20 +08:00
Aufar Gilbran
9a6fd99a4b vim-patch:8.1.0281: parsing command modifiers is not separated
Problem:    Parsing command modifiers is not separated.
Solution:   Move command modifier parsing to a separate function.
effed9315c
2020-09-11 10:31:41 +08:00
Aufar Gilbran
841ec4316c vim-patch:8.1.0280: 'incsearch' highlighting does not work for ":g!/"
Problem:    'incsearch' highlighting does not work for ":g!/".
Solution:   Skip the exclamation mark. (Hirohito Higashi)
def7b1dc61
2020-09-11 10:31:41 +08:00
Aufar Gilbran
8ae47ddf63 vim-patch:8.1.0279: 'incsearch' highlighting does not skip white space
Problem:    'incsearch' highlighting does not skip white space.
Solution:   Skip white space after the command. (issue vim/vim#3321)
2b926fcb3c
2020-09-11 10:31:41 +08:00
Aufar Gilbran
83f3218b28 vim-patch:8.1.0278: 'incsearch' highlighting does not accept reverse range
Problem:    'incsearch' highlighting does not accept reverse range.
Solution:   Swap the range when needed. (issue vim/vim#3321)
60d0871000
2020-09-11 10:31:41 +08:00
Aufar Gilbran
50da4d4f45 vim-patch:8.1.0277: 'incsearch' highlighting wrong in a few cases
Problem:    'incsearch' highlighting wrong in a few cases.
Solution:   Fix using last search pattern.  Restore highlighting when changing
            command. (issue vim/vim#3321)
c7f08b7ee1
2020-09-11 10:31:41 +08:00
Aufar Gilbran
dd08f6367b vim-patch:8.1.0275: 'incsearch' with :s doesn't start at cursor line
Problem:    'incsearch' with :s doesn't start at cursor line.
Solution:   Set cursor before parsing address. (closes vim/vim#3318)
            Also accept a match at the start of the first line.
976b847f43
2020-09-11 10:31:41 +08:00
Aufar Gilbran
9e834a89df vim-patch:8.1.0274: 'incsearch' triggers on ":source"
Problem:    'incsearch' triggers on ":source".
Solution:   Check for the whole command name.
21f990e1c2
2020-09-11 10:31:41 +08:00
Aufar Gilbran
5eb7133021 vim-patch:8.1.0273: invalid memory access when using 'incsearch'
Problem:    Invalid memory access when using 'incsearch'.
Solution:   Reset "patlen" when using previous search pattern.
ef73a28401
2020-09-11 10:31:41 +08:00
Aufar Gilbran
e8a8b9ed08 vim-patch:8.1.0271: 'incsearch' doesn't work for :s, :g or :v
Problem:    'incsearch' doesn't work for :s, :g or :v.
Solution:   Also use 'incsearch' for other commands that use a pattern.
b0acacd767
2020-09-11 10:31:41 +08:00
Aufar Gilbran
8ac4748577 vim-patch:8.1.0265: the getcmdline() function is way too big
Problem:    The getcmdline() function is way too big.
Solution:   Factor out the incremental search highlighting.
0ee81cb638
2020-09-11 10:29:12 +08:00
Björn Linse
5f3ddb195e lua: cleanup naming conventions of executor functions 2020-09-10 10:02:41 +02:00
Björn Linse
ef5e7b862d memline: do not attempt to cache line2byte()
This is irrelevant to neovim usecases anyway.
2020-09-10 06:50:04 +02:00
Thomas Vigouroux
82fb6a8818 fix lints 2020-09-09 21:22:21 +02:00
Björn Linse
9437327d5e treesitter: use new on_bytes interface
This will significantly reduce the parsing work
needed e.g. when rehighlighting after every keypress
in insert mode.

Also add safety check for tree-sitter trying to read
past the end of a line. This can happen after we sent
an incorrect buffer update.
2020-09-09 21:22:21 +02:00
Björn Linse
bc86f76c0a api/buffer: add "on_bytes" callback to nvim_buf_attach
This implements byte-resolution updates of buffer changes.
Note: there is no promise that the buffer state is valid inside
the callback!
2020-09-09 21:22:21 +02:00
Björn Linse
81fa107f59 memline: cache byte offset of current line
When editing a line in insert mode, this value will be
used for every keypress.
2020-09-09 21:22:21 +02:00
Björn Linse
333bfd5a29 extmark: use resonable names in extmark_splice 2020-09-09 21:22:21 +02:00
Björn Linse
f42aa95fbc extmark: separate extmark_splice_cols for column-only change
as the byte logic will be the same for all of these
2020-09-09 21:22:21 +02:00
Justin M. Keyes
59712f6dbe
win: avoid duplicate separators in $PATH #12869
Seems like redundant env var separators (";" on Windows) in $PATH can
cause weird behavior. From #7377:

> After some time, system(['win32yank', '-o']) and system('win32yank -o')
> start returning different results: specifically first returns an
> empty string.
>
> 1. $PATH weirdly contains double semicolon followed by path to the
>    “installation directory” (unpacked directory from archive).
> 2. If I run `let $PATH=substitute($PATH, ';;', ';', 'g')` the problem is fixed.

close #7377
ref 224f99b85d
2020-09-08 20:47:22 -07:00
Jan Edmund Lazo
df6b49b4ee
vim-patch:8.2.1635: no digraph for 0x2022 BULLET #12876
Problem:    No digraph for 0x2022 BULLET.
Solution:   Use "oo". (Hans Ginzel, closes vim/vim#6904)
57ad94c5a9
2020-09-08 20:45:27 -07:00
erw7
aa45579206
win/env: fix stdpath()/XDG_* initialization, parsing #12829
- Windows environment variables are semicolon-separated, but some logic
  was assuming colon (:). This broke initialization and parsing of
  XDG_CONFIG_DIRS, XDG_DATA_DIRS, 'runtimepath', stdpath(), etc.
- test/defaults_spec: enable tests on Windows

ref #12793
2020-09-07 22:40:12 -07:00
Jan Edmund Lazo
951ef21de5
vim-patch:8.2.1633: some error messages are internal but do not use iemsg()
Problem:    Some error messages are internal but do not use iemsg().
Solution:   Use iemsg(). (Dominique Pellé, closes vim/vim#6894)
e83cca2911

N/A patches for version.c:

vim-patch:8.2.1625: compiler warning for use of fptr_T

Problem:    Compiler warning for use of fptr_T.
Solution:   Make the type less strict.
30d6413782

vim-patch:8.2.1630: terminal test fails

Problem:    Terminal test fails.
Solution:   Correct argument to term_start().  Correct error number.
c98cdb3bc9
2020-09-07 18:42:15 -04:00
Justin M. Keyes
c1d395a6d6
UI: forward 'mousefocus' option #12863
close #12849
ref eb4aab7173
2020-09-06 11:40:07 -07:00