aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* fix(terminal): handle C0 characters in OSC terminator (#30090)Gregory Anders2024-08-19
| | | | | | | | | | | | | | When a C0 character is present in an OSC terminator (i.e. after the ESC but before a \ (0x5c) or printable character), vterm executes the control character and resets the current string fragment. If the C0 character is the final byte in the sequence, the string fragment has a zero length. However, because the VT parser is still in the "escape" state, vterm attempts to subtract 1 from the string length (to account for the escape character). When the string fragment is empty, this causes an underflow in the unsigned size variable, resulting in a buffer overflow. The fix is simple: explicitly check if the string length is non-zero before subtracting.
* fix(vim.text): handle very long strings (#30075)Gregory Anders2024-08-17
| | | | | | | | Lua's string.byte has a maximum (undocumented) allowable length, so vim.text.hencode fails on large strings with the error "string slice too long". Instead of converting the string to an array of bytes up front, convert each character to a byte one at a time.
* vim-patch:8e25d91: runtime(dist): verify that executable is in $PATHChristian Clason2024-08-18
| | | | | | | | | | | | Otherwise, if the executable to be verified does not exist, this would cause a false-positive in the 'IsSafeExecutable()' check, because 'exepath(executable)' returns an empty string and 'fnamemodify('', ':p:h')' returns the current directory and as a result the 'IsSafeExecutable()' returns false (for the wrong reason). https://github.com/vim/vim/commit/8e25d91cb7bb4dc171cb4e95b1bb79a39400a13a Co-authored-by: Christian Brabandt <cb@256bit.org>
* fix(api): error properly with invalid field in nvim_open_win (#30078)zeertzjq2024-08-17
|
* vim-patch:6908db4: runtime(colors): update colorschemesChristian Clason2024-08-17
| | | | | | | | | | | | | | - all: PMenuMatch and PMenuMatchSel for 8c/16c - habamax: - revert VertSplit to solid background color - remove gitCommitSummary link to Title - make TabLineFill same as StatuslineNC closes: vim/vim#15506 https://github.com/vim/vim/commit/6908db475603c0f37aaf4c3ba13dfdbebd340003 Co-authored-by: Maxim Kim <habamax@gmail.com>
* vim-patch:c6ed816: runtime(yaml): do not re-indent when commenting out linesChristian Clason2024-08-17
| | | | | | | | | | | | | | | | | | It's a personal annoyance for me. I have to edit yaml files on a lot of customer environments and whenever you type '#' at the start of the line, the commented line will be indented by whatever indent the previous line had. I hate this seriously, because it makes un-commenting painful. So let's fix this. But instead of messing with the indent function, let's just remove the '0#' from cinkeys, so that Vim won't perform re-indenting when commenting out such a yaml file. closes: vim/vim#15494 https://github.com/vim/vim/commit/c6ed816761f44da92d8c61f5ea6cb7fdbb45fac5 Co-authored-by: Christian Brabandt <cb@256bit.org>
* vim-patch:1fbccc1: runtime(netrw): Drop committed trace linesChristian Clason2024-08-17
| | | | | | | | closes: vim/vim#15501 https://github.com/vim/vim/commit/1fbccc1e9694e5e6162dff112b49a093eac770ee Co-authored-by: Damien <141588647+xrandomname@users.noreply.github.com>
* vim-patch:b4d1164: runtime(netrw): Error popup not always usedChristian Clason2024-08-17
| | | | | | | | | | | | Problem: g:netrw_use_errorwindow=2 does not work without +balloon_eval. Solution: Check for popup_atcursor(). related: vim/vim#15501 https://github.com/vim/vim/commit/b4d11644254ec6e29aed93a9fdcde2160163aefd Co-authored-by: Damien <141588647+xrandomname@users.noreply.github.com>
* vim-patch:7c75411: runtime(netrw): ErrorMsg() may throw E121Christian Clason2024-08-17
| | | | | | | | | | Move variables declaration related: vim/vim#15501 https://github.com/vim/vim/commit/7c754110ff8e0d666d422f1644bc356c8fee7392 Co-authored-by: Damien <141588647+xrandomname@users.noreply.github.com>
* vim-patch:a1dc649: runtime(dosbatch): Show %%i as an argument in syntax fileChristian Clason2024-08-17
| | | | | | | | | | Inside batch files, for-variables must be written as %%i, not %i. closes: vim/vim#15453 https://github.com/vim/vim/commit/a1dc64956f36cb921d556910c5356bb6b91ba5b9 Co-authored-by: Ken Takata <kentkt@csc.jp>
* vim-patch:11c92be: runtime(dosbatch): Add syn-sync to syntax fileChristian Clason2024-08-17
| | | | | | | | | | | | | | | | | | | | | | Closing parentheses were often highlighted as errors. Add a syntax sync command to reduce the error. Also fix that `defined` was not highlighted as an operator inside parentheses. E.g.: ``` if defined foo ( if defined bar ( ... ) ) ``` The first `defined` was highlighted but the second one was not. related: vim/vim#15453 https://github.com/vim/vim/commit/11c92be8974f04ab12ff3f9cd89a692bbd6c46d9 Co-authored-by: Ken Takata <kentkt@csc.jp>
* vim-patch:dd36d6c: runtime(mediawiki): fix typo in doc, test for ↵Christian Clason2024-08-17
| | | | | | | | | | b:did_ftplugin var closes: vim/vim#15479 https://github.com/vim/vim/commit/dd36d6cc7c39f3cfb29818f89f4f9dec2c7c22e4 Co-authored-by: Stanislav Asunkin <1353637+stasjok@users.noreply.github.com>
* vim-patch:d164f2a: runtime(vim): Update base-syntax, improve :let-heredoc ↵zeertzjq2024-08-16
| | | | | | | | | | | | | | | | | | | highlighting (#30069) The end marker must appear on line of its own without any trailing whitespace. Whitespace is incorrectly allowed before all end markers. Limiting this only to heredocs where "trim" was specified, and with the correct indent, is currently an intractable problem given that contained syntax groups (in this case :let) cannot be limited to start patterns. Highlight interpolated expressions when "eval" is specified. cloess: vim/vim#15511 https://github.com/vim/vim/commit/d164f2a521f8e52e587727657fb1c19e9a25f32a Co-authored-by: Doug Kearns <dougkearns@gmail.com>
* Merge pull request #30066 from zeertzjq/vim-9.1.0677zeertzjq2024-08-17
|\ | | | | vim-patch: :keepp does not retain last substitute string
| * vim-patch:cba93ca: runtime(doc): clarify the effect of :keeppatterns after ↵zeertzjq2024-08-17
| | | | | | | | | | | | v9.1.0677 https://github.com/vim/vim/commit/cba93cab533b5da26b9e4a4338c1dc6e8aa3d409
| * vim-patch:9.1.0677: :keepp does not retain the substitute patternzeertzjq2024-08-17
|/ | | | | | | | | | | | | Problem: :keeppatterns does not retain the substitute pattern for a :s command Solution: preserve the last substitute pattern when used with the :keeppatterns command modifier (Gregory Anders) closes: vim/vim#15497 https://github.com/vim/vim/commit/3b59be4ed8a145d3188934f1a5cd85432bd2433d Co-authored-by: Gregory Anders <greg@gpanders.com>
* Merge pull request #30068 from zeertzjq/vim-9.1.0678zeertzjq2024-08-17
|\ | | | | vim-patch:9.1.{0678,0679}
| * vim-patch:9.1.0679: Rename from w_closing to w_locked is incompletezeertzjq2024-08-17
| | | | | | | | | | | | | | | | | | | | | | Problem: Rename from w_closing to w_locked is incomplete (after 9.1.0678). Solution: Rename remaining occurrences of w_closing to w_locked and update comments (zeertzjq). closes: vim/vim#15504 https://github.com/vim/vim/commit/bc11f6d9d4f580179d3963f3c489881904d6cd62
| * vim-patch:9.1.0678: [security]: use-after-free in alist_add()zeertzjq2024-08-17
|/ | | | | | | | | | | | | Problem: [security]: use-after-free in alist_add() (SuyueGuo) Solution: Lock the current window, so that the reference to the argument list remains valid. This fixes CVE-2024-43374 https://github.com/vim/vim/commit/0a6e57b09bc8c76691b367a5babfb79b31b770e8 Co-authored-by: Christian Brabandt <cb@256bit.org>
* fix(tutor): incorrect lines marked as correct #29833Eduardo Rittner Coelho2024-08-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: In line 308 the poem appears as ✅1) Roses are red, ✅2) Mud is fun, ✅3) Violets are blue, ✅4) I have a car, ✅5) Clocks tell time, ✅6) Sugar is sweet ✅7) And so are you. where the wrong lines (2, 4, 5) are all marked as correct. Solution: Change the tutor.json file so that initially the poem appears as ✅1) Roses are red, ❌2) Mud is fun, ✅3) Violets are blue, ❌4) I have a car, ❌5) Clocks tell time, ❌6) Sugar is sweet ✅7) And so are you. The method for checking whether a line is correct or not is really simple, so I couldn't find a way to display the 6th line as initially correct, however upon deleting lines 2, 4 and 5 the final result shows line 6 as correct.
* fix(docs): add missing properties to hl_info #30032Maria José Solano2024-08-16
|
* feat(diff): do not try external when out of memoryLewis Russell2024-08-15
| | | | - Also merge diff_buf_idx_tp into diff_buf_idx.
* fix(man): avoid setting v:errmsg (#30052)zeertzjq2024-08-15
|
* feat(term): support OSC 8 hyperlinks in :terminal (#30050)Gregory Anders2024-08-15
|
* vim-patch:fc762df: runtime(sql, mysql): fix E169: Command too recursive with ↵Yinzuo Jiang2024-08-15
| | | | | | | | | | | | | | | | | | | | | | sql_type_default = "mysql" Problem: When setting "let g:sql_type_default = "mysql", editing .sql file reports "E169: Command too recursive" error Solution: - Add 'let b:did_ftplugin = 1' at the top of ftplugin/sql.vim - Add 'if exists("b:did_ftplugin") | finish | endif' in ftplugin/mysql.vim - Add missing header information in ftplugin/mysql.vim - Remove redundant code in ftplugin/sql.vim fixes: vim/vim#15474 closes: vim/vim#15475 https://github.com/vim/vim/commit/fc762dfc9fa95696409067bcb565e846c9ccfc5a Signed-off-by: Yinzuo Jiang <jiangyinzuo@foxmail.com> Signed-off-by: Riley Bruins <ribru17@hotmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
* build(deps): bump luajit to HEAD - ae4735f62Christian Clason2024-08-15
|
* vim-patch:ea76096: runtime(javascript): fix a few issues with syntax ↵tobil4sk2024-08-14
| | | | | | | | | | | | | | | | | | | | | | | | | higlighting (#30049) It addresses the following issues: - Fix highlight of let and var javascript keywords According to runtime/doc/syntax.txt, Identifier is for variable names. let/var are not variable names, they are keywords - Add highlighting for "from" keyword in javascript - Fix highlight of function keyword in javascript According to docs, Function is for function names, so the function keyword should just be Keyword. - Fix highlight of static keyword in javascript According to vim docs: StorageClass static, register, volatile, etc. closes: vim/vim#15480 https://github.com/vim/vim/commit/ea76096fa98ac26c23703bffdc4d9b3dc8a94d7e
* Merge pull request #30045 from bfredl/nodefault5bfredl2024-08-14
|\ | | | | refactor(tests): again yet more global highlight definitions
| * refactor(tests): again yet more global highlight definitionsbfredl2024-08-14
| |
* | fix(highlight): fix the seg fault caused by the invalid linked hl idsWilliam Wong2024-08-14
|/
* vim-patch:dc831db: runtime(doc): add help tags for json + markdown global ↵zeertzjq2024-08-13
| | | | | | | | | | | | variables (#30037) I added help tags for them in the syntax.txt file since this is the only place they are mentioned. closes: vim/vim#15486 https://github.com/vim/vim/commit/dc831db6ea3b550e3acb60a0859fcd07fd3f86e6 Co-authored-by: JJCUBER <34446698+JJCUBER@users.noreply.github.com>
* test: remove internal assertions and simplifyfutsuuu2024-08-13
|
* test: add a test to check the indentationfutsuuu2024-08-13
|
* fix(loader): follow the style of the error message for built-in loadersfutsuuu2024-08-13
| | | | | start the error message with '\n\t' instead of '\n' surround the module name by single quotes
* refactor(fileio): use os_copy() to copy file (#30030)zeertzjq2024-08-13
| | | | It uses sendfile(), which is faster than combining read() and write(), and it also copies permissions.
* fix(win-msi): set installer scope to machine #29895Alexander Mnich2024-08-12
| | | | | | | | | | | | | | | | | Problem: The windows installer did not have the AllUsers property which leads to the installer being misidentified as per user installer. Currently the installer already requires administrative privileges and installs into the system-wide ProgramFiles directory, but the start menu entry and uninstaller registration are created only for the current user. Issue: #29885 https://cmake.org/cmake/help/latest/cpack_gen/wix.html#variable:CPACK_WIX_INSTALL_SCOPE Solution: With setting CPACK_WIX_INSTALL_SCOPE to "perMachine" the generated msi installer includes the Property ALLUSERS=1. Additionally the start menu entries and uninstaller registration will be created for all users.
* fix(lua): ignore stdout and stderr for xdg-openAaron2024-08-12
| | | | Ref #19724 Fix #29932
* vim-patch:9.1.0672: marker folds may get corrupted on undo (#30026)zeertzjq2024-08-11
| | | | | | | | | | | | | Problem: marker folds may get corrupted on undo (Yousef Mohammed) Solution: when adjusting folds, make sure that line1 is the lower limit and line2 is the upper line limit. In particular, line2 should not be able to get smaller than line1. fixes: vim/vim#15455 closes: vim/vim#15466 https://github.com/vim/vim/commit/8d02e5cf961b06da5bc490ac5972bcbc252c4793 Co-authored-by: Christian Brabandt <cb@256bit.org>
* test(lsp): refactor and tidyLewis Russell2024-08-11
| | | | | | | - Merge all the top level 'LSP' describe blocks - Refactor text edit tests - Fix typing errors - Add linebreaks between tests
* feat(term): enable reflow by default (#21124)Christian Clason2024-08-10
| | | | | | | | | | | | Problem: Contents of terminal buffer are not reflown when Nvim is resized. Solution: Enable reflow in libvterm by default. Now that libvterm is vendored, also fix "TUI rapid resize" test failures there. Note: Neovim's scrollback buffer does not support reflow (yet), so lines vanishing into the buffer due to a too small window will be restored without reflow.
* build(deps): vendor libvterm at v0.3.3Christian Clason2024-08-10
| | | | | | | | Problem: Adding support for modern Nvim features (reflow, OSC 8, full utf8/emoji support) requires coupling libvterm to Nvim internals (e.g., utf8proc). Solution: Vendor libvterm at v0.3.3.
* vim-patch:9.1.0667: Some other options reset curswant unnecessarily when set ↵zeertzjq2024-08-10
| | | | | | | | | | | | | (#30020) Problem: Some other options reset curswant unnecessarily when set. (Andrew Haust) Solution: Don't reset curswant when setting 'comments', 'commentstring' or 'define' (zeertzjq) fixes: vim/vim#15462 closes: vim/vim#15467 https://github.com/vim/vim/commit/b026a293b1e9d7a30f7717e256fe5f7f1dfa20d7
* vim-patch:9.1.0666: assert_equal() doesn't show multibyte string correctly ↵zeertzjq2024-08-10
| | | | | | | | | | | (#30018) Problem: assert_equal() doesn't show multibyte string correctly Solution: Properly advance over a multibyte char. (zeertzjq) closes: vim/vim#15456 https://github.com/vim/vim/commit/9c4b2462bb498f44044616f7309d111d12170369
* docs: update version.c (#30016)github-actions[bot]2024-08-09
| | | Co-authored-by: marvim <marvim@users.noreply.github.com>
* Merge pull request #30015 from zeertzjq/vim-8.2.4860zeertzjq2024-08-09
|\ | | | | vim-patch: Check NoDefaultCurrentDirectoryInExePath
| * vim-patch:0cc5dce: runtime(doc): clarify directory of Vim's executable vs CWDzeertzjq2024-08-09
| | | | | | | | | | | | | | | | | | | | According to :h win32-PATH, "the same directory as Vim" means the same directory as the Vim executable, not Vim's current directory. In patch 8.2.4860 these two concepts were mixed up. closes: vim/vim#15451 https://github.com/vim/vim/commit/0cc5dce5780d39fe621f6146d4fb862318918125
| * vim-patch:8.2.4860: MS-Windows: always uses current directory for executableszeertzjq2024-08-09
|/ | | | | | | | | | | | Problem: MS-Windows: always uses current directory for executables. Solution: Check the NoDefaultCurrentDirectoryInExePath environment variable. (Yasuhiro Matsumoto, closes vim/vim#10341) https://github.com/vim/vim/commit/05cf63e9bdca1ac070df3e7d9c6dfc45e68ac916 Omit doc change: override in later doc update. Co-authored-by: Yasuhiro Matsumoto <mattn.jp@gmail.com>
* vim-patch:8.1.1413: error when the drive of the swap file was disconnected ↵zeertzjq2024-08-08
| | | | | | | | | | (#30009) Problem: Error when the drive of the swap file was disconnected. Solution: Try closing and re-opening the swap file. (closes vim/vim#4378) https://github.com/vim/vim/commit/b58a4b938c4bc7e0499700859bd7abba9acc5b11 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* Merge pull request #30008 from zeertzjq/vim-8.2.3476zeertzjq2024-08-08
|\ | | | | vim-patch:8.2.{3476,3477}
| * vim-patch:8.2.3477: startup test fails on MS-Windowszeertzjq2024-08-08
| | | | | | | | | | | | | | | | | | Problem: Startup test fails on MS-Windows. Solution: Skip the test if not on Unix. https://github.com/vim/vim/commit/6d197987745427801a2195836ef89e48537afbeb Co-authored-by: Bram Moolenaar <Bram@vim.org>