| Commit message (Collapse) | Author | Age |
... | |
| |\ \
| | | |
| | | | |
vim-patch:8.1.2336,8.2.{4338,4401}: mapping cursor and redrawing patches
|
| | |/
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add tests for:
- Cursor position restored after :map expr
- Cursor position restored after :imap expr
- Error in :cmap expr handled correctly
Cherry-picked from #12837
|
| |\ \
| | | |
| | | | |
test: use helpers.pending_win32(pending) instead of iswin()
|
| | | | |
|
| |\ \ \
| | |/ /
| |/| | |
signcol improvements
|
| | |/
| | |
| | |
| | | |
Fixes #14195
|
| |/ |
|
| |\
| | |
| | | |
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(event-loop): call vpeekc() directly first to check for character
|
| | | |
| | | |
| | | |
| | | | |
Expand mappings first by calling `vpeekc()` directly.
|
| |\ \ \
| | | | |
| | | | | |
fix(inccommand): do not change reg_prev_sub when previewing
|
| | | | | |
|
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | | |
Problem: The write message mentions characters, but it's actually bytes.
Solution: Change "C" to "B" and "characters" to "bytes".
https://github.com/vim/vim/commit/3f40ce78f5c178d15871bd784ed878c78f0b8a44
|
| |\ \ \
| | | | |
| | | | | |
fix: set RedrawingDisabled before entering aucmd_win
|
| | |/ / |
|
| |\ \ \
| | | | |
| | | | | |
feat(api): expose extmark right_gravity and end_right_gravity
|
| | |/ / |
|
| | | | |
|
| |\ \ \
| | |/ /
| |/| | |
vim-patch:8.2.1762: when a timer uses :stopinsert completion isn't stopped
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Problem: When a timer uses :stopinsert Insert mode completion isn't
stopped. (Stanley Chan)
Solution: Call ins_compl_prep(ESC).
https://github.com/vim/vim/commit/d0e1b7103c14eb0d175c6b245b4b6ed93a204da9
|
| |\ \ \
| | | | |
| | | | | |
input: never escape CSI bytes and clean up related names and comments
|
| | |/ / |
|
| |/ / |
|
| |/ |
|
|/
|
|
| |
listchars is not the right place for it.
|
|
|
|
|
|
|
|
|
|
|
| |
Nvim already resizes grid to the required width, so there is no need to
truncate the text in pum_redraw(). What's more, truncation is currently
done incorrectly because Vim patch 8.2.1995 was ported incorrectly.
This nearly reverts the truncation part of Vim patch 8.2.1995, but not
the part that reduces unnecessary calls to pum_redraw(). The original PR
https://github.com/vim/vim/pull/7306 didn't explain much about which
part of it actually reduces redraws.
|
| |
|
| |
|
|
|
|
|
|
|
| |
Problem: Cannot adjust sign highlighting for 'cursorline'.
Solution: Add CursorLineSign and CursorLineFold highlight groups.
(Gregory Anders, closes vim/vim#9201)
https://github.com/vim/vim/commit/e413ea04b716effb28eb49dbc98ad3f9f761545a
|
|\
| |
| | |
fix(highlight): always update window highlight if highlight changed
|
| | |
|
|/ |
|
| |
|
|\
| |
| | |
fix(float): fix potential heap corruption in win_redr_border
|
| | |
|
| | |
|
| | |
|
| | |
|
|/
|
|
|
|
|
|
| |
(#16164)
Problem: Filler lines are incorrect for other window in diff mode after
making a change.
Solution: Copy filler lines from the current window. (closes vim/vim#8809)
https://github.com/vim/vim/commit/841c225b9ef8c5bdf5e02968a0bd62521fff6ca8
|
| |
|
| |
|
|\
| |
| | |
refactor(api): Represent option dicts as a structs in C and reduce conversion overhead from lua
|
| |
| |
| |
| |
| |
| |
| | |
Do not copy a lot of lua strings (dict keys) to just strequal() them
Just compare them directly to a dedicated hash function.
feat(generators): HASHY McHASHFACE
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
win_set_buf can trigger autocmds if noautocmd=false. If they close the window,
code afterwards will dereference the freed win_T* wp pointer.
This interaction became possible after commit 1def3d1542d6a65f057e743faea39a760b50db87.
The reason deleting curbuf crashes, and not the buf passed to
`nvim_open_win`, is because the float initially edits curbuf (`win_init`)
until it's later set to edit buf (windows from `:new` and `:split <buf>`
behave similiarly: approx. `:split`, then `:buffer <buf>`).
`do_buffer` closes windows when their edited buffer is deleted (unless
it's the only window; N/A for floats), so the float closes when curbuf
is deleted, so we need to check `win_valid` after `win_set_buf` too.
Closes #15548
|
|/
|
|
|
|
|
|
|
|
| |
N, W, S, E are all inclusive, i.e., always anchor to the exact corner of the
window (including border). This line may also need change in this case (change
0 to -1):
This is most consistent and easiest to reason about, especially with GUIs whose
border do not need to have width/height of 1/1 in cell units.
Fix #15789
|
| |
|
| |
|