|
250 | 250 | # define PV_COLE OPT_WIN(WV_COLE) |
251 | 251 | #endif |
252 | 252 | #ifdef FEAT_TERMINAL |
253 | | -# define PV_TK OPT_WIN(WV_TK) |
254 | | -# define PV_TMS OPT_WIN(WV_TMS) |
| 253 | +# define PV_TWK OPT_WIN(WV_TWK) |
| 254 | +# define PV_TWS OPT_WIN(WV_TWS) |
| 255 | +# define PV_TWSL OPT_BUF(BV_TWSL) |
255 | 256 | #endif |
256 | 257 | #ifdef FEAT_SIGNS |
257 | 258 | # define PV_SCL OPT_WIN(WV_SCL) |
@@ -373,6 +374,9 @@ static long p_wm; |
373 | 374 | #ifdef FEAT_KEYMAP |
374 | 375 | static char_u *p_keymap; |
375 | 376 | #endif |
| 377 | +#ifdef FEAT_TERMINAL |
| 378 | +static long p_twsl; |
| 379 | +#endif |
376 | 380 |
|
377 | 381 | /* Saved values for when 'bin' is set. */ |
378 | 382 | static int p_et_nobin; |
@@ -2750,27 +2754,57 @@ static struct vimoption options[] = |
2750 | 2754 | {(char_u *)FALSE, (char_u *)FALSE} |
2751 | 2755 | #endif |
2752 | 2756 | SCRIPTID_INIT}, |
| 2757 | + /* TODO: remove this deprecated entry */ |
2753 | 2758 | {"terminalscroll", "tlsl", P_NUM|P_VI_DEF|P_VIM|P_RBUF, |
2754 | 2759 | #ifdef FEAT_TERMINAL |
2755 | | - (char_u *)&p_tlsl, PV_NONE, |
| 2760 | + (char_u *)&p_twsl, PV_TWSL, |
2756 | 2761 | {(char_u *)10000L, (char_u *)10000L} |
2757 | 2762 | #else |
2758 | 2763 | (char_u *)NULL, PV_NONE, |
2759 | 2764 | {(char_u *)NULL, (char_u *)0L} |
2760 | 2765 | #endif |
2761 | 2766 | SCRIPTID_INIT}, |
2762 | | - {"termkey", "tk", P_STRING|P_ALLOCED|P_RWIN|P_VI_DEF, |
| 2767 | + /* TODO: remove this deprecated entry */ |
| 2768 | + {"termkey", "tk", P_STRING|P_ALLOCED|P_RWIN|P_VI_DEF, |
2763 | 2769 | #ifdef FEAT_TERMINAL |
2764 | | - (char_u *)VAR_WIN, PV_TK, |
| 2770 | + (char_u *)VAR_WIN, PV_TWK, |
2765 | 2771 | {(char_u *)"", (char_u *)NULL} |
2766 | 2772 | #else |
2767 | 2773 | (char_u *)NULL, PV_NONE, |
2768 | 2774 | {(char_u *)NULL, (char_u *)0L} |
2769 | 2775 | #endif |
2770 | 2776 | SCRIPTID_INIT}, |
| 2777 | + /* TODO: remove this deprecated entry */ |
2771 | 2778 | {"termsize", "tms", P_STRING|P_ALLOCED|P_RWIN|P_VI_DEF, |
2772 | 2779 | #ifdef FEAT_TERMINAL |
2773 | | - (char_u *)VAR_WIN, PV_TMS, |
| 2780 | + (char_u *)VAR_WIN, PV_TWS, |
| 2781 | + {(char_u *)"", (char_u *)NULL} |
| 2782 | +#else |
| 2783 | + (char_u *)NULL, PV_NONE, |
| 2784 | + {(char_u *)NULL, (char_u *)0L} |
| 2785 | +#endif |
| 2786 | + SCRIPTID_INIT}, |
| 2787 | + {"termwinkey", "twk", P_STRING|P_ALLOCED|P_RWIN|P_VI_DEF, |
| 2788 | +#ifdef FEAT_TERMINAL |
| 2789 | + (char_u *)VAR_WIN, PV_TWK, |
| 2790 | + {(char_u *)"", (char_u *)NULL} |
| 2791 | +#else |
| 2792 | + (char_u *)NULL, PV_NONE, |
| 2793 | + {(char_u *)NULL, (char_u *)0L} |
| 2794 | +#endif |
| 2795 | + SCRIPTID_INIT}, |
| 2796 | + {"termwinscroll", "twsl", P_NUM|P_VI_DEF|P_VIM|P_RBUF, |
| 2797 | +#ifdef FEAT_TERMINAL |
| 2798 | + (char_u *)&p_twsl, PV_TWSL, |
| 2799 | + {(char_u *)10000L, (char_u *)10000L} |
| 2800 | +#else |
| 2801 | + (char_u *)NULL, PV_NONE, |
| 2802 | + {(char_u *)NULL, (char_u *)0L} |
| 2803 | +#endif |
| 2804 | + SCRIPTID_INIT}, |
| 2805 | + {"termwinsize", "tws", P_STRING|P_ALLOCED|P_RWIN|P_VI_DEF, |
| 2806 | +#ifdef FEAT_TERMINAL |
| 2807 | + (char_u *)VAR_WIN, PV_TWS, |
2774 | 2808 | {(char_u *)"", (char_u *)NULL} |
2775 | 2809 | #else |
2776 | 2810 | (char_u *)NULL, PV_NONE, |
@@ -7452,19 +7486,20 @@ did_set_string_option( |
7452 | 7486 | #endif |
7453 | 7487 |
|
7454 | 7488 | #ifdef FEAT_TERMINAL |
7455 | | - /* 'termkey' */ |
7456 | | - else if (varp == &curwin->w_p_tk) |
| 7489 | + /* 'termwinkey' */ |
| 7490 | + else if (varp == &curwin->w_p_twk) |
7457 | 7491 | { |
7458 | | - if (*curwin->w_p_tk != NUL && string_to_key(curwin->w_p_tk, TRUE) == 0) |
| 7492 | + if (*curwin->w_p_twk != NUL |
| 7493 | + && string_to_key(curwin->w_p_twk, TRUE) == 0) |
7459 | 7494 | errmsg = e_invarg; |
7460 | 7495 | } |
7461 | | - /* 'termsize' */ |
7462 | | - else if (varp == &curwin->w_p_tms) |
| 7496 | + /* 'termwinsize' */ |
| 7497 | + else if (varp == &curwin->w_p_tws) |
7463 | 7498 | { |
7464 | | - if (*curwin->w_p_tms != NUL) |
| 7499 | + if (*curwin->w_p_tws != NUL) |
7465 | 7500 | { |
7466 | | - p = skipdigits(curwin->w_p_tms); |
7467 | | - if (p == curwin->w_p_tms |
| 7501 | + p = skipdigits(curwin->w_p_tws); |
| 7502 | + if (p == curwin->w_p_tws |
7468 | 7503 | || (*p != 'x' && *p != '*') |
7469 | 7504 | || *skipdigits(p + 1) != NUL) |
7470 | 7505 | errmsg = e_invarg; |
@@ -10687,8 +10722,9 @@ get_varp(struct vimoption *p) |
10687 | 10722 | case PV_COLE: return (char_u *)&(curwin->w_p_cole); |
10688 | 10723 | #endif |
10689 | 10724 | #ifdef FEAT_TERMINAL |
10690 | | - case PV_TK: return (char_u *)&(curwin->w_p_tk); |
10691 | | - case PV_TMS: return (char_u *)&(curwin->w_p_tms); |
| 10725 | + case PV_TWK: return (char_u *)&(curwin->w_p_twk); |
| 10726 | + case PV_TWS: return (char_u *)&(curwin->w_p_tws); |
| 10727 | + case PV_TWSL: return (char_u *)&(curbuf->b_p_twsl); |
10692 | 10728 | #endif |
10693 | 10729 |
|
10694 | 10730 | case PV_AI: return (char_u *)&(curbuf->b_p_ai); |
@@ -10887,8 +10923,8 @@ copy_winopt(winopt_T *from, winopt_T *to) |
10887 | 10923 | to->wo_cole = from->wo_cole; |
10888 | 10924 | #endif |
10889 | 10925 | #ifdef FEAT_TERMINAL |
10890 | | - to->wo_tk = vim_strsave(from->wo_tk); |
10891 | | - to->wo_tms = vim_strsave(from->wo_tms); |
| 10926 | + to->wo_twk = vim_strsave(from->wo_twk); |
| 10927 | + to->wo_tws = vim_strsave(from->wo_tws); |
10892 | 10928 | #endif |
10893 | 10929 | #ifdef FEAT_FOLDING |
10894 | 10930 | to->wo_fdc = from->wo_fdc; |
@@ -10957,8 +10993,8 @@ check_winopt(winopt_T *wop UNUSED) |
10957 | 10993 | check_string_option(&wop->wo_cocu); |
10958 | 10994 | #endif |
10959 | 10995 | #ifdef FEAT_TERMINAL |
10960 | | - check_string_option(&wop->wo_tk); |
10961 | | - check_string_option(&wop->wo_tms); |
| 10996 | + check_string_option(&wop->wo_twk); |
| 10997 | + check_string_option(&wop->wo_tws); |
10962 | 10998 | #endif |
10963 | 10999 | #ifdef FEAT_LINEBREAK |
10964 | 11000 | check_string_option(&wop->wo_briopt); |
@@ -11000,8 +11036,8 @@ clear_winopt(winopt_T *wop UNUSED) |
11000 | 11036 | clear_string_option(&wop->wo_cocu); |
11001 | 11037 | #endif |
11002 | 11038 | #ifdef FEAT_TERMINAL |
11003 | | - clear_string_option(&wop->wo_tk); |
11004 | | - clear_string_option(&wop->wo_tms); |
| 11039 | + clear_string_option(&wop->wo_twk); |
| 11040 | + clear_string_option(&wop->wo_tws); |
11005 | 11041 | #endif |
11006 | 11042 | } |
11007 | 11043 |
|
@@ -11177,6 +11213,9 @@ buf_copy_options(buf_T *buf, int flags) |
11177 | 11213 | #ifdef FEAT_KEYMAP |
11178 | 11214 | buf->b_p_keymap = vim_strsave(p_keymap); |
11179 | 11215 | buf->b_kmap_state |= KEYMAP_INIT; |
| 11216 | +#endif |
| 11217 | +#ifdef FEAT_TERMINAL |
| 11218 | + buf->b_p_twsl = p_twsl; |
11180 | 11219 | #endif |
11181 | 11220 | /* This isn't really an option, but copying the langmap and IME |
11182 | 11221 | * state from the current buffer is better than resetting it. */ |
|
0 commit comments