Otwórz terminal za pomocą skrótu klawiaturowego

17

Używam Alfreda i dlatego nie mam żadnego zastosowania dla skrótu klawiaturowego Cmd+ Space. Chcę wywołać terminal przy użyciu tego skrótu. Podobnie jak w Ubuntu, kiedy naciśniesz Ctrl+ Alt+ T, czy istnieje sposób na uruchomienie takiego terminalu w OS X Mavericks?

PS Nie chcę używać Alfreda do uruchamiania terminalu. Chcę tylko nacisnąć Cmd+ Spacei chcę, aby terminal pojawił się tak, jak w Ubuntu.

Morfeusz
źródło

Odpowiedzi:

15

Klawiatura Maestro

Możesz to zrobić za pomocą Keyboard Maestro, używając makra takiego jak to:

Alfred

Możesz skonfigurować niestandardowy klawisz skrótu, aby uruchamiać aplikację za pomocą przepływu pracy:

Przejdź do karty przepływów pracy, utwórz nowy przepływ pracy i dodaj skrót i „uruchamiaj aplikacje”, a Terminal zostanie wybrany jako aplikacja do uruchomienia.

KeyRemap4MacBook

Możesz użyć KeyRemap4MacBook z plikiem private.xml, takim jak ten:

<?xml version="1.0"?>
<root>
  <vkopenurldef>
    <name>KeyCode::VK_OPEN_URL_Terminal</name>
    <url>file:///Applications/Utilities/Terminal.app</url>
  </vkopenurldef>
  <item>
    <name>Activate Terminal with Space</name>
    <identifier>ActivateTerminalWithCmdSpace</identifier>
    <autogen>
      __KeyToKey__
      KeyCode::SPACE, VK_COMMAND | ModifierFlag::NONE,
      KeyCode::VK_OPEN_URL_Terminal
    </autogen>
  </item>
</root>

Serwis Automatora

Możesz utworzyć usługę w Automatorze:

Otwórz terminal

… Następnie w Preferencjach systemowych → Klawiatura → Skróty → Usługi możesz przypisać polecenie klawiatury, aby je uruchomić.

grg
źródło
Czy nie można tego zrobić w sposób natywny, jak w systemach Windows i Linux? Pytam, ponieważ KeyBoard Maestro i Alfred nie są darmowe.
Morfeusz
@Morpheus Dodano metodę za pomocą KeyRemap4MacBook, która jest bezpłatna
grg
czy keyremapformacbook powinien być cały czas otwarty?
Morfeusz
@Morpheus Aplikacja nie musi być otwarta - dodaje demona.
grg
1
@grgaside, automatyzator nie działa, ale keyremap działa. Więc dziękuję!
Morfeusz
7

5 miesięcy spóźnienia, ale myślę, że ten kawałek jest przydatny.

Jeśli chodzi o rozwiązanie automatyzujące, jest to prawdopodobnie nieco lepsze. Zamiast uruchamiać wyszukiwarkę, wystarczy użyć skryptu jabłkowego. tj. dodaj akcję „Narzędzia Uruchom AppleScript”. Uruchom ten skrypt:

on run {input, parameters}

    tell application "Terminal"
        do script " "
        activate
    end tell

    return input
end run

To nie tylko otworzy terminal, ale po wielokrotnym uruchomieniu otworzy wiele okien. Następnie po prostu dodaj skrót w usługach (pod klawiaturą), jak wyjaśniono w odpowiedzi George'a Garside'a.

tlane
źródło
1
błąd podczas zapisywania:Expected end of line but found "script"
Brian Vanderbusch
1
Przydaje się ta odpowiedź na przepełnienie stosu , jest to takie samo podejście jak odpowiedź @tlane, ale bardzo szczegółowe w jej implementacji, bardzo przydatne dla kogoś zupełnie nowego w MacOS.
Rodrirokr
3

Możesz to zrobić bardzo łatwo za pomocą BetterTouchTool :

btt-snapshot

Jako „Konkretną aplikację” do otwierania wybranego / aktywnego folderu wybrałem Terminal.

Tak więc, gdy korzystam z określonego skrótu klawiaturowego (używam opcji-), bieżący folder jest otwierany w terminalu.

Dzika karta
źródło
3

W iTerm2 możesz przejść do preferencji iterm, klawisze -> klawisze skrótu -> ustawione w poleceniu klawiszowym.

blamb
źródło
3

Udało mi się osiągnąć to samo zachowanie, co Ubuntu Ctrl+ Alt+ T, łącząc następujące dwa kroki:

  1. Skonfiguruj usługę Automator, aby otworzyć iTerm2: Otwórz aplikację Automator, wybierz z menu opcję „Szybkie działanie” Szybka akcjai przypisz jej skrót klawiaturowy Ctrl+ command+ T. wprowadź opis zdjęcia tutajSpowoduje to otwarcie aplikacji, ale nie otworzy więcej okien (więc jeśli aplikacja jest otwarta, skrót klawiaturowy nie ma wpływu).

  2. Dodaj mapowanie klucza iTerm2, aby otworzyć kolejne okna. W preferencjach iTerm2: wprowadź opis zdjęcia tutaj

