GNU bug report logs -
#62237
28.1 or higher: 24-bit true color breaks colours in Emacsen built without X under GNU Screen
Previous Next
Reported by: Sebastian Tennant <sdt <at> sebyte.me>
Date: Fri, 17 Mar 2023 09:42:02 UTC
Severity: normal
Found in version 28.1
Done: Eli Zaretskii <eliz <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
Message #59 received at 62237 <at> debbugs.gnu.org (full text, mbox):
>>>>> On Sat, 18 Mar 2023 12:37:30 +0200, Eli Zaretskii <eliz <at> gnu.org> said:
Eli> Then I guess we should install your proposed fix in init_tty.
In emacs-29? That seems a bit radical. Patch below in any case
I guess we could do something with not checking COLORTERM under screen
instead.
Robert
--
diff --git i/src/dispnew.c w/src/dispnew.c
index 87ec83acdf3..f165c604ae9 100644
--- i/src/dispnew.c
+++ w/src/dispnew.c
@@ -6586,6 +6586,21 @@ init_display_interactive (void)
exit (1);
}
+ if (!NILP (Vterm_strip_prefixes))
+ {
+ Lisp_Object prefixes = Vterm_strip_prefixes;
+ FOR_EACH_TAIL (prefixes)
+ {
+ char *c_prefix = SSDATA (XCAR (prefixes));
+ int len = strlen (c_prefix);
+ if (strncmp (terminal_type, c_prefix, len) == 0)
+ {
+ terminal_type += len;
+ break;
+ }
+ }
+ }
+
{
struct terminal *t;
struct frame *f = XFRAME (selected_frame);
@@ -6817,6 +6832,11 @@ syms_of_display (void)
Possible values are t (below the tool bar), nil (above the tool bar).
This option affects only builds where the tool bar is not external. */);
+ DEFVAR_LISP ("term-strip-prefixes", Vterm_strip_prefixes,
+ doc: /* List of prefixes to try to strip from the TERM environment variable.
+This will strip the first matching prefix only. */);
+ Vterm_strip_prefixes = Fcons (build_string ("screen."), Qnil);
+
pdumper_do_now_and_after_load (syms_of_display_for_pdumper);
}
This bug report was last modified 2 years and 57 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.