zeertzjq
45707c1eae
fix(api): fix nvim_cmd crash with filename expansion ( #20397 )
2022-09-29 16:04:14 +08:00
zeertzjq
1cf44d6f57
fix(column): move sign sentinel after inserting/deleting lines ( #20400 )
2022-09-29 15:48:39 +08:00
zeertzjq
a80ab395aa
test: add a Lua test for #17501 ( #20392 )
2022-09-29 08:56:00 +08:00
Justin M. Keyes
16336c486e
feat(gen_help_html.lua): adapt to new parser
...
- adapt to parser changes from https://github.com/vigoux/tree-sitter-vimdoc/pull/16
- numerous other generator improvements
2022-09-28 18:34:20 +02:00
zeertzjq
bafeb32b95
fix(spell): correct spell move behavior without "noplainbuffer" ( #20386 )
2022-09-28 21:55:22 +08:00
zeertzjq
35e2c4a2ed
fix(lua): fix architecture-dependent behavior in usercmd "reg" ( #20384 )
...
I don't think using an integer as a NUL-terminated string can work on
big-endian systems, at least.
This is also not tested. Add a test.
Also fix a mistake in the docs of nvim_parse_cmd.
2022-09-28 18:27:59 +08:00
zeertzjq
e6c214033a
fix(window): fix equalization with cmdheight=0 ( #20369 )
2022-09-28 06:22:11 +08:00
smolck
c7d30c152d
fix(api): notify dict watchers on nvim_set_var and vim.g setter
...
Co-authored-by: bfredl <bjorn.linse@gmail.com >
Co-authored-by: Christian Clason <c.clason@uni-graz.at >
2022-09-27 14:47:53 +02:00
zeertzjq
1d337d4e2f
vim-patch:9.0.0595: extra newline in messages after a verbose shell message ( #20359 )
...
Problem: Extra newline in messages after a verbose shell message.
Solution: Output the newline with msg_putchar_attr(). (closes vim/vim#11233 )
Make it possible to filter a screendump before comparing it.
1190139ed0
Cherry-pick Test_message_more_scrolledback() from patch 9.0.0592 because
Nvim already behaves as intended.
2022-09-27 08:29:21 +08:00
zeertzjq
7e98821e56
fix(ui): redraw end of buffer if last line is modified ( #20354 )
2022-09-27 06:33:48 +08:00
zeertzjq
be693462d5
fix(ui): allow redrawing statusline when msgsep is used ( #20337 )
2022-09-26 21:23:43 +08:00
bfredl
c7e74f7889
Merge pull request #20351 from bfredl/cmdfix2
...
fix(cmdline): don't send invalid cursor with incsearch and cmdheight=0
2022-09-26 13:30:19 +02:00
bfredl
be72af2f9b
fix(cmdline): don't send invalid cursor with incsearch and cmdheight=0
...
fixes #20306
2022-09-26 13:29:55 +02:00
dundargoc
c815aadfcc
docs: fix typos ( #20150 )
...
Co-authored-by: Miguel Carneiro <mcarneiromorenas@gmail.com >
Co-authored-by: Gregory Anders <greg@gpanders.com >
Co-authored-by: Raphael <glephunter@gmail.com >
Co-authored-by: C.D. MacEachern <craig.daniel.maceachern@gmail.com >
Co-authored-by: zeertzjq <zeertzjq@outlook.com >
2022-09-26 17:43:23 +08:00
bfredl
db0ea1ab44
fix(messages): validate msg_grid before silent! message with cmdheight=0
...
fixes #20316
2022-09-26 10:50:49 +02:00
Andrey Bushev
4bb1d1df79
feat(terminal): recognize underdouble and undercurl
2022-09-26 11:53:20 +08:00
zeertzjq
9ffa041a9a
vim-patch:9.0.0586: missing change in test ( #20347 )
...
Problem: Missing change in test.
Solution: Add the test change.
124af71a28
vim-patch:9.0.0585: when long message test fails the error message is not visible
Problem: When long message test fails the error message is not visible.
Solution: Dump more lines.
6a879878f4
2022-09-26 07:46:58 +08:00
zeertzjq
ac66f5af06
fix!: make :undo! notify buffer update callbacks ( #20344 )
...
When :undo! was introduced to Nvim the implementation of 'inccommand'
preview callback hasn't been fully decided yet, so not notifying buffer
update callbacks made sense for 'inccommand' preview callback in case it
needs to undo the changes itself.
Now it turns out that the undo-and-forget is done automatically for
'inccommand', so it doesn't make sense for :undo! to avoid notifying
buffer update callbacks anymore.
2022-09-26 07:15:07 +08:00
zeertzjq
a6c9764eda
fix(inccommand): deal with unsynced undo ( #20041 )
2022-09-26 07:00:37 +08:00
zeertzjq
f8a1cadccf
fix(filetype): use :setf instead of nvim_buf_set_option ( #20334 )
2022-09-25 16:29:25 +02:00
Justin M. Keyes
3169fc54a1
refactor(treesitter): rename x_position => x_pos
...
"pos" has a long precedent as "position" in vim, and there is no reason
to use a verbose name here.
2022-09-25 13:46:15 +02:00
Louis Sven Goulet
2a3cb0893b
feat: ":write!" skips "file changed" warning #18665
...
Problem:
Cannot opt-out of "WARNING: The file has been changed since reading
it!!!", even with ":write!".
Solution:
Change ":write!" to skip the warning.
closes #7270
2022-09-24 18:57:10 -07:00
zeertzjq
8317b9199e
fix(input): use click number of last click for mouse drag ( #20300 )
2022-09-24 22:28:41 +08:00
zeertzjq
291a649632
fix(mapset): remove existing abbreviation of same lhs ( #20320 )
2022-09-24 21:07:18 +08:00
shaunsingh
caf5738fa9
fix(lsp): create missing directory before creating file ( #19835 )
...
Co-authored-by: Mathias Fussenegger <f.mathias@zignar.net >
2022-09-24 12:46:21 +02:00
zeertzjq
7a70e9587c
test(tabpage_spec): actually test for nvim_win_hide
2022-09-23 10:17:44 +08:00
zeertzjq
d7052e8e1f
test: add tests for #13549 #20285 #20290
2022-09-23 07:38:22 +08:00
Justin M. Keyes
a867aa45f7
Merge #11967 generate :help HTML with treesitter
2022-09-22 10:03:38 -04:00
Justin M. Keyes
09b64d75bd
feat(docs): gen_help_html.lua
...
Problem:
The :help docs HTML generated is driven by an old awk script
`runtime/doc/makehtml.awk` that is hard to maintain (ad hoc parser and
no one has touched it in decades) and has bugs like:
- https://github.com/neovim/neovim.github.io/issues/96
- https://github.com/neovim/neovim.github.io/issues/97
Solution:
Use Lua + treesitter (https://github.com/vigoux/tree-sitter-vimdoc ) to
generate :help docs HTML. Also validates tag links.
fix https://github.com/neovim/neovim.github.io/issues/96
fix https://github.com/neovim/neovim.github.io/issues/97
TODO:
- delete doc_html build task
- delete runtime/doc/Makefile
- delete makehtml.awk
- delete maketags.awk
OUTPUT:
$ nvim -V1 -es --clean +"lua require('scripts.gen_help_html')"
output dir: /…/neovim.github.io/_site/doc/
generated (207 errors): api.txt => api.html
generated (122 errors): arabic.txt => arabic.html
generated (285 errors): autocmd.txt => autocmd.html
generated (641 errors): builtin.txt => builtin.html
generated (623 errors): change.txt => change.html
generated (65 errors): channel.txt => channel.html
generated (353 errors): cmdline.txt => cmdline.html
generated (3 errors): debug.txt => debug.html
generated (28 errors): deprecated.txt => deprecated.html
generated (193 errors): dev_style.txt => dev_style.html
generated (460 errors): develop.txt => develop.html
generated (19 errors): diagnostic.txt => diagnostic.html
generated (57 errors): diff.txt => diff.html
generated (818 errors): digraph.txt => digraph.html
generated (330 errors): editing.txt => editing.html
generated (368 errors): eval.txt => eval.html
generated (184 errors): fold.txt => fold.html
generated (61 errors): ft_ada.txt => ft_ada.html
generated (0 errors): ft_ps1.txt => ft_ps1.html
generated (20 errors): ft_raku.txt => ft_raku.html
generated (5 errors): ft_rust.txt => ft_rust.html
generated (41 errors): ft_sql.txt => ft_sql.html
generated (110 errors): gui.txt => gui.html
generated (79 errors): hebrew.txt => hebrew.html
generated (17 errors): help.txt => index.html
generated (104 errors): helphelp.txt => helphelp.html
generated (0 errors): if_cscop.txt => if_cscop.html
generated (23 errors): if_perl.txt => if_perl.html
generated (16 errors): if_pyth.txt => if_pyth.html
generated (9 errors): if_ruby.txt => if_ruby.html
generated (216 errors): indent.txt => indent.html
generated (634 errors): index.txt => vimindex.html
generated (320 errors): insert.txt => insert.html
generated (265 errors): intro.txt => intro.html
generated (9 errors): job_control.txt => job_control.html
generated (0 errors): lsp-extension.txt => lsp-extension.html
generated (214 errors): lsp.txt => lsp.html
generated (311 errors): lua.txt => lua.html
generated (592 errors): luaref.txt => luaref.html
generated (798 errors): luvref.txt => luvref.html
generated (663 errors): map.txt => map.html
generated (228 errors): mbyte.txt => mbyte.html
generated (228 errors): message.txt => message.html
generated (0 errors): mlang.txt => mlang.html
generated (761 errors): motion.txt => motion.html
generated (4 errors): nvim.txt => nvim.html
generated (226 errors): nvim_terminal_emulator.txt => nvim_terminal_emulator.html
generated (988 errors): options.txt => options.html
generated (567 errors): pattern.txt => pattern.html
generated (15 errors): pi_gzip.txt => pi_gzip.html
generated (10 errors): pi_health.txt => pi_health.html
generated (27 errors): pi_msgpack.txt => pi_msgpack.html
generated (2177 errors): pi_netrw.txt => pi_netrw.html
generated (41 errors): pi_paren.txt => pi_paren.html
generated (9 errors): pi_spec.txt => pi_spec.html
generated (218 errors): pi_tar.txt => pi_tar.html
generated (0 errors): pi_tutor.txt => pi_tutor.html
generated (235 errors): pi_zip.txt => pi_zip.html
generated (265 errors): print.txt => print.html
generated (31 errors): provider.txt => provider.html
generated (335 errors): quickfix.txt => quickfix.html
generated (572 errors): quickref.txt => quickref.html
generated (109 errors): recover.txt => recover.html
generated (14 errors): remote.txt => remote.html
generated (14 errors): remote_plugin.txt => remote_plugin.html
generated (351 errors): repeat.txt => repeat.html
generated (23 errors): rileft.txt => rileft.html
generated (12 errors): russian.txt => russian.html
generated (6 errors): scroll.txt => scroll.html
generated (106 errors): sign.txt => sign.html
generated (347 errors): spell.txt => spell.html
generated (784 errors): starting.txt => starting.html
generated (1499 errors): syntax.txt => syntax.html
generated (23 errors): tabpage.txt => tabpage.html
generated (257 errors): tagsrch.txt => tagsrch.html
generated (31 errors): term.txt => term.html
generated (0 errors): testing.txt => testing.html
generated (96 errors): tips.txt => tips.html
generated (57 errors): treesitter.txt => treesitter.html
generated (71 errors): uganda.txt => uganda.html
generated (74 errors): ui.txt => ui.html
generated (87 errors): undo.txt => undo.html
generated (17 errors): userfunc.txt => userfunc.html
generated (1 errors): usr_01.txt => usr_01.html
generated (89 errors): usr_02.txt => usr_02.html
generated (293 errors): usr_03.txt => usr_03.html
generated (46 errors): usr_04.txt => usr_04.html
generated (96 errors): usr_05.txt => usr_05.html
generated (54 errors): usr_06.txt => usr_06.html
generated (20 errors): usr_07.txt => usr_07.html
generated (241 errors): usr_08.txt => usr_08.html
generated (130 errors): usr_09.txt => usr_09.html
generated (50 errors): usr_10.txt => usr_10.html
generated (33 errors): usr_11.txt => usr_11.html
generated (32 errors): usr_12.txt => usr_12.html
generated (22 errors): usr_20.txt => usr_20.html
generated (75 errors): usr_21.txt => usr_21.html
generated (8 errors): usr_22.txt => usr_22.html
generated (3 errors): usr_23.txt => usr_23.html
generated (163 errors): usr_25.txt => usr_25.html
generated (13 errors): usr_26.txt => usr_26.html
generated (84 errors): usr_27.txt => usr_27.html
generated (173 errors): usr_28.txt => usr_28.html
generated (285 errors): usr_29.txt => usr_29.html
generated (280 errors): usr_30.txt => usr_30.html
generated (11 errors): usr_31.txt => usr_31.html
generated (13 errors): usr_32.txt => usr_32.html
generated (156 errors): usr_40.txt => usr_40.html
generated (134 errors): usr_41.txt => usr_41.html
generated (35 errors): usr_42.txt => usr_42.html
generated (19 errors): usr_43.txt => usr_43.html
generated (60 errors): usr_44.txt => usr_44.html
generated (13 errors): usr_45.txt => usr_45.html
generated (1 errors): usr_toc.txt => usr_toc.html
generated (69 errors): various.txt => various.html
generated (68 errors): vi_diff.txt => vi_diff.html
generated (437 errors): vim_diff.txt => vim_diff.html
generated (296 errors): visual.txt => visual.html
generated (181 errors): windows.txt => windows.html
generated 119 html pages
total errors: 23862
invalid tags: 537
2022-09-22 15:36:27 +02:00
Lewis Russell
679f3072f6
Merge pull request #20103 from lewis6991/refactor/vim_opt
2022-09-22 13:59:04 +01:00
zeertzjq
2083c1771a
fix(window): close floats first when closing buffer in other tab ( #20284 )
2022-09-22 20:25:34 +08:00
bfredl
02f8ca59a8
fix(tests): indicate in test logs when nvim exit times out
...
When it happens it wastes 2 seconds which is NOT included in the
normal busted timing info. It is hard to correct this, but we
can at least print a warning when this happens.
2022-09-22 10:38:11 +02:00
bfredl
93b30582db
fix(redraw): make redrawdebug=nodelta handle all the cases
...
Before only win_line lines were considered. this applies nodelta
to all screen elements. Causes some failures, which might indeed
indicate excessive redraws.
2022-09-22 10:38:10 +02:00
bfredl
00cfc1dceb
fix(redraw): avoid unnecessary redraws and glitches with floats+messages
...
fixes #20106
fixes #20229
2022-09-22 10:36:23 +02:00
zeertzjq
71e70d0c99
vim-patch:9.0.0537: the do_set() function is much too long ( #20274 )
...
Problem: The do_set() function is much too long.
Solution: Move setting of a string option to a separate function.
4740394f23
Cherry-pick some tests from Vim patch 8.2.0540.
2022-09-22 09:43:37 +08:00
zeertzjq
ad1f353fe1
vim-patch:9.0.0517: when at the command line :redrawstatus does not work well ( #20266 )
...
Problem: When at the command line :redrawstatus does not work well.
Solution: Only update the statuslines instead of the screen. (closes vim/vim#11180 )
320d910064
2022-09-21 06:47:29 +08:00
ofwinterpassed
ec94014cd1
fix(lsp): out of bounds error in lsp.util.apply_text_edits ( #20137 )
...
Co-authored-by: Jonas Strittmatter <40792180+smjonas@users.noreply.github.com >
2022-09-20 22:14:58 +02:00
zeertzjq
cfdc93e8ac
vim-patch:9.0.0511: unnecessary scrolling for message of only one line ( #20261 )
...
Problem: Unnecessary scrolling for message of only one line.
Solution: Only set msg_scroll when needed. (closes vim/vim#11178 )
bdedd2bcce
2022-09-20 21:58:39 +08:00
zeertzjq
2e4532bea5
vim-patch:9.0.0512: cannot redraw the status lines when editing a command
...
Problem: Cannot redraw the status lines when editing a command.
Solution: Only postpone the redraw when messages have scrolled.
(closes vim/vim#11170 )
c14bfc31d9
2022-09-20 21:01:00 +08:00
zeertzjq
9413f7544b
vim-patch:9.0.0507: cmdline cleared when using :redrawstatus in CmdlineChanged
...
Problem: Command line cleared when using :redrawstatus in CmdlineChanged
autocommand event.
Solution: Postpone the redraw. (closes vim/vim#11162 )
bcd6924245
Cherry-pick Test_redraw_in_autocmd() from Vim patch 8.2.4789.
2022-09-20 21:00:45 +08:00
Lewis Russell
abe2d90693
feat(lua): move compat module from runtime to test ( #20257 )
2022-09-20 11:15:32 +01:00
Mathias Fußenegger
10196f1b46
fix(lsp): support false
result in handlers ( #20252 )
...
Closes https://github.com/neovim/neovim/issues/20111
2022-09-20 09:28:23 +02:00
zeertzjq
7bd4c8e8ee
fix(inccommand): avoid unnecessary redraw when not showing ( #20244 )
2022-09-19 12:37:25 +08:00
zeertzjq
647da34bbd
fix: assert failure when changing 'ut' while waiting for CursorHold ( #20241 )
2022-09-18 22:55:30 +08:00
Christian Clason
67df3347fd
vim-patch:9712ff1288f9 ( #20240 )
...
Update runtime files
9712ff1288
2022-09-18 15:20:20 +02:00
bfredl
e63538f21c
Merge pull request #20198 from zeertzjq/cursorhold
...
fix(events): make CursorHold behave as documented
2022-09-18 11:37:22 +02:00
dundargoc
6d557e324f
vim-patch:8.1.0941: macros for MS-Windows are inconsistent ( #20215 )
...
Problem: Macros for MS-Windows are inconsistent, using "32", "3264 and
others.
Solution: Use MSWIN for all MS-Windows builds. Use FEAT_GUI_MSWIN for the
GUI build. (Hirohito Higashi, closes vim/vim#3932 )
4f97475d32
2022-09-18 09:17:15 +08:00
zeertzjq
644a3f48b1
fix(events): make CursorHold behave as documented
2022-09-17 21:48:44 +08:00
zeertzjq
3c3f3e7353
test(remote_spec): reduce flakiness in waiting for client exit ( #20230 )
...
It is less likely for client to exit between jobstart() and jobwait() if
they are invoked in the same RPC request instead of two separate ones.
2022-09-17 16:17:51 +08:00
zeertzjq
6b2f0f43b5
fix(eval)!: make Lua Funcref work as method and in substitute() ( #20217 )
...
BREAKING CHANGE: When using a Funcref converted from a Lua function as
a method in Vim script, the result of the base expression is now passed
as the first argument instead of being ignored.
vim-patch:8.2.5117: crash when calling a Lua callback from a :def function
Problem: Crash when calling a Lua callback from a :def function. (Bohdan
Makohin)
Solution: Handle FC_CFUNC in call_user_func_check(). (closes vim/vim#10587 )
7d149f899d
2022-09-16 23:09:26 +08:00