| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PROBLEM:
There are several limitations to vim.str_byteindex, vim.str_utfindex:
1. They throw given out-of-range indexes. An invalid (often user/lsp-provided)
index doesn't feel exceptional and should be handled by the caller.
`:help dev-error-patterns` suggests that `retval, errmsg` is the preferred
way to handle this kind of failure.
2. They cannot accept an encoding. So LSP needs wrapper functions. #25272
3. The current signatures are not extensible.
* Calling: The function currently uses a fairly opaque boolean value to
indicate to identify the encoding.
* Returns: The fact it can throw requires wrapping in pcall.
4. The current name doesn't follow suggestions in `:h dev-naming` and I think
`get` would be suitable.
SOLUTION:
- Because these are performance-sensitive, don't introduce `opts`.
- Introduce an "overload" that accepts `encoding:string` and
`strict_indexing:bool` params.
```lua
local col = vim.str_utfindex(line, encoding, [index, [no_out_of_range]])
```
Support the old versions by dispatching on the type of argument 2, and
deprecate that form.
```lua
vim.str_utfindex(line) -- (utf-32 length, utf-16 length), deprecated
vim.str_utfindex(line, index) -- (utf-32 index, utf-16 index), deprecated
vim.str_utfindex(line, 'utf-16') -- utf-16 length
vim.str_utfindex(line, 'utf-16', index) -- utf-16 index
vim.str_utfindex(line, 'utf-16', math.huge) -- error: index out of range
vim.str_utfindex(line, 'utf-16', math.huge, false) -- utf-16 length
```
|
| |
|
|
|
|
|
| |
Co-authored-by: David Pedersen <limero@me.com>
Co-authored-by: Gregory Anders <greg@gpanders.com>
Co-authored-by: Leo Schlosser <Leo.Schlosser@Student.HTW-Berlin.de>
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
|
| |
|
|
|
|
| |
closes: vim/vim#15919
https://github.com/vim/vim/commit/19be0eb7f0c5877fef927a22457fdd7b3ec0ea9b
|
| | |
|
| |
|
|
|
|
|
|
|
| |
Problem:
Hidden options are documented despite being no-ops.
Solution:
Remove docs for hidden options.
Move tags for options that we plan to restore, to ":help nvim-missing".
Move tags for permanently removed options, to ":help nvim-removed".
|
| |
|
|
|
|
|
|
|
|
|
| |
netrwFileHandlers#Invoke()
closes: vim/vim#15895
https://github.com/vim/vim/commit/a7d456191de0c9092151e5c64f1a3b5a6714509b
Co-authored-by: Luca Saccarola <github.e41mv@aleeas.com>
Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
|
| |
|
|
|
|
|
|
| |
closes: vim/vim#15897
https://github.com/vim/vim/commit/421ed14b8a0f50e0d2d9247dda49feb69352bd0d
Co-authored-by: Luca Saccarola <github.e41mv@aleeas.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
Problem: testing of options can be further improved
Solution: split the generated option test into test_options_all.vim,
add more test cases, save and restore values, fix use-after-free
closes: vim/vim#15894
https://github.com/vim/vim/commit/6eca04e9f1d446dc509ba51e32da56fa413fe2f0
Co-authored-by: Milly <milly.ca@gmail.com>
|
| |
|
|
| |
Fixes #30882
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
`vim.validate()` takes two forms when it only needs one.
Solution:
- Teach the fast form all the features of the spec form.
- Deprecate the spec form.
- General optimizations for both forms.
- Add a `message` argument which can be used alongside or in place
of the `optional` argument.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Problem:
- `vim.highlight` module does not follow `:help dev-name-common`, which
documents the name for "highlight" as "hl".
- Shorter names are usually preferred.
Solution:
Rename `vim.highlight` to `vim.hl`.
This is not a breaking change until 2.0 (or maybe never).
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Relates to:
- https://github.com/neovim/neovim/issues/30034
- https://github.com/neovim/neovim/issues/17712
- https://github.com/neovim/neovim/issues/16363
Closes:
- https://github.com/neovim/neovim/issues/26936 (but only provides bufnr
and method)
- https://github.com/neovim/neovim/issues/22318
Might fix: https://github.com/neovim/neovim/issues/30737
|
| |
|
|
| |
Problem: Cannot allow mouse interaction for non-focusable float window.
Solution: Add a "mouse" field to float window config.
|
| |
|
|
|
|
|
| |
Relates to:
- https://github.com/neovim/neovim/issues/17712
- https://github.com/neovim/neovim/issues/30034
|
| |
|
|
|
|
|
| |
vim-patch:8.2.4744: a terminal window can't use the bell
vim-patch:8.2.4745: using wrong flag for using bell in the terminal
BREAKING CHANGE: Bells from :terminal are now silent by default, unless
'belloff' option doesn't contain "term" or "all".
|
| | |
|
| |\ |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| | |
Problem:
If there are multiple LSP clients, it's not clear which actions are provided by which servers. #30710
Solution:
Show the server name next to each action (only if there are multiple clients).
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This commit makaes the following changes to the vim help syntax:
- fix excessive URL detection in help, because `file:{filename}` in
doc/options.txt is determined to be a URL.
- update highlighting N for :resize in help
- split Italian-specific syntax into separate help script
- highlight `Note` in parentheses in help
- update 'titlestring' behaviour in documentation for invalid '%' format
closes: vim/vim#15883
https://github.com/vim/vim/commit/6c2fc377bfbfb6f1a46b1061413cd21116b596ed
Co-authored-by: Milly <milly.ca@gmail.com>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
closes: vim/vim#15745
https://github.com/vim/vim/commit/4bfb89996f227d5fbb4803f0d8dbd3105483b625
Co-authored-by: Christian Brabandt <cb@256bit.org>
Co-authored-by: Danilo Rezende <returndanilo@users.noreply.github.com>
|
| |/
|
|
|
|
|
|
|
| |
https://github.com/vim/vim/commit/18ee0f603ebd3c091f6d2ab88e652fda32821048
Doc updates only.
Cherry-pick profiling doc change from patch 8.2.2400.
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Some runtime files no longer spark joy.
Solution: Kondo the place up.
Still sparks _some_ joy (moved to new `runtime/scripts` folder):
* `macros/less.*`
* `mswin.vim`
* `tools/emoji_list.lua`
No longer sparks joy (removed):
* `macmap.vim` (gvimrc file; not useful in Nvim)
* `tools/check_colors.vim` (no longer useful with new default colorscheme and treesitter)
* `macros/editexisting.vim` (throws error on current Nvim)
* `macros/justify.vim` (obsolete shim for `packadd! justify`)
* `macros/matchit.vim` (same)
* `macros/shellmenu.vim` (same)
* `macros/swapmous.vim` (same)
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
list (#30820)
Problem: cannot preserve error position when setting quickfix lists
Solution: Add the 'u' action for setqflist()/setloclist() and try
to keep the closes target position (Jeremy Fleischman)
fixes: vim/vim#15839
closes: vim/vim#15841
https://github.com/vim/vim/commit/27fbf6e5e8bee5c6b61819a5e82a0b50b265f0b0
Co-authored-by: Jeremy Fleischman <jeremyfleischman@gmail.com>
|
| | |
|
| |
|
|
|
|
|
|
| |
fixes: vim/vim#15733
https://github.com/vim/vim/commit/5bcfb5a30cfd8e8574061bdd82a192f47aae09b5
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Problem: The standard statusline example is missing the preview flag
"%w"
Solution: Add the preview flag "%w"
closes: vim/vim#15874
https://github.com/vim/vim/commit/7b5e52d16fb457c90cc44340a6190712aab7e03b
Co-authored-by: saher <msaher.shair@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: neomuttlog files are not recognized
Solution: detect '*.neomuttdebug' file as neomuttlog filetype,
include neomuttlog syntax script (Richard Russon)
closes: vim/vim#15858
https://github.com/vim/vim/commit/a2aa921f767da17d4b619f41b7a1210c762c91e2
Co-authored-by: Richard Russon <rich@flatcap.org>
Co-authored-by: AvidSeeker <avidseeker7@protonmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: lf config files are not recognized
Solution: detect lfrc files as lf filetype, include a syntax
script for lf files (Andis Spriņķis).
References:
- https://github.com/gokcehan/lf
closes: vim/vim#15859
https://github.com/vim/vim/commit/0f146b7925178a5bdfdc8e07642976f0b76d9612
Co-authored-by: Andis Spriņķis <spr.andis@protonmail.com>
|
| |
|
|
|
|
|
|
|
| |
References: https://groups.google.com/g/vim_dev/c/3Z5yM8KER2w/m/wAqws0QSEAAJ
closes: vim/vim#15863
https://github.com/vim/vim/commit/a4205471adae39c80fb7f151a4f33051fcb80001
Co-authored-by: h-east <h.east.727@gmail.com>
|
| |
|
| |
Currently the behavior of autotrigger is not well documented.
|
| |
|
| |
Changes apply to the winbar, statusline, and tabline text.
|
| | |
|
| | |
|
| |
|
|
| |
Continuing the default LSP maps under the "gr" prefix. Mnemonic: "i" for
"implementation".
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
**Problems:**
- `vim.treesitter.language.inspect()` returns duplicate
symbol names, sometimes up to 6 of one kind in the case of `markdown`
- The list-like `symbols` table can have holes and is thus not even a
valid msgpack table anyway, mentioned in a test
**Solution:** Return symbols as a map, rather than a list, where field
names are the names of the symbol. The boolean value associated with the
field encodes whether or not the symbol is named.
Note that anonymous nodes are surrounded with double quotes (`"`) to
prevent potential collisions with named counterparts that have the same
identifier.
|
| |
|
|
|
|
| |
This commit also marks `child_containing_descendant()` as deprecated
(per upstream's documentation), and uses `child_with_descendant()` in
its place. Minimum required tree-sitter version will now be `0.24`.
|
| |
|
|
| |
- `PmenuSel` and `PmenuMatch` inherit from `Pmenu`
- `PmenuMatchSel` inherits from both `PmenuSel` and `PmenuMatch`
|
| |
|
|
|
|
|
|
| |
Problem: "shellcmdline" doesn't work with getcompletion().
Solution: Use set_context_for_wildcard_arg() (zeertzjq).
closes: vim/vim#15834
https://github.com/vim/vim/commit/85f36d61e09b12d6f1c60201129823371daa4a84
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Currently completion attribute hl_group is combined with
all items, which is redundant and confusing with kind_hlgroup
Solution: Renamed to abbr_hlgroup and combine it only with the abbr item
(glepnir).
closes: vim/vim#15818
https://github.com/vim/vim/commit/0fe17f8ffbd2588ecd2bf42dced556897bc64f89
Co-authored-by: glepnir <glephunter@gmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
vim.bo
:lua vim.bo.textwidth = 80
:setglobal textwidth?
textwidth=0
:setlocal
:setlocal textwidth=80
:setglobal textwidth?
textwidth=0
:set
:set textwidth=80
:setglobal textwidth?
textwidth=80
|
| |
|
|
|
|
|
|
|
|
|
| |
Problem: current command completion is a bit limited
Solution: Add the shellcmdline completion type and getmdcomplpat()
function (Ruslan Russkikh).
closes: vim/vim#15823
https://github.com/vim/vim/commit/0407d621bbad020b840ffbbbd25ba023bbc05edd
Co-authored-by: Ruslan Russkikh <dvrussk@yandex.ru>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
In h2 headings, the first tag points to an invalid anchor. This used to
work but regressed a few months ago, possibly related to
ceea6898a8bdcb6c4cfe06b8dc4739c144e6b1f8.
Solution:
- Simplify the logic, don't try to be clever:
- Always use to_heading_tag() for the h2 `id`.
- Also:
- Render tags as `<span>`, because `<code>` is unnecessary and doesn't
look great in headings.
- In the main h1, use "foo.txt" as the anchor `name` (rarely used),
prefer the next found tag for the `href`.
|
| |
|
|
|
|
|
|
|
| |
Problem: No test for patches 6.2.418 and 7.3.489
Solution: Add a test. Fix some whitespace problems in test_mapping.vim.
Document the behavior (zeertzjq).
closes: vim/vim#15815
https://github.com/vim/vim/commit/5df3cb2898d8b4ad42ac367a436afc79bffecfb4
|
| |
|
|
|
|
|
|
| |
closes: vim/vim#15804
https://github.com/vim/vim/commit/af449f69c7cc9f0ffafaa6e0d028dccd1c358763
Co-authored-by: Konfekt <Konfekt@users.noreply.github.com>
|
| |
|
|
| |
- 'statuscolumn' is no longer experimental
- add tags for popular searches on neovim.io
|
| | |
|