diff options
Diffstat (limited to 'src/nvim/screen.c')
-rw-r--r-- | src/nvim/screen.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/nvim/screen.c b/src/nvim/screen.c index 3cbdbdd81f..2dbf3f8888 100644 --- a/src/nvim/screen.c +++ b/src/nvim/screen.c @@ -129,10 +129,10 @@ #include "nvim/strings.h" #include "nvim/syntax.h" #include "nvim/term.h" -#include "nvim/ui.h" #include "nvim/undo.h" #include "nvim/version.h" #include "nvim/window.h" +#include "nvim/os/time.h" #define MB_FILLER_CHAR '<' /* character used when a double-width character * doesn't fit. */ @@ -1205,8 +1205,13 @@ static void win_update(win_T *wp) */ if (VIsual_mode == Ctrl_V) { colnr_T fromc, toc; + int save_ve_flags = ve_flags; + + if (curwin->w_p_lbr) + ve_flags = VE_ALL; getvcols(wp, &VIsual, &curwin->w_cursor, &fromc, &toc); + ve_flags = save_ve_flags; ++toc; if (curwin->w_curswant == MAXCOL) toc = MAXCOL; @@ -3725,6 +3730,7 @@ win_line ( * special character (via 'listchars' option "precedes:<char>". */ if (lcs_prec_todo != NUL + && wp->w_p_list && (wp->w_p_wrap ? wp->w_skipcol > 0 : wp->w_leftcol > 0) && filler_todo <= 0 && draw_state > WL_NR @@ -6255,7 +6261,7 @@ void check_for_delay(int check_msg_scroll) && !did_wait_return && emsg_silent == 0) { out_flush(); - ui_delay(1000L, true); + os_delay(1000L, true); emsg_on_display = FALSE; if (check_msg_scroll) msg_scroll = FALSE; |