Nautilus-open-terminal so einstellen, dass Terminator anstelle von gnome-terminal gestartet wird

52

Das nautilus-open-terminalPaket fügt eine Menü- / Rechtsklick-Option hinzu, um ein Terminal im aktuellen Verzeichnis zu öffnen.

Ich möchte dies von Eröffnung gnome-terminalzu Eröffnung ändern terminator. Es gibt hier einige Hinweise zum Ändern des Standard-Terminalemulators. Diese Anweisungen scheinen jedoch nicht mehr gültig zu sein, und ich kann in den Systemeinstellungen keine Stelle finden, an der der Standardemulator geändert werden kann.

Ich habe auch versucht:

$ sudo update-alternatives --config x-terminal-emulator

wählen

* 0            /usr/bin/terminator               50        auto mode

Dies scheint jedoch keine Auswirkungen zu haben. Irgendeine Idee, wie ich das zum Laufen bringen kann?

YXD
quelle
Hier ist eine Frage zum Festlegen des Standard-Terminalemulators.
user32085
Ok, ich habe das versucht und es funktioniert nicht. Tatsächlich führt der Befehl "In Terminal öffnen" jetzt zu nichts
YXD
Getestet dies gerade jetzt, um zu sehen, wie es für Terminator funktionierte, mit Terminator müssen Sie den vollständigen Pfad zum Programm einrichten, danach funktioniert es wie ein Zauber durch Drücken von Strg + Alt + T oder wenn Sie ein Programm haben, das das aufruft Terminal.
Bruno Pereira
1
Danke für den Hinweis. Alles, was Sie beschrieben haben, funktioniert einwandfrei, aber ich kann nicht nautilus-open-terminalmit Terminator arbeiten, was wirklich meine ursprüngliche Frage ist. Wenn Sie oder jemand Einblicke haben, wie ich diese Arbeit machen kann, wäre ich Ihnen sehr dankbar.
YXD

Antworten:

34

Ubuntu 13.04: (falls Sie über Google hierher gekommen sind)

Sie können die verwendete Terminal-App nicht mehr ändern.

Details : nautilus-open-terminalverwendet GAppInfodas Terminal Prozess zu starten, die eine hart codierte Liste der Terminalemulatoren verwendet: https://git.gnome.org/browse/glib/tree/gio/gdesktopappinfo.c#n1106

Lösung:

  1. Gnome-Terminal entfernen: sudo apt-get remove gnome-terminal
  2. Symlink Terminator zum Gnome-Terminal: sudo ln -s /usr/bin/terminator /usr/bin/gnome-terminal
Genosse Einhorn
quelle
Siehe bugzilla.gnome.org/show_bug.cgi?id=743626 --- Ich denke, das ist ein Fehler.
Rmano
Wirklich, es ist bugzilla.gnome.org/show_bug.cgi?id=627943 --- hier seit 2010. Ok.
Rmano
Führen Sie für Ubuntu Mate Folgendes aus: sudo apt-get remove mate-terminalgefolgt von sudo ln -s /usr/bin/terminator /usr/bin/mate-terminal.
user_1_1_1
9
Dies funktioniert nicht in 16.04. Ich kann gnome-terminalvon der Befehlszeile aus starten , aber die Option "Im Terminal öffnen" von Nautilus führt zu nichts.
Cerin
Am 16.04 benutze ich gist.github.com/randy3k/c7f69adc2754f4b2bff361fbfd0fdc5d zum Öffnen io.elementary.terminal, ich denke, Sie müssen es nur kopieren /usr/share/nautilus-python/extensionsund für patchen terminator.
Randy Lai
38

Nautilus-Aktionen Installieren Sie Nautilus-Aktionen

Wir können unsere eigenen Kontextmenüpunkte mit Nautilus-Aktionen definieren .

  • Führen Sie das Nautilus-Actions-Konfigurationstool entweder vom Dash oder von einem Terminal mit aus

    nautilus-actions-config-tool
    

Bildbeschreibung hier eingeben

  • In der Aktion Registerkarte geben Sie Ihre Aktion eine sinnvolle Bezeichnung, zB „Open in Terminator“ , und wählen Sie diese in der Auswahl angezeigt werden oder im Kontextmenü.

  • Öffnen Sie als Nächstes die Registerkarte Befehl , um die auszuführenden Befehle einzugeben

Bildbeschreibung hier eingeben

  • Geben Sie den vollständigen Pfad zu Ihrem Befehl ( /usr/bin/terminator) und den Programmoptionen ( --working-directory=%d/%b) an, um den aktuellen Pfad in Terminator zu öffnen.

  • Nachdem Sie sich aus- und wieder angemeldet haben (oder nautilus mit neu gestartet habennautilus -q ), wird das Kontextmenü mit der rechten Maustaste angezeigt:

