Commit Graph

15726 Commits

Author SHA1 Message Date
zeertzjq
5c6f2122ad vim-patch:9.0.1129: sporadic Test_range() failure (#21619)
Problem:    Sporadic Test_range() failure.
Solution:   Clear typeahead.  Move to a separate function. (issue vim/vim#22771)

7bdcba08bb

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2023-01-02 21:03:40 +08:00
zeertzjq
5322bf99e6 vim-patch:8.2.0711: temp directory might be cleared (#21614)
Problem:    With a long running Vim the temp directory might be cleared on
            some systems.
Solution:   Lock the temp directory. (closes vim/vim#6044)

b2d0e51366
2023-01-02 20:37:13 +08:00
zeertzjq
c590641feb fix(tui): do not set ui_client_termname if it is already set (#21607)
It is fine to initialize ui_client_termname to NULL as it is only used
after tui_start().
2023-01-01 23:18:19 +08:00
Christian Clason
9cc37e057a docs(api): fix treesitter parsing errors 2023-01-01 15:05:21 +01:00
zeertzjq
83e8723864 Merge pull request #21597 from gi1242/tex-ft-detection
fix(filetype): make .tex filetype detection match Vim
2023-01-01 21:45:12 +08:00
Christian Clason
1b3e6e7594 vim-patch:9.0.1120: tex filetype detection not sufficiently tested
Problem:    Tex filetype detection not sufficiently tested.
Solution:   Add more test cases for "tex" detection. (Jonas Strittmatter,
            closes vim/vim#11765)

c55e8f2c6f

Co-authored-by: smjonas <jonas.strittmatter@gmx.de>
2022-12-31 16:12:09 -05:00
bfredl
cce736218f Merge pull request #18375 from bfredl/tui_rework
feat(ui): refactor TUI from thread to separate process
2022-12-31 14:23:24 +01:00
bfredl
9fdcbbb406 feat(tui): graduate the +tui feature
This was previously disabled due to build issues on windows.
Any reasonable platform can now be expected to have the necessary
interfaces to build and run the TUI subsystem.

Runtime quality issues of using the TUI (on any new platform) are not
relevant here. Just run Nvim in an external UI instead of the TUI as always.
2022-12-31 13:25:26 +01:00
bfredl
43e8ec92de fix(tui): more work in the TUI 2022-12-31 13:25:26 +01:00
hlpr98
2448816956 feat(tui): run TUI as external process 2022-12-31 10:43:28 +01:00
Luuk van Baal
935e538b63 fix: issues with command line if ui elements are externalized
Resolve https://github.com/neovim/neovim/issues/20888 and handle side
effects for setting 'cmdheight' to zero.
2022-12-31 00:50:39 +01:00
Luuk van Baal
b102bf22c0 fix(ui): allow resize commands to set 'cmdheight' to 0
Resolve https://github.com/neovim/neovim/issues/21558
2022-12-31 00:30:53 +01:00
zeertzjq
99cf111289 vim-patch:9.0.1115: code is indented more than needed (#21598)
Problem:    Code is indented more than needed.
Solution:   Use an early return to reduce indenting. (Yegappan Lakshmanan,
            closes vim/vim#11758)

ed0c1d5d4b

Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
2022-12-31 06:41:23 +08:00
bfredl
09370eae77 refactor(sleep): simplify rube goldberg implementation of :sleep
As neovim does have event handling, we are checking for CTRL-C
all the time, not once per second.

Also, do_sleep() reimplements the same loop as
LOOP_PROCESS_EVENTS_UNTIL() already contains internally. Fix the latter
to use the right integer type, so we do not need the extra indirection.
2022-12-30 19:56:11 +01:00
zeertzjq
83472b3808 vim-patch:8.2.{3773,3774}
vim-patch:8.2.3773: wrong window size when a modeline changes 'columns'

Problem:    Wrong window size when a modeline changes 'columns' and there is
            more than one tabpage. (Michael Soyka)
Solution:   Adjust the frames of all tabpages. (closes vim/vim#9315)

8a7374f8c4

vim-patch:8.2.3774: test for command line height fails

Problem:    Test for command line height fails.
Solution:   Use another way to handle window size change.

b711814cb6

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2022-12-30 14:45:28 +08:00
Oliver Marriott
e6cae44cbf feat(highlight): add DiagnosticOk (and associated) highlight groups (#21286)
The existing groups, Error, Hint, Info, Warn cover many use cases, but
neglect the occasion where a diagnostic message should communicate a
non-informative (not a Hint or Info) event. DiagnosticOk covers this
with a generic green colorscheme.
2022-12-28 09:01:40 -07:00
Christian Clason
3b9b43063c vim-patch:9.0.1106: not all postfix files are recognized (#21568)
Problem:    Not all postfix files are recognized.
Solution:   Recognize main.cf.proto files. (closes vim/vim#11732)

09ce0b8e11

Co-authored-by: KodeToad <3880336+KodeToad@users.noreply.github.com>
2022-12-28 11:42:02 +01:00
zeertzjq
bf459641a8 refactor(f_has): remove wrong comment (#21561)
Only one of "fork" and "system" should be defined.
Also change the line above "win32" to match Vim.
2022-12-28 10:05:03 +08:00
zeertzjq
45d9735aae vim-patch:9.0.1100: a hashtab with many removed items is not cleaned up
Problem:    A hashtab with many removed items is not cleaned up.
Solution:   Re-hash a hashtab even when the size didn't change if too many
            items were removed.

d0883faac6

N/A patches for version.c:

vim-patch:9.0.1099: trying to resize a hashtab may cause a problem

Problem:    Trying to resize a hashtab may cause a problem.
Solution:   Do not try to resize a hashtab before adding an item.

81b7ecc5cb

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2022-12-27 19:01:09 +08:00
zeertzjq
9bab4b72ae vim-patch:9.0.1097: tests are failing
Problem:    Tests are failing.
Solution:   Do clean up a hashtab when at the initial size.

b3d614369f

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2022-12-27 18:56:20 +08:00
zeertzjq
59012a18e1 vim-patch:9.0.1096: reallocating hashtab when the size didn't change
Problem:    Reallocating hashtab when the size didn't change.
Solution:   Bail out when the hashtab is already the desired size.

71d53e7c57

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2022-12-27 18:54:47 +08:00
zeertzjq
146c428a53 fix(statusline): make nvim_eval_statusline() work with %S (#21553) 2022-12-27 18:04:42 +08:00
zeertzjq
cd6ec1db06 fix(win_close): remove float grid after closing buffer (#21551)
It is not safe to remove the float grid when autocommands can still be
triggered, as autocommands may use the float grid.
2022-12-27 17:29:05 +08:00
zeertzjq
d4af8c6202 fix(statusline): don't show showcmd when not enough space (#21550) 2022-12-27 11:13:58 +08:00
zeertzjq
dae2135849 vim-patch:9.0.1101: unused global variable (#21549)
Problem:    Unused global variable.
Solution:   Remove the variable. (closes vim/vim#11752)

b536540ab3

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2022-12-27 06:19:39 +08:00
Christian Clason
fe5665be3b vim-patch:9.0.1103: jq files are not recognized (#21545)
Problem:    jq files are not recognized.
Solution:   Add detection of Jq files. (David McDonald, closes vim/vim#11743)

b9a1edfc54

Co-authored-by: David McDonald <dgmcdona@uno.edu>
2022-12-26 18:36:51 +01:00
zeertzjq
738427d498 vim-patch:9.0.1098: code uses too much indent (#21540)
Problem:    Code uses too much indent.
Solution:   Use an early return. (Yegappan Lakshmanan, closes vim/vim#11747)

465de3a57b

Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
2022-12-26 21:54:31 +08:00
zeertzjq
94ce25065b fix(showcmd): assert failure with cmdheight=0 (#21536) 2022-12-26 14:04:46 +08:00
Luuk van Baal
5b89d480e3 vim-patch:9.0.1061: cannot display 'showcmd' somewhere else
Problem:    Cannot display 'showcmd' somewhere else.
Solution:   Add the 'showcmdloc' option. (Luuk van Baal, closes vim/vim#11684)

ba936f6f4e

Co-authored-by: Luuk van Baal <luukvbaal@gmail.com>
2022-12-26 13:15:07 +08:00
zeertzjq
357aab4c65 fix(mappings): use all buckets in second round of unmap (#21534) 2022-12-26 11:20:37 +08:00
zeertzjq
6f25623e79 vim-patch:8.2.3737: test fails without the 'autochdir' option (#21529)
Problem:    Test fails without the 'autochdir' option.
Solution:   Check that the option is available. (Dominique Pellé, closes vim/vim#9272)

8dea145e39

Co-authored-by: Dominique Pelle <dominique.pelle@gmail.com>
2022-12-25 13:07:30 +08:00
zeertzjq
9be24110f6 vim-patch:8.2.4139: using freed memory in expression abbreviation (#21522)
Problem:    Using freed memory if an expression abbreviation deletes the
            abbreviation.
Solution:   Do not access the pointer after evaluating the expression.

94075b2b0e

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2022-12-24 16:32:50 +08:00
zeertzjq
4d4e697ef0 vim-patch:8.2.3513: using freed memory when using a timer and searching (#21519)
Problem:    Using freed memory when using a timer and searching. (Dominique
            Pellé)
Solution:   Allocated mr_pattern.

a2cff1dbc9

Restore xfree(strcopy) removed in ported patch 8.1.1270.

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2022-12-24 09:07:03 +08:00
zeertzjq
3b9bd7bd43 vim-patch:9.0.1092: search error message doesn't show used pattern (#21518)
Problem:    Search error message doesn't show used pattern.
Solution:   Pass the actually used pattern to where the error message is
            given. (Rob Pilling, closes vim/vim#11742)

e86190e7c1

Co-authored-by: Rob Pilling <robpilling@gmail.com>
2022-12-24 07:55:03 +08:00
Christian Clason
3ea1524cf8 vim-patch:9.0.1090: FHIR Shorthand files are not recognized (#21515)
Problem:    FHIR Shorthand files are not recognized.
Solution:   Add a pattern to detect FSH files. (Matthew Gramigna,
            closes vim/vim#11738)

c9207d5d79

Co-authored-by: mgramigna <mgramigna@mitre.org>
2022-12-23 17:36:41 +01:00
luukvbaal
2d7599248b vim-patch:9.0.1089: unnecessary assignment (#21493)
Problem:    unnecessary assignment
Solution:   Remove the assignment. (Luuk van Baal, closes vim/vim#11736)

c53e7904b9
2022-12-23 21:13:58 +08:00
zeertzjq
30f606fc60 fix(options): restore exists() behavior for options (#21510)
Duplicating get_option_value() logic for an obscure future refactor
isn't really worthwhile, and findoption() isn't used anywhere else
outside the options code.
2022-12-23 13:56:32 +08:00
zeertzjq
f9c62ce342 vim-patch:8.2.5142: startup test fails if there is a status bar (#21496)
Problem:    Startup test fails if there is a status bar at the top of the
            screen. (Ernie Rael)
Solution:   Use a larger vertical offset in the test.

fa04eae5a5

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2022-12-22 11:14:04 +08:00
zeertzjq
f384896837 fix(decoration): do not reset must_redraw after calling providers (#21459)
Resetting must_redraw caused a strange bug #21278, so don't do it.
Remove the goto as well, as it doesn't make much sense after #20665.
2022-12-21 23:40:21 +08:00
dundargoc
ec1738a6ed refactor: replace char_u with char 16 - remove STRNCMP (#21208)
refactor: replace char_u with char

Work on https://github.com/neovim/neovim/issues/459
2022-12-21 19:00:05 +08:00
zeertzjq
c24605a5a0 refactor(win_line): rename attr to vi_attr (#21487)
Vim renamed it in patch 8.1.1391.
2022-12-21 15:58:59 +08:00
bfredl
a6747545be Merge pull request #21441 from bfredl/neoterminfo
refactor(tui): use nvim_echo() for verbose terminfo
2022-12-20 22:20:17 +01:00
bfredl
b42d8a43b9 refactor(tui): use nvim_echo() for verbose terminfo
This is needed for #18375 for the obvious reasons.
note: verbose_terminfo_event is only temporarily needed
until the full TUI process refactor is merged.
2022-12-20 21:43:42 +01:00
kylo252
45d1b1c678 vim-patch:9.0.1082: some jsonc files are not recognized (#21483)
Problem:    Some jsonc files are not recognized.
Solution:   Add patterns for jsonc and move some from json to jsonc.
            (closes vim/vim#11711)

104b2ff4d0

Co-authored-by: kylo252 <59826753+kylo252@users.noreply.github.com>
2022-12-20 18:04:47 +01:00
zeertzjq
f04087d8ba vim-patch:8.2.2912: MS-Windows: most users expect using Unicode (#21482)
Problem:    MS-Windows: most users expect using Unicode.
Solution:   Default 'encoding' to utf-8 on MS-Windows. (Ken Takata,
            closes vim/vim#3907)

f883d9027c

Correct the encoding of the file.

Co-authored-by: K.Takata <kentkt@csc.jp>
2022-12-20 17:15:37 +08:00
zeertzjq
de90a8bfe5 test(old): make test_signs.vim closer to upstream (#21479) 2022-12-20 11:03:38 +08:00
zeertzjq
ff62d76193 vim-patch:9.0.1079: leaking memory when defining a user command fails
Problem:    Leaking memory when defining a user command fails.
Solution:   Free "compl_arg" when needed. (closes vim/vim#11726)

33e543038b
2022-12-20 05:26:52 +08:00
zeertzjq
b201cbfc61 vim-patch:9.0.1078: with the +vartabs feature indent folding may use wrong 'ts'
Problem:    With the +vartabs feature indent folding may use wrong 'tabstop'.
Solution:   Use the "buf" argument instead of "curbuf".

07146ad1d3
2022-12-20 05:26:49 +08:00
Munif Tanjim
23d8f5b870 feat(exrc): support .nvim.lua (#21436) 2022-12-19 09:33:47 -07:00
Tom Churchman
a7332ba9b4 fix(tui): set cursor color param as string when required #21407
Problem:
See #20628. Terminals supporting cursor color changing usually set the
"user-defined" `Cs` terminfo capability. Most terminals expect the parameter to
the capability to be a string (in hex format like `#0099ff` or like
`rgb:00/99/ff`), others may expect a number.

Nvim currently can't handle string parameters, causing terminals to receive
a bogus command.

Unfortunately, as the `Cs` capability is "user-defined", there's no strict
format. The parameter it takes isn't really standardized. It seems most
terminals in use follow xterm; iTerm appears to be an exception.

Solution:
Use the `Cs` capability more reliable by following terminfo and
sending the color in hex format, at the cost of using unibilium string vars.
Alternatively, could revert 34d41baf8a
and hardcode the specific format required by terminals, instead of reading
terminfo.

Fixes #20628
Fixes #19607
2022-12-18 15:10:47 -08:00