mirror of
https://github.com/tmux/tmux.git
synced 2025-09-03 06:17:04 +00:00
Remove the -d flag to tmux and just use op/AX to detect default colours.
Irritatingly, although op can be used to tell if a terminal supports default colours, it can't be used to set them because in some terminfo descriptions it resets attributes as a side-effect (acts as sgr0) and in others it doesn't, so it is not possible to determine reliably what the terminal state will be afterwards. So if AX is missing and op is present, tmux just sends sgr0. Anyone using -d for a terminal who finds they actually needed it can replace it using terminal-overrides, but please let me know as it is probably an omission from terminfo.
This commit is contained in:
11
tty-term.c
11
tty-term.c
@ -348,17 +348,6 @@ tty_term_find(char *name, int fd, const char *overrides, char **cause)
|
||||
goto error;
|
||||
}
|
||||
|
||||
/*
|
||||
* Figure out if terminal support default colours. AX is a screen
|
||||
* extension which indicates this. Also check if op (orig_pair) uses
|
||||
* the default colours - if it does, this is a good indication the
|
||||
* terminal supports them.
|
||||
*/
|
||||
if (tty_term_flag(term, TTYC_AX))
|
||||
term->flags |= TERM_HASDEFAULTS;
|
||||
if (strcmp(tty_term_string(term, TTYC_OP), "\033[39;49m") == 0)
|
||||
term->flags |= TERM_HASDEFAULTS;
|
||||
|
||||
/* Figure out if we have 256 or 88 colours. */
|
||||
if (tty_term_number(term, TTYC_COLORS) == 256)
|
||||
term->flags |= TERM_256COLOURS;
|
||||
|
Reference in New Issue
Block a user