aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKunMing Xie <qqzz014@gmail.com>2017-09-06 01:04:57 +0800
committerJustin M. Keyes <justinkz@gmail.com>2017-09-05 19:04:57 +0200
commit82795c2c3a429b2725af882cad4317bed8f1b741 (patch)
tree9b1d177902fff1c73a7f1af5cc8f3877ff078e1f
parentce852bab04c63262ce8545c01a4ff4fc827148a1 (diff)
downloadrneovim-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.c13
-rw-r--r--src/nvim/version.c6
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,