aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
...
| * 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
| | * | | fix(marks): revalidate marks whose position did not changeLuuk van Baal2024-07-20
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Marks whose position did not change with the action that invalidated them (right_gravity = false) are not revalidated upon undo. Solution: Remove early return when restoring a marks saved position so that it is still revalidated. Add "move" guards instead.
| * | | ci: always add `target:release` label when backportingdundargoc2024-07-21
| | | | | | | | | | | | | | | | | | | | | | | | Previously the label was not added if the backport PR was created manually. The new code is also easier to maintain as it's close to other label-related code.
| * | | vim-patch:6e37575: runtime(mysql): update syntax scriptChristian Clason2024-07-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: - `syn region ...`s in syntax/mysql.vim match function names inaccurately. - no syntax rules for mysql window function. - coarse highlight definition in syntax/mysql.vim. Solution: - add `\<` before the function name for accuracy. - add syntax rules for mysql window function. - enhance the highlight definition. closes: vim/vim#15311 https://github.com/vim/vim/commit/6e37575760022be047cad0e1cf1e30c18fab21ad Co-authored-by: Yinzuo Jiang <jiangyinzuo@foxmail.com>
| * | | vim-patch:aa49512: runtime(yaml): Fix flow mapping key detectionChristian Clason2024-07-21
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | fixes: vim/vim#15196 closes: vim/vim#15313 https://github.com/vim/vim/commit/aa495124f80812b9c8c1942e6c4f9ce2242ea01f Co-authored-by: itchyny <itchyny@cybozu.co.jp>
| * | vim-patch:4aa6b52: runtime(kconfig): Update syntax script and remove syn syncChristian Clason2024-07-20
| | | | | | | | | | | | | | | | | | | | | | | | fixes: vim/vim#15306 https://github.com/vim/vim/commit/4aa6b52e82871fe3a607756de609b9c14feb4e04 Co-authored-by: Christian Brabandt <cb@256bit.org>
| * | vim-patch:9.1.0603: filetype: use correct extension for DraculaChristian Clason2024-07-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: pattern detection for Dracula language uses "*lvs" and "*lpe". as there is no dot, those are not treated as extensions which they should (judging by 'runtime/syntax/dracula.vim' and common sense). Solution: use "*.lvs" and "*.lpe" patterns (Evgeni Chasnovski) closes: vim/vim#15303 https://github.com/vim/vim/commit/5fb801a74faaf3ef1262c2988b8801500ca71646 Co-authored-by: Evgeni Chasnovski <evgeni.chasnovski@gmail.com>
| * | feat(tui): support in-band resize events (#29791)Gregory Anders2024-07-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | DEC mode 2048 is a newly proposed private mode for sending resize events in band to applications from the terminal emulator, instead of relying on SIGWINCH. Full text of the specification is here: https://gist.github.com/rockorager/e695fb2924d36b2bcf1fff4a3704bd83
| * | Merge pull request #29798 from zeertzjq/vim-9.1.0558zeertzjq2024-07-19
| |\ \ | | | | | | | | vim-patch:9.1.{0558,0602}
| | * | vim-patch:9.1.0602: filetype: Prolog detection can be improvedzeertzjq2024-07-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: filetype: Prolog detection can be improved Solution: update the prolog detection regex (igna_martinoli) related: vim/vim#10835 related: vim/vim#15206 closes: vim/vim#15253 https://github.com/vim/vim/commit/37853b7de31ef34153fe76aa2b740d517ed0e5d4 N/A patch: vim-patch:7347642: runtime(filetype): Fix Prolog file detection regex Problem: filetype: .pro file detection for Prolog is broken Solution: fixed the regex to only match on the tested cases (igna_martinoli) fixes: vim/vim#10835 closes: vim/vim#15206 https://github.com/vim/vim/commit/7347642633eb2de23a78c51a4388c9080440eec4 Co-authored-by: igna_martinoli <ignamartinoli@protonmail.com> Co-authored-by: clason <c.clason@uni-graz.at>
| | * | vim-patch:9.1.0558: filetype: prolog detection can be improvedzeertzjq2024-07-19
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: filetype: prolog detection can be improved Solution: Improved the Prolog file detection regex and added tests for all cases. (igna_martinoli) fixes: vim/vim#10835 closes: vim/vim#15206 https://github.com/vim/vim/commit/50dc83cf9215aa787da54abbb0bd2ab4fb89e720 Only include the tests, as code changes are superseded by later patches. Co-authored-by: igna_martinoli <ignamartinoli@protonmail.com>
| * | vim-patch:4266daa: runtime(mermaid): correct wrong comment optionsChristian Clason2024-07-19
| | | | | | | | | | | | | | | | | | | | | | | | fixes: vim/vim#15279 https://github.com/vim/vim/commit/4266daae1714b6770a4e20b0017d0da65ee3b346 Co-authored-by: Christian Brabandt <cb@256bit.org>
| * | vim-patch:99984fc: runtime(vim): Update base-syntax, improve :map ↵zeertzjq2024-07-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | highlighting (#29795) Match :map ( RHS properly. Only match ! after :map, :noremap, :unmap and :mapclear. closes: vim/vim#15297 https://github.com/vim/vim/commit/99984fc58abf8dd5dac76c80635a724a94824e69 Co-authored-by: Doug Kearns <dougkearns@gmail.com>
| * | vim-patch:eb6d733: runtime(doc): fix more inconsistencies in assert function ↵zeertzjq2024-07-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | docs (#29796) related: https://github.com/vim/vim/pull/15280#issuecomment-2233771449 closes: vim/vim#15285 https://github.com/vim/vim/commit/eb6d733bef312a0634770e023e8a41f0347f1503
| * | vim-patch:9.1.0601: Wrong cursor position with 'breakindent' when wide char ↵zeertzjq2024-07-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | doesn't fit (#29793) Problem: Wrong cursor position with 'breakindent' when a double-width character doesn't fit in a screen line (mikoto2000) Solution: Include the width of the 'breakindent' properly. (zeertzjq) fixes: vim/vim#15289 closes: vim/vim#15290 https://github.com/vim/vim/commit/b5d6b5caac752fe15856e37fd3abc5459292d4b8
| * | vim-patch:9.1.0599: Termdebug: still get E1023 when specifying arguments ↵zeertzjq2024-07-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#29794) Problem: Termdebug: still get E1023 when specifying arguments and using a prompt buffer. Solution: Use empty() instead of len(). Add a test. Fix wrong order of arguments to assert_equal() in Test_termdebug_basic(). (zeertzjq) closes: vim/vim#15288 https://github.com/vim/vim/commit/aef6179bcf04918002103528651996c754c03840
| * | perf(filetype): implement parent pattern pre-matching (#29660)Evgeni Chasnovski2024-07-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: calling `vim.filetype.match()` has performance bottleneck in that it has to match a lot of Lua patterns against several versions of input file name. This might be the problem if users need to call it synchronously a lot of times. Solution: add "parent pattern pre-matching" which can be used to quickly reject several potential pattern matches at (usually rare) cost of adding time for one extra Lua pattern match. "Parent pattern" is a manually added/tracked grouping of filetype patterns which should have two properties: - Match at least the same set of strings as its filetype patterns. But not too much more. - Be fast to match. For them to be effective, group should consist from at least three filetype patterns. Example: for a filetpye pattern ".*/etc/a2ps/.*%.cfg", both "/etc/" and "%.cfg" are good parent patterns (prefer the one which can group more filetype patterns). After this commit, `vim.filetype.match()` on most inputs runs ~3.4 times faster (while some inputs may see less impact if they match many parent patterns).
| * | vim-patch:9.1.0596: filetype: devscripts config files are not recognized ↵Christian Clason2024-07-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#29773) Problem: filetype: Debian devscripts config files are not recognized Solution: detect devscripts.conf and .devscripts files as sh filetype (sourced by /bin/sh) closes: vim/vim#15227 https://github.com/vim/vim/commit/76c19028ffc8b00816df7bc48985c92f7bacbcfb Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
| * | vim-patch:1724ddb: runtime(sdc): update syntax to SDC-standard 2.1Christian Clason2024-07-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Looking into the current standard for Synopsis Design Constraints (SDC) from their [Technology Access Program](https://www.synopsys.com/community/interoperability-programs/tap-in.html), one can see that the current state of the sdc-syntax file is very outdated as well as short in coverage of keywords. This commit pursues to add all the missing keywords from the current standard (Rev. 2.1). closes: vim/vim#15281 https://github.com/vim/vim/commit/1724ddbe3a8750e862504ade5b2780b8791d67a0 Co-authored-by: daniel-s-w <59746710+daniel-s-w@users.noreply.github.com>
| * | Merge pull request #29784 from zeertzjq/vim-83d002802644zeertzjq2024-07-18
| |\ \ | | |/ | |/| vim-patch:{83d0028,c3837a4,27f5334}
| | * vim-patch:27f5334: runtime(termdebug): quote filename arguments using double ↵zeertzjq2024-07-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | quotes closes: vim/vim#15270 https://github.com/vim/vim/commit/27f53346a303c5cf1bdfb8abca20e4fea8ec05e4 Co-authored-by: Ubaldo Tiberi <ubaldo.tiberi@google.com>
| | * vim-patch:c3837a4: runtime(termdebug): fix a few issueszeertzjq2024-07-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix a few minor issues: 1. filename with whitespaces issue should be fixed now, fixes: vim/vim#12357 2. ":Termdebug args" should work now, fixes: vim/vim#15254 closes: vim/vim#15261 https://github.com/vim/vim/commit/c3837a46ff5f31e9b18f8f86b6e464bed1fe20d1 Omit the DeleteCommands() change as it isn't really an improvement. Co-authored-by: Ubaldo Tiberi <ubaldo.tiberi@google.com>
| | * vim-patch:83d0028: runtime(termdebug): Use string interpolation instead of ↵zeertzjq2024-07-18
| |/ | | | | | | | | | | | | | | | | | | string concat closes: vim/vim#14972 https://github.com/vim/vim/commit/83d0028026441d4e521d8849a5a0ef766e816cf2 Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
| * vim-patch:d65e58f: runtime(vim): Update base-syntax, match types in Vim9 ↵zeertzjq2024-07-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | variable declarations (#29780) Match types in Vim9 variable declarations. Match Vim9 boolean and null literals. These are not matched in all contexts yet. related: vim/vim#15277 https://github.com/vim/vim/commit/d65e58f6f930f769cae869aeedf00192a242c5cc Co-authored-by: Doug Kearns <dougkearns@gmail.com>