Глобальна швидка клавіша для показу / приховування конкретного додатка в OS X? [дублікат]


10

Можливий повтор:
запуск програми OS X за допомогою комбінації клавіш

Чи можна визначити глобальну гарячу клавішу, щоб показати / приховати певну програму в OS X?

Наприклад, я хочу мати можливість показати / приховати Safari за допомогою Cmd+ Space.


Пов’язаний із запуском програми OS X за допомогою комбінації клавіш - Super User . Я відредагував свою відповідь на це запитання, щоб включити сторонні додатки, які підтримують тригери стилю "показати або приховати". Я також додав AppleScript для показу або приховування програми.
Лрі

Відповіді:


7

Відкрийте Automator , виберіть, щоб створити Сервіс , налаштуйте так, щоб він не отримував введення в жодній програмі .

У бібліотеці двічі клацніть утиліти »Запустіть AppleScript і введіть наступне у велику область тексту:

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

Збережіть під будь-яким ім’ям. Призначте комбінацію клавіш у налаштуваннях системи »Клавіатура» Комбінації клавіш »Послуги . Не забудьте відключити ярлик "Прожектор" Cmd-Space.


2
Замість цього display dialogможна альтернативно tell application "Safari" to activateзапустити його, якщо він не працює.
Даніель Бек

3

Збережіть у редакторі AppleScript і призначте ярлик для запуску сценарію в 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
  • Якщо цільова програма зараз передує, прихойте її
  • В іншому випадку активуйте його

Поведінка цього сценарію полягає в наступному: Якщо TextEdit - це найперша програма, вона буде прихована, інакше буде виведена на фронт. Таким чином, цей скрипт не приховуватиме додаток, якщо він видимий, але не передній, а замість цього виведе його на фронт.
Даніель Бек

Розумна поведінка. Я просто пропускав пояснення, як поводиться ярлик у вашій публікації - я думаю, це було б корисно.
Даніель Бек

Дякую! Я відзначив відповідь Даніеля тим, що він був першим.
Роман Долгій

-3

CMD + W приховає вікна. Це працює в усьому світі. Однак, щоб повернутися до них, вам потрібно натиснути на піктограму дока. Однак у веб-переглядачі він закриє вкладку.


Ні. Cmd + W закриває вікна.
daviesgeek

Крім того, користувач запитує про програми , а не про Windows . У OS X різниця дуже велика.
Даніель Бек
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.