Skrót klawiaturowy „otwórz terminal tutaj”

70

Jak mogę utworzyć skrót klawiaturowy, aby po naciśnięciu F12nautilus (lub pulpitu) uzyskać terminal w bieżącym katalogu?

wim
źródło
1
Dodatkowa wskazówka, nie używaj sudodalej dconf-editor, uruchom ją bez. Odkryłem to na własnej skórze, spędziłem kilka minut na ponownym uruchomieniu i ponownym uruchomieniu, zanim się zorientowałem.
Velocity Drift
Imo, to najlepsza odpowiedź na to pytanie: askubuntu.com/a/696901/499347 (krótkie, zrozumiałe i po prostu działa)
dreua

Odpowiedzi:

50

W końcu to rozgryzłem ... najpierw sudo apt-get install dconf-tools nautilus-open-terminaluruchom, a następnie włącz dconf-editorwartość org/gnome/desktop/interface/can-change-accelslogiczną. Następnie otwórz nautilus za pomocą tego polecenia (aby tymczasowo wyłączyć globalne menu Unity):

nautilus -q
UBUNTU_MENUPROXY=0 nautilus

Teraz możesz najechać myszką na akcję w menu pliku i zmienić przyspieszenie, wpisując klawisz, gdy akcja jest podświetlona, ​​a następnie ponownie uruchom nautilus. Jeśli nie widzisz opcji Otwórz w terminalu w menu Plik i dopiero co zainstalowałeś nautilus-open-terminal, być może trzeba będzie najpierw uruchomić nautilus -q.

wprowadź opis zdjęcia tutaj

wprowadź opis zdjęcia tutaj

Ubuntu 14.04 i nowsze

Jeśli nie możesz znaleźć can-change-accelsklucza w konfiguracji dconf, możesz wypróbować następujące rozwiązanie:

  1. Zatrzymaj nautilusa, wykonując polecenie nautilus -q
  2. Otwórz ~/.config/nautilus/accelsw wybranym edytorze tekstu, np. Gedit:

    gedit ~/.config/nautilus/accels
    
  3. Spróbuj sprawdzić, czy możesz znaleźć następujący wiersz:

    ;(gtk_accel_path "<Actions>/DirViewActions/OpenInTerminal" "")
    
  4. Jeśli linia istnieje, dodaj skrót klawiaturowy do drugiego podwójnie cytowanego segmentu i usuń komentarz z linii, usuwając ;:

    (gtk_accel_path "<Actions>/DirViewActions/OpenInTerminal" "F12")
    

    Spowoduje to ustawienie skrótu na F12. Aby uzyskać listę wszystkich możliwych kodów kluczowych, zapoznaj się z tą odpowiedzią .

    Jeśli wiersz nie istnieje, po prostu skopiuj i wklej ten znaleziony w tej odpowiedzi na końcu pliku.

  5. Zapisz plik i uruchom ponownie Nautilus, klikając ikonę Nautilus w programie uruchamiającym / desce rozdzielczej.

Ubuntu 15.10 i 16.04

Tutaj odpowiednie polecenie ~/.config/nautilus/accelsto TerminalNautilus:OpenFolderLocal. ( NautilusOpenTerminal::open_terminaljest nadal obecny w pliku, ale wydaje się, że nie ma żadnego efektu.) Postępuj zgodnie z instrukcjami powyżej, z wyjątkiem zmiany wiersza

; (gtk_accel_path "<Actions>/ExtensionsMenuGroup/TerminalNautilus:OpenFolderLocal" "")

do

(gtk_accel_path "<Actions>/ExtensionsMenuGroup/TerminalNautilus:OpenFolderLocal" "F12")

aby F12 był skrótem klawiaturowym. Zauważ, że ;jest ponownie usuwany.

Na koniec wyloguj się, aby wprowadzić zmiany.

wim
źródło
Trik z klawiszem F12 nie działa dla mnie :(
Radu Rădeanu
1
Jak wskazano w odpowiedzi, użyj dconf-editor. Korzystanie gconf-editormoże nie pomóc.
Kadir
Nie działa dla mnie na Ubuntu 14.04
Deepen
@DpN Dla 14.04 spróbuj edytować plik ~/.config/nautilus/accelsi dodać linię podobną (gtk_accel_path "<Actions>/DirViewActions/OpenInTerminal" "F12"), a następnie zrestartuj nautilus.
wim
Nie działa, wstawiłem po wierszu „Połącz z serwerem”, który akceleruje plik zaczynając od;
Pogłębić
12

Wydaje się, że użycie metody edytora dconf nie działa w Trusty Gnome. Ale następujące działania:

W swoim katalogu domowym naciśnij Ctrl + h, otwórz folder .config, folder nautilus i plik accels;

tzn. otwórz ~/.config/nautilus/accelsi zmień wiersz:

; (gtk_accel_path "<Actions>/ExtensionsMenuGroup/NautilusOpenTerminal::open_terminal" "")

do

(gtk_accel_path "<Actions>/ExtensionsMenuGroup/NautilusOpenTerminal::open_terminal" "F12")

Pamiętaj, że separator komentarza został usunięty.

Zapisz plik, wyloguj się i zaloguj ponownie.

John F. Healy
źródło
3
Tak, takie podejście zasugerowałem już w komentarzu do zaakceptowanej odpowiedzi.
wim
To podejście działa idealnie
Hasan
2
Nie ma potrzeby wylogowywania się i ponownego logowania. To proste nautilus -q.
wyniki
Przetestowałem to 3.28.1i nie działało. Czy ktoś może przetestować tę samą wersję?
orschiro
Nie znalazłem tej linii
Vitor Abella
10

Od wersji 3.15.4 Nautilus nie ładuje już pliku accel (źródło) .

Na szczęście istnieje lepsze podejście, aby uzyskać to, czego chcesz. Długie objaśnienie / przydatne zasoby można znaleźć tutaj i również tutaj . W skrócie:

  1. Utwórz skrypt o nazwie Terminal(tak, bez rozszerzenia) w folderze ~/.local/share/nautilus/scriptso następującej treści:

    #!/bin/sh
    gnome-terminal
    
  2. Ustaw go jako wykonywalny, a następnie zamknij dowolną instancję Nautilus:

    $ chmod +x Terminal
    $ nautilus -q
    
  3. Utwórz (lub edytuj) ~/.config/nautilus/scripts-accelsplik, dodając następujące wiersze:

    F12 Terminal
    ; Commented lines must have a space after the semicolon
    ; Examples of other key combinations:
    ; <Control>F12 Terminal
    ; <Alt>F12 Terminal
    ; <Shift>F12 Terminal
    
  4. Sprawdź to! Otwórz Nautilus, kliknij prawym przyciskiem myszy i wybierz Skrypty> Terminal. Lub użyj właśnie skonfigurowanego skrótu klawiaturowego :)

