Come automatizzare facendo clic con il pulsante destro del mouse sull'icona del Finder e scegliendo l'azione?

1

Vorrei impostare un tasto di scelta rapida globale per l'azione "Vai alla cartella ..." disponibile dall'icona del bacino del Finder.

In questo momento ho scoperto come attivare la stessa azione dalla barra dei menu del Finder tramite AppleScript:

tell application "Finder" to activate

tell application "System Events"
    keystroke "g" using {shift down, command down}
end tell

tuttavia non mi piace questa soluzione perché se c'è uno spazio con le finestre del Finder aperte, e mi trovo in un altro spazio senza le finestre del Finder aperte, questo fa cambiare spazi.

Invece, facendo clic destro sull'icona del Finder nel dock e selezionando "Vai alla cartella ..." mi tengo nello spazio in cui mi trovo.

Come automatizzare questa azione e impostarla come scelta rapida da tastiera globale?

    
posta fferri 18.04.2018 - 12:21
fonte

1 risposta

1

Prima una parola su scorciatoie da tastiera globali ... Dovrebbe essere ovvio che qualsiasi utente assegnato a tastiera globale deve essere univoco sia per il sistema operativo che per qualsiasi applicazione che ha la messa a fuoco quando vengono premuti i tasti, altrimenti non funzionerà come desiderato. Mentre uno vorrebbe premere il minor numero di tasti possibile, tuttavia utilizzando una sequenza di quattro tasti è probabilmente la scelta migliore per evitare di calpestare una scelta rapida da tastiera predefinita che è già assegnata al sistema operativo e o qualsiasi app che ha il focus quando vengono premuti i tasti. Inoltre, rendendo la quarta chiave qualcosa di diverso dai tipici tasti alfa può essere più utile per evitare qualcosa già assegnato.

Ricorda però che il predefinito, assegnato dallo sviluppatore, scorciatoie da tastiera della maggior parte delle applicazioni può essere modificato al fine di liberare una particolare combinazione che si potrebbe voler usare. Personalmente cerco di evitare di farlo, tuttavia per apportare modifiche, è possibile aggiungere il comando del menu di destinazione a: Preferenze di sistema > Tastiera > Scelte rapide > Scorciato delle app

Ad esempio, Vai alla cartella ... del menu Vai in Finder può essere aggiunto e il suo predefinito ⇧⌘G può essere modificato per es ^⇧⌘G in questo caso è possibile utilizzare la scorciatoia da tastiera predefinita per attivare l' esempio AppleScript codice usato in questa risposta con es FastScripts .

Apple ha reso sempre più difficile l'uso di un servizio Automator in casi particolari e, in quanto tale caso d'uso, personalmente uso e raccomando FastScripts . Nota che non ho alcuna affiliazione con lo sviluppatore di FastScripts e sono solo un utente soddisfatto del prodotto.

Il seguente esempio codice AppleScript usato insieme a FastScripts farà come richiesto alle condizioni espresse nel tuo OP e dovrai solo aggiungere FastScripts a Preferenze di sistema > Sicurezza e amp; Privacy > Privacy > Accessibilità per avere questa funzione script . In altre parole, se FastScripts è l'unica app in Accessibilità per Sicurezza e amp; Privacy questo script funzionerà come previsto.

Detto questo, se vuoi testare example AppleScript code prima di salvarlo, devi aggiungere Script Editor , ma non è necessario per il funzionamento effettivo in FastScripts . Lo dico perché quando si utilizza il percorso Automator Service può essere necessario aggiungere due o più app per ottenere lo stesso script solo per l'esecuzione, tuttavia non funzionerà come desiderato un servizio di automazione e perché FastScripts è raccomandato.

Esempio AppleScript codice :

tell application "System Events"
    tell UI element "Finder" of list 1 of application process "Dock"
        perform action "AXShowMenu" 
        click menu item "Go to Folder…" of menu 1
    end
end tell

Usando Script Editor , ho salvato il codice sopra come Vai a Folder.scpt in ~/Library/Scripts e in FastScripts gli ho assegnato la scorciatoia da tastiera ^⇧⌘G fino a quando non la trovo in conflitto con qualsiasi altra app che uso.

Ho notato che questo è stato testato e funziona come dichiarato sul mio sistema che esegue macOS High Sierra 10.13.4 indipendentemente da quale app aveva il focus quando venivano premuti i tasti.

Inoltre non ho avuto bisogno di usare un delay comando tra perform action ... e click menu item ... , tuttavia si noti che il valore di qualsiasi delay il comando dovrà essere regolato per il tuo sistema, e o ulteriori delay comandi potrebbero o potrebbero non essere necessari. Regola i valori (i) di e o aggiungi / rimuovi il delay comandi (s) come appropriato.

Nota: il esempio codice AppleScript è proprio questo e non impiega alcuna gestione degli errori e intende solo mostrare uno dei molti modi per svolgere un compito. L'onere è sempre sull'utente di aggiungere / utilizzare la gestione degli errori appropriata come necessario / voluto.

    
risposta data 21.04.2018 - 14:07
fonte

Leggi altre domande sui tag