aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* vim-patch:9.1.0638: E1510 may happen when formatting a message for smsg() ↵zeertzjq2024-07-29
| | | | | | | | | | | (#29907) Problem: E1510 may happen when formatting a message (after 9.1.0181). Solution: Only give E1510 when using typval. (zeertzjq) closes: vim/vim#15391 https://github.com/vim/vim/commit/0dff31576a340b74cec81517912923c38cb28450
* fix(treesitter): highlight anonymous nodes in inspect_treeRiley Bruins2024-07-29
| | | | | | | | | | **Problem:** With anonymous nodes toggled in the inspect tree, only named nodes will be highlighted when moving the cursor in the source code buffer. **Solution:** Retrieve the anonymous node at the cursor (when toggled on in the inspect tree) and highlight them when appropriate, for better clarity/specificity.
* feat(treesitter): allow get_node to return anonymous nodesRiley Bruins2024-07-29
| | | | | Adds a new field `include_anonymous` to the `get_node` options to allow anonymous nodes to be returned.
* feat(treesitter): add node_for_range functionRiley Bruins2024-07-29
| | | | | | This is identical to `named_node_for_range` except that it includes anonymous nodes. This maintains consistency in the API because we already have `descendant_for_range` and `named_descendant_for_range`.
* vim-patch:9.1.0636: filetype: ziggy files are not recognizedChristian Clason2024-07-29
| | | | | | | | | | | | | | | | Problem: filetype: ziggy files are not recognized Solution: detect '*.ziggy' files as ziggy filetype, detect '*.ziggy-schema' files as ziggy-schema filetype (EliSauder) References: https://ziggy-lang.io/ fixes: vim/vim#15355 closes: vim/vim#15367 https://github.com/vim/vim/commit/f4572cee35a6c224985e71116e676ab711c09af3 Co-authored-by: EliSauder <24995216+EliSauder@users.noreply.github.com>
* vim-patch:9.1.0635: filetype: SuperHTML template files not recognizedChristian Clason2024-07-29
| | | | | | | | | | | | | | Problem: filetype: SuperHTML template files not recognized Solution: Update the filetype detection code to detect '*.shtml' either as HTML (Server Side Includes) or SuperHTML (template files) (EliSauder) related: vim/vim#15355 related: vim/vim#15367 https://github.com/vim/vim/commit/e57c9a19edc906a96ccb8821ae33fa6a8b20c3cd Co-authored-by: EliSauder <24995216+EliSauder@users.noreply.github.com>
* vim-patch:4c45425: runtime(debcopyright): Add support for Files-Included in ↵Christian Clason2024-07-29
| | | | | | | | | | | | | syntax script Full support (including for components) was finished with this commit: https://salsa.debian.org/debian/devscripts/-/commit/ee90dad7712a7db1e9541b405e065a08d29d62f8 closes: vim/vim#15374 https://github.com/vim/vim/commit/4c45425c10a94382a435239e8f63c6b1ca55d4e4 Co-authored-by: josch <josch@debian.org>
* vim-patch:partial:52e7cc2: runtime(doc): tweak documentation style a bit ↵zeertzjq2024-07-29
| | | | | | | | | (#29897) closes: vim/vim#15371 https://github.com/vim/vim/commit/52e7cc26d81c61fff1b2e3b32e8b9b04347be1d3 Co-authored-by: h-east <h.east.727@gmail.com>
* docs(treesitter): don't quote metadataChristian Clason2024-07-28
|
* fix(runtime): sync bundled treesitter queriesChristian Clason2024-07-28
|
* fix(lsp): revert text edit application order change (#29877)Mathias Fußenegger2024-07-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reverts https://github.com/neovim/neovim/pull/29212 and adds a few additional test cases From the spec > All text edits ranges refer to positions in the document they are > computed on. They therefore move a document from state S1 to S2 without > describing any intermediate state. Text edits ranges must never overlap, > that means no part of the original document must be manipulated by more > than one edit. However, it is possible that multiple edits have the same > start position: multiple inserts, or any number of inserts followed by a > single remove or replace edit. If multiple inserts have the same > position, the order in the array defines the order in which the inserted > strings appear in the resulting text. The previous fix seems wrong. The important part: > If multiple inserts have the same position, the order in the array > defines the order in which the inserted strings appear in the > resulting text. Emphasis on _appear in the resulting text_ Which means that in: local edits1 = { make_edit(0, 3, 0, 3, { 'World' }), make_edit(0, 3, 0, 3, { 'Hello' }), } `World` must appear before `Hello` in the final text. That means the old logic was correct, and the fix was wrong.
* Merge pull request #29876 from glepnir/vim-patchzeertzjq2024-07-27
|\ | | | | vim-patch:9.1.{0618,0619,0629}: cannot mark deprecated attributes in completion menu
| * vim-patch:9.1.0629: Rename of pum hl_group is incompletezeertzjq2024-07-27
| | | | | | | | | | | | | | | | | | | | | | Problem: Rename of pum hl_group is incomplete in source. Solution: Also rename the test function. Rename to user_hlattr in code to avoid confusion with pum_extra. Add test with matched text highlighting (zeertzjq). closes: vim/vim#15348 https://github.com/vim/vim/commit/4100852e099133a0c9603e1087e5dc6d82001ce7
| * test(ui/popupmenu_spec): add case of hl_group field in complete itemsglepnir2024-07-27
| | | | | | | | | | Problem: Missing test case for hl_group field in complete items. Solution: Add a test case for hl_group field.
| * test(ui/popupmenu_spec): make highlights more consistentzeertzjq2024-07-27
| |
| * vim-patch:9.1.0619: tests: test_popup failsglepnir2024-07-27
| | | | | | | | | | | | | | | | | | | | | | | | | | Problem: tests: test_popup fails (after v9.1.0618) Solution: Correct test, move combining extra attributes to pum_compute_text_attrs() (glepnir) closes: vim/vim#15353 https://github.com/vim/vim/commit/8754efe437fcb17ad2c64192f8722e08d68e032e Co-authored-by: glepnir <glephunter@gmail.com>
| * vim-patch:9.1.0618: cannot mark deprecated attributes in completion menuglepnir2024-07-27
| | | | | | | | | | | | | | | | | | | | | | | | Problem: cannot mark deprecated attributes in completion menu Solution: add hl_group to the Dictionary of supported completion fields (glepnir) closes: vim/vim#15314 https://github.com/vim/vim/commit/508e7856ec4afc9d6038b14bb6893668268dccab Co-authored-by: glepnir <glephunter@gmail.com>
* | refactor(decor): decor_virt_lines()Lewis Russell2024-07-27
| | | | | | | | | | | | | | | | | | | | | | | | | | Reduce calls to hasFolding() and remove the has_fold argument. For lines that don't have virtual lines this should be more efficient as it should avoid any calls to hasFolding(), whereas before it was called at least once for any buffer containing at least one virtual line. This will be slightly less efficient for lines with multiple virtual lines marks as hasFolding() is called once for each mark. This could be optimized, but having multiple virtual lines marks on a single line is very rare.
* | fix(version): return nil with empty stringMaria José Solano2024-07-27
| |
* | vim-patch:9.1.0616: filetype: Make syntax highlighting off for MS Makefiles ↵zeertzjq2024-07-27
|/ | | | | | | | | | | | | | | | | | | | | | | | (#29874) Problem: filetype: Make syntax highlighting off for MS Makefiles Solution: Try to detect MS Makefiles and adjust syntax rules to it. (Ken Takata) Highlighting of variable expansion in Microsoft Makefile can be broken. E.g.: https://github.com/vim/vim/blob/2979cfc2627d76a9c09cad46a1647dcd4aa73f5f/src/Make_mvc.mak#L1331 Don't use backslash as escape characters if `make_microsoft` is set. Also fix that `make_no_comments` was not considered if `make_microsoft` was set. Also add description for `make_microsoft` and `make_no_comments` to the documentation and include a very simple filetype test closes: vim/vim#15341 https://github.com/vim/vim/commit/eb4b903c9b238ebcc1d14cfcb207129b4931a33d Co-authored-by: Ken Takata <kentkt@csc.jp>
* vim-patch:a7295ae: runtime(autohotkey): include initial filetype pluginChristian Clason2024-07-27
| | | | | | | | closes: vim/vim#15345 https://github.com/vim/vim/commit/a7295ae7f5b956758f1c9c9a29d10c48661b29bc Co-authored-by: Peter Aronoff <peter@aronoff.org>
* vim-patch:4d68054: runtime(progress): Add single-line comment syntaxChristian Clason2024-07-26
| | | | | | | | | | | | | | | | Progress OpenEdge 11.6 added a new C-like single-line comment syntax; such comments begin with `//` and proceed to the end of the line. Add a new syntax group `ProgressLineComment` to implement highlighting for this syntax. Rename the existing group from `ProgressComment` to `ProgressBlockComment`, and introduce a cluster named `ProgressComment` to encapsulate both. closes: vim/vim#15339 https://github.com/vim/vim/commit/4d68054c1e49b937a1aa9567196b97b36fe99c27 Co-authored-by: Daniel Smith <daniel@rdnlsmith.com>
* vim-patch:d5cc8ee: runtime(progress): Update maintainer infoChristian Clason2024-07-26
| | | | | | | | | | | | | | | | | | | The Progress syntax file was last updated eight years ago, and the header information twelve years ago. Attempts to contact the last known maintainer at the email address listed in the file header (with the spam-prevention characters removed) produced a delivery failure notification stating that the address did not exist. I intend to submit some minor improvements to this file. Per [1], I will assume maintainership of it for the time being. related: vim/vim#15339 [1]: https://groups.google.com/g/vim_dev/c/I3pOKIOgM4A/m/pekGQB_lBwAJ https://github.com/vim/vim/commit/d5cc8ee0fa3e952492aed0c2f7e97586a0a87ab7 Co-authored-by: Daniel Smith <daniel@rdnlsmith.com>
* fix(plines): don't count invalidated virt text in char size (#29863)zeertzjq2024-07-26
| | | | | | Also: - Remove mt_end() and MT_FLAG_DECOR_VIRT_TEXT_INLINE checks, as they are already checked by marktree_itr_check_filter(). - Move ns_in_win() to the last check in decor_redraw_col().
* fix(decor): don't draw invalidated virtual lines (#29858)luukvbaal2024-07-26
|
* fix(runtime): set 'keywordprg' only once in vim ftpluginCarman Fu2024-07-26
|
* vim-patch:8.2.3543: swapname has double slash when 'directory' ends in it ↵zeertzjq2024-07-26
| | | | | | | | | | | | | (#29862) Problem: Swapname has double slash when 'directory' ends in double slash. (Shane Smith) Solution: Remove the superfluous slash. (closes vim/vim#8876) https://github.com/vim/vim/commit/8b0e62c93b6dad5ec5b2c7558d4f7b78c46216d2 The test got lost in #29758... Co-authored-by: Bram Moolenaar <Bram@vim.org>
* Merge pull request #29758 from zeertzjq/vim-8.2.3543zeertzjq2024-07-26
|\ | | | | vim-patch:{8.2.3543,9.1.0615}
| * vim-patch:9.1.0615: Unnecessary STRLEN() in make_percent_swname()zeertzjq2024-07-26
| | | | | | | | | | | | | | | | | | | | Problem: Unnecessary STRLEN() in make_percent_swname() Solution: Pass the end of "dir" to make_percent_swname() (zeertzjq) closes: vim/vim#15340 https://github.com/vim/vim/commit/242667ae142d9862a7bace82c58cb11c79fdab7a
| * vim-patch:8.2.3543: swapname has double slash when 'directory' ends in itzeertzjq2024-07-26
|/ | | | | | | | | | Problem: Swapname has double slash when 'directory' ends in double slash. (Shane Smith) Solution: Remove the superfluous slash. (closes vim/vim#8876) https://github.com/vim/vim/commit/8b0e62c93b6dad5ec5b2c7558d4f7b78c46216d2 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:9.1.0617: Cursor moves beyond first line of folded end of buffer ↵luukvbaal2024-07-26
| | | | | | | | | | (#29859) Problem: Cursor moves beyond start of a folded range at the end of a buffer. Solution: Move cursor to start of fold when going beyond end of buffer. Check that cursor moved to detect FAIL in outer cursor function. (Luuk van Baal) https://github.com/vim/vim/commit/dc373d456b5919ed2b8f83e8642c115f646ca93d
* vim-patch:9.1.0612: filetype: deno.lock file not recognizedChristian Clason2024-07-25
| | | | | | | | | | | | | | | Problem: filetype: deno.lock file not recognized Solution: detect 'deno.lock' as json filetype (カワリミ人形) Reference: https://docs.deno.com/runtime/manual/basics/modules/integrity_checking/#caching-and-lock-files closes: vim/vim#15333 https://github.com/vim/vim/commit/df77c8ad3974e44df2e588de5f465072371cab69 Co-authored-by: カワリミ人形 <kawarimidoll+git@gmail.com>
* vim-patch:e73e5b8: runtime(java): Optionally highlight the :: token for ↵Christian Clason2024-07-25
| | | | | | | | | | | | | | | | | | | | | | | | | | method references This token will be highlighted, similar to the arrow of lambda expressions, whenever "g:java_highlight_functions" is defined. Also: - Improve the recognition of _switch-case_ labels (D-Cysteine). - Remove insignificant empty statements in syntax test files. closes: vim/vim#15322 References: https://docs.oracle.com/javase/specs/jls/se21/html/jls-15.html#jls-15.13 https://github.com/fleiner/vim/pull/1 https://github.com/vim/vim/commit/e73e5b889b52675a9ea58cf154235c7f25d107d5 Co-authored-by: Aliaksei Budavei <0x000c70@gmail.com> Co-authored-by: D-Cysteine <54219287+D-Cysteine@users.noreply.github.com>
* vim-patch:2cad941: runtime(zip): Use delete() for deleting directoryChristian Clason2024-07-25
| | | | | | | | | | This is safer because we don't invoke the shell. closes: vim/vim#15335 https://github.com/vim/vim/commit/2cad941dc0cb57bca577160eb3a349de2e667bcd Co-authored-by: Damien <141588647+xrandomname@users.noreply.github.com>
* vim-patch:ddbb6fe: runtime(vim): Update base-syntax, improve :set ↵zeertzjq2024-07-25
| | | | | | | | | | | | | | | highlighting (#29850) - Match bang, "all" and "termcap" options, and trailing command separator "|". - Highlight set assignment operators. - Match multiline :set and multiline option values. - Mention the newer "0o" octal prefix at :help :set=. closes: vim/vim#15329 https://github.com/vim/vim/commit/ddbb6fe2d0344e93436c5602b7a06169f49a9b52 Co-authored-by: Doug Kearns <dougkearns@gmail.com>
* fix(health): fix pyenv root and python exepath detect issueAbao Zhang2024-07-24
| | | | | | | | | | | | | | | | | | Fix the following two issues: - pyenv root detection issue When `PYENV_ROOT` environment variable is not set, neovim will detect pyenv's root via `pyenv root` command, but which will be always fail because `vim.fn.system()` returns result with additional `\n`. Using `vim.system` instead prevents this problem. to trim it before check whether it is exists - python executable path detection issue Filter unrelated `python-config` in cases where multiple python versions are installed, e.g. `python-config`, `python3.10-config`, `python3.11-config` etc.
* fix(tui): set id parameter in OSC 8 sequences (#29840)Gregory Anders2024-07-24
| | | | | | | | | The id parameter is used to communicate to the terminal that two URLs are the same. Without an id, the terminal must rely on heuristics to determine which cells belong together to make a single hyperlink. See the relevant section in the spec [1] for more details. [1]: https://gist.github.com/egmontkob/eb114294efbcd5adb1944c9f3cb5feda#hover-underlining-and-the-id-parameter
* fix(runtime): sync bundled treesitter queriesChristian Clason2024-07-24
|
* vim-patch:38ce71c: runtime(zip): correctly extract file from zip browserChristian Clason2024-07-24
| | | | | | | | | | | Problem: Enter 'x' in zip browser fail with E121 Solution: Fix typo in zip#Extract() closes: vim/vim#15321 https://github.com/vim/vim/commit/38ce71c1c323716cc4b130dbb3e8837a8b9a710b Co-authored-by: Damien <141588647+xrandomname@users.noreply.github.com>
* vim-patch:581d4a7: runtime(netrw): escape filename before trying to delete ↵Nikita Rudakov2024-07-24
| | | | | | | | | it (#29838) fixes: vim/vim#15330 https://github.com/vim/vim/commit/581d4a7b356395bcb8606c1717ded65d47d26c68 Co-authored-by: Christian Brabandt <cb@256bit.org>
* docs: update version.c (#29760)github-actions[bot]2024-07-23
| | | Co-authored-by: marvim <marvim@users.noreply.github.com>
* vim-patch:9d57ea5: runtime(netrw): Fix endless recursion in netrw#Explore()Christian Clason2024-07-23
| | | | | | | | | | | | Problem: ':E /etc BOOM' give E132 error. Solution: Avoid recursion call with same arguments. fixes: vim/vim#5723 closes: vim/vim#15318 https://github.com/vim/vim/commit/9d57ea5cd3a23af02c72c0e86fe24b7bba57189a Co-authored-by: Damien <141588647+xrandomname@users.noreply.github.com>
* vim-patch:9.1.0610: filetype: OpenGL Shading Language files are not detected ↵Gregory Anders2024-07-23
| | | | | | | | | | | | (#29831) Problem: filetype: OpenGL Shading Language files are not detected Solution: detect various file extensions as GLSL filetype, include indent and syntax script, do no longer recognize '*.comp' as Mason filetype (Gregory Anders) closes: vim/vim#15317 https://github.com/vim/vim/commit/e4b991ed36f96dd01c6d75e46a04fd1a99180e58
* feat(tui): parse CSI subparams in termkey (#29805)Gregory Anders2024-07-21
| | | | | | | | | | | | | | | | | | | | | | | libtermkey does not know how to parse CSI subparameters (parameters separated by ':', ASCII 0x3A) and currently just ignores them. However, many important CSI sequences sent by the terminal make use of subparameters, most notably key events when using the kitty keyboard protocol [1]. Enabling subparameters is a prerequisite for expanding kitty keyboard protocol support in Neovim. Concretely, we do this by returning pointers into the internal termkey buffer for each CSI parameter rather than parsing them into integers directly. When a caller wants to actually use the parameter as an integer, they must call termkey_interpret_csi_param, which parses the full parameter string into an integer parameter and zero or more subparameters. The pointers into the internal buffer will become invalidated when new input arrives from the terminal so it is important that the individual params are used and parsed right away. All of our code (and libtermkey's code) does this, so this is fine for now, but is something to keep in mind moving forward. [1]: https://sw.kovidgoyal.net/kitty/keyboard-protocol/
* Merge pull request #29650 from ruuzia/fix_expression_parser_crashbfredl2024-07-21
|\ | | | | fix: assert failure in VimL expression parser
| * fix: assert failure in VimL expression parserRustum Zia2024-07-17
| |
* | docs(lua): clarify assumptions on luajit vs. puc luaChristian Clason2024-07-21
| | | | | | | | | | | | | | | | | | Problem: Plugin authors and distribution packagers are confused about the role of LuaJIT vs. PUC Lua. Solution: Clarify that LuaJIT is preferred but not required (extensions should not be assumed but checked for) and that vanilla Lua 5.1 should be used without language extensions such as `goto`.
* | Merge pull request #28873 from luukvbaal/redrawbfredl2024-07-21
|\ \ | | | | | | fix(api): alloc and draw cursor window in nvim__redraw
| * | fix(api): alloc and draw cursor window in nvim__redrawLuuk van Baal2024-07-20
| | | | | | | | | | | | | | | | | | Problem: Unable to move cursor to recently opened window. Solution: Make sure uninitialized window is drawn before trying to move the cursor to it.
* | | Merge pull request #29523 from luukvbaal/invalidbfredl2024-07-21
|\ \ \ | | | | | | | | fix(marks): revalidate marks whose position did not change