mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-12 07:27:57 +00:00
b5f5bf6f03
libncurses in base system only supports termcap(5). RGB has 3 colors but termcap(5) supports at most 2 arguments e.g., $ export TERMCAP="${TERM}:Co#0x1000000:AF=\E[38;2;%d;%d;%dm:AB=\E[48;2;%d;%d;%dm:tc=${TERM}:" $ tput AB 1 1 1 tput: too many arguments (3) for capability `AB' To work around the limitation make Emacs check if environ(7) has COLORTERM=truecolor some terminal emulators define by default e.g., - x11-toolkits/vte3 (gnome-terminal, sakura, ...) - x11/alacritty - x11/aminal - x11/kitty (bug 233010) - x11/konsole - x11/qterminal while others require defining COLORTERM=truecolor manually e.g., - x11/cool-retro-term - x11/sterm - x11/xterm PR: 247248 Approved by: jrm Obtained from: upstream
35 lines
1.4 KiB
Plaintext
35 lines
1.4 KiB
Plaintext
Add RGB fallback if environment has COLORTERM=truecolor
|
|
https://github.com/emacs-mirror/emacs/commit/50f489b5dc59
|
|
|
|
--- doc/misc/efaq.texi.orig 2019-01-07 14:26:06 UTC
|
|
+++ doc/misc/efaq.texi
|
|
@@ -1603,6 +1603,10 @@ Currently there's no standard way to determine whether
|
|
supports direct color mode. If such standard arises later on, support
|
|
for @samp{setb24} and @samp{setf24} may be removed.
|
|
|
|
+If Terminfo database is not available, but 24-bit direct color mode is
|
|
+supported, it can still be enabled by defining the environment
|
|
+variable @env{COLORTERM} to @samp{truecolor}.
|
|
+
|
|
@node Debugging a customization file
|
|
@section How do I debug a @file{.emacs} file?
|
|
@cindex Debugging @file{.emacs} file
|
|
--- src/term.c.orig 2019-01-07 14:26:07 UTC
|
|
+++ src/term.c
|
|
@@ -4157,6 +4157,15 @@ use the Bourne shell command 'TERM=...; export TERM' (
|
|
tty->TS_set_background = bg;
|
|
tty->TN_max_colors = 16777216;
|
|
}
|
|
+ /* Fall back to xterm+direct (semicolon version) if requested
|
|
+ by the COLORTERM environment variable. */
|
|
+ else if ((bg = getenv("COLORTERM")) != NULL
|
|
+ && strcasecmp(bg, "truecolor") == 0)
|
|
+ {
|
|
+ tty->TS_set_foreground = "\033[%?%p1%{8}%<%t3%p1%d%e38;2;%p1%{65536}%/%d;%p1%{256}%/%{255}%&%d;%p1%{255}%&%d%;m";
|
|
+ tty->TS_set_background = "\033[%?%p1%{8}%<%t4%p1%d%e48;2;%p1%{65536}%/%d;%p1%{256}%/%{255}%&%d;%p1%{255}%&%d%;m";
|
|
+ tty->TN_max_colors = 16777216;
|
|
+ }
|
|
}
|
|
#endif
|
|
|