Jak mogę otworzyć ~ / Desktop, jeśli kliknę „Otwórz w terminalu” na pulpicie?

8

Scenariusz:

  1. Jestem na swoim pulpicie.
  2. Wykonuję kliknięcie prawym przyciskiem myszy i wybieram „Otwórz w terminalu”.
  3. Myślę, że to otworzy terminal, ~/Desktopa nie mój folder domowy.

System:

  • Ubuntu 16.10
  • Jedność
  • Łodzik
orschiro
źródło
Czy to naprawdę nie jest dużo szybsze Ctrl-T do nowego terminala, a potem $ cd Desktop? Prawdopodobnie możesz nawet uzupełnić tabulatorem po napisaniu Des
tomph

Odpowiedzi:

7

Szybko i łatwo przypadkowo, ponieważ musiałem tylko zmienić skrypt, miałem już trochę :).

Skrypt zakłada jednak, że masz przynajmniej jeden element na pulpicie.

Jak skonfigurować

  1. Utwórz, jeśli jeszcze nie istnieje, katalog ~/.local/share/nautilus/scripts
  2. Skopiuj poniższy skrypt do pustego pliku, zapisz go jako terminal_here2(bez rozszerzenia) i ustaw go jako wykonywalny
  3. Wyloguj się i zaloguj ponownie.

Teraz kliknij prawym przyciskiem myszy dowolny plik na pulpicie, wybierz Scripts-> open_terminal2:

wprowadź opis zdjęcia tutaj

a okno terminala otworzy się w katalogu pulpitu (w moim przypadku „Bureaublad”)

Scenariusz:

#!/usr/bin/env python3
import subprocess
import os

def replace(path):
    for c in [("%23", "#"), ("%5D", "]"), ("%5E", "^"),
              ("file://", ""), ("%20", " ")]:
        path = path.replace(c[0], c[1])
    return path

# get the current path
current = replace(os.getenv("NAUTILUS_SCRIPT_CURRENT_URI")) 
# raise the found terminal window
os.chdir(os.path.realpath(current))
subprocess.Popen("gnome-terminal")
Jacob Vlijm
źródło
1
Prawdopodobnie powinieneś użyć urllib.parse.unquotezamiast ręcznie zastępować znaki zakodowane w%
muru
Dziękuję Ci! Nie ma sposobu, aby użyć już istniejącej pozycji menu kontekstowego „Otwórz w terminalu”?
orschiro
@orschiro Obawiam się, że jest mocno zakodowany w nautilusie. Oczywiście pulpit nie jest klasyfikowany jako „normalne” okno w nautilusie, chociaż NAUTILUS_SCRIPT_CURRENT_URIpokazuje prawidłowy katalog.
Jacob Vlijm
Czy uważasz, że warto złożyć wniosek o udostępnienie funkcji? Byłoby spójne, że ta funkcja działałaby zgodnie z oczekiwaniami.
orschiro
2
Nie ma potrzeby, aby proces Pythona działał tylko po to, aby poczekać na gnome-terminalzakończenie, a następnie sam się zakończyć. Zamiast tego możesz zadzwonić w os.execlp("gnome-terminal", "gnome-terminal")celu zastąpienia procesu Python gnome-terminal.
David Foerster
8

Rozwiązanie bez skryptów

  1. Otwórz Nautiuls w folderze domowym.
  2. W folderze domowym kliknij prawym przyciskiem myszy Desktop, kliknij Make link. Otrzymasz Link to Desktopplik.
  3. Umieść link na pulpicie. Teraz, gdy klikniesz go prawym przyciskiem myszy i wybierzesz Open in Terminal, otworzy terminal z bieżącym katalogiem roboczym ustawionym jako pulpit.
Sergiy Kolodyazhnyy
źródło
To sprytne obejście!
orschiro
@orschiro Dzięki, i to też jest szybkie. Konfiguracja zajmuje mniej niż minutę.
Sergiy Kolodyazhnyy