$TERM
selection¶Everybody wants to use the terminal description that best fits their terminal, but the most flexible and powerful terminal descriptions are also the rarest - which means terminal emulators tend to default to the oldest and most widespread terminal descriptions even if they fall far short of what the emulator can actually do.
Here’s a fragment of .bashrc
that I use to automatically set $TERM
to the most capable version available when I log in:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
|
Basically, it says:
infocmp
(part of the ncurses tools) if it can find a terminal definition with that name.$TERM
appropriately and stop looking.Note that $TERMLIST
for xterm*
and screen*
uses the bash
/zsh
array syntax. If you’re using a different shell, changing the parentheses to ordinary double-quote characters should work just as well (but doesn’t work in zsh).