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
Justin M. Keyes
40f0851bd8
docs: deprecate :checkhealth vimscript interface
2022-09-22 15:36:27 +02:00
Justin M. Keyes
bde6176c91
feat(treesitter): bundle :help parser and queries
...
parser from https://github.com/vigoux/tree-sitter-vimdoc
queries from nvim-treesitter
2022-09-22 15:36:27 +02:00
zeertzjq
11f91ac304
Merge pull request #20287 from zeertzjq/vim-9.0.0540
...
vim-patch:9.0.{0540,0544}: assigning stack variable to argument confuses Coverity
2022-09-22 21:34:46 +08:00
Lewis Russell
5c1b8d7bf8
docs(lua): correct docs for option accessor metatables ( #20256 )
2022-09-22 14:17:49 +01:00
zeertzjq
4371886293
vim-patch:9.0.0544: minor issues with setting a string option
...
Problem: Minor issues with setting a string option.
Solution: Adjust the code, add a test. (closes vim/vim#11192 )
fcba86c031
2022-09-22 21:09:31 +08:00
zeertzjq
33f1471472
vim-patch:9.0.0540: assigning stack variable to argument confuses Coverity
...
Problem: Assigning stack variable to argument confuses Coverity.
Solution: Use a local pointer, also makes the code simpler.
6f98114e4a
2022-09-22 21:07:54 +08: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
zeertzjq
a7f6f0e2dd
vim-patch:9.0.0539: long message test can be flaky ( #20282 )
...
Problem: Long message test can be flaky.
Solution: Wait for more prompt instead of ruler.
21d393a12b
Comment N/A lines out instead of deleting in buftype tests.
2022-09-22 20:18:06 +08:00
bfredl
7fc5f6605f
Merge pull request #20249 from bfredl/cmdmessage
...
fix(redraw): avoid unnecessary redraws and glitches with floats+messages
2022-09-22 11:09:33 +02: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
8d13b08a03
Merge pull request #20278 from zeertzjq/vim-8.2.3428
...
vim-patch:8.2.{3428,3567,3568,4074,4677}
2022-09-22 13:44:42 +08:00
zeertzjq
477cf2a6b1
vim-patch:8.2.4677: the Athena GUI support is outdated
...
Problem: The Athena GUI support is outdated.
Solution: Remove the Athena GUI code.
0b962e5685
2022-09-22 13:23:58 +08:00
zeertzjq
1bced9bf94
vim-patch:8.2.4074: going over the end of NameBuff
...
Problem: Going over the end of NameBuff.
Solution: Check length when appending a space.
de05bb2573
2022-09-22 13:17:43 +08:00
zeertzjq
a636e24280
vim-patch:8.2.3568: ctrl-hat test fails with Athena and Motif
...
Problem: Ctrl-hat test fails with Athena and Motif. (Elimar Riesebieter)
Solution: Run the test only with GTK. (Dominique Pellé, closes vim/vim#9069 )
8753c1dd2c
2022-09-22 13:15:40 +08:00
zeertzjq
320e56a4e0
vim-patch:8.2.3567: CTRL-I in Insert mode is not tested
...
Problem: CTRL-I in Insert mode is not tested
Solution: Add a test case. (Dominique Pellé, closes vim/vim#8866 )
9cd063e319
2022-09-22 13:15:12 +08:00
zeertzjq
3f4030e171
vim-patch:8.2.3428: using freed memory when replacing
...
Problem: Using freed memory when replacing. (Dhiraj Mishra)
Solution: Get the line pointer after calling ins_copychar().
35a9a00afc
This patch is N/A as it only applies to non-UTF-8 encoding.
2022-09-22 13:13:11 +08:00
zeertzjq
d76017c613
Merge pull request #20276 from zeertzjq/vim-8.2.2979
...
vim-patch:8.2.{0712,2979,2994,3155}: options tests
2022-09-22 13:10:20 +08:00
zeertzjq
800cda2164
vim-patch:8.2.3155: some option related code not covered by tests
...
Problem: Some option related code not covered by tests.
Solution: Add a few test cases. (Dominique Pellé, closes vim/vim#8552 )
042414fa00
2022-09-22 12:40:26 +08:00
zeertzjq
88099c1122
vim-patch:8.2.2994: various code is not fully tested
...
Problem: Various code is not fully tested.
Solution: Add a few more tests. (Yegappan Lakshmanan, closes vim/vim#8378 )
2d6d718dde
Nvim does not support encoding=latin1 or compatible mode.
The two paste tests are applicable.
2022-09-22 12:40:26 +08:00
zeertzjq
dd2b7586f3
vim-patch:8.2.2979: not all options code is covered by tests
...
Problem: Not all options code is covered by tests.
Solution: Add more tests for options. (Yegappan Lakshmanan, closes vim/vim#8369 )
5958549760
2022-09-22 12:40:26 +08:00
zeertzjq
5d1cb73e7f
vim-patch:8.2.0712: various code not fully tested
...
Problem: Various code not fully tested.
Solution: Add a few more tests. (Yegappan Lakshmanan, closes vim/vim#6049 )
0ff5dedf0f
Nvim does not support encoding=latin1 or setting keycodes/termcaps.
2022-09-22 12:40:26 +08: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
Jonas Strittmatter
b4b05f160d
feat(filetype): expand environment variables in filetype patterns ( #20145 )
2022-09-21 15:58:57 -06:00
zeertzjq
37a71d1f28
vim-patch:9.0.0018: going over the end of the typahead ( #20269 )
...
Problem: Going over the end of the typahead.
Solution: Put a NUL after the typeahead.
27efc62f5d
check_termcode() is N/A.
2022-09-21 11:06:39 +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
zeertzjq
585ab2564a
refactor: suppress PVS false positives ( #20264 )
...
Some V512 warnings have changed to V1086, and PVS apparently does not
know `uv_run()` can change `*timeout_expired`.
2022-09-21 06:02:53 +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
bfredl
62db91f06c
Merge pull request #20263 from notomo/refactor-remove-unused
...
refactor(message): remove unused function
2022-09-20 16:38:31 +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
86c5d761c4
Merge pull request #20262 from zeertzjq/vim-9.0.0507
...
vim-patch:9.0.{0507,0512}: cmdline cleared when using :redrawstatus
2022-09-20 21:26:24 +08:00
notomo
b5a21ad8ff
refactor(message): remove unused function
2022-09-20 13:07:48 +00: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
Christian Clason
ae30e388de
vim-patch:9.0.0510: Chatito files are not recognized ( #20260 )
...
Problem: Chatito files are not recognized.
Solution: Add a pattern for Chatito files. (closes vim/vim#11174 )
7c046ae99b
2022-09-20 14:10:00 +02:00
zeertzjq
054c27075b
vim-patch:9.0.0509: confusing error for "saveas" command with "nofile" buffer ( #20258 )
...
Problem: Confusing error for "saveas" command with "nofile" buffer.
Solution: Give a clearer error message. (closes vim/vim#11171 )
500a1f9972
2022-09-20 19:49:00 +08:00
Lewis Russell
abe2d90693
feat(lua): move compat module from runtime to test ( #20257 )
2022-09-20 11:15:32 +01:00
Lewis Russell
e762158305
docs(lua): opts in vim.keymap.{set,del}
can be optional ( #20255 )
2022-09-20 10:42:45 +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
a0e6e767a6
fix(tui): handle padding requirements for visual bell ( #20238 )
2022-09-20 11:47:04 +08:00
kylo252
875b58e094
build: add basic cmake-presets integration ( #19128 )
...
This allows a more declarative way of defining targets which may be easier to those not familiar with cmake quirks.
Example usage:
# get a list of pre-configured presets
cmake --list-presets
# configure a preset
cmake . --preset=default
# build it
cmake --build --preset=default
2022-09-19 10:58:26 +02:00
Vedant
7a091fdfaf
ci(publish-winget): fix errors that prevents release ( #20232 )
2022-09-19 10:48:05 +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
Christian Clason
8dc61713d9
vim-patch:9.0.0497: LyRiCs files are not recognized ( #20239 )
...
Problem: LyRiCs files are not recognized.
Solution: Add a pattern to detect LyRiCs files. (closes vim/vim#11155 )
65ee49decf
2022-09-18 14:16:24 +02:00