Öffnen Sie Nautilus als neue Registerkarte in einem vorhandenen Fenster


25

Wenn ich derzeit auf ein Starter- / Verknüpfungssymbol usw. klicke, wird ein neues Nautilus-Fenster angezeigt. Wenn bereits ein Nautilus-Fenster geöffnet ist, würde ich es lieber in einem neuen Tab im vorhandenen Fenster öffnen (als hätte ich Strg + T gedrückt und zum neuen Speicherort navigiert). Wie kann ich das erreichen?


Einige Anwendungen haben eine Befehlszeilenoption für diese Art von Dingen, aber ich finde so etwas nicht für Nautilus. Ich bin damit einverstanden, dass dies nützlich wäre.
DLH

Tritt dieses Problem immer noch auf?
jrg

Antworten:


17

Ich habe dafür ein Bash-Skript und einen Launcher geschrieben.

  1. Erstellen Sie zuerst die Datei:

    mkdir ~/bin && gedit ~/bin/nautilus-ctrl-t.sh
    
  2. Fügen Sie dann Folgendes ein und speichern Sie:

    if [ "$(wmctrl -xl | grep "nautilus\.Nautilus")" == "" ]; then
        nautilus "$1" &
    else  
        #Save old clipboard value
        oldclip="$(xclip -o -sel clip)"
    
        echo -n "$1" | xclip -i -sel clip
        #wmctrl -xF -R nautilus.Nautilus && xdotool key "ctrl+t" "ctrl+l" && xdotool type "${1}" && xdotool key Return
        wmctrl -xF -R nautilus.Nautilus && xdotool key ctrl+t ctrl+l ctrl+v Return
    
        #Restore old clipboard value
        echo -n "$oldclip" | xclip -i -sel clip
    fi
    
  3. Führen Sie dann den Befehl aus:

    sudo chmod u+x ~/bin/nautilus-ctrl-t.sh
    
  4. Führen Sie nun den folgenden Befehl aus, um die Startdatei zu erstellen:

    gedit ~/.local/share/applications/Nautilus-Ctrl-t.desktop
    
  5. Fügen Sie Folgendes ein und speichern Sie:

    [Desktop Entry]
    Type=Application
    Name=Nautilus-Ctrl-t
    Comment=Launches Nautilus if not yet, otherwise opens a new tab in it
    Categories=FileManager;GNOME;
    Icon=/usr/share/icons/gnome/48x48/apps/system-file-manager.png
    Exec=/bin/bash -c ~/bin/nautilus-ctrl-t.sh
    Terminal=false
    
  6. Abmelden oder neu starten, um die Anwendungsliste zu aktualisieren, und fertig.

Versuch das. Ich hoffe es hilft.

AKTUALISIEREN

Hinzufügen eines Speicherorts als Skriptparameter

UPDATE 2

Xdotool type wurde durch xclip ersetzt

UPDATE 3

Bereinigte den Prozess durch Hinzufügen von Zahlen. Mkdir Befehl hinzugefügt. Die erste "if" -Anweisung wurde aktualisiert, da Nautilus, wenn es den Desktop verwaltet, eine PID hat, aber kein aktives Fenster. Daher ist es besser, wmctrl zu verwenden. Es wurden Anführungszeichen um das erste Argument hinzugefügt, falls Leerzeichen vorhanden sind. Das Symbol für nautilus wurde in der .desktop-Datei als Systemstandard geändert.


1
Sie müssen xdotool und wmctrl installieren, damit dieses Skript funktioniert, da sie nicht standardmäßig installiert sind.
Jeremy Bicha

Nun, es ist ein schmutziger Hack, aber ich hoffe, dass er in den meisten Fällen funktioniert. Es sieht so aus, als wäre es mit "Strg + L" möglich, die übergebene Adresse einzufügen, "Enter" ...
int_ua

Ich vergebe gerade Desgua, aber ich verspreche Ihnen eine weitere Belohnung, wenn Sie Ihrem Skript eine benutzerdefinierte Speicherortöffnung hinzufügen :)
int_ua

Hinzufügen eines Speicherorts als Skriptparameter.
zuba

Ok, ich habe ein Kopfgeld für dich angefangen, aber AFAIU Ich kann nicht zwei Kopfgelder an einem Tag vergeben :) Nach $ pid fehlt ein Leerzeichen und es funktioniert nicht für den MIME-Typ inode / directory für mich. Können Sie bitte Anweisungen hinzufügen, wie es für Desktop-Verknüpfungen funktioniert? Ein weiterer Vorschlag ist, xclip zum Einfügen des Speicherorts zu verwenden, um zu vermeiden, dass bestimmte Aktionen ausgelöst werden, wenn Strg + L fehlschlägt :)
int_ua


2

Dies lässt sich in CentOS 6.2 sehr einfach beheben, indem Sie in den Nautilus-Einstellungen auf der Registerkarte "Verhalten" auf das Kontrollkästchen "Immer in Browserfenstern öffnen" klicken.

Sie werden wissen, dass es funktioniert hat, da ab diesem Zeitpunkt in Ihrem Fenster zum Durchsuchen von Ordnern ein Navigationselement auf der linken Seite angezeigt wird. Dies ist die Methode, die Nautilus verwendet, um das Explorer-Fenster "wiederzuverwenden".

Sie müssen also nur herausfinden, wie Sie das linke Navigationsmenü in einem Nautilus-Browserfenster aktivieren.


Das ist eine interessante Information, danke :) Was ist die Version von Nautilus in CentOS 6.2?
int_ua

1
Das wäre 2.28.4, was für Gnome-2 (GTK + 2) gilt.
Desgua

1
In diesem Fall scheint es für Gnome-3 keine Lösung zu geben?
Djangofan,

0

Was auch immer Desgua gesagt hat, es ist etwas richtig.
eine Option , die Sie haben zu drücken ctrl+Teinen neuen Tab im gleichen Fenster zu öffnen
oder
drücken Sie F3in nautilus für geteilte Ansicht


1
Vielen Dank für Ihre Aufmerksamkeit, aber es geht nicht darum, neue Tabs in Nautilus zu
öffnen

0

Unter Verwendung des obigen Bash-Skripts als Start (danke!) Habe ich ein Skript mit einem Fenster pro Arbeitsbereich, ThunarTab, speziell für Thunar in XFCE erstellt. Das Skript ermöglicht auch das gleichzeitige Öffnen mehrerer Verzeichnisse über das Kontextmenü "Alle öffnen" auf dem Desktop. Eine ausführliche Beschreibung und eine Datei zum Herunterladen finden Sie unter https://forums.linuxmint.com/viewtopic.php?f=42&t=244076 "[Tutorial] Verbessern von Thunar in XFCE durch Öffnen neuer Registerkarten anstelle von Fenstern mit Bash."

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.