]> granicus.if.org Git - vim/commitdiff
patch 9.0.1117: terminfo entries for bracketed paste are not used v9.0.1117
authorBram Moolenaar <Bram@vim.org>
Fri, 30 Dec 2022 21:10:25 +0000 (21:10 +0000)
committerBram Moolenaar <Bram@vim.org>
Fri, 30 Dec 2022 21:10:25 +0000 (21:10 +0000)
Problem:    Terminfo entries for bracketed paste are not used.
Solution:   Use the newly added terminfo entries for bracketed paste.
            Correct mixup of output strings and key codes.

src/term.c
src/termdefs.h
src/version.c

index e83c198bdf2e0c2995e6b51f3e2a3751bc39de8c..e7466e684f03aee1381050c6217da7055bd91259 100644 (file)
@@ -1674,6 +1674,7 @@ static char *(key_names[]) =
     "k7", "k8", "k9", "k;", "F1", "F2",
     "%1", "&8", "kb", "kI", "kD", "kh",
     "@7", "kP", "kN", "K1", "K3", "K4", "K5", "kB",
+    "PS", "PE",
     NULL
 };
 #endif
@@ -1730,13 +1731,11 @@ get_term_entries(int *height, int *width)
                        {KS_U7, "u7"}, {KS_RFG, "RF"}, {KS_RBG, "RB"},
                        {KS_8F, "8f"}, {KS_8B, "8b"}, {KS_8U, "8u"},
                        {KS_CBE, "BE"}, {KS_CBD, "BD"},
-                       {KS_CPS, "PS"}, {KS_CPE, "PE"},
                        {KS_CST, "ST"}, {KS_CRT, "RT"},
                        {KS_SSI, "Si"}, {KS_SRI, "Ri"},
                        {(enum SpecialKey)0, NULL}
                    };
     int                    i;
-    char_u         *p;
     static char_u   tstrbuf[TBUFSZ];
     char_u         *tp = tstrbuf;
 
@@ -1775,7 +1774,8 @@ get_term_entries(int *height, int *width)
     for (i = 0; key_names[i] != NULL; ++i)
        if (find_termcode((char_u *)key_names[i]) == NULL)
        {
-           p = TGETSTR(key_names[i], &tp);
+           char_u *p = TGETSTR(key_names[i], &tp);
+
            // if cursor-left == backspace, ignore it (televideo 925)
            if (p != NULL
                    && (*p != Ctrl_H
@@ -1803,8 +1803,8 @@ get_term_entries(int *height, int *width)
 # ifndef hpux
     BC = (char *)TGETSTR("bc", &tp);
     UP = (char *)TGETSTR("up", &tp);
-    p = TGETSTR("pc", &tp);
-    if (p)
+    char_u *p = TGETSTR("pc", &tp);
+    if (p != NULL)
        PC = *p;
 # endif
 }
index 9e9601f1a91861ad4ddbba9183ce29f05ddfcb17..a258dadb7265adfce25d56bd109968f84002f413 100644 (file)
@@ -108,8 +108,6 @@ enum SpecialKey
     KS_8U,     // set underline color (RGB)
     KS_CBE,    // enable bracketed paste mode
     KS_CBD,    // disable bracketed paste mode
-    KS_CPS,    // start of bracketed paste
-    KS_CPE,    // end of bracketed paste
     KS_CST,    // save window title
     KS_CRT,    // restore window title
     KS_SSI,    // save icon text
@@ -216,8 +214,6 @@ extern char_u *(term_strings[]);    // current terminal strings
 #define T_8U   (TERM_STR(KS_8U))       // set underline color (RGB)
 #define T_BE   (TERM_STR(KS_CBE))      // enable bracketed paste mode
 #define T_BD   (TERM_STR(KS_CBD))      // disable bracketed paste mode
-#define T_PS   (TERM_STR(KS_CPS))      // start of bracketed paste
-#define T_PE   (TERM_STR(KS_CPE))      // end of bracketed paste
 #define T_CST  (TERM_STR(KS_CST))      // save window title
 #define T_CRT  (TERM_STR(KS_CRT))      // restore window title
 #define T_SSI  (TERM_STR(KS_SSI))      // save icon text
index 429d76c4c4f77c3d1bf0a7c673cabe8adb625079..9c64a27b110a9775ba6387a7c88ef7315de54336 100644 (file)
@@ -695,6 +695,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1117,
 /**/
     1116,
 /**/