J'essaie d'ajouter un vte
widget dans mon application et les exemples que j'ai trouvés .fork_command()
pour exécuter une commande dans ce widget. Mais selon
http://developer.gnome.org/vte/0.26/VteTerminal.html#vte-terminal-fork-command
il est obsolète et il est recommandé de l'utiliser fork_command_full()
. Ce qui nécessite huit arguments obligatoires. N'ont-ils pas entendu le mot «par défaut »? J'ai pu construire des lignes qui fonctionnent d'une manière ou d'une autre:
pty_flags = vte.PtyFlags(0)
terminal.fork_command_full(pty_flags, "/home/int", ("/bin/bash", ), "", 0, None, None)
Oui, je connais les énumérations, j'espère juste que je fais ça complètement mal et il y a un moyen beaucoup plus facile. En connaissez-vous?
PS J'utilise quickly
avec le ubuntu-application
modèle par défaut .
PPS La ligne d'importation est from gi.repository import Vte as vte
Réponses:
Voici un exemple de base:
la source
S'appuyant sur la réponse d'ADcomp pour répondre à vouloir les ajouter dynamiquement à l'avenir, je pense que vous voudrez peut-être sous-classer Vte.terminal.
la source
__init__(self, command)
serait encore plus agréable, je vais essayer ça plus tard.Depuis VTE 0.38,
vte_terminal_fork_command_full ()
a été renommé envte_terminal_spawn_sync ()
. Donc, si vous utilisez des versions plus récentes, vous devez modifier la réponse de @ ADcomp comme suit:la source