diff options
author | KunMing Xie <qqzz014@gmail.com> | 2017-09-06 01:04:57 +0800 |
---|---|---|
committer | Justin M. Keyes <justinkz@gmail.com> | 2017-09-05 19:04:57 +0200 |
commit | 82795c2c3a429b2725af882cad4317bed8f1b741 (patch) | |
tree | 9b1d177902fff1c73a7f1af5cc8f3877ff078e1f | |
parent | ce852bab04c63262ce8545c01a4ff4fc827148a1 (diff) | |
download | rneovim-82795c2c3a429b2725af882cad4317bed8f1b741.tar.gz rneovim-82795c2c3a429b2725af882cad4317bed8f1b741.tar.bz2 rneovim-82795c2c3a429b2725af882cad4317bed8f1b741.zip |
vim-patch: 8.0.0{181,182,188} (#7152)
vim-patch:8.0.0181
Problem: When 'cursorbind' and 'cursorcolumn' are both on, the column
highlignt in non-current windows is wrong.
Solution: Add validate_cursor(). (Masanori Misono, closes vim/vim#1372)
https://github.com/vim/vim/commit/519d7785f4437762c07b2e04217f83a069a8c663
vim-patch:8.0.0182
Problem: When 'cursorbind' and 'cursorline' are set, but 'cursorcolumn' is
not, then the cursor line highlighting is not updated. (Hirohito
Higashi)
Solution: Call redraw_later() with NOT_VALID.
https://github.com/vim/vim/commit/e47683a0913f102b6ae08c8848d5aa675d99b188
vim-patch:8.0.0188
Problem: Using NOT_VALID for redraw_later() to update the cursor
line/column highlighting is not efficient.
Solution: Call validate_cursor() when 'cul' or 'cuc' is set.
https://github.com/vim/vim/commit/9506cad7a1a6e52a613f356de969cbd980815777
-rw-r--r-- | src/nvim/move.c | 13 | ||||
-rw-r--r-- | src/nvim/version.c | 6 |
2 files changed, 12 insertions, 7 deletions
diff --git a/src/nvim/move.c b/src/nvim/move.c index 4d646f5a4b..9693132846 100644 --- a/src/nvim/move.c +++ b/src/nvim/move.c @@ -2164,16 +2164,21 @@ void do_check_cursorbind(void) int restart_edit_save = restart_edit; restart_edit = true; check_cursor(); + if (curwin->w_p_cul || curwin->w_p_cuc) { + validate_cursor(); + } restart_edit = restart_edit_save; } - /* Correct cursor for multi-byte character. */ - if (has_mbyte) + // Correct cursor for multi-byte character. + if (has_mbyte) { mb_adjust_cursor(); + } redraw_later(VALID); - /* Only scroll when 'scrollbind' hasn't done this. */ - if (!curwin->w_p_scb) + // Only scroll when 'scrollbind' hasn't done this. + if (!curwin->w_p_scb) { update_topline(); + } curwin->w_redr_status = true; } } diff --git a/src/nvim/version.c b/src/nvim/version.c index 6e24e30a09..ce1cc03c1f 100644 --- a/src/nvim/version.c +++ b/src/nvim/version.c @@ -764,14 +764,14 @@ static const int included_patches[] = { // 191 NA 190, // 189, - // 188, + 188, // 187 NA // 186, // 185, // 184, // 183, - // 182, - // 181, + 182, + 181, // 180, 179, 178, |