| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
| |
"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).
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
| |
Fixes: #30220
|
| |
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
closes: vim/vim#15602
https://github.com/vim/vim/commit/e2c4e07795e3080d3fe2792f1db21ad7925eef58
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
|
|
|
|
|
|
|
| |
closes: vim/vim#15599
https://github.com/vim/vim/commit/7c8bbc6d28387e5c73f049663ace0c3829f9e128
Co-authored-by: Ughur Alakbarov <58857108+ugur-a@users.noreply.github.com>
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
| |
|
| |
|
| |
|
| |
|
|
|
| |
Follow up to https://github.com/neovim/neovim/pull/30028#discussion_r1726539370
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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 ...`
|
|
|
|
|
|
|
| |
closes: vim/vim#15572
https://github.com/vim/vim/commit/88a6dd036a673b310c467bf43a872a4210e19e21
Co-authored-by: glepnir <glephunter@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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>
|
|
|
|
|
|
|
|
| |
closes: vim/vim#15550
https://github.com/vim/vim/commit/c75dad017726ae78d6d2a68d1d6cfa12e7bd29f3
Co-authored-by: yasuda <yasuda@kyoto-sr.co.jp>
|
|
|
|
|
|
|
|
| |
closes: vim/vim#15551
https://github.com/vim/vim/commit/38cfa2b6623c64e748be17739799da36ca2d76bf
Co-authored-by: yasuda <yasuda@kyoto-sr.co.jp>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
| |
Problem: Some items of completion results include function signatures that can
cause the pum to be very long when a function has many params, because pum
scales with the longest word/abbr.
Solution: add custom covert function that can customise abbr to remove params.
|
|
|
|
|
|
|
| |
Problem: the autotrigger mechanism could fire completion requests despite
completion already being active from another completion mechanism or manual
trigger
Solution: add a condition to avoid an additional request.
|
|
|
|
|
|
|
|
|
| |
(#30115)
related: vim/vim#15519
https://github.com/vim/vim/commit/bc29ea62861052b35781031173a67d7d577be068
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
|
|
|
|
|
|
| |
closes: vim/vim#15535
https://github.com/vim/vim/commit/5f5f2832f5dcf845a93f7f62c1daf6cba9c17989
Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
| |
- 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
|
|
|
| |
Added the enum type annotation `vim.lsp.protocol.Methods` to provide some intellisense support.
|