Comment configurer gnome-terminal pour utiliser xterm-256color par défaut?

10

Quand je démarre gnome-terminal et que echo $TERMje le fais , je reçois xtermen sortie.

Je veux que ce soit xterm-256color

J'ai considéré la solution à ajouter 'export TERM=xterm256color'dans mon .bashrc. Mais je n'aime pas cette solution, et si je décide de changer de shell? Je dois ajouter une autre exportation à mon nouveau script de démarrage du shell?

Existe-t-il donc un meilleur moyen d'avoir automatiquement un terminal 256 couleurs lors du lancement de gnome-terminal?

Robin Carlier
la source

Réponses:

12

Copier ma réponse de la même question a souligné @javabrett:

Vous avez été bien avisé de ne pas modifier vos scripts de démarrage, spécialement ~/.bashrc. Toute "détection de terminal" utilisant current $TERMou $COLORTERMin ~/.profilen'est qu'une supposition et peut, comme vous l'avez dit, causer des problèmes lors de l'utilisation d'autres terminaux (par exemple, Putty ou xterm). L'émulateur de terminal est censé être défini $TERM, et cela ne doit pas être modifié depuis l'intérieur du shell.

Le terminal Gnome, AFAIK, n'offre pas de configuration pour changer son TERM, mais il vous permet de changer votre commande de démarrage, et c'est tout ce dont vous avez besoin. Voici l'astuce:

Profile Preferences => Title and Command => Run a custom command instead of my shell

Utilisez ensuite la commande suivante:

env TERM=xterm-256color /bin/bash

Remplacez simplement /bin/bashvotre coque préférée si elle est différente. Et non, vous ne pouvez pas utiliser "$SHELL"dans cette ligne pour la détection automatique du shell;) Vous devez le coder en dur

MestreLion
la source
3

À partir de la gnome-terminalversion 3.16, il est par défaut TERM=xterm-256color.

egmont
la source
2

Il y a une bonne réponse expliquant comment gnome-terminalne permet pas TERMd'être par défaut via ses paramètres sur askubuntu .

Il suggère qu'il s'agit d'une option au moment de la compilation, il semble donc que la définition TERMd'un profil de shell ou d'un script de démarrage soit la meilleure et la seule option. Vous pouvez créer un script wrapper ou un alias si vous préférez.

javabrett
la source