Raccourci clavier global pour afficher / masquer une application spécifique sous OS X? [dupliquer]

10

Duplicata possible:
lancer une application OS X avec un raccourci clavier

Est-il possible de définir un raccourci clavier global pour afficher / masquer une application spécifique sous OS X?

Par exemple, je veux pouvoir afficher / masquer Safari avec Cmd+ Space.

Roman Dolgiy
la source
Associé au lancement d'une application OS X avec un raccourci clavier - Super utilisateur . J'ai modifié ma réponse à cette question pour inclure des applications tierces qui prennent en charge les déclencheurs de style d'affichage ou de masquage. J'ai également ajouté un AppleScript pour afficher ou masquer une application.
Lri

Réponses:

7

Ouvrez Automator , sélectionnez pour créer un service , configurez-le pour qu'il ne reçoive aucune entrée dans aucune application .

Dans la bibliothèque, double-cliquez sur Utilitaires »Exécuter AppleScript et entrez ce qui suit dans la grande zone de texte:

on run {input, parameters}

    tell application "System Events"
        set names to name of application processes
        if names contains "Safari" then
            tell application process "Safari"
                if visible then
                    set visible to false
                else
                    # use the following to simply have it reappear:
                    set visible to true
                    # use the following to focus Safari:
                    tell application "Safari" to activate
                end if
            end tell
        else
            display dialog "Safari is not running"
        end if
    end tell

    return input
end run

Enregistrez sous n'importe quel nom. Attribuez un raccourci clavier dans Préférences Système »Clavier» Raccourcis clavier »Services . N'oubliez pas de désactiver le raccourci Spotlight Cmd-Space.

Daniel Beck
la source
2
Au lieu de display dialog, vous pouvez également tell application "Safari" to activatele lancer s'il ne fonctionne pas.
Daniel Beck
3

Enregistrer dans AppleScript Editor et attribuer un raccourci pour exécuter un script sous OS X

tell application (path to frontmost application as text)
    if name is "TextEdit" then
        set bid to id
        tell application "System Events" to tell (process 1 where bundle identifier is bid)
            set visible to false
        end tell
    else
        tell application "TextEdit"
            reopen
            activate
        end tell
    end if
end tell
  • Si l'application ciblée est actuellement au premier plan, masquez-la
  • Sinon, activez-le
Lri
la source
Le comportement de ce script est le suivant: Si TextEdit est l'application la plus en avant, elle sera masquée, sinon elle sera mise en avant. Ainsi, ce script ne masquera pas l'application si elle est visible mais pas au premier plan, au lieu de cela, la mettant en avant.
Daniel Beck
Comportement intelligent. Il me manquait juste l'explication du comportement du raccourci dans votre message - je pense que ce serait utile.
Daniel Beck
Je vous remercie! J'ai marqué la réponse de Daniel comme il était le premier.
Roman Dolgiy
-3

CMD + W masquera les fenêtres. Cela fonctionne globalement. Cependant, pour y revenir, vous devez cliquer sur les icônes du dock. Dans un navigateur, il fermera cependant l'onglet.

Aleksandr Vysockij
la source
Non. Cmd + W ferme les fenêtres.
daviesgeek
De plus, l'utilisateur pose des questions sur les applications , pas sur les fenêtres . Sous OS X, il y a beaucoup de différence.
Daniel Beck