De nombreux émulateurs de terminaux modernes sont des dérivés de
xterm ou rxvt et acceptent les séquences d'échappement
que nous avons utilisées jusqu'ici. Certains terminaux propriétaires
fournis avec les diverses variantes d'unix utilisent leur propres
séquences.
aixterm d'IBMaixterm reconnaît les séquences d'échappement de xterm.
wsh, xwsh et winterm de SGICes terminaux définissent $TERM=iris-ansi et utilisent :
ESCP1.ytexteESC\ Pour le titre de la fenêtreESCP3.ytexteESC\ Pour le titre de l'icônexwsh(1G).Les terminaux d'Irix supportent également les séquences de xterm
pour définir individuellement le titre de la fenêtre et de l'icône, mais
pas celle pour définir les deux en même temps.
cmdtool et shelltool de Suncmdtool et shelltool définissent $TERM=sun-cmd et
utilisent :
ESC]ltexteESC\ Pour le titre de la fenêtreESC]LtexteESC\ Pour le titre de l'icônedtterm définit $TERM=dtterm. Il semble qu'il reconnaisse à la fois les
séquences xterm standard ainsi que celles du cmdtool de
Sun (testé sur Solaris 2.5.1, Digital Unix 4.0, HP-UX 10.20).
hpterm définit $TERM=hpterm et utilise les séquences
suivantes :
ESC&f0klongueurDtexte Donne le texte
texte de longueur longueur comme titre de fenêtreESC&f-1klongueurDtexte Donne le texte
texte de longueur longueur comme nom de l'icôneUn programme C simple pour calculer la longueur et afficher la bonne séquence ressemble à :
#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);
}
On peut également écrire un shell-script équivalent, utilisant
${#string} (zsh, bash, ksh) ou
${%string} (tcsh) pour obtenir la longueur d'une
chaîne. L'exemple suivant est pour 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