| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
`vim.fs.normalize` does not resolve `.` and `..` components. This makes
no sense as the entire point of normalization is to remove redundancy
from the path. The path normalization functions in several other
languages (Java, Python, C++, etc.) also resolve `.` and `..`
components.
Reference:
- Python: https://docs.python.org/3/library/os.path.html#os.path.normpath
- Java: https://docs.oracle.com/javase/8/docs/api/java/nio/file/Path.html#normalize--
- C++: https://en.cppreference.com/w/cpp/filesystem/path/lexically_normal
Solution:
Resolve "." and ".." in `vim.fs.normalize`.
Before:
"~/foo/bar/../baz/./" => "~/foo/bar/../baz/."
After:
"~/foo/bar/../baz/./" => "~/foo/baz"
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
The order of the validation performed by vim.validate() is
unpredictable.
- harder to write reliable tests.
- confusing UX because validation result might return different errors randomly.
Solution:
Iterate the input using `vim.spairs()`.
Future:
Ideally, the caller could provide an "ordered dict".
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem:
vim.diagnostic.enable() does not match the signature of vim.lsp.inlay_hint.enable()
Solution:
- Change the signature so that the first 2 args are (bufnr, enable).
- Introduce a 3rd `opts` arg.
- Currently it only supports `opts.ns_id`.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem:
`vim.diagnostic.is_disabled` and `vim.diagnostic.disable` are unnecessary
and inconsistent with the "toggle" pattern (established starting with
`vim.lsp.inlay_hint`, see https://github.com/neovim/neovim/pull/25512#pullrequestreview-1676750276
As a reminder, the rationale is:
- we always need `enable()`
- we always end up needing `is_enabled()`
- "toggle" can be achieved via `enable(not is_enabled())`
- therefore,
- `toggle()` and `disable()` are redundant
- `is_disabled()` is a needless inconsistency
Solution:
- Introduce `vim.diagnostic.is_enabled`, and `vim.diagnostic.enable(…, enable:boolean)`
- Note: Future improvement would be to add an `enable()` overload `enable(enable:boolean, opts: table)`.
- Deprecate `vim.diagnostic.is_disabled`, `vim.diagnostic.disable`
|
| |
| |
| |
| |
| |
| |
| | |
compiler(rime_deployer): include new compiler, use it for '*.custom.yaml' files (vim/vim#14460)
https://github.com/vim/vim/commit/8a31de6dd275b3dc925fee556ccccd5db8ee2504
Co-authored-by: wzy <32936898+Freed-Wu@users.noreply.github.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
(#28360)
Problem: filetype: some requirements files are not recognized
Solution: Detect '*-requirements.txt', 'constraints.txt',
'requirements.in', 'requirements/*.txt' and 'requires/*.txt'
as requirements filetype, include pip compiler, include
requirements filetype and syntax plugin
(Wu, Zhenyu, @raimon49)
closes: vim/vim#14379
https://github.com/vim/vim/commit/f9f5424d3e75bbdb35aa48fa6f9241d9479b35e8
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
Co-authored-by: raimon <raimon49@hotmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
vim-patch:9.1.0325: filetype: CMakeCache.txt files not recognized
Problem: filetype: CMakeCache.txt files not recognized
Solution: Detect 'CMakeCache.txt' files as cmakecache filetype,
include basic syntax script for cmakecache
(Wu, Zhenyu, @bfrg)
closes: vim/vim#14384
https://github.com/vim/vim/commit/62c09e032c6b2d49fffac726300d142381924b98
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
Co-authored-by: bfrg <bfrg@users.noreply.github.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
runtime(java): Recognise non-ASCII identifiers (vim/vim#14543)
* runtime(java): Recognise non-ASCII identifiers
Also:
- Remove the already commented out and less general in its
definition javaFuncDef alternative.
- Stop recognising some bespoke {p,trace} debugging API.
Non-ASCII identifiers have been supported from the outset
of the Java language.
> An _identifier_ is an unlimited-length sequence of _Java
> letters_ and _Java digits_, the first of which must be a
> Java letter. An identifier cannot have the same spelling
> (Unicode character sequence) as a keyword . . . Boolean
> literal . . . or the null literal . . .
> . . . . . . . .
> Letters and digits may be drawn from the entire Unicode
> character set . . .
> . . . . . . . .
> A Java letter is a character for which the method
> Character.isJavaLetter . . . returns true. A Java
> letter-or-digit is a character for which the method
> Character.isJavaLetterOrDigit . . . returns true.
> . . . . . . . .
> The Java letters include . . . for historical reasons, the
> ASCII underscore (_) . . . and dollar sign ($) . . .
(Separate syntax tests will be written when particular parts
now touched will have been further improved.)
Reference:
https://javaalmanac.io/jdk/1.0/langspec.pdf [§3.8]
* Take on the maintenance of Java filetype and syntax files
https://github.com/vim/vim/commit/4052474a1bd2fe756bc7dc596d29d0d7581e35ae
Co-authored-by: Aliaksei Budavei <32549825+zzzyxwvut@users.noreply.github.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: filetype: some json files are not recognized
Solution: Detect '.jscsrc' and '.vsconfig' as jsonc filetype
(Wu, Zhenyu)
See:
- https://github.com/microsoft/PowerToys/blob/main/.vsconfig
- https://jscs-dev.github.io/
closes: vim/vim#14452
https://github.com/vim/vim/commit/c59a8648b2d8b3e17f12cd45f74a31b1aa385d2d
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: filetype: cabal config files may not be recognized
Solution: Change filetype pattern to '*/{,.}cabal/config'
(Wu Zhenyu)
closes: vim/vim#14498
https://github.com/vim/vim/commit/799dedec0e959d7a18df8a06d497770706d1627c
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: filetype: some mail tools not recognized
Solution: Detect '.mbsncrc' as conf, '.msmtprc' as msmtp
and '.notmuch-config' as ini filetype
(Shane-XB-Qian)
closes: vim/vim#14533
https://github.com/vim/vim/commit/a7a9a476cf388f89286216188b8c8ae10702d9e2
Co-authored-by: shane.xb.qian <shane.qian@foxmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
runtime(doc): document pandoc compiler and enable configuring arguments
closes: vim/vim#14550
https://github.com/vim/vim/commit/fb8f31ea7d7f3f42e9bdce7b4434fd93fba8876f
Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
runtime(i3config/swayconfig): update syntax scripts
modifications with the goals of:
- simplifying structure by using group `cluster`s
- improving visual highlighting responsiveness by using `nextgroup`
- improving recursive wm-msg command highlighting
- separating command variants meant for runtime and for config only
closes: vim/vim#14544
https://github.com/vim/vim/commit/dd83b63eb5b7884c1c882eb984778492f6951ed7
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
:checkhealth node.js check fails:
ERROR Failed to run healthcheck for "provider.node" plugin ...
node/health.lua:98: attempt to call local 'message' (a string value)
`message` is called as a function, when it is actually a string.
Solution:
Pass `message` to `warn()` as an argument.
Fix #28346
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
vim.ui.open "locks up" Nvim if the spawned process does not terminate. #27986
Solution:
- Change `vim.ui.open()`:
- Do not call `wait()`.
- Return a `SystemObj`. The caller can decide if it wants to `wait()`.
- Change `gx` to `wait()` only a short time.
- Allows `gx` to show a message if the command fails, without the
risk of waiting forever.
|
|
|
|
|
|
|
|
|
|
|
|
| |
runtime(vim): Update base-syntax, fix nested function folding (vim/vim#14397)
Only match function folding start and end patterns at the start of a
line, excluding heredocs and :append/:change/:insert commands.
Fixes vim/vim#14393
https://github.com/vim/vim/commit/4ba70cab37d2a625d8c59bb136070ef9d1976934
Co-authored-by: dkearns <dougkearns@gmail.com>
|
|
|
|
|
|
|
| |
runtime(vim): don't set compiler, update a comment for vimdoc compiler (vim/vim#14532)
https://github.com/vim/vim/commit/e92ed1b45c5432235b0541521124d965b9d6a9a2
Co-authored-by: Shane-XB-Qian <shane.qian@foxmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: String interpolation fails for Dict type
Solution: Support Dict data type properly, also support :put =Dict
(without having to convert it to string() first)
(Yegappan Lakshmanan)
fixes: vim/vim#14529
closes: vim/vim#14541
https://github.com/vim/vim/commit/f01493c55062c01b1cdf9b1e946577f4d1bdddf3
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: noautocmd is confusing; despite its name, it doesn't block all
autocommands (instead it blocks only those related to setting the buffer), and
is commonly used by plugins to open windows while producing minimal
side-effects.
Solution: be consistent and block all autocommands when noautocmd is set.
This includes WinNew (again), plus autocommands from entering the window (if
enter is set) like WinEnter, WinLeave, TabEnter, .etc.
See the discussion at https://github.com/neovim/neovim/pull/14659#issuecomment-2040029517
for more information.
Remove win_set_buf's noautocmd argument, as it's no longer needed.
NOTE: pum_create_float_preview sets noautocmd for win_set_buf, but all its
callers already use block_autocmds.
Despite that, pum_create_float_preview doesn't actually properly handle
autocommands (it has no checks for whether those from win_enter or
nvim_create_buf free the window).
For now, ensure autocommands are blocked within it for correctness (in case it's
ever called outside of a block_autocmds context; the function seems to have been
refactored in #26739 anyway).
|
|
|
|
|
|
| |
As mentioned in #28287, repeating a macro for each selected line doesn't
really make sense in non-linewise Visual mode.
Fix #28287
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: translate shell config files are not recognized
Solution: Detect 'init.trans', 'translate-shell' and '.trans' files as
clojure (Wu, Zhenyu)
See: https://github.com/soimort/translate-shell/wiki/Configuration
closes: vim/vim#14499
https://github.com/vim/vim/commit/4b5cd7257ee99384940d5210cf50298ff925924e
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: matplotlibrc files are not recognized
Solution: Detect 'matplotlibrc' file as yaml filetype
(Wu, Zhenyu)
See: https://matplotlib.org/stable/users/explain/customizing.html#the-matplotlibrc-file
closes: vim/vim#14501
https://github.com/vim/vim/commit/55d4f3c006689945599589a90036923b1752754f
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: some sh and confini files not recognized
Solution: Detect neofetch, '.xprofile', XDG-User-Dirs files,
paru and makepkg config files
(Wu, Zhenyu)
See:
- https://github.com/dylanaraps/neofetch/wiki/Customizing-Info#config-file-location
- https://www.freedesktop.org/wiki/Software/xdg-user-dirs/
closes: vim/vim#14505
https://github.com/vim/vim/commit/5a9f7e6750727f81d0638e7ce0ee6bcb01742570
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: a few more dosini files are not recognized
Solution: Detect wakatime, reply config files, flatpak, nfs config files
and a few more python tools as dosini (or toml)
(Wu, Zhenyu)
Refer:
- https://packaging.python.org/en/latest/specifications/pypirc/
- https://jorisroovers.com/gitlint/latest/configuration/
- https://pylint.pycqa.org/en/latest/user_guide/usage/run.html#command-line-options
- https://docs.bpython-interpreter.org/en/latest/configuration.html
- https://mypy.readthedocs.io/en/stable/config_file.html#the-mypy-configuration-file
- https://black.readthedocs.io/en/stable/usage_and_configuration/the_basics.html#configuration-via-a-file
- https://github.com/wakatime/wakatime-cli?tab=readme-ov-file#usage
- https://metacpan.org/dist/Reply/view/bin/reply#-cfg-~/.replyrc
close: vim/vim#14512
https://github.com/vim/vim/commit/0881329d129866fa49444e7fb6e622e54285a8ff
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
runtime(vim): Update base-syntax, add legacy header folding
Allow for syntax-based folding of Vim9 script legacy header regions.
This is enabled with the "H" flag of the g:vimsyn_folding config variable.
closes: vim/vim#14530
https://github.com/vim/vim/commit/ce06493aeb3d198d13de289ac39d1ed0f1604429
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
runtime(i3config): Line continuation is not detected for 'set' command (vim/vim#14531)
Problem: Valid i3config syntax is highlighted as error.
Solution: Skip over line-breaks correctly.
https://github.com/vim/vim/commit/5392970921aba5112f529a5d93407ae65c285fb1
Co-authored-by: julio-b <julio.bacel@gmail.com>
|
|
|
|
|
|
|
|
| |
runtime(go): fix highlighting import string followed by some comment (vim/vim#14538)
https://github.com/vim/vim/commit/122d068585686babd63f0b729759ec269171d464
Co-authored-by: Linda_pp <rhysd@users.noreply.github.com>
|
|
|
|
|
|
|
|
|
| |
Problem:
The `:terminal` auto-close logic does not support `&shell` that has
arguments, e.g., `/bin/bash -O globstar`.
Solution:
Join `argv` and match `&shell`. This is not perfect since `&shell` may
contain irregular spaces and quotes, but it seems to be good enough.
|
|
|
|
|
|
|
|
| |
runtime(dts): include ftplugin support (vim/vim#14522)
https://github.com/vim/vim/commit/0549c503ba20345097a14122f0a18dde69d470c5
Co-authored-by: wzy <32936898+Freed-Wu@users.noreply.github.com>
|
|
|
|
|
|
|
|
|
|
| |
runtime(kconfig): add include to ftplugin (vim/vim#14524)
related: vim/vim#14521
https://github.com/vim/vim/commit/159dc0fcf950e6c21f97cc337bcf19ff90ce73c6
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Some config files are not recognized
Solution: Add some patterns for chktex, ripgreprc and ctags config
files.
See: https://www.nongnu.org/chktex/
See: https://github.com/BurntSushi/ripgrep/blob/master/GUIDE.md#configuration-file
See: https://docs.ctags.io/en/latest/option-file.html#order-of-loading-option-files
closes: vim/vim#14506
https://github.com/vim/vim/commit/a1dcd76ce791b5b8bd093765a99b71aa163300a5
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
|
|
|
|
|
|
|
|
| |
This reverts commit 4382d2ed564b80944345785d780cf1b19fb23ba8.
The story for this feature was left in an incomplete state. It was never
the intention to unilaterally fold all information, only the ones that
did not contain relevant information. This feature does more harm than
good in its incomplete state.
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: some history files are not recognized
Solution: Add some history patterns to filetype.vim
(Wu, Zhenyu)
closes: vim/vim#14513
https://github.com/vim/vim/commit/da70feabeab77581e48a7ca9c8d5f950c1c2814e
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: texdoc config files is not recognized
Solution: Detect 'texdoc.cnf' as conf filetype
(Wu, Zhenyu)
See: https://github.com/TeX-Live/texdoc/blob/master/texdoc.cnf
closes: vim/vim#14507
https://github.com/vim/vim/commit/7fdbd1bb58192650bec067a0f224c1fa971c6782
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: x11vnc config file is not recognized
Solution: Detect '.x11vncrc' as conf filetype
(Wu, Zhenyu)
See: https://linux.die.net/man/1/x11vnc
closes: vim/vim#14511
https://github.com/vim/vim/commit/58ce78ad438deefec54fd6206166ca2794cd6efe
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: pip config files are not recognized
Solution: detect pip.conf as dosini filetype
(Wu, Zhenyu)
closes: vim/vim#14448
https://github.com/vim/vim/commit/d2b95b8446233e0021a8c0cd672f8fae748e3955
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: lxqt config files are not recognized
Solution: Detect {lxqt,screengrab}/*.conf files as dosini,
fix failing filetype test for */tex/latex/**.cfg
(Wu, Zhenyu)
closes: vim/vim#14450
https://github.com/vim/vim/commit/41208884b8c1a73b42ddb6c1e5f008dae6aa0a83
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: XDG mimeapps.list file is not recognized
Solution: Detect mimeapps.list as dosini filetype
(Wu, Zhenyu)
Refer: https://wiki.archlinux.org/title/XDG_MIME_Applications#Format
closes: vim/vim#14451
https://github.com/vim/vim/commit/efd752ec384980135c36b9fb673574e64c270c90
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: libreoffice config files are not recognized
Solution: Detect Libreoffice config fils as xml/dosini
(Wu, Zhenyu)
closes: vim/vim#14453
https://github.com/vim/vim/commit/73c89bcf79df280b8698f77374afabd9494dc741
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: cgdb config file is not recognized
Solution: Detect cgdbrc files as cgdbrc filetype
(Wu, Zhenyu)
closes: vim/vim#14458
https://github.com/vim/vim/commit/1492fe69037586b6c625d42205d77dd38ba51640
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: some protocol buffer files not recognized
Solution: Detect '*.textproto', '*.textpb', '*.txtpb' as pbtxt files
(Bruno Belanyi)
See: https://protobuf.dev/reference/protobuf/textformat-spec/#text-format-files
closes: vim/vim#14463
https://github.com/vim/vim/commit/e54a8e7c73bbfba0c77e928f27fb3a9bffd2e8fd
Co-authored-by: Bruno BELANYI <bruno@belanyi.fr>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: blueprint files are not recognized
Solution: Detect '*.bp' files as blueprint files, add
a minimal filetype plugin (Bruno Belanyi)
See: https://source.android.com/docs/setup/build
closes: vim/vim#14488
https://github.com/vim/vim/commit/6be7ef5bc734ce6045d6f919f1a8559a3fa7f2fd
Co-authored-by: Bruno BELANYI <bruno@belanyi.fr>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: xilinx files are not recognized
Solution: Add a few xilinx specific file patterns,
inspect lpr files for being xml/pascal
(Wu, Zhenyu)
closes: vim/vim#14454
https://github.com/vim/vim/commit/614691ceefb2b2470cd9097013ffc140f81d6a71
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: some TeX files are not recognized
Solution: Add more patterns for TeX files and inspect
a few more files for being TeX files
(Wu, Zhenyu)
closes: vim/vim#14456
https://github.com/vim/vim/commit/61ee833a504ae73bc6b3e2527a81582263f02afd
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
|
|
|
|
|
|
|
|
| |
runtime(doc): mention :argded for :argedit
related: vim/vim#14464
https://github.com/vim/vim/commit/83424105cb4219fe4280aa86df5173096186bba2
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
runtime(compiler): add vimdoc
closes: vim/vim#14459
https://github.com/google/vimdoc generates vim help files from vimscript files
https://github.com/vim/vim/commit/fcbefe74f1619dfd925033d83a6d233c686409d4
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|