changeset 28501:e1c6e1f3c1bb v8.2.4775

patch 8.2.4775: SpellBad highlighting does not work in Konsole Commit: https://github.com/vim/vim/commit/280aebfd356c4fc8b84f13314068411157ad72f2 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Apr 17 17:34:42 2022 +0100 patch 8.2.4775: SpellBad highlighting does not work in Konsole Problem: SpellBad highlighting does not work in Konsole. Solution: Do not keep t_8u defined for Konsole. Redraw when t_8u is reset. (closes #10177)
author Bram Moolenaar <Bram@vim.org>
date Sun, 17 Apr 2022 18:45:04 +0200
parents 8d6728463e9f
children 2a6e6f8ece07
files src/term.c src/version.c
diffstat 2 files changed, 12 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/term.c
+++ b/src/term.c
@@ -4775,9 +4775,10 @@ handle_version_response(int first, int *
 	    // vandyke SecureCRT sends 1;136;0
 	}
 
-	// Konsole sends 0;115;0
-	else if (version == 115 && arg[0] == 0 && arg[2] == 0)
-	    term_props[TPR_UNDERLINE_RGB].tpr_status = TPR_YES;
+	// Konsole sends 0;115;0 - but t_u8 does not actually work, therefore
+	// commented out.
+	// else if (version == 115 && arg[0] == 0 && arg[2] == 0)
+	//     term_props[TPR_UNDERLINE_RGB].tpr_status = TPR_YES;
 
 	// GNU screen sends 83;30600;0, 83;40500;0, etc.
 	// 30600/40500 is a version number of GNU screen. DA2 support is added
@@ -4806,9 +4807,15 @@ handle_version_response(int first, int *
 
 	// Unless the underline RGB color is expected to work, disable "t_8u".
 	// It does not work for the real Xterm, it resets the background color.
+	// This may cause some flicker.  Alternative would be to set "t_8u"
+	// here if the terminal is expected to support it, but that might
+	// conflict with what was set in the .vimrc.
 	if (term_props[TPR_UNDERLINE_RGB].tpr_status != TPR_YES && *T_8U != NUL)
+	{
 	    set_string_option_direct((char_u *)"t_8u", -1, (char_u *)"",
 								  OPT_FREE, 0);
+	    redraw_later(CLEAR);
+	}
 
 	// Only set 'ttymouse' automatically if it was not set
 	// by the user already.
--- a/src/version.c
+++ b/src/version.c
@@ -747,6 +747,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    4775,
+/**/
     4774,
 /**/
     4773,