Debian fait avec le x-terminal-emulator
paquet virtuel, décrit dans 11.8.3 Packages providing a terminal emulator
Les paquets fournissant un émulateur de terminal pour le système X Window qui répondent aux critères énumérés ci-dessous doivent déclarer dans leur offre un champ de contrôle qu'ils fournissent le paquet virtuel x-terminal-emulator
. Ils devraient également s'enregistrer comme une alternative pour /usr/bin/x-terminal-emulator
, avec une priorité de 20. Cette alternative devrait avoir une alternative esclave pour /usr/share/man/man1/x-terminal-emulator.1.gz
pointant vers la page de manuel correspondante.
être un émulateur de terminal X, un programme doit:
être en mesure d'émuler un terminal DEC VT100 ou un terminal compatible.
Support de l'option de ligne de commande -e, qui crée une nouvelle fenêtre de terminal [106] et exécute la commande spécifiée, interprétant l'intégralité du reste de la ligne de commande comme une commande à passer directement à exec, dans la façon dont xterm fait.
- Prise en charge de l'option de ligne de commande -T title, qui crée une nouvelle fenêtre de terminal avec le titre du titre de la fenêtre.
C'est, la politique décrit une compatibilité minimale avec xterm depuis le milieu des années 1990.
Il a été un succès limité:
- certains emballeurs abusent du domaine prioritaire, en utilisant des valeurs bien au-dessus 20.
- la compatibilité des options
-e
est faible avec certains des terminaux que vous avez mentionnés.
En dehors de Debian (et des distributions dérivées comme Ubuntu), cette approche n'est pas très utilisée. Je me souviens d'avoir répondu à cela avant, mais je ne le vois pas pour le moment.Voici une liste de mon Debian/testing, notant que chacun des paquets avec 40
priorité ne suit pas la politique:
$ sudo update-alternatives --config x-terminal-emulator
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/xterm-dev 60 auto mode
1 /usr/bin/evilvte 20 manual mode
2 /usr/bin/gnome-terminal.wrapper 40 manual mode
3 /usr/bin/koi8rxterm 20 manual mode
4 /usr/bin/konsole 40 manual mode
5 /usr/bin/lxterm 30 manual mode
6 /usr/bin/lxterminal 40 manual mode
7 /usr/bin/mate-terminal.wrapper 30 manual mode
8 /usr/bin/mlterm 20 manual mode
9 /usr/bin/mrxvt-full 10 manual mode
10 /usr/bin/pterm 20 manual mode
11 /usr/bin/stterm 15 manual mode
12 /usr/bin/terminology 40 manual mode
13 /usr/bin/urxvt 20 manual mode
14 /usr/bin/uxterm 20 manual mode
15 /usr/bin/xfce4-terminal.wrapper 40 manual mode
16 /usr/bin/xterm 20 manual mode
17 /usr/bin/xterm-dev 60 manual mode
Press <enter> to keep the current choice[*], or type selection number:
(Le paquet « xterm-dev » est bien sûr un programme de développement local, non publié).
Je pense que la solution canonique consisterait à permettre à l'utilisateur de configurer la commande du terminal via un fichier de configuration ou une variable d'environnement, et par défaut à quelque chose comme 'xterm'. – larsks