| Commit message (Collapse) | Author | Age |
... | |
| |
|
|
|
|
|
|
|
|
| |
Problem:
nvim_list_uis does not report all ":help ui-option" fields.
Solution:
Store ":help ui-option" fields on the `UI` object and update ui_array.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem:
The Lua-API bridge allows Dict params to be empty Lua (list) tables at
the function-signature level. But not for _nested_ Dicts, because they
are not modeled:
https://github.com/neovim/neovim/blob/fae754073289566051433fae74ec65783f9e7a6a/src/nvim/api/keysets.lua#L184
Some API functions like nvim_cmd check for kObjectTypeDictionary and
don't handle the case of empty Lua tables (treated as "Array").
Solution:
Introduce VALIDATE_T_DICT and use it in places where
kObjectTypeDictionary was being checked directly.
fixes #21005
|
|
|
|
|
|
|
|
|
|
| |
Problem:
Validation messages are not consistently formatted.
- Parameter names sometimes are NOT quoted.
- Descriptive names (non-parameters) sometimes ARE quoted.
Solution:
Always quote the `name` value passed to a VALIDATE macro _unless_ the
value has whitespace.
|
|
|
|
|
|
| |
- VALIDATE() takes a format string
- deduplicate check_string_array
- VALIDATE_RANGE
- validate UI args
|
|
|
|
|
|
|
|
|
| |
Problem:
- API validation involves too much boilerplate.
- API validation errors are not consistently worded.
Solution:
Introduce some macros. Currently these are clumsy, but they at least
help with consistency and avoid some nesting.
|
| |
|
|
|
|
|
| |
This reverts commit 8b8ecf44f2cda43bbd710ec22ef99439b71888cd.
It is causing performance problems on exit.
Fix #21082.
|
|
|
|
|
|
|
|
|
| |
(#21845)
Problem: Allocated click function memory is lost due to
`nvim_eval_statusline()` not passing in a `StlClickRecord`.
Solution: Do not allocate click function memory if `tabtab == NULL`.
Resolve #21764, supersede #21842.
|
|
|
|
|
|
| |
Now with try_end() including more exception info, E5500 looks like
redundant information.
Adjust tests for more exception information.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
Co-authored-by: Raphael <glephunter@gmail.com>
Co-authored-by: Gregory Anders <greg@gpanders.com>
|
|
|
|
|
| |
Extend the capabilities of is_os to detect more platforms such as
freebsd and openbsd. Also remove `iswin()` helper function as it can be
replaced by `is_os("win")`.
|
| |
|
|
|
| |
We don't support 32-bit windows anymore so it's not needed.
|
|
|
|
|
|
|
| |
This is essentially a convenience wrapper around the `pending()`
function, similar to `skip_fragile()` but more general-purpose.
Also remove `pending_win32` function as it can be replaced by
`skip(iswin())`.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
- increase python line-length limit from 88 => 100.
- gen_help_html: fix bug in "tag" case (tbl_count => tbl_contains)
ref #15632
fix #18215
fix #18479
fix #20527
fix #20532
Co-authored-by: Ben Weedon <ben@weedon.email>
|
| |
|
|\
| |
| | |
fix(api)!: nvim_parse_cmd omit "count" "range" "reg" if not supported
|
| | |
|
|/
|
|
|
| |
Allows `nvim_cmd` to use the first argument as count for applicable
commands. Also adds support for non-String arguments to `nvim_cmd`.
|
| |
|
|
|
|
|
| |
Also add missing fcs, lcs and winhighlight to list of key-value options for `vim.opt`.
Co-authored-by: ii14 <ii14@users.noreply.github.com>
|
|
|
|
|
|
| |
Now nvim_parse_cmd and nvim_create_user_command use a "tab" value which
is the same as the number passed before :tab modifier instead of the
number plus 1, and "tab" value is -1 if :tab modifier is not used.
|
| |
|
|
|
|
| |
Save and restore the cursor and last search pattern and do not change
search history.
|
|
|
|
| |
This matches the code in execute_common(), preventing messages after the
API call from being printed at the wrong column.
|
|
|
| |
Closes #19696
|
|
|
| |
Fixes #19608
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Problem: Can't use :popup for a menu in the terminal. (Wei Zhang)
Solution: Make :popup work in the terminal. Also fix that entries were
included that don't work in the current state.
https://github.com/vim/vim/commit/29a2c08d792e4458a0af8371f5341394829fce29
|
|
|
|
|
|
| |
Also fixes a memory leak in `parse_cmdline`.
Closes #18954.
|
| |
|
|
|
|
| |
These mirror their counterparts in nvim_set_option_value.
|
| |
|
|\
| |
| | |
feat(api): add `win` and `buf` to `nvim_set_option_value`
|
| |
| |
| |
| | |
Co-authored-by: Gregory Anders <8965202+gpanders@users.noreply.github.com>
|
| |
| |
| |
| | |
Closes #18632
|
|/
|
|
|
|
|
| |
Adds support for a bar at the top of each window, enabled through the
`'winbar'` option.
Co-authored-by: Björn Linse <bjorn.linse@gmail.com>
|
|
|
|
|
| |
Fix #18112
Make an exception for strings starting with "%!".
|
|
|
| |
Closes #18526.
|
|
|
|
| |
Adds the API function `nvim_cmd` which allows executing an Ex-command through a Dictionary which can have the same values as the return value of `nvim_parse_cmd()`. This makes it much easier to do things like passing arguments with a space to commands that otherwise may not allow it, or to make commands interpret certain characters literally when they otherwise would not.
|
|
|
|
|
|
|
|
| |
It seems range and count can be used together in commands. This PR fixes
the behavior of `nvim_parse_cmd` for those cases by removing the mutual
exclusivity of "range" and "count". It also removes range line number
validation for `nvim_parse_cmd` as it's not its job to validate the
command.
|
|
|
|
|
| |
Makes `nvim_parse_cmd` propagate any errors that occur while parsing to
give the user a better idea of what's wrong with the command.
|