Apri il terminale usando una scorciatoia da tastiera


17

Sto usando Alfred e quindi non ho alcun uso per la scorciatoia da tastiera Cmd+ Space. Voglio invocare il terminale usando quella scorciatoia. Proprio come in Ubuntu, quando si preme Ctrl+ Alt+ T, c'è un modo per avviare un terminale del genere in OS X Mavericks?

PS Non voglio usare Alfred per avviare il terminale. Voglio solo premere Cmd+ Spacee voglio che il terminale appaia come farebbe in Ubuntu.

Risposte:


15

Tastiera Maestro

Puoi farlo con Keyboard Maestro, usando una macro come questa:

Alfred

È possibile impostare un tasto di scelta rapida personalizzato per avviare un'app utilizzando un flusso di lavoro:

Vai alla scheda dei flussi di lavoro, crea un nuovo flusso di lavoro e aggiungi un tasto di scelta rapida e una 'app di avvio' con Terminal selezionato come app da avviare.

KeyRemap4MacBook

È possibile utilizzare KeyRemap4MacBook con un file private.xml come questo:

<?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>

Servizio di automazione

È possibile creare un servizio in Automator:

Terminale aperto

... quindi in Preferenze di Sistema → Tastiera → Collegamenti → Servizi è possibile assegnare un comando da tastiera per eseguirlo.


Non può essere fatto nativamente come in Windows e Linux? Sto chiedendo perché KeyBoard Maestro e Alfredo non sono gratuiti.
Morfeo,

@Morpheus Aggiunto un metodo usando KeyRemap4MacBook che è gratuito
grg

keyremapformacbook dovrebbe essere aperto tutto il tempo affinché questo avvenga?
Morfeo,

@Morpheus L'app non deve essere aperta: aggiunge un demone.
grg

1
@grgaside, l'automatore non funziona ma keyremap funziona. Quindi grazie!
Morfeo,

7

5 mesi di ritardo, ma penso che questo pezzo sia utile.

Per quanto riguarda una soluzione di automazione, questo è probabilmente un po 'meglio. Invece di eseguire finder, basta usare uno script di mele. cioè aggiungere l'azione "Utilità Esegui AppleScript". Esegui questo script:

on run {input, parameters}

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

    return input
end run

Questo non aprirà solo il terminale, se eseguito più volte aprirà più finestre. Quindi aggiungi un tasto di scelta rapida nei servizi (sotto la tastiera), come spiegato nella risposta di George Garside.


1
errore durante il salvataggio:Expected end of line but found "script"
Brian Vanderbusch

1
Puoi trovare utile questa risposta stackoverflow , è lo stesso approccio della risposta @tlane ma molto dettagliata nella sua implementazione, molto utile per qualcuno totalmente nuovo su MacOS.
Rodrirokr,

3

Puoi farlo molto facilmente con BetterTouchTool :

BTT-snapshot

Come "Applicazione specifica" con cui aprire la cartella selezionata / attiva, ho scelto Terminale.

Pertanto, quando utilizzo la scorciatoia da tastiera specificata (utilizzo l'opzione- '), la cartella corrente viene aperta nel Terminale.


3

In iTerm2, puoi andare alle preferenze di iterm, tasti -> tasti di scelta rapida -> imposta nel comando chiave.


3

