# HG changeset patch # User Bram Moolenaar # Date 1661533207 -7200 # Node ID 1342ee83ab978ae68d96387d5b722d43aef3db98 # Parent 5454d999bbd467a0013530d9ea650a0a2b5ad55e patch 9.0.0280: the builtin termcap list depends on the version Commit: https://github.com/vim/vim/commit/2ee347fbc0619179fefb9933e9bb1165463507b3 Author: Bram Moolenaar Date: Fri Aug 26 17:53:44 2022 +0100 patch 9.0.0280: the builtin termcap list depends on the version Problem: The builtin termcap list depends on the version. Solution: Always include all termcap entries. Remove duplicate lines. diff --git a/runtime/doc/builtin.txt b/runtime/doc/builtin.txt --- a/runtime/doc/builtin.txt +++ b/runtime/doc/builtin.txt @@ -10491,7 +10491,8 @@ use: `if exists('+shellslash')` acl Compiled with |ACL| support. -all_builtin_terms Compiled with all builtin terminals enabled. +all_builtin_terms Compiled with all builtin terminals enabled. (always + true) amiga Amiga version of Vim. arabic Compiled with Arabic support |Arabic|. arp Compiled with ARP support (Amiga). @@ -10505,7 +10506,7 @@ browse Compiled with |:browse| support work. browsefilter Compiled with support for |browsefilter|. bsd Compiled on an OS in the BSD family (excluding macOS). -builtin_terms Compiled with some builtin terminals. +builtin_terms Compiled with some builtin terminals. (always true) byte_offset Compiled with support for 'o' in 'statusline' channel Compiled with support for |channel| and |job| cindent Compiled with 'cindent' support. (always true) diff --git a/runtime/doc/term.txt b/runtime/doc/term.txt --- a/runtime/doc/term.txt +++ b/runtime/doc/term.txt @@ -43,15 +43,10 @@ On non-Unix systems a termcap is only av TERMCAP defined. *builtin-terms* *builtin_terms* -Which builtin terminals are available depends on a few defines in feature.h, -which need to be set at compile time: - define output of ":version" terminals builtin ~ -NO_BUILTIN_TCAPS -builtin_terms none -SOME_BUILTIN_TCAPS +builtin_terms most common ones (default) -ALL_BUILTIN_TCAPS ++builtin_terms all available - -You can see a list of available builtin terminals with ":set term=xxx" (when -not running the GUI). Also see |+builtin_terms|. +A number of builtin terminals are available. Since patch 9.0.0280 there is no +difference between Vim versions. You can see a list of available builtin +terminals in the error message you get for `:set term=xxx` (when not running +the GUI). Also see |+builtin_terms|. If the termcap code is included Vim will try to get the strings for the terminal you are using from the termcap file and the builtin termcaps. Both diff --git a/runtime/doc/various.txt b/runtime/doc/various.txt --- a/runtime/doc/various.txt +++ b/runtime/doc/various.txt @@ -342,8 +342,8 @@ m *+balloon_eval* |balloon-eval| suppor H *+balloon_eval_term* |balloon-eval| support in the terminal, 'balloonevalterm' N *+browse* |:browse| command -N *+builtin_terms* some terminals builtin |builtin-terms| -B *++builtin_terms* maximal terminals builtin |builtin-terms| +T *++builtin_terms* maximal terminals builtin |builtin-terms| Always + enabled since 9.0.0280 N *+byte_offset* support for 'o' flag in 'statusline' option, "go" and ":goto" commands. m *+channel* inter process communication |channel| diff --git a/src/evalfunc.c b/src/evalfunc.c --- a/src/evalfunc.c +++ b/src/evalfunc.c @@ -5469,20 +5469,8 @@ f_has(typval_T *argvars, typval_T *rettv 0 #endif }, - {"builtin_terms", -#if defined(SOME_BUILTIN_TCAPS) || defined(ALL_BUILTIN_TCAPS) - 1 -#else - 0 -#endif - }, - {"all_builtin_terms", -#if defined(ALL_BUILTIN_TCAPS) - 1 -#else - 0 -#endif - }, + {"builtin_terms", 1}, + {"all_builtin_terms", 1}, {"browsefilter", #if defined(FEAT_BROWSE) && (defined(USE_FILE_CHOOSER) \ || defined(FEAT_GUI_MSWIN) \ diff --git a/src/feature.h b/src/feature.h --- a/src/feature.h +++ b/src/feature.h @@ -120,6 +120,7 @@ * +path_extra up/downwards searching in 'path' and 'tags'. * +wildignore 'wildignore' and 'backupskip' options * +wildmenu 'wildmenu' option + * +builtin_terms all builtin termcap entries included * * Obsolete: * +tag_old_static Old style static tags: "file:tag file ..". @@ -375,37 +376,17 @@ #endif /* - * +builtin_terms Choose one out of the following four: - * - * NO_BUILTIN_TCAPS Do not include any builtin termcap entries (used only - * with HAVE_TGETENT defined). - * - * (nothing) Machine specific termcap entries will be included. - * - * SOME_BUILTIN_TCAPS Include most useful builtin termcap entries (used only - * with NO_BUILTIN_TCAPS not defined). - * This is the default. - * - * ALL_BUILTIN_TCAPS Include all builtin termcap entries - * (used only with NO_BUILTIN_TCAPS not defined). + * +cryptv Encryption (originally by Mohsin Ahmed ). */ -#ifdef HAVE_TGETENT -// #define NO_BUILTIN_TCAPS -#endif - -#if !defined(NO_BUILTIN_TCAPS) -# ifdef FEAT_BIG -# define ALL_BUILTIN_TCAPS -# else -# define SOME_BUILTIN_TCAPS // default -# endif +#if defined(FEAT_NORMAL) && !defined(FEAT_CRYPT) || defined(PROTO) +# define FEAT_CRYPT #endif /* - * +cryptv Encryption (by Mohsin Ahmed ). + * libsodium - add cryptography support */ -#if defined(FEAT_NORMAL) && !defined(FEAT_CRYPT) || defined(PROTO) -# define FEAT_CRYPT +#if defined(HAVE_SODIUM) && defined(FEAT_BIG) +# define FEAT_SODIUM #endif /* @@ -514,13 +495,6 @@ # define FEAT_SOUND_CANBERRA #endif -/* - * libsodium - add cryptography support - */ -#if defined(HAVE_SODIUM) && defined(FEAT_BIG) -# define FEAT_SODIUM -#endif - // There are two ways to use XPM. #if (defined(HAVE_XM_XPMP_H) && defined(FEAT_GUI_MOTIF)) \ || defined(HAVE_X11_XPM_H) diff --git a/src/term.c b/src/term.c --- a/src/term.c +++ b/src/term.c @@ -223,7 +223,6 @@ static int initial_cursor_blink = FALSE; */ static struct builtin_term builtin_termcaps[] = { - #if defined(FEAT_GUI) /* * GUI pseudo term-cap. @@ -276,9 +275,6 @@ static struct builtin_term builtin_termc // in check_termcode() #endif -#ifndef NO_BUILTIN_TCAPS - -# if defined(AMIGA) || defined(ALL_BUILTIN_TCAPS) /* * Amiga console window, default for Amiga */ @@ -376,71 +372,7 @@ static struct builtin_term builtin_termc {TERMCAP2KEY('#', '2'), "\233\065\064~"}, // shifted home key {TERMCAP2KEY('#', '3'), "\233\065\060~"}, // shifted insert key {TERMCAP2KEY('*', '7'), "\233\065\065~"}, // shifted end key -# endif - -# ifdef ALL_BUILTIN_TCAPS -/* - * almost standard ANSI terminal - */ - {(int)KS_CE, "\033[K"}, - {(int)KS_CD, "\033[J"}, - {(int)KS_AL, "\033[L"}, -# ifdef TERMINFO - {(int)KS_CAL, "\033[%p1%dL"}, -# else - {(int)KS_CAL, "\033[%dL"}, -# endif - {(int)KS_DL, "\033[M"}, -# ifdef TERMINFO - {(int)KS_CDL, "\033[%p1%dM"}, -# else - {(int)KS_CDL, "\033[%dM"}, -# endif - {(int)KS_CL, "\033[H\033[2J"}, -#ifdef notyet - {(int)KS_VI, "[VI]"}, // cursor invisible, VT320: CSI ? 25 l - {(int)KS_VE, "[VE]"}, // cursor visible, VT320: CSI ? 25 h -#endif - {(int)KS_ME, "\033[m"}, // normal mode - {(int)KS_MR, "\033[7m"}, // reverse - {(int)KS_MD, "\033[1m"}, // bold - {(int)KS_SO, "\033[31m"}, // standout mode: red - {(int)KS_SE, "\033[m"}, // standout end - {(int)KS_CZH, "\033[35m"}, // italic: purple - {(int)KS_CZR, "\033[m"}, // italic end - {(int)KS_US, "\033[4m"}, // underscore mode - {(int)KS_UE, "\033[m"}, // underscore end - {(int)KS_CCO, "8"}, // allow 8 colors -# ifdef TERMINFO - {(int)KS_CAB, "\033[4%p1%dm"},// set background color - {(int)KS_CAF, "\033[3%p1%dm"},// set foreground color -# else - {(int)KS_CAB, "\033[4%dm"}, // set background color - {(int)KS_CAF, "\033[3%dm"}, // set foreground color -# endif - {(int)KS_OP, "\033[m"}, // reset colors - {(int)KS_MS, "y"}, // safe to move cur in reverse mode - {(int)KS_UT, "y"}, // guessed - {(int)KS_LE, "\b"}, -# ifdef TERMINFO - {(int)KS_CM, "\033[%i%p1%d;%p2%dH"}, -# else - {(int)KS_CM, "\033[%i%d;%dH"}, -# endif - {(int)KS_SR, "\033M"}, -# ifdef TERMINFO - {(int)KS_CRI, "\033[%p1%dC"}, -# else - {(int)KS_CRI, "\033[%dC"}, -# endif - - {K_UP, "\033[A"}, - {K_DOWN, "\033[B"}, - {K_LEFT, "\033[D"}, - {K_RIGHT, "\033[C"}, -# endif - -# if defined(UNIX) || defined(ALL_BUILTIN_TCAPS) || defined(SOME_BUILTIN_TCAPS) + /* * standard ANSI terminal, default for unix */ @@ -474,9 +406,7 @@ static struct builtin_term builtin_termc # else {(int)KS_CRI, "\033[%dC"}, # endif -# endif - -# if defined(ALL_BUILTIN_TCAPS) + /* * These codes are valid when nansi.sys or equivalent has been installed. * Function keys on a PC are preceded with a NUL. These are converted into @@ -555,9 +485,7 @@ static struct builtin_term builtin_termc {K_END, "\316O"}, {K_PAGEDOWN, "\316Q"}, {K_PAGEUP, "\316I"}, -# endif - -# if defined(MSWIN) || defined(ALL_BUILTIN_TCAPS) + /* * These codes are valid for the Win32 Console . The entries that start with * ESC | are translated into console calls in os_win32.c. The function keys @@ -689,9 +617,7 @@ static struct builtin_term builtin_termc {K_K9, "\316\376"}, {K_BS, "\316x"}, {K_S_BS, "\316y"}, -# endif - -# if defined(VMS) || defined(ALL_BUILTIN_TCAPS) + /* * VT320 is working as an ANSI terminal compatible DEC terminal. * (it covers VT1x0, VT2x0 and VT3x0 up to VT320 on VMS as well) @@ -791,9 +717,7 @@ static struct builtin_term builtin_termc {K_K8, "\033Ox"}, // keypad 8 {K_K9, "\033Oy"}, // keypad 9 {K_BS, "\x7f"}, // for some reason 0177 doesn't work -# endif - -# if defined(ALL_BUILTIN_TCAPS) + /* * Ordinary vt52 */ @@ -818,9 +742,7 @@ static struct builtin_term builtin_termc {K_F3, "\033R"}, {(int)KS_CL, "\033H\033J"}, {(int)KS_MS, "y"}, -# endif - -# if defined(UNIX) || defined(ALL_BUILTIN_TCAPS) || defined(SOME_BUILTIN_TCAPS) + {(int)KS_NAME, "xterm"}, {(int)KS_CE, "\033[K"}, {(int)KS_AL, "\033[L"}, @@ -1012,9 +934,7 @@ static struct builtin_term builtin_termc {TERMCAP2KEY('F', 'P'), "\033[56;*~"}, // F35 {TERMCAP2KEY('F', 'Q'), "\033[57;*~"}, // F36 {TERMCAP2KEY('F', 'R'), "\033[58;*~"}, // F37 -# endif - -# if defined(UNIX) || defined(ALL_BUILTIN_TCAPS) + /* * iris-ansi for Silicon Graphics machines. */ @@ -1128,9 +1048,7 @@ static struct builtin_term builtin_termc {K_END, "\033[146q"}, {K_PAGEUP, "\033[150q"}, {K_PAGEDOWN, "\033[154q"}, -# endif - -# if defined(DEBUG) || defined(ALL_BUILTIN_TCAPS) + /* * for debugging */ @@ -1316,9 +1234,6 @@ static struct builtin_term builtin_termc {K_K7, "[K7]"}, {K_K8, "[K8]"}, {K_K9, "[K9]"}, -# endif - -#endif // NO_BUILTIN_TCAPS /* * The most minimal terminal: only clear screen and cursor positioning diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -134,15 +134,7 @@ static char *(features[]) = #else "-browse", #endif -#ifdef NO_BUILTIN_TCAPS - "-builtin_terms", -#endif -#ifdef SOME_BUILTIN_TCAPS - "+builtin_terms", -#endif -#ifdef ALL_BUILTIN_TCAPS "++builtin_terms", -#endif #ifdef FEAT_BYTEOFF "+byte_offset", #else @@ -716,6 +708,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 280, +/**/ 279, /**/ 278,