Masz, żadna zewnętrzna aplikacja nie jest potrzebna, ale dalekie od prostoty

UltraMaster
źródło
2

Najbliższe, jakie przyszedłem z macOS w stanie, w jakim się znajduje, bez żadnych modów ani oprogramowania innych firm:

  1. Cmd+ Shift+ u
    Otwiera podfolder U narzędzia w / Applications / (gdzie mieszka Terminal.app)
  2. t
    Wybiera T erminal.app
  3. Cmd+ Option+ o
    O uruchamia Terminal.app i zamyka okno wyszukiwarki.

Działa to od pierwszego dnia przy każdej wersji OSX.

Z niewielką modyfikacją System Preferences >> Keyboard >> Shortcuts::Servicesjest to drugie miejsce, ale najpierw musisz wybrać folder: wprowadź opis zdjęcia tutaj

... na przykład z Findera przy logowaniu możesz

  1. Cmd+, Up Arrowa następnie katalog domowy ~/otworzy się w Finderze
  2. Cmd+ Up Arrowponownie do katalogu / Users /. Teraz ~/należy wybrać katalog domowy użytkownika (jeśli jest w widoku listy lub ikon, a nie w kolumnie).
  3. Jeśli następnie naciśniesz niestandardową kombinację klawiszy „Usługi” (np. Ctrl+ Opt+ Cmd+ t), Aby uruchomić „Nowy terminal w folderze”, Terminal.app uruchomi się w twoim katalogu domowym~/

Wreszcie, starając się uzyskać coś tak blisko jak to możliwe, aby uruchomić okno Terminal.app z Findera za pomocą Ctrl+ Alt+ t... Ponieważ Optionklucz jest trochę równoważny Altkluczowi ... używając niestandardowej kombinacji klawiszy „Usługi”, aby uruchomić „Nowy terminal w folderze” można również utworzyć alias katalogu domowego na pulpicie. Jeśli zmienisz nazwę aliasu Space, w Finderze będzie to:

  1. Spacewybierz swój ~/alias

  2. Ctrl+ Opt+, taby otworzyć tam terminal.

... i kończysz z małym domem mieszkającym na pulpicie, na który wskazuje strzałka:

wprowadź opis zdjęcia tutaj

Pan Kennedy
źródło
2

Użyj Quicksilver

  1. Stwórz nowy Trigger w Quicksilver, otwierając Triggery ( Cmd+ 'gdy Quicksiver jest otwarty)
  2. Kliknij +▾przycisk na dole listy i wybierzKeyboard

Dodaj nowy skrót klawiaturowy do aplikacji

  1. Wpisz, terminala ten pokaże terminal.app, a następnie naciśnij Enterlub kliknij Saveprzycisk

  2. Przypisz skrót klawiaturowy do tego wyzwalacza, klikając Keyboardi wysuwane okno wil, er, wysuń

  3. Następnie na koniec kliknij puste pole po Shortcut:i naciśnij ulubioną kombinację klawiszy

Omówienie wyzwalaczy Quicksilver

Ymetro
źródło
1

Jeśli chcesz używać iTerm (iTerm2), wykonaj to samo co odpowiedź @ tlane , z wyjątkiem tego, że używasz AppleScript:

on run {input, parameters}
    if application "iTerm" is running then
        tell application "iTerm"
            create window with default profile
            activate
        end tell
    else
        tell application "iTerm"
            activate
        end tell
    end if

    return input
end run
kody eric
źródło
Dodałem to w automatorze, aw automacie działa świetnie. Kiedy jednak przypisuję skrót klawiaturowy dla tej usługi, nic nie robi. Czy jest jeszcze coś, na co muszę uważać?
s-heins
@ s-heins Być może użyty skrót klawiaturowy jest już używany przez inne oprogramowanie, takie jak system operacyjny? Użyłem control + opcja + polecenie + T i to działało.
ericcodes
1

Możesz to zrobić bez użycia aplikacji innych firm:

  • Otwórz Ustawienia klawiatury i przejdź do karty Skróty
  • Teraz, Goto Skróty do aplikacji
  • Kliknij symbol +, wybierz aplikację Terminal (jeśli nie znalazłeś aplikacji Terminal, wybierz „inne” i przejdzie do Findera, a następnie wyszukaj Terminal)
  • nazywanie skrótu i ​​klawiszy skrótu, które chcesz podać.
nmanikumar5
źródło
1
Chciałbym, żeby to zadziałało, ale mówią: „Nie można tworzyć skrótów klawiaturowych do zadań ogólnego przeznaczenia, takich jak otwieranie aplikacji” ( support.apple.com/guide/mac-help/… ), jednak wydaje się, że jest rozwiązanie z automatyzatorem (jeszcze nie testowane): appleinsider.com/articles/18/03/14/…
ling