| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This will help manage the overly granular checkhealth completion to go
from
```
vim.health
vim.lsp
vim.provider.clipboard
vim.provider.node
vim.provider.perl
vim.provider.python
vim.provider.ruby
vim.treesitter
```
to
```
vim.health
vim.lsp
vim.provider
vim.treesitter
```
|
|
|
|
|
|
| |
`vim.health` is not a "plugin" but part of our Lua API and the
documentation should reflect that. This also helps make the
documentation maintenance easier as it is now generated.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
as buffer name (#28908)
Add test so that this doesn't regress.
fixes: vim/vim#12718
closes: vim/vim#14792
https://github.com/vim/vim/commit/62ccaa60d5f7f9a13c758bd5e55b7ca6855a6de9
Co-authored-by: Ubaldo Tiberi <ubaldo.tiberi@volvo.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(#28904)
Refactored zig ftplugin, removed upstream comment, aucmd and
auto formatting support. Updated documentation for zig configuration
settings and added new maintainer.
closes: vim/vim#13803
https://github.com/vim/vim/commit/d1d9316c6621d275593f58664975faf0fc23985f
Co-authored-by: Tiseno <mathias.lindgren@stabelo.se>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: tests: some issues with termdebug mapping test
Solution: Use assert_{true,false} if suitable, change
order of expected and actual arguments in assert() calls.
(Ken Takata)
closes: vim/vim#14818
related: 7fbbd7f
https://github.com/vim/vim/commit/ffed1540f36eb4a2255d7d824c9466d3d8fd581e
Co-authored-by: Ken Takata <kentkt@csc.jp>
|
|\
| |
| | |
vim-patch:9.1.{0426,0428}: too many strlen() calls in search.c
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
names
Problem: Tag guessing leaves wrong search history with very short names
(after 9.1.0426).
Solution: Use the correct variable for pattern length (zeertzjq).
closes: vim/vim#14817
https://github.com/vim/vim/commit/42cd192daa4b7f29131c7be1beaecb6067e96266
Cherry-pick Test_tagbsearch() changes from patch 9.0.0767.
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: too many strlen() calls in search.c
Solution: refactor code and remove more strlen() calls,
use explicit variable to remember strlen
(John Marriott)
closes: vim/vim#14796
https://github.com/vim/vim/commit/8c85a2a49acf80e4f53ec51e6ff2a5f3830eeddb
Co-authored-by: John Marriott <basilisk@internode.on.net>
|
|
|
|
|
|
| |
Problem: The changetracking state can de-sync when reloading a buffer
with more than one LSP client attached.
Solution: Fully detach all clients from the buffer to force buf_state to
be re-created.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Docs about how to obtain backtraces on Linux is not very
beginner-friendly; some users used to have difficulties in getting
stacktrace against Nvim crash.
For instance, the `core` dump file might not appear in the current
directory on Ubuntu systems with apport, and the current docs do not
fully cover such cases.
Solution: Add more hints about where core dump files can be found. For
example, on Ubuntu where apport is managing core dump files, users would
want to find them in `/var/lib/apport/coredump`.
|
|
|
| |
aligns with ":help dev-patterns"
|
|
|
|
|
|
|
| |
Problem: layout i.e. whitespace that is part of codelenses is currently
displayed as weird symbols and large amounts of spaces
Solution: replace all consecutive whitespace symbols with a single space
character when trying to display codelenses as virtual text
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
Higher-priority signs may be hidden by lower-priority signs.
Solution:
Place higher-priority signs from the left.
Example:
nvim_buf_set_extmark(0, ns, 0, -1, {sign_text='H', priority=1})
nvim_buf_set_extmark(0, ns, 0, -1, {sign_text='W', priority=2})
nvim_buf_set_extmark(0, ns, 0, -1, {sign_text='E', priority=3})
Before:
| |
H | W E |
^ | |
Not visible
After:
| |
| E W | H
| | ^
Not visible
Fixes #16632
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: vim-patch commits lack an informative title and summary in the
very first line of the commit message when the vim-revision is a Git SHA
hash, unlike when is a Vim version. This makes it difficult to discern
at a glance what changes are introduced by such vim-patch commits (in
git log, PR title, changelog generated by git-cliff, etc.).
BEFORE:
vim-patch:abcdef123456
runtime(vim): improve performance
<some details>
...
Solution: Repeat the title of the upstream commit message, to improve
the clarity and visibility of the commit message.
AFTER:
vim-patch:abcdef123456: runtime(vim): improve performance
<some details>
...
Note: the `vim-patch:<hash>` token is still needed by `vim-patch.sh`
(but not necessarily in the very first line of the commit message) to
determine which vim patches have been applied. `<hash>` is internally
normalized to 7 hex digits.
|
|
|
| |
Synchronized output is enabled and disabled inside flush_buf().
|
|
|
|
|
|
|
|
|
|
| |
runtime(matchit): update matchit plugin to v1.20
fixes: vim/vim#14814
https://github.com/vim/vim/commit/8cf29e4c4a2af75bf31ef16ef108aea61c165af8
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|
|
|
|
|
|
|
| |
Problem: Vim9: CTRL-] used in :def function does not work.
Solution: Omit count or prepend colon. (closes vim/vim#6769)
https://github.com/vim/vim/commit/b3ea36c5bcb88b6a05a66347eedd461e9385103f
Co-authored-by: Bram Moolenaar <Bram@vim.org>
|
|
|
|
|
|
|
|
|
|
| |
runtime(verilog): set commentstring option
closes: vim/vim#14810
https://github.com/vim/vim/commit/69dff00dfb37077f4a80fd9635ea963889ad4b49
Co-authored-by: Riley Bruins <ribru17@hotmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: block_editing errors out when using del
(@Jamarley)
Solution: Change ins_len from size_t to int and
properly check that it doesn't become negative
There is a check in os.c that verifies that `ins_len` does not become
negative:
```
if (pre_textlen >= 0 && (ins_len = len - pre_textlen - offset) > 0)
```
However this only works, if ins_len can actually become negative and
unfortunately, ins_len has been declared as `size_t` so instead of
becoming negative it will wrap around and be very large.
So let's define it as integer, after which the condition above
properly catches this condition.
fixes: vim/vim#14734
closes: vim/vim#14735
https://github.com/vim/vim/commit/d5c8c0920e1eee9ff7a9fa5168d8e85c01670630
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|\
| |
| | |
vim-patch:9.1.{0394,0395,0423}: getregionpos()
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: getregionpos() wrong with blockwise mode and multibyte.
Solution: Use textcol and textlen instead of start_vcol and end_vcol.
Handle coladd properly (zeertzjq).
Also remove unnecessary buflist_findnr() in add_regionpos_range(), as
getregionpos() has already switched buffer.
closes: vim/vim#14805
https://github.com/vim/vim/commit/c95e64f41f7f6d1bdc95b047ae9b369743c8637b
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: regionpos may leak memory on error, coverity
complains about dereferencing Null pointer
Solution: free all list pointers (after v9.1.394),
return early if buflist_findnr() returns NULL
closes: vim/vim#14731
https://github.com/vim/vim/commit/b8ecedce79149ac6b994177e9a68979f86065cb1
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Cannot get a list of positions describing a region
(Justin M. Keyes, after v9.1.0120)
Solution: Add the getregionpos() function
(Shougo Matsushita)
fixes: vim/vim#14609
closes: vim/vim#14617
https://github.com/vim/vim/commit/b4757e627e6c83d1c8e5535d4887a82d6a5efdd0
Co-authored-by: Shougo Matsushita <Shougo.Matsu@gmail.com>
Co-authored-by: Justin M. Keyes <justinkz@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: purescript files are not recognized
Solution: recognize '*.purs' files as purescript filetype,
include basic purescript filetype plugin
(Riley Bruins)
Reference: https://github.com/purescript/documentation/blob/master/language/Syntax.md#comments
closes: vim/vim#14813
https://github.com/vim/vim/commit/155583a5c317881e60828e3972383436ac197ee8
Co-authored-by: Riley Bruins <ribru17@hotmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: slint files are not recognized
Solution: Detect '*.slint' files as slint filetype,
include basic sling filetype plugin
(Riley Bruins)
closes: vim/vim#14808
https://github.com/vim/vim/commit/aa3104b07a3e5e7cc41310f1fbfb00f71ef801a2
Co-authored-by: Riley Bruins <ribru17@hotmail.com>
|
|
|
|
|
|
|
|
|
|
| |
runtime(nim): basic nim ftplugin file for comments (vim/vim#14812)
Reference: https://nim-by-example.github.io/comments/#:~:text=Comments%20in%20Nim%20begin%20with%20the%20hash%20character.&text=Multiline%20or%20block%20comments%20begin,line%20comments%20can%20be%20nested.
https://github.com/vim/vim/commit/f295050fa524b3a58289d12d3477b52a8610794f
Co-authored-by: Riley Bruins <ribru17@hotmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
runtime(arduino): Add Arduino ftplugin and indent files (vim/vim#14811)
We already have Arduino syntax file, but we didn't have ftplugin and
indent files.
This commit adds a basic ftplugin file and a basic indent file.
Both of them are derived from {ftplugin,indent}/c.vim.
https://github.com/vim/vim/commit/957d903cb7af41539efd3195d053293987af85d9
Co-authored-by: K.Takata <kentkt@csc.jp>
|
|
|
|
|
|
|
|
|
|
| |
runtime(typst): include basic typst ftplugin file (vim/vim#14809)
Reference: https://typst.app/docs/reference/syntax/#comments
https://github.com/vim/vim/commit/c3d5c2fc87212865ee73738cd381ddbaf8132c33
Co-authored-by: Riley Bruins <ribru17@hotmail.com>
|
|
|
|
|
|
|
|
|
|
| |
runtime(prisma): include basic prisma ftplugin file (vim/vim#14807)
Reference: https://www.prisma.io/docs/orm/prisma-schema/overview#comments
https://github.com/vim/vim/commit/9c4d14dbb4baeb909ff62a943aed24968e3be6fe
Co-authored-by: Riley Bruins <ribru17@hotmail.com>
|
|
|
|
|
|
|
|
| |
runtime(v): include basic v ftplugin for comment support (vim/vim#14806)
https://github.com/vim/vim/commit/1b5e3d21f6f321824b3c4552a9fff24feeb64aab
Co-authored-by: Riley Bruins <ribru17@hotmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: too many strlen() calls in the regexp engine
Solution: refactor code to retrieve strlen differently, make use
of bsearch() for getting the character class
(John Marriott)
closes: vim/vim#14648
https://github.com/vim/vim/commit/82792db6315f7c7b0e299cdde1566f2932a463f8
Cherry-pick keyvalue_T and its comparison functions from patch 9.1.0256.
vim-patch:9.1.0410: warning about uninitialized variable
vim-patch:9.1.0412: typo in regexp_bt.c in DEBUG code
Co-authored-by: John Marriott <basilisk@internode.on.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: hyprlang files are not recognized
Solution: recognize 'hypr{land,paper,idle,lock}.conf' files
as 'hyprlang' filetype, add hyprlang ftplugin
(Riley Bruins)
closes: vim/vim#14803
https://github.com/vim/vim/commit/5f1b115afd92544ce64d563da0d8ee9844abb10a
Co-authored-by: Riley Bruins <ribru17@hotmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
runtime(dart): add basic dart ftplugin file
fixes vim/vim#14793
closes vim/vim#14802
https://github.com/vim/vim/commit/4d7892bfb1dbcc8ba19d9c60c63b3d11b758553f
Co-authored-by: Riley Bruins <ribru17@hotmail.com>
|
|
|
|
|
|
|
|
|
|
| |
runtime(graphql): basic ftplugin file for graphql
closes: vim/vim#14801
https://github.com/vim/vim/commit/36e974fdf3f5db1126bb8211e5a12462258da167
Co-authored-by: Riley Bruins <ribru17@hotmail.com>
|
|
|
|
|
|
|
|
|
|
| |
runtime(sql): set commentstring for sql files in ftplugin
closes: vim/vim#14800
https://github.com/vim/vim/commit/df859a36d390bda4241760155a0d2ae0be1bcbe9
Co-authored-by: Riley Bruins <ribru17@hotmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: On nvim 11.0-dev, deprecation warnings due to an use of
hard-deprecated APIs such as:
- `vim.diagnostic.disable()`
- `vim.diagnostic.is_disabled()`
etc. are not accompanied by backtrace information. It makes difficult
for users to figure out which lines or which plugins are still using
deprecated APIs.
Solution: use `backtrace = true` in vim.deprecate() call.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The namespacing for healthchecks for neovim modules is inconsistent and
confusing. The completion for `:checkhealth` with `--clean` gives
```
nvim
provider.clipboard
provider.node
provider.perl
provider.python
provider.ruby
vim.lsp
vim.treesitter
```
There are now three top-level module names for nvim: `nvim`, `provider`
and `vim` with no signs of stopping. The `nvim` name is especially
confusing as it does not contain all neovim checkhealths, which makes it
almost a decoy healthcheck.
The confusion only worsens if you add plugins to the mix:
```
lazy
mason
nvim
nvim-treesitter
provider.clipboard
provider.node
provider.perl
provider.python
provider.ruby
telescope
vim.lsp
vim.treesitter
```
Another problem with the current approach is that it's not easy to run
nvim-only healthchecks since they don't share the same namespace. The
current approach would be to run `:che nvim vim.* provider.*` and would
also require the user to know these are the neovim modules.
Instead, use this alternative structure:
```
vim.health
vim.lsp
vim.provider.clipboard
vim.provider.node
vim.provider.perl
vim.provider.python
vim.provider.ruby
vim.treesitter
```
and
```
lazy
mason
nvim-treesitter
telescope
vim.health
vim.lsp
vim.provider.clipboard
vim.provider.node
vim.provider.perl
vim.provider.python
vim.provider.ruby
vim.treesitter
```
Now, the entries are properly sorted and running nvim-only healthchecks
requires running only `:che vim.*`.
|
|
|
| |
This possibly fixes the coverity warning.
|
|
|
|
|
|
|
| |
runtime(matchparen): fix :NoMatchParen not working (vim/vim#14797)
fixes: neovim/neovim#28828
https://github.com/vim/vim/commit/94043780196cc66d23eeec10e2c722c6552324e0
|
|
|
|
|
|
|
|
| |
runtime(sshdconfig): add basic ftplugin file for sshdconfig (vim/vim#14790)
https://github.com/vim/vim/commit/cf78d0df51f2737f278a2410f166862001d875ae
Co-authored-by: Yinzuo Jiang <jiangyinzuo@foxmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Cannot move to previous/next rare word
(Colin Kennedy)
Solution: Add the ]r and [r motions (Christ van Willegen)
fixes: vim/vim#14773
closes: vim/vim#14780
https://github.com/vim/vim/commit/8e4c4c7d87def2b100a5d64dc518ef85d9de8765
Co-authored-by: Christ van Willegen - van Noort <github.com@vanwillegen-vannoort.nl>
|
| |
|
|\
| |
| | |
vim-patch:9.1.{0414,0416}
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
'scrolloff'
Problem: Unable to leave long line with 'smoothscroll' and 'scrolloff'.
Corrupted screen near the end of a long line with 'scrolloff'.
(Ernie Rael, after 9.1.0280)
Solution: Only correct cursor in case scroll_cursor_bot() was not itself
called to make the cursor visible. Avoid adjusting for
'scrolloff' beyond the text line height (Luuk van Baal)
https://github.com/vim/vim/commit/b32055e504ebd4f6183a93b92b08d61dad61c841
vim-patch:9.1.0416: some screen dump tests can be improved
Problem: some screen dump tests can be improved (after 9.1.0414)
Solution: Make sure screen state changes properly and is captured in the
screen dumps (Luuk van Baal)
https://github.com/vim/vim/commit/2e642734f4be506483315b8881748a7ef45854f4
|
| |
| |
| |
| |
| | |
`backport` is too similar `ci:backport release-x.y` and causes
confusion.
|
| |
| |
| |
| |
| |
| |
| |
| | |
The optimizations that vim.iter uses for array-like tables don't require
that the source table has no holes. The only thing that needs to change
is the determination if a table is "list-like": rather than requiring
consecutive, integer keys, we can simply test for (positive) integer
keys only, and remove any holes in the original array when we make a
copy for the iterator.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem:
`vim.rpcnotify(0)` and `rpcnotify(0)` are documented as follows:
If {channel} is 0, the event is broadcast to all channels.
But that's not actually true. Channels must call `nvim_subscribe` to
receive "broadcast" events, so it's actually "multicast".
- Assuming there is a use-case for "broadcast", the current model adds
an extra step for broadcasting: all channels need to "subscribe".
- The presence of `nvim_subscribe` is a source of confusion for users,
because its name implies something more generally useful than what it
does.
Presumably the use-case of `nvim_subscribe` is to avoid "noise" on RPC
channels not expected a broadcast notification, and potentially an error
if the channel client reports an unknown event.
Solution:
- Deprecate `nvim_subscribe`/`nvim_unsubscribe`.
- If applications want to multicast, they can keep their own multicast
list. Or they can use `nvim_list_chans()` and `nvim_get_chan_info()`
to enumerate and filter the clients they want to target.
- Always send "broadcast" events to ALL channels. Don't require channels
to "subscribe" to receive broadcasts. This matches the documented
behavior of `rpcnotify()`.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Use uv_fs_realpath() instead.
It seems that uv_fs_realpath() has some problems on non-Linux platforms:
- macOS and other BSDs: this function will fail with UV_ELOOP if more
than 32 symlinks are found while resolving the given path. This limit
is hardcoded and cannot be sidestepped.
- Windows: while this function works in the common case, there are a
number of corner cases where it doesn't:
- Paths in ramdisk volumes created by tools which sidestep the Volume
Manager (such as ImDisk) cannot be resolved.
- Inconsistent casing when using drive letters.
- Resolved path bypasses subst'd drives.
Ref: https://docs.libuv.org/en/v1.x/fs.html#c.uv_fs_realpath
I don't know if the old implementation that uses uv_chdir() and uv_cwd()
also suffers from the same problems.
- For the ELOOP case, chdir() seems to have the same limitations.
- On Windows, Vim doesn't use anything like chdir() either. It uses
_wfullpath(), while libuv uses GetFinalPathNameByHandleW().
|