Sono stato in grado di ottenere lo stesso comportamento di Ubuntu Ctrl+ Alt+ Tcombinando i seguenti due passaggi:

  1. Configurare un servizio Automator per l'apertura iTerm2: apri l'app Automator, seleziona "Azione rapida" dal menu Azione rapidae assegnagli una scorciatoia da tastiera Ctrl+ command+ T. inserisci qui la descrizione dell'immagineQuesto aprirà l'app ma non aprirà più finestre (quindi se l'app è aperta la scorciatoia da tastiera non ha effetto).

  2. Aggiungi una mappatura chiave iTerm2 per aprire le finestre successive. Nelle preferenze iTerm2: inserisci qui la descrizione dell'immagine

Ecco qua, nessuna app esterna è necessaria ma tutt'altro che semplice


2

Il più vicino sono arrivato con macOS così com'è e senza mod o software di terze parti:

  1. Cmd+ Shift+ u
    Apre la sottocartella U tilities in / Applicazioni / (dove vive Terminal.app)
  2. t
    Seleziona la T erminal.app
  3. Cmd+ Option+ o
    O penetra Terminal.app e chiude la finestra del Finder.

Questo ha funzionato dal primo giorno con ogni versione di OSX.

Con una leggera modifica a System Preferences >> Keyboard >> Shortcuts::Services, questo è un secondo classificato, ma richiede prima di selezionare una cartella: inserisci qui la descrizione dell'immagine

... ad esempio dal Finder al momento del login è possibile

  1. Cmd+ Up Arrowe la tua home directory ~/si aprirà nel Finder, quindi
  2. Cmd+ di Up Arrownuovo nella directory / Users /. Ora è ~/necessario selezionare la home directory dell'utente (se in vista elenco o icona, non colonna).
  3. Se poi premi la combinazione di tasti "Servizi" personalizzata (es. Ctrl+ Opt+ Cmd+ t) Per avviare un "Nuovo terminale nella cartella", Terminal.app verrà avviato nella tua home directory~/

Infine, nel tentativo di avvicinarsi il più possibile all'avvio di una finestra Terminal.app dal Finder con Ctrl+ Alt+ t... Poiché la Optionchiave è un po 'equivalente alla Altchiave ... usando la combinazione di tasti personalizzata "Servizi" per avviare un "Nuovo terminale nella cartella" è inoltre possibile creare un alias della home directory sul desktop. Se rinomini l'alias Space, quindi dal Finder è:

  1. Spaceper selezionare il tuo ~/alias, quindi

  2. Ctrl+ Opt+ tper aprire un terminale lì.

... e finisci con una piccola casa che vive sul tuo desktop che ha una freccia che la punta:

inserisci qui la descrizione dell'immagine


2

Usa Quicksilver

  1. Crea un nuovo trigger in Quicksilver aprendo i trigger ( Cmd+ 'quando Quicksiver è aperto)
  2. Fare clic sul +▾pulsante nella parte inferiore dell'elenco e selezionareKeyboard

Aggiungi una nuova scorciatoia da tastiera a un'app

  1. Digita terminale questo mostrerà terminal.app quindi premi Entero fai clic sul Savepulsante

  2. Assegnare una scorciatoia da tastiera a quel grilletto facendo clic su Keyboarde una finestra scorrevole fuori scivolerà fuori

  3. Quindi, infine, fai clic sulla casella vuota dopo Shortcut:e premi la tua combinazione di tasti preferita

Panoramica dei trigger Quicksilver


1

Se vuoi usare iTerm (iTerm2), fai lo stesso della risposta di @ tlane , tranne che per questo per 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

Ho aggiunto questo in automator e, all'interno di automator, funziona benissimo. Tuttavia, quando assegno una scorciatoia da tastiera per questo servizio, non fa nulla. C'è qualcos'altro che devo fare attenzione?
s-heins,

@ s-heins forse la scorciatoia da tastiera che hai provato è già utilizzata da altri software come il sistema operativo? Ho usato control + option + command + T, e ha funzionato.
Ericcodes,

1

Puoi farlo senza utilizzare applicazioni di terze parti:

  • Apri le impostazioni della tastiera e vai alla scheda Collegamenti
  • Ora, vai alle scorciatoie dell'app
  • Fai clic sul simbolo +, scegli l'app Terminale (se non hai trovato l'app Terminale, scegli "altro" e passerà al Finder, quindi cerca Terminale)
  • denominazione del collegamento e dei tasti di scelta rapida che si desidera assegnare.

1
Vorrei che funzionasse, ma dicono: "Non è possibile creare scorciatoie da tastiera per attività di carattere generale, come l'apertura di un'app" ( support.apple.com/guide/mac-help/… ), tuttavia sembra che ci sia una soluzione con automatore (non ancora testato): appleinsider.com/articles/18/03/14/…
ling
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.