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?


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

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


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.


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.


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

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.