| Commit message (Collapse) | Author | Age |
|\
| |
| | |
refactor(tests): continue the global highlight definition work
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Co-authored-by: Ernie Rael <errael@raelity.com>
Co-authored-by: Famiu Haque <famiuhaque@proton.me>
Co-authored-by: Jade <spacey-sooty@proton.me>
Co-authored-by: glepnir <glephunter@gmail.com>
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
|
| |
| |
| |
| | |
Fixes #31107
|
|/ |
|
|\
| |
| | |
fix(inccommand): ensure cursor is where it belongs
|
| |
| |
| |
| |
| | |
Problem: Inccommand preview callback may flush inaccurate cmdline cursor position.
Solution: Ensure cursor is where it belongs when doing command preview.
|
| | |
|
| |
| |
| |
| | |
Problem: Can receive dozens of <MouseMove> events for same cell position. #30965
Solution: Leverage check_multiclick() to detect if cell position is unchanged.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem:
When tmpdir is local. The returned values from tmpname may already
exist. This can cause problems for tests which pass `create=false` as
they may require the file to not exist yet.
Solution:
When creating tmp names, always remove it to ensure it doesn't exist,
and optionally open it if `create~=false`
Additionally refactor the tmpname code and flattrn some functions into
constants.
Also while debugging this issue. It was discovered that `exec_lua()`
doesn't report error messages properly. This has been fixed.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: filetype: leo files are not recognized
Solution: detect '*.leo' files as leo filetype, include
a filetype plugin (Riley Bruins)
References:
https://github.com/ProvableHQ/leo
closes: vim/vim#15988
https://github.com/vim/vim/commit/93f65a4ab8168c766e4d3794607762b52762ef82
Co-authored-by: Riley Bruins <ribru17@hotmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: filetype: idris2 files are not recognized
Solution: detect '*.idr' files as idris2, '*.lidr' files as lidris2
and '*.ipkg' files as ipkg filetype (Serhii Khoma)
closes: vim/vim#15987
https://github.com/vim/vim/commit/c04bc64ba61f2386fafb086b47f16f122a0c779a
Co-authored-by: Serhii Khoma <srghma@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: tests: still preferring python2 over python3
Solution: prefer Python 3 when picking a Python program in Vim tests,
by checking for the more specific python version first and
only when python3 not found, check for the python binary
(Yee Cheng Chin)
Most OSes have Python 3 mapped to `python3` instead of `python`. Vim
tests should prioritize using that instead of Python 2 in case that is
still installed on the host system.
closes: vim/vim#15986
https://github.com/vim/vim/commit/cef8ab2c75841cee1cd72266aa662fbe54fc0acc
Cherry-pick test changes from patch 8.2.{2824,4684}.
Co-authored-by: Yee Cheng Chin <ychin.git@gmail.com>
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem:
There are three different ways of marking an option as hidden, `enable_if
= false`, `hidden = true` and `immutable = true`. These also have different
behaviors. Options hidden with `enable_if = false` can't have their value
fetched using Vim script or the API, but options hidden with `hidden = true` or
`immutable = true` can. On the other hand, options with `hidden = true` do not
error when trying to set their value, but options with `immutable = true` do.
Solution:
Remove `enable_if = false`, remove the `hidden` property for options, and use
`immutable = true` to mark an option as hidden instead. Also make hidden option
variable pointers always point to the default value, which allows fetching the
value of every hidden option using Vim script and the API. This does also mean
that trying to set a hidden option will now give an error instead of just being
ignored.
|
| |
| |
| |
| |
| |
| |
| | |
while the implementation is not tied to screen chars, it is a reasonable
expectation to support the same size. If nvim is able to display a
multibyte character, it will accept the same character as input,
including in normal mode commands like r{char}
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: :setglobal doesn't work properly for 'ffu' and 'tsrfu' when
the local value is set (after v9.1.0831)
Solution: Check os_flags instead of buffer option variable (zeertzjq).
closes: vim/vim#15980
https://github.com/vim/vim/commit/6eda269600b5ca952f28e808c662f67e581933d7
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: :set doesn't work for 'cot' and 'bkc' after :setlocal.
Solution: clear the local flags when using :set (zeertzjq).
closes: vim/vim#15981
https://github.com/vim/vim/commit/46dcd84d242db6b053cb5b777c896cede9ad9b27
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: 'findexpr' can't be used for lambads
(Justin Keyes)
Solution: Replace the findexpr option with the findfunc option
(Yegappan Lakshmanan)
related: vim/vim#15905
closes: vim/vim#15976
https://github.com/vim/vim/commit/a13f3a4f5de9c150f70298850e34747838904995
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
(#31054)
Problem: using wrong highlight group for spaces for popupmenu
Solution: use original attribute instead of combined attributed
(glepnir)
closes: vim/vim#15978
https://github.com/vim/vim/commit/bc10be7a4060748ed1876ab91cf53a2a8701ac13
Co-authored-by: glepnir <glephunter@gmail.com>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: sway files are not recognized
Solution: detect '*.sw' files as sway filetype, include
a filetype plugin (Riley Bruins)
References:
https://github.com/FuelLabs/sway.
Comments taken from their syntax documentation. File extension taken
from the same documentation/GitHub's own recognition of these file types
closes: vim/vim#15973
https://github.com/vim/vim/commit/84b5b1c660beb2f9e27de70687e41d39a023ae81
Co-authored-by: Riley Bruins <ribru17@hotmail.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
- Partition the handlers in vim.lsp.handlers as:
- client to server response handlers (RCS)
- server to client request handlers (RSC)
- server to client notification handlers (NSC)
Note use string indexes instead of protocol.methods for improved
typing in LuaLS (tip: use hover on RCS, RSC or NSC).
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: Zephyr overlay files not recognized
Solution: detect '*.overlay' files as dts filetype,
include syntax tests for DTS files
(Xudong Zheng)
Reference:
https://docs.zephyrproject.org/latest/build/dts/howtos.html
closes: vim/vim#15963
https://github.com/vim/vim/commit/a68bd6f089239a51ba90026b18109707e601b107
Co-authored-by: Xudong Zheng <7pkvm5aw@slicealias.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: topline might be changed in diff mode unexpectedly
(Jaehwang Jung)
Solution: do not re-calculate topline, when using line() func
in diff mode.
fixes: vim/vim#15812
closes: vim/vim#15950
https://github.com/vim/vim/commit/05a40e07c2f0e41b708c4c75a6aa7d0e7f6201a3
Co-authored-by: Christian Brabandt <cb@256bit.org>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: tests: Mac OS tests are too flaky
Solution: Increase max test timeout to 25 minutes,
allow up to 10 retries on Mac OS runners,
refactor runtest.vim (Milly).
closes: vim/vim#15940
https://github.com/vim/vim/commit/baab7c08653a4e1b7227d6426d96cab030ccf9e8
Co-authored-by: Milly <milly.ca@gmail.com>
Co-authored-by: K.Takata <kentkt@csc.jp>
|
|
|
|
|
|
|
|
|
|
|
| |
argument
Problem: 'findexpr' completion doesn't set v:fname to cmdline argument.
Solution: Set v:fname to the cmdline argument as-is (zeertzjq).
closes: vim/vim#15934
https://github.com/vim/vim/commit/20e045f78148c0ef0143c33ffe686fee72d29376
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: :find expansion does not consider 'findexpr'
Solution: Support expanding :find command argument using 'findexpr'
(Yegappan Lakshmanan)
closes: vim/vim#15929
https://github.com/vim/vim/commit/2f6efaccfd5c4e7df1f54ed0f41f329abbe05f60
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: cannot easily adjust the |:find| command
Solution: Add support for the 'findexpr' option (Yegappan Lakshmanan)
closes: vim/vim#15901
closes: vim/vim#15905
https://github.com/vim/vim/commit/aeb1c97db5b9de4f4903e7f288f2aa5ad6c49440
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
|
| |
|
|
|
|
|
|
|
| |
Problem: Selecting an item in the right-click menu when clicking to the
left/right of it is confusing, especially in a UI that doesn't
support 'mousemoveevent'.
Solution: Don't select an item when clicking to the left/right of the
right-click menu.
|
|
|
|
|
| |
feat(diagnostics)!: sort underline with severity_sort
BREAKING CHANGE: underline will be applied with a higher value than `vim.hl.priorities.diagnostics`
|
|
|
|
|
| |
* deprecate old signatures
* move to new str_byteindex/str_utfindex signature
* use single-underscore name (double-underscore is reserved for Lua itself)
|
|
|
|
|
|
|
|
|
| |
Problem: We use `void *` for option default values, which is confusing and can cause problems with type-correctness. It also doesn't accomodate for multitype options. On top of that, it also leads to default boolean option values not behaving correctly on big endian systems.
Solution: Use `OptVal` for option default values.
BREAKING CHANGE:
- `:set {option}<` removes the local value for all global-local options instead of just string global-local options.
- `:setlocal {option}<` copies the global value to the local value for number and boolean global-local options instead of removing the local value.
|
|
|
|
|
|
|
|
|
| |
Problem: mapset() may remove unrelated mapping whose {rhs} matches the
restored mapping's {lhs}.
Solution: only match by {lhs} when unmapping for mapset() (zeertzjq).
closes: vim/vim#15935
https://github.com/vim/vim/commit/fdf135a0525746cc0ff85bed2fbbde320ddb6d0d
|
|
|
|
|
| |
Follow up to https://github.com/neovim/neovim/pull/30877
Fixes https://github.com/neovim/neovim/issues/30926
|
| |
|
|
|
|
| |
Problem: 012_directory_spec is flaky on Windows.
Solution: Use :%bwipe! instead :qall!.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: tests: no error check when setting global 'briopt'
Solution: also parse and check global 'briopt' value (Milly)
closes: vim/vim#15911
https://github.com/vim/vim/commit/b38700ac81d90a652e5c8495056dd78df5babdde
Co-authored-by: Milly <milly.ca@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: tests: no error check when setting global 'cc'
Solution: also parse and check global 'cc' value (Milly)
closes: vim/vim#15914
https://github.com/vim/vim/commit/a441a3eaabbfc14b4772e07ecbecaaff3bd06a58
Co-authored-by: Milly <milly.ca@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: tests: no error check when setting global 'isk'
Solution: also parse and check global 'isk' value (Milly)
closes: vim/vim#15915
https://github.com/vim/vim/commit/5e7a6a4a106923e45c67dae6810e4c9753f88025
Co-authored-by: Milly <milly.ca@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
value
Problem: tests: no error check when setting global 'fdm' to empty value
Solution: Also check global 'fdm' value for being empty (Milly).
closes: vim/vim#15916
https://github.com/vim/vim/commit/142cad1f88d1d3aa34b6050151e620b66185112e
Co-authored-by: Milly <milly.ca@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: filetype: petalinux config files not recognized
Solution: detect 'project-spec/*.conf' files as bitbake filetype
(Wu, Zhenyu)
References:
https://www.amd.com/en/products/software/adaptive-socs-and-fpgas/embedded-software/petalinux-sdk.html
closes: vim/vim#15926
https://github.com/vim/vim/commit/626b6ab48682b211c22ede5a6e63513c85f93e58
Co-authored-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: tests: minor issues in gen_opt_test.vim
Solution: fix restore value for 'undolevels', fix comment, fix
wrong cpo value, add equality test for global-local options on
switchback (Milly).
closes: vim/vim#15913
https://github.com/vim/vim/commit/231480f9753fa3fb28e17b670550ce43172c0eba
Cherry-pick gen_opt_test.vim change from patch 9.1.0807.
Co-authored-by: Milly <milly.ca@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
comprehensive
Problem: tests: gettwinvar()/gettabwinvar() tests are not comprehensive
Solution: Add more tests (Milly)
closes: vim/vim#15920
https://github.com/vim/vim/commit/ceec8640df0f75c6e7759fbb3d7a1064313321fb
Co-authored-by: Milly <milly.ca@gmail.com>
|