Veel moderne terminals zijn afgeleid van xterm of rxvt
en ondersteunen de tot nu toe gebruikte escape sequences.
Een aantal eigen terminals die met diverse varianten van unix worden
meegeleverd maken gebruik van eigen escape sequences.
aixterm
aixterm herkent de xterm escape sequences.
wsh, xwsh en winterm
Deze terminals zetten de termvariabele in als $TERM=iris-ansi
en gebruiken de volgende escapes:
ESCP1.ystringESC\ Stel de venstertitel in op
stringESCP3.ystringESC\ Stel de ikoontitel in op
stringxwsh(1G) voor een volledige lijst met xwsh
escapes.
De Irix terminals ondersteunen ook de xterm escapes om afzonderlijk
te venstertitel en ikoontitel in te stellen, maar niet de escape om ze beiden
in te stellen.
cmdtool en shelltool
cmdtool en shelltool stellen stellen de termvariabele
beiden in als $TERM=sun-cmd en maken gebruik van de volgende
escapes:
ESC]lstringESC\ Stel de venster titel in op stringESC]LstringESC\ Stel de titel van het ikoon in op stringdtterm
dtterm stelt de termvariabele in op $TERM=dtterm,
en blijkt standaard zowel de standaard
xterm als de Sun cmdtool
sequences te herkennen (getest onder Solaris 2.5.1, Digital Unix 4.0, HP-UX 10.20).
hpterm stelt de termvariabele in als $TERM=hpterm en
gebruikt de volgende escapes:
ESC&f0klengthDstring Stel venstertitel in op string van lengte lengthESC&f-1klengthDstring Stel ikoontitel in op string met de lengte lengthEen basis C-programma om de lengte van de string te berekenen en deze terug te geven, ziet er ongeveer zo uit:
#include <string.h>
int main(int argc, char *argv[])
{
printf("\033&f0k%dD%s", strlen(argv[1]), argv[1]);
printf("\033&f-1k%dD%s", strlen(argv[1]), argv[1]);
return(0);
}
We kunnen een vergelijkbaar script schrijven door gebruik te maken van
de ${#string}
(zsh, bash, ksh) of ${%string}
(tcsh)'s uitbreiding om de lengte van de string te achterhalen.
Het volgende geldt voor zsh:
case $TERM in
hpterm)
str="\e]0;%n@%m: %~\a"
precmd () {print -Pn "\e&f0k${#str}D${str}"}
precmd () {print -Pn "\e&f-1k${#str}D${str}"}
;;
esac