aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
| * | fix(buffer): disable buffer-updates before removing from window #18933zeertzjq2022-06-12
| | | | | | | | | | | | | | | | | | | | | | | | There can be other places that access window buffer info (e.g. `tabpagebuflist()`), so checking `w_closing` in `win_findbuf()` doesn't solve the crash in all cases, and may also cause Nvim's behavior to diverge from Vim. Fix #14998
| * | Merge pull request #18936 from bfredl/apioptionbfredl2022-06-12
| |\ \ | | | | | | | | refactor(api): reorganize code
| | * | refactor(api): update vimdocbfredl2022-06-12
| | | |
| | * | refactor(api): move command related API to separate filebfredl2022-06-12
| | | |
| | * | refactor(api): move extmark specific functions to api/extmark.cbfredl2022-06-12
| | | |
| | * | refactor(api): move option code to own filebfredl2022-06-12
| | |/
| * | fix(inccommand): skip split window if not enough room #18937Famiu Haque2022-06-12
| | | | | | | | | | | | | | | Command preview now behaves like inccommand=nosplit when there's not enough room for the preview window to be opened instead of aborting, which is consistent with old behavior of 'inccommand'.
| * | feat(contrib): asan debugging script #18892dundargoc2022-06-12
| |/ | | | | | | Opted to use a shell script because it's simpler to manipulate environment variables than in makefiles.
| * Merge pull request #18919 from bfredl/multiattrbfredl2022-06-11
| |\ | | | | | | fix(messages): add color when showing nvim_echo in :messages history
| | * fix(messages): add color when showing nvim_echo in :messages historybfredl2022-06-11
| |/
| * Merge pull request #18428 from bfredl/do_sourcebfredl2022-06-11
| |\ | | | | | | feat(api): nvim__get_runtime do_source
| | * feat(api): nvim__get_runtime do_sourcebfredl2022-06-11
| |/
| * fix(inccommand): clear cmdpreview state if preview is not shown (#18923)zeertzjq2022-06-11
| |
| * vim-patch:8.2.5076: unnecessary code (#18922)zeertzjq2022-06-11
| | | | | | | | | | Problem: Unnecessary code. Solution: Remove code and replace with function call. (closes vim/vim#10552) https://github.com/vim/vim/commit/2e7cba347fc8b746add12aa5e0e9f6218a76c788
| * Merge pull request #18461 from dundargoc/refactor/change-linenr-to-int32bfredl2022-06-10
| |\ | | | | | | refactor: change type of linenr_T from long to int32_t
| | * refactor: change type of linenr_T from long to int32_tDundar Goc2022-06-10
| |/ | | | | | | | | | | | | | | | | | | | | | | | | The size of long varies depending on architecture, in contrast to the MAXLNUM constant which sets the maximum allowable number of lines to 2^32-1. This discrepancy may lead to hard to detect bugs, for example https://github.com/neovim/neovim/issues/18454. Setting linenr_T to a fix maximum size of 2^32-1 will prevent this type of errors in the future. Also change the variables `amount` and `amount_after` to be linenr_T since they're referring to "the line number difference" between two texts.
| * fix(input): fix macro recording with ALT and special key (#18917)zeertzjq2022-06-10
| |
| * vim-patch:partial:63f32603789d (#18916)Christian Clason2022-06-10
| | | | | | | | | | | | | | Update runtime files https://github.com/vim/vim/commit/63f32603789d1a27c559fc440325955fd0b8b500 skip translations skip user manual rewrite
| * feat(filetype): remove side effects from vim.filetype.match (#18894)Gregory Anders2022-06-09
| | | | | | | | | | | | | | | | Many filetypes from filetype.vim set buffer-local variables, meaning vim.filetype.match cannot be used without side effects. Instead of setting these buffer-local variables in the filetype detection functions themselves, have vim.filetype.match return an optional function value that, when called, sets these variables. This allows vim.filetype.match to work without side effects.
| * refactor(ops): doxygen docstrings #17743dundargoc2022-06-09
| |
| * build: add a cmake target for all used linters #18543dundargoc2022-06-09
| | | | | | | | | | | | | | | | | | * build: move the logic for linters to cmake Cmake is our source of truth. We should have as much of our build process there as possible so everyone can make use of it. * build: remove redundant check for ninja generator The minimum cmake version as of writing this is 3.10, which has ninja support.
| * fix(tests): unreliable parser_spec #18911Justin M. Keyes2022-06-09
| | | | | | | | | | | | | | | | | | The "first run" has high variability. Looks like the test failures correlate with 545dc82c1b22709c83ec23e9450f245f9ff1babc , which makes sense because that improves "first run" performance. So the `1000*` factor of this test could be adjusted to e.g. `300*` or `500*`. ref https://github.com/neovim/neovim/pull/16945
| * fix: segfault in find_tagfunc_tags #18841fkm32022-06-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fixes #15221 I tried to reproduce with a test, but failed. The below patch is able to cause the out of bound access (I verified by adding a check to the code), but it doesn't seg fault or trigger asan/valgrind errors. ``` diff --git a/src/nvim/testdir/test_tagfunc.vim b/src/nvim/testdir/test_tagfunc.vim index ffc1d63b9..22828a39f 100644 --- a/src/nvim/testdir/test_tagfunc.vim +++ b/src/nvim/testdir/test_tagfunc.vim @@ -117,4 +117,26 @@ func Test_tagfunc_settagstack() delfunc Mytagfunc2 endfunc +func Test_tagfunc_settagstack_many() + + func Mytagfunc1(pat, flags, info) + return [{'name' : 'mytag', 'filename' : 'Xtest', 'cmd' : '1'}] + endfunc + set tagfunc=Mytagfunc1 + call writefile([''], 'Xtest') + + for i in range(0,20) + let pos = [bufnr()] + getcurpos()[1:] + let newtag = [{'tagname' : 'mytag' + i, 'from' : pos}] + call settagstack(1, {'items' : newtag}, 'a') + call settagstack(1, {'curidx' : 21}) + endfor + + tag + + call delete('Xtest') + set tagfunc& + delfunc Mytagfunc1 +endfunc ```
| * fix: correct nlua_wait error message #18867resolritter2022-06-09
| | | | | | the message is wrapped in `if (timeout < 0)`, which means 0 is a valid value
| * Merge pull request #18908 from zeertzjq/vim-8.2.5066zeertzjq2022-06-09
| |\ | | | | | | vim-patch:8.2.{5066,5070}: lcs-leadmultispace
| | * vim-patch:8.2.5070: unnecessary codezeertzjq2022-06-09
| | | | | | | | | | | | | | | | | | Problem: Unnecessary code. Solution: Remove code that isn't needed. (closes vim/vim#10534) https://github.com/vim/vim/commit/b5f0801b1f043b5cf99380f58eca51b75b3236c7
| | * vim-patch:8.2.5066: lcs-leadmultispacezeertzjq2022-06-09
| |/ | | | | | | https://github.com/vim/vim/commit/aca12fd89b082dd9cc12ae085a84f1805747bbdf
| * feat(autocmds): retrieve lua callback (#18642)kylo2522022-06-09
| | | | | | add a new `callback` field to `nvim_get_autocmds`
| * Merge pull request #18904 from jamessan/no-parser-ciJames McCoy2022-06-08
| |\ | | | | | | ci: run tests with no treesitter parsers installed
| | * test: allow running CI without ts parsers installedJames McCoy2022-06-08
| | |
| | * ci: run tests with no treesitter parsers installedJames McCoy2022-06-08
| |/
| * Merge pull request #18903 from jamessan/skip-test-parsersJames McCoy2022-06-08
| |\ | | | | | | test(ts): skip test if C parser is not available
| | * test(ts): skip test if C parser is not availableJames McCoy2022-06-08
| | |
| * | fix(terminal): scrollback delete lines immediately #18832Javier Lopez2022-06-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * on_scrollback_option_changed renamed to adjust_scrollback. The function name did not correspond to what it was doing. It is called unconditionally in every refresh of the terminal unrelated if the scrollback option was changed. * new on_scrollback_option_changed function, which calls refresh_terminal, which then calls adjust_scrollback * terminal_check_size is not the appropriate function to call when the option is changed since it only conditionally adjusts the scrollback. Use the new on_scrollback_option_changed fixes #15477 fixes #11811
| * | Merge pull request #18788 from dundargoc/ci/api-docs/colorJames McCoy2022-06-08
| |\ \ | | |/ | |/| ci(api-docs): show required changes with color
| | * ci(api-docs): show required changes with colorDundar Goc2022-05-28
| | | | | | | | | | | | It makes it easier to see what needs to be changed.
| * | fix(diagnostic): check for negative column value (#18868)mohsen2022-06-08
| | |
| * | refactor(log): simplify log_path_init #18898Justin M. Keyes2022-06-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Since 22b52dd462e5 #11501, log_path_init is called in log_init, so it is now called at a deterministic time. So the "just in time" complexity of log_path_init is no longer needed. Solution: Remove logic intended to try to "heal" partial initialization.
| * | Merge pull request #18896 from famiu/fix/nvim_create_user_command/smodsbfredl2022-06-08
| |\ \ | | | | | | | | fix(nvim_create_user_command): make `smods` work with `nvim_cmd`
| | * | fix(nvim_create_user_command): make `smods` work with `nvim_cmd`Famiu Haque2022-06-08
| |/ / | | | | | | | | | Closes #18876.
| * | fix(eval/f_getmatches): return empty list for invalid win argument (#18893)Sean Dewar2022-06-07
| | | | | | | | | | | | | | | Slight inaccuracy in v8.1.1084's port. Like Vim, it should return [], not 0. Ref #18890
| * | Merge pull request #18870 from zbirenbaum/winhl-cursorbfredl2022-06-07
| |\ \ | | | | | | | | fix(highlight): let winhighlight use cursor
| | * | fix(highlight): let winhighlight use cursorzbirenbaum2022-06-07
| | | |
| * | | vim-patch:partial:016188fd8a30 (#18890)Christian Clason2022-06-07
| |/ / | | | | | | | | | | | | | | | | | | Update runtime files. https://github.com/vim/vim/commit/016188fd8a30cfbaca3faa0daea9a47138dc5c4b omit changes from doc/builtin.txt (needs 8.2.1536, 8.2.4981) skip user manual rewrite for Vim9script
| * | fix(input): allow Ctrl-C to interrupt a recursive mapping even if mapped ↵zeertzjq2022-06-07
| | | | | | | | | | | | (#18885)
| * | vim-patch:8.2.5064: no test for what 8.1.0052 fixes (#18881)zeertzjq2022-06-07
| | | | | | | | | | | | | | | Problem: No test for what 8.1.0052 fixes. Solution: Add a test. (closes vim/vim#10531) https://github.com/vim/vim/commit/3760bfddc414e4d3e1c4203db8c22e293cf08d09
| * | refactor(runtime): port remaining patterns from filetype.vim to filetype.lua ↵Jonas Strittmatter2022-06-06
| | | | | | | | | | | | (#18814)
| * | docs: documenting struct members inline #18783Javier Lopez2022-06-06
| | | | | | | | | | | | | | | | | | | | | | | | Without the proper comments, doxygen doesn't understand the comment belongs to the struct member: https://www.doxygen.nl/manual/docblocks.html#memberdoc [skip ci]
| * | vim-patch:8.2.5058: input() does not handle composing characters properly ↵zeertzjq2022-06-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#18872) Problem: input() does not handle composing characters properly. Solution: Use mb_cptr2char_adv() instead of mb_ptr2char_adv(). (closes vim/vim#10527) https://github.com/vim/vim/commit/e3a529bc877909a9eccf792461050b4f6737ed33 Cherry-pick all of Test_input_func() from patch 8.2.0316.
| * | fix(lsp): fix multi client handling in code action (#18869)Mathias Fußenegger2022-06-05
| | | | | | | | | Fixes https://github.com/neovim/neovim/issues/18860