aboutsummaryrefslogtreecommitdiff
path: root/runtime
Commit message (Collapse)AuthorAge
...
| * fix(tohtml): enclose font-family names in quotation marksyayoyuyu2024-09-08
| | | | | | | | | | | | | | | | | | | | | | | | | | Font-family names must be enclosed in quotation marks to ensure that fonts are applied correctly when there are spaces in the name. Fix an issue where multiple fonts specified in `vim.o.guifont` are inserted as a single element, treating them as a single font. Support for escaping commas with backslash and ignoring spaces after a comma. ref `:help 'guifont'`
| * vim-patch:b584117: runtime(doc): buffers can be re-used (#30300)zeertzjq2024-09-08
| | | | | | | | | | | | | | | | | | | | while at it, also move the note about :wincmd directly to :h :wincmd, it doesn't seem to belong to the buffer section. closes: vim/vim#15636 https://github.com/vim/vim/commit/b584117b05790cc95628af79e874fb58bbcc2cb7 Co-authored-by: Christian Brabandt <cb@256bit.org>
| * fix(vim.ui.open): prefer xdg-open on WSL #30302Yi Ming2024-09-07
| | | | | | | | xdg-open is usually not installed in WSL. But if the user deliberately installs it, presumably they want to prioritize it.
| * vim-patch:9.1.0720: Wrong breakindentopt=list:-1 with multibyte or TABs (#30293)zeertzjq2024-09-07
| | | | | | | | | | | | | | | | | | | | Problem: Wrong breakindentopt=list:-1 with multibyte chars or TABs in text matched by 'formatlistpat' (John M Devin) Solution: Use the width of the match text (zeertzjq) fixes: vim/vim#15634 closes: vim/vim#15635 https://github.com/vim/vim/commit/61a6ac4d0066317131528f1b3ecc3b3a2599a75c
| * feat(defaults): popupmenu "Open in browser", "Go to definition" #30261Justin M. Keyes2024-09-05
| | | | | | | | - Use the popup to expose more features such as LSP and gx. - Move the copy/paste items lower in the menu, they are lower priority.
| * fix(lsp): handle locations exceeding line length #30253Tristan Knight2024-09-05
| | | | | | | | | | | | | | | | | | | | | | Problem: LSP spec [states](https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#position) that "if the character value is greater than the line length it defaults back to the line length", but `locations_to_items` fails in that case. Solution: Adjust locations_to_items to follow the spec. closes #28281
| * vim-patch:315b6f7: runtime(tmux): Update syntax script (#30265)Gregory Anders2024-09-04
| | | | | | | | | | | | | | | | closes: ericpruitt/tmux.vim#25 closes: vim/vim#15622 https://github.com/vim/vim/commit/315b6f7b73edfffe4c6e4b0a4d620707489f7315 Co-authored-by: Eric Pruitt <eric.pruitt@gmail.com>
| * vim-patch:150b507: runtime(hcl,terraform): Add runtime files for HCL and ↵Gregory Anders2024-09-04
| | | | | | | | | | | | | | Terraform (#30266) closes: vim/vim#15618 https://github.com/vim/vim/commit/150b5078ac886519083576124090489c3a21bd3b
| * fix(lua): allows tables with integer keys to be merged in tbl_deep_extendLewis Russell2024-09-04
| | | | | | | | | | | | | | | | | | - The exclusion of lists was never justified in the commit history and is the wrong thing to do for a function that deals with tables. - Move the error checks out of the recursive path. Fixes #23654
| * feat(lsp): support hostname in rpc.connect #30238Tristan Knight2024-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Updated the `rpc.connect` function to support connecting to LSP servers using hostnames, not just IP addresses. This change includes updates to the documentation and additional test cases to verify the new functionality. - Modified `connect` function to resolve hostnames. - Updated documentation to reflect the change. - Added test case for connecting using hostname. Added a TCP echo server utility function to the LSP test suite. This server echoes the first message it receives and is used in tests to verify LSP server connections via both IP address and hostname. Refactored existing tests to use the new utility function.
| * feat(startup): validate --listen addressJustin M. Keyes2024-09-02
| | | | | | | | | | | | | | | | | | | | | | | | | | Problem: `nvim --listen` does not error on EADDRINUSE. #30123 Solution: Now that `$NVIM_LISTEN_ADDRESS` is deprecated and input *only* (instead of the old, ambiguous situation where it was both an input *and* an output), we can be fail fast instead of trying to "recover". This reverts the "recovery" behavior of 704ba4151e7f67999510ee0ac19fdabb595d530c, but that was basically a workaround for the fragility of `$NVIM_LISTEN_ADDRESS`.
| * feat(clipboard): try cygutils, clip on Windows #30215wzy2024-09-02
| |
| * vim-patch:3c07eb0: runtime(vim): Update syntax, improve user-command ↵zeertzjq2024-09-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | matching (#30231) - Match -addr and -keepscript attributes and generate -addr values. - Match attribute errors where = is specified. - Highlight attributes with Special like other Ex command options. - Don't highlight user-specified completion function args. - Match :delcommand -buffer attribute. closes: vim/vim#15586 https://github.com/vim/vim/commit/3c07eb0c6730c258c6955ce8458cf911245c1617 Co-authored-by: Doug Kearns <dougkearns@gmail.com>
| * vim-patch:bd69b39: runtime(sudoers): improve recognized Runas_Spec and ↵Christian Clason2024-09-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tag_Spec items Recognize colon-delimited second part of Runas_Spec that specifies permitted groups, e.g.: alan ALL = (root, bin : operator, system) ALL This implementation is sloppy because it accepts any amount of colons delimiting further Runas_Lists, but for now that's better than bailing out completely as soon as a colon is encountered (esp. given that the default sudoers uses these colons, breaking highlighting OOTB). Also, while at it, make Vim recognize all Tag_Spec items, not just {,NO}PASSWD closes: vim/vim#15607 https://github.com/vim/vim/commit/bd69b39514f1fec45a5ac76cd36db5dec2faebe2 Co-authored-by: Christian Brabandt <cb@256bit.org>
| * docs: vim.lsp.rpc.connect() TCP requires IP address #30219Tristan Knight2024-09-01
| | | | | | | | | | | | "localhost" would work if we used [tcp_connect](https://github.com/luvit/luv/blob/ae0387742b460bc89ebddce33214ad65fffddba2/examples/echo-server-client.lua#L42), but that will require changes to [vim.lsp.rpc.connect](https://github.com/neovim/neovim/blob/318c0415d5b10b44fee4afa06994734f1beb7e71/runtime/lua/vim/lsp/rpc.lua#L638).
| * docs: misc #28970Justin M. Keyes2024-09-01
| |
| * feat(treesitter)!: default to correct behavior for quantified captures (#30193)Gregory Anders2024-09-01
| | | | | | | | | | | | | | | | | | | | | | | | For context, see https://github.com/neovim/neovim/pull/24738. Before that PR, Nvim did not correctly handle captures with quantifiers. That PR made the correct behavior opt-in to minimize breaking changes, with the intention that the correct behavior would eventually become the default. Users can still opt-in to the old (incorrect) behavior for now, but this option will eventually be removed completely. BREAKING CHANGE: Any plugin which uses `Query:iter_matches()` must update their call sites to expect an array of nodes in the `match` table, rather than a single node.
| * fix(ui): correctly pass metadata to get_node_text #30222Gregory Anders2024-09-01
| | | | | | Fixes: #30220
| * docs(treesitter): annotate some tables as `TSMetadata`Yi Ming2024-09-01
| |
| * vim-patch:9abd02d: runtime(nu): include filetype pluginChristian Clason2024-09-01
| | | | | | | | | | | | | | | | | | | | This is used to set the commentstring option. closes: vim/vim#15601 https://github.com/vim/vim/commit/9abd02d16ad08e61729fe08d909c87915239affb Co-authored-by: Marc Jakobi <marc.jakobi@tiko.energy>
| * feat(ui): gx: use url extmark attribute and tree-sitter directive (#30192)Gregory Anders2024-08-31
| | | | | | | | | | Use the "url" extmark attribute as well as the "url" tree-sitter metadata key to determine if the cursor is over something Nvim considers a URL.
| * vim-patch:d817609: runtime(vim): Update base-syntax, match bracket mark ↵zeertzjq2024-09-01
| | | | | | | | | | | | | | | | | | | | | | | | | | | | ranges (#30208) Match '(,'),'[,'],'{, and '} marks in Ex command ranges. Thanks to Maxim Kim. Fixes vim/vim#15332. Closes vim/vim#15337. https://github.com/vim/vim/commit/d817609b87fd155e0d71c29ed056effdedbd7ee0 Co-authored-by: Doug Kearns <dougkearns@gmail.com>
| * vim-patch:e2c4e07: runtime(doc): Update :help :command-complete listzeertzjq2024-09-01
| | | | | | | | | | | | | | | | closes: vim/vim#15602 https://github.com/vim/vim/commit/e2c4e07795e3080d3fe2792f1db21ad7925eef58 Co-authored-by: Doug Kearns <dougkearns@gmail.com>
| * vim-patch:7c8bbc6: runtime(doc): use mkdir -p to save a commandzeertzjq2024-09-01
| | | | | | | | | | | | | | | | closes: vim/vim#15599 https://github.com/vim/vim/commit/7c8bbc6d28387e5c73f049663ace0c3829f9e128 Co-authored-by: Ughur Alakbarov <58857108+ugur-a@users.noreply.github.com>
| * fix(lsp): when prefix is non word add all result into matches (#30044)glepnir2024-08-30
| | | | | | | | | | | | | | Problem: prefix can be a symbol like period, the fuzzy matching can't handle it correctly. Solution: when prefix is empty or a symbol add all lsp completion result into matches.
| * feat(mbyte): support extended grapheme clusters including more emojibfredl2024-08-30
| | | | | | | | | | | | | | | | | | Use the grapheme break algorithm from utf8proc to support grapheme clusters from recent unicode versions. Handle variant selector VS16 turning some codepoints into double-width emoji. This means we need to use ptr2cells rather than char2cells when possible.
| * vim-patch:87c01d9: runtime(hollywood): update syn highlight for If-Then ↵Christian Clason2024-08-30
| | | | | | | | | | | | | | | | | | | | | | | | | | statements and For-In-Loops Improving syntax highlighting by allowing numbers, - and a $ as suffix in user constants and by allowing hwConstants in If-Then statements closes: vim/vim#15059 https://github.com/vim/vim/commit/87c01d956168c1f41068c2a52e873f760c1f5fa9 Co-authored-by: Tom Crecelius <holly@net-eclipse.net>
| * fix(tohtml): apply sp color if present #30110Riley Bruins2024-08-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Things like underlines are always given a default foreground highlight regardless of the value of `sp`. Solution: Check for `sp` first, and apply that color to the text decoration color if it exists. Limitations: If there is no value of `sp`, vim applies a text decoration color that matches the foreground of the text. This is still not implemented (and seems like a much more complex problem): in TOhtml, the underline will still be given a default foreground highlight.
| * fix(man): check if buffer is valid before restoring 'tagfunc' (#30180)zeertzjq2024-08-29
| |
| * docs(eval): fix wrong return type of getcharsearch() (#30176)glepnir2024-08-29
| |
| * vim-patch:9.1.0699: "dvgo" is not always an inclusive motion (#30173)zeertzjq2024-08-29
| | | | | | | | | | | | | | | | | | | | | | | | Problem: "dvgo" is not always an inclusive motion (Iain King-Speir) Solution: initialize the inclusive flag to false fixes: vim/vim#15580 closes: vim/vim#15582 https://github.com/vim/vim/commit/f8702aeb8ff85554d909901ae45b50c3d532bf70 Co-authored-by: Christian Brabandt <cb@256bit.org>
| * docs: misc (#29719)dundargoc2024-08-29
| | | | | | | | | | | | | | | | | | Co-authored-by: Evgeni Chasnovski <evgeni.chasnovski@gmail.com> Co-authored-by: Lauri Heiskanen <lauri.heiskanen@nimble.fi> Co-authored-by: Piotr Doroszewski <5605596+Doroszewski@users.noreply.github.com> Co-authored-by: Tobiasz Laskowski <tobil4sk@outlook.com> Co-authored-by: ariel-lindemann <41641978+ariel-lindemann@users.noreply.github.com> Co-authored-by: glepnir <glephunter@gmail.com> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
| * vim-patch:8556e23: runtime(java): Provide support for syntax preview featuresChristian Clason2024-08-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce a new API variable "g:java_syntax_previews" whose value must be a list of syntax preview feature numbers. Enumerate the currently supported numbers in a table at the end of the documentation entry for "ft-java-syntax". Also, disable the recognition of String Templates. Despite the withdrawal of this preview feature in its proposed form from the upcoming JDK 23 release and the fact that the JDK 22 release is coming to EOL this September, an earlier iteration of this preview feature was included in JDK 21 (LTS) whose EOL is projected to fall due in late 2028 and, therefore, retain the current implementation. Define "g:java_syntax_previews" and include number 430 in its list to enable the recognition of String Templates: ------------------------------------------------------------ let g:java_syntax_previews = [430] ------------------------------------------------------------ References: https://openjdk.org/jeps/430 (Preview) https://openjdk.org/jeps/459 (Second Preview) https://openjdk.org/jeps/465 (Third Preview) https://mail.openjdk.org/pipermail/amber-spec-experts/2024-April/004106.html closes: vim/vim#15579 https://github.com/vim/vim/commit/8556e23ee90448f01b612d337599f6e8f86679ea Co-authored-by: Aliaksei Budavei <0x000c70@gmail.com>
| * feat(lsp): export diagnostic conversion functions (#30064)Maria José Solano2024-08-27
| |
| * fix(treesitter): escape things like `"` in omnifunc resultsRiley Bruins2024-08-27
| |
| * fix(lsp): return call hierarchy item, not the index (#30145)Maria José Solano2024-08-26
| |
| * fix(lsp): log when receiving markup messages (#30065)Maria José Solano2024-08-26
| |
| * fix(lsp): fix isIncomplete condition in completion trigger (#30130)Mathias Fußenegger2024-08-26
| | | | | | Follow up to https://github.com/neovim/neovim/pull/30028#discussion_r1726539370
| * feat(treesitter): add support for wasm parsersLewis Russell2024-08-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Installing treesitter parser is hard (harder than climbing to heaven). Solution: Add optional support for wasm parsers with `wasmtime`. Notes: * Needs to be enabled by setting `ENABLE_WASMTIME` for tree-sitter and Neovim. Build with `make CMAKE_EXTRA_FLAGS=-DENABLE_WASMTIME=ON DEPS_CMAKE_FLAGS=-DENABLE_WASMTIME=ON` * Adds optional Rust (obviously) and C11 dependencies. * Wasmtime comes with a lot of features that can negatively affect Neovim performance due to library and symbol table size. Make sure to build with minimal features and full LTO. * To reduce re-compilation times, install `sccache` and build with `RUSTC_WRAPPER=<path/to/sccache> make ...`
| * vim-patch:88a6dd0: runtime(doc): fix typo (#30140)zeertzjq2024-08-26
| | | | | | | | | | | | | | closes: vim/vim#15572 https://github.com/vim/vim/commit/88a6dd036a673b310c467bf43a872a4210e19e21 Co-authored-by: glepnir <glephunter@gmail.com>
| * fix(docs): wrong return value annotation for `nvim_buf_get_extmarks`JonnyKong2024-08-25
| |
| * vim-patch:9.1.0694: matchparen is slow on a long line (#30134)zeertzjq2024-08-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The matchparen plugin is slow on a long line. Solution: Don't use a regexp to get char at and before cursor. (zeertzjq) Example: ```vim call setline(1, repeat(' foobar', 100000)) runtime plugin/matchparen.vim normal! $hhhhhhhh ``` closes: vim/vim#15568 https://github.com/vim/vim/commit/81e7513c86459c40676bd983f73c2722096d67a9
| * vim-patch:9.1.0690: cannot set special highlight kind in popupmenu (#30128)zeertzjq2024-08-24
| | | | | | | | | | | | | | | | | | | | | | Problem: cannot set special highlight kind in popupmenu Solution: add kind_hlgroup item to complete function (glepnir) closes: vim/vim#15561 https://github.com/vim/vim/commit/38f99a1f0d61e9bde3f4a3d0cbe2d06185c4a57f Co-authored-by: glepnir <glephunter@gmail.com>
| * vim-patch:7866d54: runtime(vim): Update base-syntax, match :loadkeymap after ↵zeertzjq2024-08-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | colon and bar Match :loadkeymap after Ex colons and bars. Don't generate :loadkeymap as it is matched with a custom syntax group. closes: vim/vim#15554 https://github.com/vim/vim/commit/7866d54ecc7ff47d5f3c48bc389dfd85759b9b65 Co-authored-by: Doug Kearns <dougkearns@gmail.com>
| * vim-patch:7884cc7: runtime(vim): Update base-syntax, improve :let-heredoc ↵zeertzjq2024-08-24
| | | | | | | | | | | | | | | | | | | | | | | | | | highlighting The end marker is not required to match the indent of :let when "trim" is specified, it may also appear without leading whitespace as normal. closes: vim/vim#15564 https://github.com/vim/vim/commit/7884cc74188caea6e42b1456ed90c8a7189dda7c Co-authored-by: Doug Kearns <dougkearns@gmail.com>
| * vim-patch:95e9078: runtime(vim): Improve heredoc handling for all embedded ↵zeertzjq2024-08-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | scripts (#30121) * Improve heredoc handling - Support "trim" for all the embedded scripts. - Check the indent of "trim" for "let" and all the embedded scripts. * Update missing part of vim.vim.base in the commit d164f2a521f8e52e587727657fb1c19e9a25f32a. * Update gen_syntax_vim.vim to catch up with 9.1.0685's source code. closes: vim/vim#15542 https://github.com/vim/vim/commit/95e90781a4c92b7b061213cfa38b35bdbf719cc1 Co-authored-by: Ken Takata <kentkt@csc.jp>
| * vim-patch:2750b83: runtime(java): Make the bundled &foldtext function optionalChristian Clason2024-08-22
| | | | | | | | | | | | | | | | | | | | | | | | | | - Obtain and pass through translated messages with this function. - If "g:java_foldtext_show_first_or_second_line" is defined, assign this function to &foldtext. closes: vim/vim#15549 https://github.com/vim/vim/commit/2750b83fa1a917c13d0cae3e791493720dcaadaa Co-authored-by: Aliaksei Budavei <0x000c70@gmail.com>
| * vim-patch:c75dad0: runtime(netrw): Change line on `mx` if command output existsChristian Clason2024-08-22
| | | | | | | | | | | | | | | | closes: vim/vim#15550 https://github.com/vim/vim/commit/c75dad017726ae78d6d2a68d1d6cfa12e7bd29f3 Co-authored-by: yasuda <yasuda@kyoto-sr.co.jp>
| * vim-patch:38cfa2b: runtime(netrw): Fix `mf`-selected entry highlightingChristian Clason2024-08-22
| | | | | | | | | | | | | | | | closes: vim/vim#15551 https://github.com/vim/vim/commit/38cfa2b6623c64e748be17739799da36ca2d76bf Co-authored-by: yasuda <yasuda@kyoto-sr.co.jp>
| * vim-patch:0e9fd77: runtime(htmlangular): add html syntax highlightingChristian Clason2024-08-22
| | | | | | | | | | | | | | | | | | fixes: vim/vim#15459 closes: vim/vim#15552 https://github.com/vim/vim/commit/0e9fd7755d23477a1cf3a101c301155ba0bc1e2c Co-authored-by: Dennis van den Berg <dennis.vandenberg@nedap.com>