| Commit message (Collapse) | Author | Age |
... | |
| |
| |
| |
| |
| | |
This commit also adds some tests for the existing memoization
functionality.
|
| | |
|
| |
| |
| |
| |
| | |
Also add tests for the current path casing behavior so it doesn't get
accidentally changed.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When treesitter is enabled, by default syntax groups are not defined, but these
groups are used to identify where to skip matches in matchit and matchparen.
This patch does three things:
1. If syntax is enabled regardless of treesitter (`vim.bo.syntax='on'`):
Use original implementation.
2. If treesitter is enabled and syntax is not:
Match the syntax groups (i.e. `comment\|string`) against treesitter captures
to check for skipped groups.
3. Add an explicit treesitter syntax for marking captures to skip:
matchit uses `b:match_skip` to determine what counts as skippable
Where 's:comment\|string' uses a match of the named syntax groups against
a regex match of comment\|string, 't:comment\|string' now uses vim regex
to match against the names of the treesitter capture groups.
|
| |
| |
| | |
Move non-breaking changes out of the breaking changes section
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
markdown.vim versions
fixes vim/vim#16349
closes: vim/vim#16369
https://github.com/vim/vim/commit/cd96075cdee6b606c6e39aa1aed19b7cdc867df8
Co-authored-by: Aliaksei Budavei <32549825+zzzyxwvut@users.noreply.github.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem:
Can't use `n.clear()` to test non-RPC `nvim` invocations. So tests end
up creating ad-hoc wrappers around `system()` or `jobstart()`.
Solution:
- Introduce `n.spawn_wait()`
- TODO (followup PR): Rename `n.spawn()` and `n.spawn_wait()`.
It's misleading that `n.spawn()` returns a RPC session...
|
| |
| |
| |
| |
| | |
* docs: drop "lua-" prefix from most treesitter tags
* docs: move mouse section from tui.txt to gui.txt
* docs: misc
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
(#31843)
Abbreviated :enum and :interface commands are no longer supported.
https://github.com/vim/vim/commit/fc61cfd60e6d99765d1a68d39d6613e0917c7c56
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: filetype: cake files are not recognized
Solution: detect '*.cake' files as cs filetype
(Zoe Roux)
References:
https://cakebuild.net/
closes: vim/vim#16367
https://github.com/vim/vim/commit/a407573f30a978b3aa61532bbd9b0ae94a87dc32
Co-authored-by: Zoe Roux <zoe.roux@zoriya.dev>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: filetype: 'jj' filetype is a bit imprecise
Solution: rename 'jj' filetype to 'jjdescription'
(Gregory Anders)
closes: vim/vim#16364
https://github.com/vim/vim/commit/58c44e8833365e1a777330491c2799ae324ed893
Co-authored-by: Gregory Anders <greg@gpanders.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
related: vim/vim#16364
https://github.com/vim/vim/commit/bde76da4d02d93d8ea9e523d1057d59a19de276a
Co-authored-by: Gregory Anders <greg@gpanders.com>
|
| |\
| | |
| | | |
feat(terminal): support grapheme clusters, including emoji
|
| | | |
|
| | |
| | |
| | |
| | | |
Problem: Unknown key mappings listed in substitute confirm message.
Solution: Include hints as to what the key mappings do.
|
| |/
| |
| |
| |
| |
| |
| | |
Problem: Prompts are emitted as messages events, where cmdline events
are more appropriate. The user input is also emitted as
message events in fast context, so cannot be displayed with
vim.ui_attach().
Solution: Prompt for user input through cmdline prompts.
|
| |
| |
| |
| |
| |
| |
| | |
* Cancel watcher in the "force" case.
* Cancel watcher outside the async callback. It seems nvim doesn't wait
async jobs on quitting, leaving detached inotifywait processes.
* Clean up cancelling callbacks.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We currently enable the OSC 52 clipboard provider by setting g:clipboard
when a list of conditions are met, one of which is that $SSH_TTY must be
set. We include this condition because often OSC 52 is not the best
clipboard provider, so if there are "local" providers available Nvim
should prefer those over OSC 52.
However, if no other providers are available, Nvim should use OSC 52
even when $SSH_TTY is not set. When a user is in an SSH session then the
checks for the other clipboard providers will still (typically) fail, so
OSC 52 continues to be enabled by default in SSH sessions.
This is marked as a breaking change because there are some cases where
OSC 52 wasn't enabled before and is now (or vice versa).
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Allows to retrieve the configuration as it will be used by `lsp.enable`
- including the parts merged from `*` and rtp.
This is useful for explicit startup control
(`vim.lsp.start(vim.lsp.config[name])`)
Closes https://github.com/neovim/neovim/issues/31640
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: TI linker files are not recognized
Solution: inspect '*.cmd' files and detect TI linker files
as 'lnk' filetype, include a lnk ftplugin and syntax
script (Wu, Zhenyu)
closes: vim/vim#16320
https://github.com/vim/vim/commit/39a4eb0b2ca901b59800fad086550053556e59dc
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
References:
https://chordpro.org/beta/directives-define/#defining-chords-for-keyboard-instruments
https://github.com/vim/vim/commit/8dc98bf427d62501d9ecbb48d20ae2633c3db187
Co-authored-by: nibo <nibo@relim.de>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
(#31796)
vim-patch:9.1.0983: not able to get the displayed items in complete_info()
Problem: not able to get the displayed items in complete_info()
(Evgeni Chasnovski)
Solution: return the visible items via the "matches" key for
complete_info() (glepnir)
fixes: vim/vim#10007
closes: vim/vim#16307
https://github.com/vim/vim/commit/d4088edae21659e14ab5f763c820f4eab9d36981
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: tests: typo in test_filetype.vim
Solution: fix comment, update lnkmap syntax file and add
DESCT keyword
(Wu, Zhenyu)
closes: vim/vim#16348
https://github.com/vim/vim/commit/2bee7e43e137bcef62e6872791e2be7ce9c32703
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Define a general non-"contained" "shBracketExpr" group,
and replace with it the "contained" bracket variant of
"shOperator", adjusting the patterns for the competing
conditional commands "[" and "[[".
- Accommodate some unbalanced brackets (e.g. "[!][!]").
- Make the leading "!" (or "^") stand out in NON-matching
bracket expressions.
- Support literal newlines in parametric patterns (along
with pathname globbings and "case" patterns).
- Also match bracket expressions in:
* parametric patterns (e.g. "${1#[ab]_}");
* pathname globbings (e.g. "[ab]*.txt");
* arguments for the "[[", "echo", and "print" commands.
- Recognise collating symbols (e.g. "[.a.]") and equivalence
classes (e.g. "[=a=]").
- Recognise end patterns for a pattern substitution form of
parameter expansion and match bracket expressions in such
patterns (e.g. "${1/%[.!]/;}").
fixes vim/vim#15799
closes: vim/vim#15941
References:
https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/V1_chap09.html#tag_09_03_05
https://pubs.opengroup.org/onlinepubs/9799919799/utilities/V3_chap02.html#tag_19_14
https://git.savannah.gnu.org/gitweb/?p=bash.git;a=blob_plain;f=doc/bash.html;hb=37b7e91d64ad10b1a1815d12128c9475636df670
http://www.mirbsd.org/htman/i386/man1/mksh.htm
https://github.com/vim/vim/commit/48fa3198b7118023fea4b15015a97c920887eb07
Co-authored-by: Aliaksei Budavei <0x000c70@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: filetype: msbuild filetypes are not recognized
Solution: detect msbuild files as xml filetype
(Gustav Eikaas)
closes: vim/vim#16339
https://github.com/vim/vim/commit/32b7e3a8c99d369b02154df74cbe42a37c7c7e68
Co-authored-by: GustavEikaas <gustav.eikaas@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: autocmd to refresh folds always uses the current buffer if the
option type is local. However, the current buffer may not have a parser,
and thus the assert that checks for a parser could fail.
Solution: check if the foldinfo contains the buffer, and only refresh if
so.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: filetype: TI linker map files are not recognized
Solution: detect TI linker map files as lnkmap filetype
(Wu, Zhenyu)
References:
https://downloads.ti.com/docs/esd/SPRUI03A/Content/SPRUI03A_HTML/linker_description.html
closes: vim/vim#16324
https://github.com/vim/vim/commit/5113831d16c05f3a8b47da0c6f95a641d5fc7b2e
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: filetype: SLNX files are not recognized
Solution: detect '*.slnx' files as xml filetype
(Gustav Eikaas)
References:
https://blog.ndepend.com/slnx-the-new-net-solution-xml-file-format/
https://blog.jetbrains.com/dotnet/2024/10/04/support-for-slnx-solution-files/
closes: vim/vim#16334
https://github.com/vim/vim/commit/3b3318b64043dcf29d6f06322739f695a5cc257e
Co-authored-by: GustavEikaas <gustav.eikaas@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
shells
closes: vim/vim#16311
https://github.com/vim/vim/commit/df67fc0e6994bc92f3d82edc6269e158875defad
Co-authored-by: Luca Saccarola <github.e41mv@aleeas.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
closes: vim/vim#16333
https://github.com/vim/vim/commit/f2e08a1e54e1e6f594edac5cd971ac2e03896a07
Numbers with quotes are N/A.
Co-authored-by: h-east <h.east.727@gmail.com>
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
(#31749)
Problem: filetype: sh filetype set when detecting the use of bash
Solution: when bash is detected, use 'bash' filetype instead
(Luca Saccarola)
closes: vim/vim#16309
https://github.com/vim/vim/commit/b9b762c21f2b61e0e7d8fee43d4d3dc8ecffd721
|
| |
| |
| |
| |
| |
| |
| | |
closes: vim/vim#16316
https://github.com/vim/vim/commit/e6ccb643a63612f20906348f16485d724f8d7f6f
Co-authored-by: Martino Ischia <ischiamartino@gmail.com>
|
| |
| |
| |
| |
| |
| | |
Problem: There is currently no way to check if a given path is absolute or convert a relative path to an absolute path through the Lua stdlib. `vim.fs.joinpath` does not work when the path is absolute. There is also currently no way to resolve `C:foo\bar` style paths in Windows.
Solution: Add `vim.fs.abspath`, which allows converting any path to an absolute path. This also allows checking if current path is absolute by doing `vim.fs.abspath(path) == path`. It also has support for `C:foo\bar` style paths in Windows.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
compiler
See @saccarosium 's suggestion at
https://github.com/vim/vim/pull/16311#issuecomment-2563447885
closes: vim/vim#16314
https://github.com/vim/vim/commit/6c57c30ad43f5e0d040f7d432ceb5d61fc6ab651
Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
If root_dir is a function it is evaluated when the client is created to
determine the root directory.
This enables dynamically determining the root directory based on e.g.
project or directory structure (example: finding a parent Cargo.toml
file that contains "[workspace]" in a Rust project).
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: filetype: bun.lock file is not recognized
Solution: detect 'bun.lock' file as jsonc filetype
(Anton Kastritskii)
closes: vim/vim#16308
https://github.com/vim/vim/commit/f07ae5b3bdb7331ee0e65adcb74402eef74f0a2b
Co-authored-by: Anton Kastritskii <halloy52@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: fuzzy-matching does not prefer full match
(Maxim Kim)
Solution: add additional score for a full match
(glepnir)
fixes: vim/vim#15654
closes: vim/vim#16300
https://github.com/vim/vim/commit/5a04999a7402201cf1b47ff10bc474dd1cdc24f4
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
arguments (#31738)
Allow parentheses in default arguments specified in :def and :function
definitions.
fixes vim/vim#16243
closes: vim/vim#16269
https://github.com/vim/vim/commit/9b67a2e1ddf277faf01fa957bf72f7b804a7cb7f
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: filetype: TI gel files are not recognized
Solution: detect '*.gel' files as gel filetype, include
get filetype and syntax plugins
(Wu, Zhenyu)
References:
https://downloads.ti.com/ccs/esd/documents/users_guide/ccs_debug-gel.html
closes: vim/vim#16226
https://github.com/vim/vim/commit/9360de9027aa286e802363ede59c9e97025ae123
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: filetype: hy history files are not recognized
Solution: detect '*.hy', '.hy-history' files as hy filetype,
detect '.lips_repl_history' files are scheme filetype
(Wu, Zhenyu)
closes: vim/vim#16298
https://github.com/vim/vim/commit/a32daed55933df49a7aed571cc6e400ae01c7976
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: filetype: supertux2 config files detected as lisp
Solution: detect supertux2 config files as scheme instead
(Wu, Zhenyu)
References:
https://github.com/SuperTux/supertux/wiki/S-Expression
supertux uses #t and #f as bool type, which is same as scheme, not
common lisp
closes: vim/vim#16287
https://github.com/vim/vim/commit/e62d93ead10b4c5818e3c0b7551f1784d24bfe33
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
| |
| |
| |
| |
| |
| |
| | |
vim.diagnostic.set_list() uses chistory to restore the actively selected
entry whenever necessary. This however also results in it displaying
some output in the message bar, but this output isn't useful (and can
even be distracting) when opening the quickfix window. This fixes this
by silencing the chistory command.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Problem:
The :has() method of the vim.version.range() result is not documented
though it's mentioned in examples.
Solution:
Mention it in the range() result doc.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Contribute the core of my vim-graphql project (ftplugin, indent, syntax)
to the Vim project. This replaces the basic ftplugin support that was
already in the runtime with a more complete set of filetype settings. I
can assume maintainership for all of these files.
I'll continue to maintain the higher-level embedded filetype support
separately (in vim-graphql) for now, because it's fairly complex, but we
can consider integrating that code directly into vim later.
runtime files use the MIT license.
closes: vim/vim#16273
https://github.com/vim/vim/commit/4ce1cb5bf1dc507224792543d8e56e6ab431a2b5
Co-authored-by: Jon Parise <jon@indelible.org>
|