]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
patch 9.1.1114: enabling termguicolors automatically confuses users v9.1.1114
authorChristian Brabandt <cb@256bit.org>
Sun, 16 Feb 2025 08:30:00 +0000 (09:30 +0100)
committerChristian Brabandt <cb@256bit.org>
Sun, 16 Feb 2025 08:30:00 +0000 (09:30 +0100)
Problem:  enabling termguicolors automatically confuses users. Since
          querying the terminal for the RGB flag happens asynchronously,
          enabling termguicolors is noticeable by users as the highlighting changes
          and is therefore unexpected.
          (after v9.1.1054)
Solution: comment out that part for now. We may need another way to
          enable this in the future.

fixes: #16539
fixes: #16568
fixes: #16649

Signed-off-by: Christian Brabandt <cb@256bit.org>
runtime/doc/options.txt
runtime/doc/version9.txt
src/term.c
src/version.c

index 94fb73995a1fc941dc1ca15cb5b968f259de2c53..1a72e650c82cb777c5fec27cd15b993beed0d41f 100644 (file)
@@ -1,4 +1,4 @@
-*options.txt*  For Vim version 9.1.  Last change: 2025 Feb 08
+*options.txt*  For Vim version 9.1.  Last change: 2025 Feb 16
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -8515,15 +8515,6 @@ A jump table for the options with a short description can be found at |Q_op|.
        When on, uses |highlight-guifg| and |highlight-guibg| attributes in
        the terminal (thus using 24-bit color).
 
-       Will automatically be enabled, if Vim detects that it runs in a
-       capable terminal (when the terminal supports the RGB terminfo
-       capability or when the number of colors |t_Co| supported by the
-       terminal is 0x1000000, e.g. with $TERM=xterm-direct). Due to the async
-       nature of querying the terminal, enabling this automatically is
-       noticable. Use >
-               set notermguicolors
-<      to explicitly disable.
-
        Requires a ISO-8613-3 compatible terminal.  If setting this option
        does not work (produces a colorless UI) reading |xterm-true-color|
        might help.
index fbe9b9865c8b4403d088b0f93331be4743ef94a7..de38d08e2e63afac826170ee262a7ab1aa5c9d0e 100644 (file)
@@ -41583,8 +41583,6 @@ Adjusted default values ~
   increased to 12pt to accomodate modern high-dpi monitors
 - the default value of the 'keyprotocol' option has been updated and support
   for the ghostty terminal emulator (using kitty protocol) has been added
-- 'termguicolors' is automatically enabled if the terminal supports the RGB
-  terminfo capability or supports 0x1000000 colors
 
                                                        *changed-9.2*
 Changed~
index 318b982d75dd9f696b0a4f1dc8018e96fb8249f8..ea4c22d8b56c8ad7d8aec9fd07a787d9f31b5572 100644 (file)
@@ -1661,10 +1661,12 @@ set_color_count(int nr)
        sprintf((char *)nr_colors, "%d", t_colors);
     else
        *nr_colors = NUL;
+#if 0
 #ifdef FEAT_TERMGUICOLORS
     // xterm-direct, enable termguicolors, when it wasn't set yet
     if (t_colors == 0x1000000 && !p_tgc_set)
        set_option_value((char_u *)"termguicolors", 1L, NULL, 0);
+#endif
 #endif
     set_string_option_direct((char_u *)"t_Co", -1, nr_colors, OPT_FREE, 0);
 }
@@ -1701,7 +1703,9 @@ static char *(key_names[]) =
 # ifdef FEAT_TERMRESPONSE
     // Do those ones first, both may cause a screen redraw.
     "Co",
-    "RGB",
+    // disabled, because it switches termguicolors, but that
+    // is noticable and confuses users
+    // "RGB",
 # endif
     "ku", "kd", "kr", "kl",
     "#2", "#4", "%i", "*7",
@@ -7197,6 +7201,7 @@ got_code_from_term(char_u *code, int len)
 #endif
                may_adjust_color_count(val);
            }
+#if 0
 #ifdef FEAT_TERMGUICOLORS
            // when RGB result comes back, it is supported when the result contains an '='
            else if (name[0] == 'R' && name[1] == 'G' && name[2] == 'B' && code[9] == '=')
@@ -7213,6 +7218,7 @@ got_code_from_term(char_u *code, int len)
                    set_option_value((char_u *)"termguicolors", 1L, NULL, 0);
                }
            }
+#endif
 #endif
            else
            {
index 5fe62548ff2244d0ee22926093fbf5138191bc43..deff163335a57e15772794818bc9c09fde139249 100644 (file)
@@ -704,6 +704,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1114,
 /**/
     1113,
 /**/