-if [ ! -z "$term" ]; then
- if ! has_term $term; then
- export TERMINFO=~/.terminfo
- fi
- export TERM=$term
-elif ! has_term $TERM; then
- for term in rxvt-unicode xterm-256color xterm-88color linux dtterm xterm-color xterm vt100; do
- if has_term $term; then
- export TERM=$term
- break
- fi
- done
-fi
-
-unset ANSWERBACK term
+# Check the terminal is valid.
+while [ -z "$(tput longname 2>/dev/null)" ]; do
+ case $TERM in
+ xterm-256color) export TERM=xterm-88color;;
+ xterm-88color) export TERM=xterm-color;;
+ xterm-color) export TERM=xterm;;
+ xterm) break;;
+ *) export TERM=xterm-256color;;
+ esac
+done