@@ -441,8 +441,8 @@ struct vimoption
441441
442442 /* when option changed, what to display: */
443443#define P_RSTAT 0x1000 /* redraw status lines */
444- #define P_RWIN 0x2000 /* redraw current window */
445- #define P_RBUF 0x4000 /* redraw current buffer */
444+ #define P_RWIN 0x2000 /* redraw current window and recompute text */
445+ #define P_RBUF 0x4000 /* redraw current buffer and recompute text */
446446#define P_RALL 0x6000 /* redraw all windows */
447447#define P_RCLR 0x7000 /* clear and redraw all */
448448
@@ -463,6 +463,7 @@ struct vimoption
463463#define P_CURSWANT 0x4000000L /* update curswant required; not needed when
464464 * there is a redraw flag */
465465#define P_NDNAME 0x8000000L /* only normal dir name chars allowed */
466+ #define P_RWINONLY 0x10000000L /* only redraw current window */
466467
467468#define ISK_LATIN1 (char_u *)"@,48-57,_,192-255"
468469
@@ -979,7 +980,7 @@ static struct vimoption options[] =
979980 (char_u * )NULL , PV_NONE ,
980981#endif
981982 {(char_u * )FALSE, (char_u * )0L } SCRIPTID_INIT },
982- {"cursorline" , "cul" , P_BOOL |P_VI_DEF |P_RWIN ,
983+ {"cursorline" , "cul" , P_BOOL |P_VI_DEF |P_RWINONLY ,
983984#ifdef FEAT_SYN_HL
984985 (char_u * )VAR_WIN , PV_CUL ,
985986#else
@@ -9238,6 +9239,8 @@ check_redraw(long_u flags)
92389239 changed_window_setting ();
92399240 if (flags & P_RBUF )
92409241 redraw_curbuf_later (NOT_VALID );
9242+ if (flags & P_RWINONLY )
9243+ redraw_later (NOT_VALID );
92419244 if (doclear )
92429245 redraw_all_later (CLEAR );
92439246 else if (all )
0 commit comments