Próbuję dodać vte
widżet do mojej aplikacji i przykłady, które znalazłem, .fork_command()
aby wykonać polecenie w tym widżecie. Ale zgodnie z
http://developer.gnome.org/vte/0.26/VteTerminal.html#vte-terminal-fork-command
był przestarzały i zaleca się jego użycie fork_command_full()
. Który wymaga ośmiu obowiązkowych argumentów. Czy nie słyszeli słowa „ domyślnie ”? Byłem w stanie zbudować linie, które jakoś działają:
pty_flags = vte.PtyFlags(0)
terminal.fork_command_full(pty_flags, "/home/int", ("/bin/bash", ), "", 0, None, None)
Tak, wiem o wyliczeniach, mam tylko nadzieję, że robię to całkowicie źle i jest o wiele łatwiejszy sposób. Czy znasz jakieś?
PS Używam quickly
z domyślnym ubuntu-application
szablonem.
PPS Linia importu to from gi.repository import Vte as vte
Odpowiedzi:
Oto podstawowy przykład:
źródło
Opierając się na odpowiedzi ADcomp na adres, który chce dodać je dynamicznie w przyszłości, myślę, że możesz chcieć podklasować Vte.terminal.
źródło
__init__(self, command)
byłoby jeszcze ładniej, spróbuję tego później.Od VTE 0.38
vte_terminal_fork_command_full ()
został przemianowany navte_terminal_spawn_sync ()
. Jeśli więc używasz nowszych wersji, musisz zmienić odpowiedź @ ADcomp na następujące:źródło