Bildbeschreibung hier eingeben

Takkat
quelle
Wow, vielen Dank für die ausführliche Beschreibung! Ich werde es morgen versuchen, wenn ich ins Büro komme und mich wieder melde.
YXD
1
Großartige Lösung. Eine Sache: Es ist nicht wirklich notwendig, sich abzumelden / anzumelden, ein Neustart von nautilus mit nautilus -qist ausreichend. Ich habe gerade eine Bearbeitung dafür vorgeschlagen.
Christoph
1
Nautilus-Actions können nicht auf relative Symlinks-Pfade zugreifen, es werden absolute Dispatcher verwendet, aber das Open-In-Terminal-Plugin öffnet relative Pfade.
Unclechu
Wow, vielen Dank, ich wusste nicht, dass es eine Anwendung gibt :)
Iman Akbari
5
Wenn du nicht Open in Terminatorim Untermenü sein willst , gehe in Nautilus-Actions auf Edit> Preferences> Disable "Erstelle ein Root 'Nautilus-Actions'-Menü"
Hải Phong
23

Um das Standardterminal in gnome zu konfigurieren, müssen Sie dconf-tools installieren (sudo apt-get install dconf-tools).

Danach können Sie mit dconf-editor oder gsettings Ihren bevorzugten Terminalemulator einstellen. Dieser Leitfaden verwendet gsettings.

Nach der Installation geben Sie terminatordiesen Befehl ein

gsettings set org.gnome.desktop.default-applications.terminal exec /usr/bin/terminator

Stellen Sie das exec-argsfür das Terminal ein, das Sie benötigen, um in Ihrem Fall -xdie restlichen notwendigen Argumente von auszuführen nautilus-open-terminal.

gsettings set org.gnome.desktop.default-applications.terminal exec-arg "-x"

Nachdem dieser Terminator Ihr Standard-Terminal-Emulator ist, sollte er beim nautilus-open-terminalAufrufen des Standard-Terminals geöffnet terminatorwerden gnome-terminal.

Bruno Pereira
quelle
Die Argumente sind erforderlich. Bearbeitet und akzeptiert haben.
YXD
Mit welchen Argumenten verwenden Sie terminator, wenn es nützlich ist, bearbeite ich die Antwort und füge diese Informationen hinzu.
Bruno Pereira
es ist org.gnome.desktop.default-applications.terminal exec-arg '-x'wie in meinem edit.
YXD
Aber der entscheidende Punkt ist , es ist bereits standardmäßig korrekt eingestellt - was funktioniert gnome-terminalfür Werke terminator.
YXD
6
Dies funktioniert nicht auf Ubuntu 16.04 ...
Cerin
0

Ich weiß, dass dies eine alte Frage ist, aber da ich hier gelandet bin, um das Gleiche zu tun, nehme ich dies für zukünftige Besuche .

Ich habe alle vorherigen Vorschläge ausprobiert und bin gescheitert. Deshalb habe ich mir diese Problemumgehung ausgedacht (keine perfekte Antwort, kann aber trotzdem nützlich sein, denke ich).

Erstellen Sie eine change_terminal.sh-Datei

# Open a new terminator window in a detached tmux session so it remains open
cmd="terminator --working-directory=$PWD"
tmux new-session -d
tmux send-keys "$cmd" C-m
tmux dettach
# Close active window (gnome-terminal since the new one hasn't loaded yet)
xdotool key --clearmodifiers Ctrl+Shift+Q key --clearmodifiers KP_Enter

und gib ihm Ausführungsrechte:

chmod +x change_terminal.sh

Erstellen Sie den folgenden Alias:

alias ct="path/to/change_terminal.sh"

Jetzt öffnen Sie einfach ein Standardterminal von nautilus an der gewünschten Stelle und geben "ct" ein, um es zu schließen und ein Terminatorterminal an derselben Stelle zu öffnen.

alvaroferran
quelle
0

Ich benutze Ubuntu 18.04 und kann das Problem nicht lösen. Stattdessen habe ich installiert nautilus-terminal, die Ihr Terminal in Nautilus einbettet! Welches ist absolut großartig.

Installieren Sie das Nautilus-Terminal

sudo add-apt-repository ppa:flozz/nautilus-terminal
sudo apt update
sudo apt install nautilus-terminal
nautilus -q

Bildbeschreibung hier eingeben

Sie können es auch über den dconf-Editor konfigurieren. Mehr Infos in diesem Link

Vahid
quelle