Pour la plupart, vous ne devez pas définir TERM
manuellement. La variable est toujours définie automatiquement et il n'existe qu'un ensemble restreint de circonstances dans lesquelles la valeur par défaut est incorrecte.
La valeur de TERM
doit être référencée dans la base de données terminfo du système (ou pour quelques systèmes à l'ancienne, dans la base de données termcap ). Terminfo et Termcap mappent les types de terminaux à la description des capacités des terminaux que les applications utilisent. La valeur de TERM
est le type de terminal.
La principale raison pour laquelle vous devrez parfois changer TERM
est si vous vous connectez à distance, lorsque la machine locale et la machine distante ont des bases de données de terminaux différentes.
Une autre raison, liée à la précédente, est qu'il existe parfois plusieurs entrées similaires pour un terminal, avec des capacités légèrement différentes. Cela a tendance à se produire principalement lorsqu'un nouveau terminal arrive, qui est compatible avec un terminal existant, mais qui a plus de fonctionnalités. Vous avez alors le choix entre utiliser le nom traditionnel, que toutes les machines comprennent, mais qui n'annonce que les fonctionnalités traditionnelles, ou le nom plus récent, qui annonce toutes les nouvelles fonctionnalités mais que certaines machines ne comprendront pas.
Un exemple de ceci est xterm avec 16 couleurs vs xterm avec 256 couleurs. Un xterm traditionnel ne prend en charge que 16 couleurs, c'est donc ce que xterm
spécifie la base de données du terminal. La modification de l' xterm
entrée rendrait les utilisateurs des nouvelles versions de xterm heureux, mais romprait la configuration des utilisateurs des anciennes versions de xterm qui se connectent à distance. Passer à un nouveau nom - xterm-256color
- fournit les nouvelles fonctionnalités chaque fois qu'elles sont disponibles, mais n'est pas reconnu si vous vous connectez à distance à des machines avec une ancienne base de données de terminaux. Parce qu'il n'y a pas de solution qui puisse satisfaire tout le monde, vous avez le choix: soit conserver xterm
et ne pas obtenir les 256 couleurs, ou utiliser xterm-256color
ce qui ne fonctionne pas si vous vous connectez à des machines distantes qui ne le prennent pas en charge.
Laisser la valeur par défaut de xterm
et définir la termName
ressource sur xterm-256color
(ce qui fait que la variable d'environnement TERM
est définie sur la même valeur) sont donc deux choix judicieux. La définition TERM
de valeurs arbitraires ne fonctionnerait pas, mais les deux xterm
et ont xterm-256color
un sens.