aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
| * | | | | | fix(lua): remove uri fragment from file paths (#27647)Ilia Choly2024-02-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Some LSP servers return `textDocument/documentLink` responses containing file URIs with line/column numbers in the fragment. `vim.uri_to_fname` returns invalid file names for these URIs. Solution: Remove the URI fragment from file URIs.
| * | | | | | docs(lpeg): merge upstream changesMaria José Solano2024-02-28
| | | | | | |
| * | | | | | vim-patch:b1427b46f5fe (#27652)zeertzjq2024-02-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | runtime(vim): Update base-syntax, improve :echo highlighting (vim/vim#14103) - Normalise behaviour of :echo commands and improve expression matching. - Allow continued argument lines. - Refine string interpolation groups. - Remove duplicated :menu and :map generated commands that are handled specially later in the file. https://github.com/vim/vim/commit/b1427b46f5fe50a1daba102c4017d0ef2624b3ba Co-authored-by: dkearns <dougkearns@gmail.com>
| * | | | | | vim-patch:9.1.0140: cursor on wrong row after 1 char 'below' virtual text ↵zeertzjq2024-02-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | when EOL is shown (#27651) Problem: The cursor screen row was incorrectly being calculated when the cursor follows a 1 character text_align 'below' virtual text line, resulting in the cursor being shown on the wrong line. This was caused by a cell size of 2 instead of 1 being used for the EOL character, which propagated to the calculation of space for putting the 'below' virtual text on its own line. (rickhowe) Solution: Fix the size used for the EOL character in calculating the cursor's screen position (Dylan Thacker-Smith) fixes: vim/vim#11959 related: vim/vim#12028 closes: vim/vim#14096 https://github.com/vim/vim/commit/da0c9137d1ec96f4d79b818502d2f921a21f710e Co-authored-by: Dylan Thacker-Smith <dylan.ah.smith@gmail.com>
| * | | | | | feat(lsp): support completion itemDefaultsMaria José Solano2024-02-27
| | | | | | |
| * | | | | | refactor(lsp): alias for CompletionResultMaria José Solano2024-02-27
| | | | | | |
| * | | | | | feat(docs): replace lua2dox.luaLewis Russell2024-02-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The documentation flow (`gen_vimdoc.py`) has several issues: - it's not very versatile - depends on doxygen - doesn't work well with Lua code as it requires an awkward filter script to convert it into pseudo-C. - The intermediate XML files and filters makes it too much like a rube goldberg machine. Solution: Re-implement the flow using Lua, LPEG and treesitter. - `gen_vimdoc.py` is now replaced with `gen_vimdoc.lua` and replicates a portion of the logic. - `lua2dox.lua` is gone! - No more XML files. - Doxygen is now longer used and instead we now use: - LPEG for comment parsing (see `scripts/luacats_grammar.lua` and `scripts/cdoc_grammar.lua`). - LPEG for C parsing (see `scripts/cdoc_parser.lua`) - Lua patterns for Lua parsing (see `scripts/luacats_parser.lua`). - Treesitter for Markdown parsing (see `scripts/text_utils.lua`). - The generated `runtime/doc/*.mpack` files have been removed. - `scripts/gen_eval_files.lua` now instead uses `scripts/cdoc_parser.lua` directly. - Text wrapping is implemented in `scripts/text_utils.lua` and appears to produce more consistent results (the main contributer to the diff of this change).
| * | | | | | docs: fix type of setreg() argument {options} (#27631)Maria José Solano2024-02-27
| | | | | | |
| * | | | | | vim-patch:c7ddc9b73543Christian Clason2024-02-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | runtime(debian): update Debian syntax files (#14098) * debversions.vim: Move lunar to unsupported release * debsources: Add word boundaries around keyword match patterns https://github.com/vim/vim/commit/c7ddc9b73543d4b3b906b56948dc9a6861150e12 Co-authored-by: James McCoy <jamessan@jamessan.com> Co-authored-by: James Addison <jay@jp-hosting.net>
| * | | | | | build(deps): bump luv to 1.48.0-1Christian Clason2024-02-27
| | | | | | |
| * | | | | | vim-patch:2c51e15b66a4 (#27637)zeertzjq2024-02-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | runtime(vim): Update syntax file, improve :substitute matching (vim/vim#14093) - Differentiate between :substitute and substitute(), fixes vim/vim#13883. - Match all allowed :substitute delimiters. - Remove leading context from :substitute matches. https://github.com/vim/vim/commit/2c51e15b66a4be9b5134c495ef546479aaa89ce9 Co-authored-by: dkearns <dougkearns@gmail.com>
| * | | | | | vim-patch:9.1.0137: <Del> in cmdline mode doesn't delete composing chars ↵zeertzjq2024-02-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#27636) Problem: <Del> in cmdline mode doesn't delete composing chars Solution: Use mb_head_off() and mb_ptr2len() (zeertzjq) closes: vim/vim#14095 https://github.com/vim/vim/commit/ff2b79d23956263ab0120623c37e0b4498be01db
| * | | | | | Merge pull request #27635 from bfredl/nomsgvalidbfredl2024-02-26
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | refactor(msgpack): remove undead unpacker code in helpers
| | * | | | | | refactor(msgpack): remove dead unpacker code in helpersbfredl2024-02-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Unpacker code now lives in unpacker.c This was part of the old unpacker which I forgor to remove.
| * | | | | | | fix(defaults): validate 'channel' before responding to OSC request (#27594)Gregory Anders2024-02-26
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | Validate the channel number before responding to an OSC 10/11 request. When used with nvim_open_term, the channel number is unset (since there is no process on the other side of the PTY).
| * | | | | | Merge pull request #27599 from bfredl/nofileallocbfredl2024-02-26
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | refactor(fileio): remove API shell layer encouraging unnecessary allocations
| | * | | | | | refactor(shada): devirtualize writerbfredl2024-02-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | writer is only ever used with FileDescriptor. We already have separate code paths for serializing shada data into memory, see shada_encode_regs() and friends
| | * | | | | | refactor(fileio): remove API shell layer encouraging unnecessary allocationsbfredl2024-02-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Functions like file_open_new() and file_open_fd_new() which just is a wrapper around the real functions but with an extra xmalloc/xfree around is an anti-pattern. If the caller really needs to allocate a FileDescriptor as a heap object, it can do that directly. FileDescriptor by itself is pretty much a pointer, or rather two: the OS fd index and a pointer to a buffer. So most of the time an extra pointer layer is just wasteful. In the case of scriptin[curscript] in getchar.c, curscript used to mean in practice: N+1 open scripts when curscript>0 zero or one open scripts when curscript==0 Which means scriptin[0] had to be compared to NULL to disambiguate the curscript=0 case. Instead, use curscript==-1 to mean that are no script, then all pointer comparisons dissappear and we can just use an array of structs without extra pointers.
| * | | | | | | fix(mbyte): fix bugs in utf_cp_*_off() functionsVanaIgr2024-02-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problems: - Illegal bytes after valid UTF-8 char cause utf_cp_*_off() to fail. - When stream isn't NUL-terminated, utf_cp_*_off() may go over the end. Solution: Don't go over end of the char of end of the string.
| * | | | | | | test(terminal/buffer_spec): re-skip bang test on Windowszeertzjq2024-02-26
| | | | | | | |
| * | | | | | | fix(process): start pty process eof timer on main thread (#27625)zeertzjq2024-02-26
| | | | | | | |
| * | | | | | | refactor(types): fix miscellaneous type warningsMaria José Solano2024-02-25
| |/ / / / / /
| * | | | | | fix(lsp): add snippet regression test (#27618)Maria José Solano2024-02-25
| | | | | | |
| * | | | | | vim-patch:partial:d086b8f646a6 (#27623)zeertzjq2024-02-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | runtime(doc): fix inconsistent indent (vim/vim#14089) https://github.com/vim/vim/commit/d086b8f646a67f6b16c46061ce773de1011b8ec7
| * | | | | | test: don't use minimal timeout for "intermediate" flag (#27620)zeertzjq2024-02-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With "intermediate" flag, only using minimal timeout is too short and may lead to failures. Also remove the fallback timeout in screen:expect_unchanged(), as having a different fallback timeout than screen:expect() is confusing.
| * | | | | | fix(lsp): add assertion for explicit bufnr in apply_text_edits (#27614)Gregory Anders2024-02-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Assert that the buffer number passed to apply_text_edits is fully resolved (not 0 or null). Pass the known buffer number to apply_text_edits from lsp.formatexpr().
| * | | | | | docs: fix several misleading and superfluous wordings (#27609)Evgeni Chasnovski2024-02-25
| |