forked from aniani/vim
Add 'relativenumber' patch from Markus Heidelberg.
This commit is contained in:
16
src/option.c
16
src/option.c
@@ -207,6 +207,7 @@
|
||||
# define PV_LBR OPT_WIN(WV_LBR)
|
||||
#endif
|
||||
#define PV_NU OPT_WIN(WV_NU)
|
||||
#define PV_RNU OPT_WIN(WV_RNU)
|
||||
#ifdef FEAT_LINEBREAK
|
||||
# define PV_NUW OPT_WIN(WV_NUW)
|
||||
#endif
|
||||
@@ -2015,6 +2016,9 @@ static struct vimoption
|
||||
(char_u *)NULL, PV_NONE,
|
||||
#endif
|
||||
{(char_u *)2000L, (char_u *)0L} SCRIPTID_INIT},
|
||||
{"relativenumber", "rnu", P_BOOL|P_VI_DEF|P_RWIN,
|
||||
(char_u *)VAR_WIN, PV_RNU,
|
||||
{(char_u *)FALSE, (char_u *)0L} SCRIPTID_INIT},
|
||||
{"remap", NULL, P_BOOL|P_VI_DEF,
|
||||
(char_u *)&p_remap, PV_NONE,
|
||||
{(char_u *)TRUE, (char_u *)0L} SCRIPTID_INIT},
|
||||
@@ -7230,10 +7234,18 @@ set_bool_option(opt_idx, varp, value, opt_flags)
|
||||
|
||||
/* 'list', 'number' */
|
||||
else if ((int *)varp == &curwin->w_p_list
|
||||
|| (int *)varp == &curwin->w_p_nu)
|
||||
|| (int *)varp == &curwin->w_p_nu
|
||||
|| (int *)varp == &curwin->w_p_rnu)
|
||||
{
|
||||
if (curwin->w_curswant != MAXCOL)
|
||||
curwin->w_set_curswant = TRUE;
|
||||
|
||||
/* If 'number' is set, reset 'relativenumber'. */
|
||||
/* If 'relativenumber' is set, reset 'number'. */
|
||||
if ((int *)varp == &curwin->w_p_nu && curwin->w_p_nu)
|
||||
curwin->w_p_rnu = FALSE;
|
||||
if ((int *)varp == &curwin->w_p_rnu && curwin->w_p_rnu)
|
||||
curwin->w_p_nu = FALSE;
|
||||
}
|
||||
|
||||
else if ((int *)varp == &curbuf->b_p_ro)
|
||||
@@ -9232,6 +9244,7 @@ get_varp(p)
|
||||
case PV_FMR: return (char_u *)&(curwin->w_p_fmr);
|
||||
#endif
|
||||
case PV_NU: return (char_u *)&(curwin->w_p_nu);
|
||||
case PV_RNU: return (char_u *)&(curwin->w_p_rnu);
|
||||
#ifdef FEAT_LINEBREAK
|
||||
case PV_NUW: return (char_u *)&(curwin->w_p_nuw);
|
||||
#endif
|
||||
@@ -9417,6 +9430,7 @@ copy_winopt(from, to)
|
||||
#endif
|
||||
to->wo_list = from->wo_list;
|
||||
to->wo_nu = from->wo_nu;
|
||||
to->wo_rnu = from->wo_rnu;
|
||||
#ifdef FEAT_LINEBREAK
|
||||
to->wo_nuw = from->wo_nuw;
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user