| Commit message (Collapse) | Author | Age |
... | |
| |
| |
| |
| |
| |
| |
| |
| | |
closes: vim/vim#15529
https://github.com/vim/vim/commit/d55e698fa02195bf451b072eb2fb20cfbf7bddf5
Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: zip-plugin has problems with special characters
(user202729)
Solution: escape '*?[\' on Unix and handle those chars
a bit differently on MS-Windows, add a test, check
before overwriting files
runtime(zip): small fixes for zip plugin
This does the following:
- verify the unzip plugin is executable when loading the autoload plugin
- handle extracting file names with '[*?\' in its name correctly by
escaping those characters for the unzip command (and handle those
characters a bit differently on MS-Windows, since the quoting is different)
- verify, that the extract plugin is not overwriting a file (could cause
a hang, because unzip asking for confirmation)
- add a test zip file which contains those special file names
fixes: vim/vim#15505
closes: vim/vim#15519
https://github.com/vim/vim/commit/7790ea0c680a9f951a86066e5940ec16b2333c9a
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
| |\
| | |
| | | |
vim-patch: update :keeppatterns doc
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- It's clear that :s and :& are Ex commands, so remove "command" along
with the duplicate "the".
- Use "or" instead of "and" following "without".
closes: vim/vim#15527
https://github.com/vim/vim/commit/e44e64492cf0a99191826b05ea5ee80b3a5fb3f5
|
| | |
| | |
| | |
| | |
| | |
| | | |
https://github.com/vim/vim/commit/3840d2feaf1454c934f71a97aae7a56a5ceccef9
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
| |/
| |
| |
| |
| |
| | |
https://github.com/vim/vim/commit/175a87c7f163e34876c6848f829970fec61fc9d7
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add items based on specifications (<https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocumentClientCapabilities>)
- textDocument/documentColor
- textDocument/inlineValue
- textDocument/linkedEditingRange
- textDocument/moniker
- textDocument/onTypeFormatting
- textDocument/selectionRange
|
| |
| |
| |
| |
| |
| |
| |
| | |
Problem:
The headings and help tags overlap when browsing the docs in neovim.io/doc/user/ from a mobile phone.
Solution:
Apply the correct CSS rules so that the headings and help tags wrap
nicely below one another.
|
| |
| |
| | |
Added the enum type annotation `vim.lsp.protocol.Methods` to provide some intellisense support.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Upon `terminal_enter`, `mapped_ctrl_c` is set in order to avoid `CTRL-C`
interrupts (which is proxied to the terminal process instead), `os_inchar`
will then test `mapped_ctrl_c` against `State` and set `ctrl_c_interrupts=false`
which prevents `process_ctrl_c` from setting `got_int=true` in a terminal
state.
However, if `got_int` is set outside of `process_ctrl_c`, e.g. via
`interrupt()`, this will hang the neovim process as `terminal_execute` will
enter an endless loop as `got_int` will never be cleared causing `safe_vgetc`
to always return `Ctrl_C`.
A minimal example reproducing this bug:
```vim
:autocmd TermEnter * call timer_start(500, {-> interrupt()})
:terminal
:startinsert
```
To fix, we make sure `got_int` is cleared inside `terminal_execute` when
it detects `Ctrl_C`.
Closes #20726
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- 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>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| |
| |
| |
| |
| |
| |
| |
| | |
closes: vim/vim#15501
https://github.com/vim/vim/commit/1fbccc1e9694e5e6162dff112b49a093eac770ee
Co-authored-by: Damien <141588647+xrandomname@users.noreply.github.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Move variables declaration
related: vim/vim#15501
https://github.com/vim/vim/commit/7c754110ff8e0d666d422f1644bc356c8fee7392
Co-authored-by: Damien <141588647+xrandomname@users.noreply.github.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| |\
| | |
| | | |
vim-patch: :keepp does not retain last substitute string
|
| | |
| | |
| | |
| | |
| | |
| | | |
v9.1.0677
https://github.com/vim/vim/commit/cba93cab533b5da26b9e4a4338c1dc6e8aa3d409
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| |\
| | |
| | | |
vim-patch:9.1.{0678,0679}
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| | |
|
| |
| |
| |
| | |
- Also merge diff_buf_idx_tp into diff_buf_idx.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |\
| | |
| | | |
refactor(tests): again yet more global highlight definitions
|
| | | |
|
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
start the error message with '\n\t' instead of '\n'
surround the module name by single quotes
|
| |
| |
| |
| | |
It uses sendfile(), which is faster than combining read() and write(),
and it also copies permissions.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|