Uwaga : Testowano na Ubuntu 18.04.

amartin1911
źródło
1
Dzięki, potwierdzono pracę w Ubuntu 18.04 <3
Karlsson
2
Nadal działa dla 19.04. Dzięki!
Alex K.
1
Nadal działa dla Ubuntu 18.04.2. Dzięki Ci!
JJD
Dzięki, pracuję w Ubuntu 18.04
Naami
Jeśli ponownie otworzysz nautilus przed edycją scripts-accels, będziesz musiał uruchomić nautilus -qponownie. Czy prawdopodobnie należy przenieść tę instrukcję w dół?
Matthias Dailey
5

Możesz także użyć skryptu nautilus zamiast dedykowanego rozszerzenia:

#!/usr/bin/perl -w
#
# Open terminal here
#
# Nautilus script that opens a gnome-terminal at the current location, if it's
# a valid one. This could be done in shell script, but I love Perl!.
#
# 20020930 -- Javier Donaire <[email protected]>
# http://www.fraguel.org/~jyuyu/
# Licensed under the GPL v2+
#
# Modified by: Dexter Ang [[email protected]]
# 2003-12-08: Modified for Gnome 2.4
#       - Added checking if executed on Desktop "x-nautilus-desktop:///"
#         so that it opens in /home/{user}/Desktop

use strict;

$_ = $ENV{'NAUTILUS_SCRIPT_CURRENT_URI'};
if ($_ and m#^file:///#) {
  s/%([0-9A-Fa-f]{2})/chr(hex($1))/eg;
  s#^file://##;
  exec "gnome-terminal --working-directory='$_'";
}

# Added 2003-12-08 Dexter Ang
if ($_ == "x-nautilus-desktop:///") {
  $_ = $ENV{'HOME'};
  $_ = $_.'/Desktop';
  exec "gnome-terminal --working-directory='$_'";
}

Instrukcje dotyczące instalowania skryptu i przypisywania skrótu klawiaturowego.

Glutanimate
źródło
I w jaki sposób posiadanie skryptu Nautilus zamiast dedykowanego rozszerzenia pomaga przypisać mu skrót klawiaturowy?
MestreLion
1
@MestreLion Dziękujemy za komentarz. Ta odpowiedź została połączona z innym pytaniem i pytaniem ( więcej szczegółów w dzienniku edycji ). Dlatego nie ma sekcji dotyczącej przypisywania skrótu.
Glutanimate
Ohh widzę. Przepraszam więc! Trochę niefortunne, że tak odmienne (choć powiązane) pytania zostały połączone . Twoja odpowiedź była świetna na drugie pytanie, ale na to pytanie niepełna.
MestreLion
2

Aby rozwinąć John F. Healypost:

nautilus -q
sudo apt-get install nautilus-open-terminal
sed -i 's/; (gtk_accel_path "<Actions>\/ExtensionsMenuGroup\/NautilusOpenTerminal::open_terminal" "")/(gtk_accel_path "<Actions>\/ExtensionsMenuGroup\/NautilusOpenTerminal::open_terminal" "F12")/g' ~/.config/nautilus/accels

To powinno działać na Ubuntu 14.10 Utopic Unicorn. Ostatni wiersz edytuje ~/.config/nautilus/accelsplik. Aby upewnić się, że edycja się powiodła, spróbuj wykonać następujące polecenie:

grep NautilusOpenTerminal::open_terminal ~/.config/nautilus/accels
freeseek
źródło
1

Po instalacji nautilus-open-terminalupewnij się, że zabiłeś wszystkie procesy nautilusa (zawsze działa jeden niewidoczny proces nautilusa, więc użyj go, pgrep nautilusaby je znaleźć, a następnie użyj killpolecenia).

Następnie, jeśli uruchomisz nautilus, powinieneś zobaczyć Otwórz w Terminalu, jeśli klikniesz prawym przyciskiem myszy listę plików, tak jak zrobiłem na zrzucie ekranu poniżej (gdzie działałem 14.04):

wprowadź opis zdjęcia tutaj

Sylvain Pineau
źródło
4
Problem polega na tym, że korzystam z widoku listy, w którym nie ma białych znaków, jeśli folder zawiera wiele plików. Teraz używam drzewa w widoku listy w ustawieniach wyświetlania jako rozwiązania tymczasowego.
xgdgsc