| Commit message (Collapse) | Author | Age |
... | |
|\ \ \ \ \ \ \
| |/ / / / / /
|/| | | | | | |
signcol improvements
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Fixes #14195
|
|\ \ \ \ \ \ \
| |/ / / / / /
|/| | | | | | |
ci: remove failing windows CI tests
|
| | |_|_|/ /
| |/| | | | |
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
nvim_buf_set_text does not handle negative row numbers correctly: for
example,
nvim_buf_set_text(0, -2, 0, -1, 20, {"Hello", "world"})
should replace the 2nd to last line in the buffer with "Hello" and the
first 20 characters of the last line with "world". Instead, it reports
"start_row out of bounds". This happens because when negative line
numbers are used, they are incremented by one additional number to make
the non-negative line numbers end-exclusive. However, the line numbers
for nvim_buf_set_text should be end-inclusive.
In #15181 we handled this for nvim_buf_get_text by adding a new
parameter to `normalize_index`. We can solve the problem with
nvim_buf_set_text by simply availing ourselves of this new argument.
This is a breaking change, but makes the semantics of negative line
numbers much clearer and more obvious (as well as matching
nvim_buf_get_text).
BREAKING CHANGE: Existing usages of nvim_buf_set_text that use negative
line numbers will be off-by-one.
|
| |_|/ / /
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
nvim_buf_get_text is the mirror of nvim_buf_set_text. It differs from
nvim_buf_get_lines in that it allows retrieving only portions of lines.
While this can typically be done easily enough by API clients,
implementing this function provides symmetry between the get/set
text/lines APIs, and also provides a nice convenience that saves API
clients the work of having to slice the result of nvim_buf_get_lines
themselves.
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
... for when `ns=0`.
Also update the documentation of nvim_set_hl to clarify the set
behaviour.
Fixes #17478
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: Test for put with large count fails.
Solution: Adjust the counts in the test.
https://github.com/vim/vim/commit/8bc07e800c2af36686aadd4178cc2671f5c454d4
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: Integer overflow with large line number.
Solution: Check for overflow. (closes vim/vim#9202)
https://github.com/vim/vim/commit/03725c5795ae5b8c14da4a39cd0ce723c6dd4304
Put E1247 in globals.h as E1240 is also there.
Do not make getdigits() abort.
|
|\ \ \ \
| | | | |
| | | | | |
vim-patch:8.2.{3492,3493,3570,3573,3574,3575,3577,3601}: put overflow checking shenanigans
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Problem: Check for overflow in put count does not work well.
Solution: Improve the overflow check. (Ozaki Kiichi, closes vim/vim#9102)
https://github.com/vim/vim/commit/fa53722367c3793fda95dac665af74b8651065e9
Add some casts as Nvim uses size_t variables in some places.
We could technically adjust the logic to check for overflow outside of size_t's
range, but it's much easier to just port the patch exactly (also means we can
use the same tests).
v:sizeoflong is N/A, so convert the 64-bit tests to Lua and use the FFI to check
long's size.
|
|\ \ \ \ \ |
|
| | | | | | |
|
| |/ / / /
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Problem: when accessing `nvim_set_hl` from Lua, empty tables are converted
to empty lists, not dictionaries, resulting in an error for
:lua vim.api.nvim_set_hl(0, "Comment", { cterm = {} })
Workaround: add an empty array as a special case when checking
`dict->cterm.type` and just set `cterm_mask_provided`.
(Proper solution: handle this in `gen_api_dispatch.lua`.)
|
|\ \ \ \ \
| |_|_|/ /
|/| | | | |
fix(highlight): global ns improvements
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
- and reduce heap allocations
Fixes #17420
|
|\ \ \ \ \
| |_|/ / /
|/| | | | |
feat(events): add DirChangedPre
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
In Nvim, like DirChanged, this also triggers when switching windows.
This marks Vim patch 8.2.4335 as ported.
vim-patch:8.2.4335: no autocommand event triggered before changing directory
Problem: No autocommand event triggered before changing directory. (Ronnie
Magatti)
Solution: Add DirChangedPre. (closes vim/vim#9721)
https://github.com/vim/vim/commit/28e8f73ae2d90009fd62cd60f97c2643ba44de68
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This allows falling back to `@definition` when we have no mapping
`@definition.fancy-specialization`.
This behavior is described in tree-sitter's documentation
(https://tree-sitter.github.io/tree-sitter/syntax-highlighting#theme).
Fixes https://github.com/nvim-treesitter/nvim-treesitter/issues/738
|
|\ \ \ \ \
| | | | | |
| | | | | | |
fix(api): re-route nvim_get_runtime_file errors
|
| | |/ / /
| |/| | |
| | | | |
| | | | | |
This allows nvim_get_runtime_file to be properly used via pcall
|
| | | | | |
|
|\ \ \ \ \
| |/ / / /
|/| | | | |
fix: <Nop> not shown in :map commands
|
| | |/ /
| |/| | |
|
|/ / /
| | |
| | |
| | | |
This uses the same validation used when defining commands with
`:command`.
|
|\ \ \
| | | |
| | | | |
vim-patch:8.2.{3073,4120,4151,4152}
|
| | |/
| |/|
| | |
| | |
| | |
| | | |
Problem: Block insert with double wide character fails.
Solution: Adjust the expected output.
https://github.com/vim/vim/commit/fc6ccebea668c49e9e617e0657421b6a8ed9df1e
|
|/ /
| |
| |
| |
| |
| |
| |
| | |
Problem: When reloading not all properties are detected.
Solution: Add the "edit" value to v:fcs_choice. (Rob Pilling, closes vim/vim#9579)
https://github.com/vim/vim/commit/8196e94a8b72ed8618605cb66615571313097d78
Cherry-pick some test changes from patch 8.1.1826.
|
|\ \
| | |
| | | |
fix(screen): don't put empty sign text in line number column
|
| | |
| | |
| | |
| | |
| | |
| | | |
When `signcolumn=number` but no sign on a given line has any text,
display the line's line number instead of the (empty) sign text in the
line number column.
|
|\ \ \
| | | |
| | | | |
fix: autoload variables not loaded with vim.g & nvim_get_var
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
test_cdo.vim is copied from Vim v8.1.1483.
test_packadd.vim is copied from Vim v8.2.0174.
|
|/ / / |
|
| | | |
|
| | | |
|
|\ \ \
| | | |
| | | | |
fix(query.lua): check empty table for lines
|
| | |/
| |/| |
|
| | | |
|
|\ \ \
| |/ /
|/| | |
fix: close floating windows when calling win_close()
|
| | | |
|
|\ \ \
| | | |
| | | | |
prevent checkhealth failure when plugin's check returns void
|
| | | | |
|
| |/ /
|/| |
| | |
| | | |
Co-Authored-By: smolck <46855713+smolck@users.noreply.github.com>
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Put in Visual mode cannot be repeated.
Solution: Use "P" to put without yanking the deleted text into the unnamed
register. (Shougo Matsushita, closes vim/vim#9591)
https://github.com/vim/vim/commit/fb55207ed17918c8a2a6cadf5ad9d5fcf686a7ab
Cherry-pick get_y_previous() and set_y_previous() from patch 8.1.1736.
Nvim has removed y_current, so code related to it is N/A.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Test files still use function!.
Solution: Remove the exclamation mark. Fix overwriting a function.
https://github.com/vim/vim/commit/1e1153600c0377472d62cc553173fe555ddcf5a7
Some of the changes were already applied previously.
|
|\ \
| | |
| | | |
fix(event-loop): call vpeekc() directly first to check for character
|