В настоящее время я использую FastScripts . Он включает в себя все скрипты ~/Library/Scripts/
, поэтому вам не нужно добавлять скрипты вручную. Он также поддерживает специфичные для приложения сценарии и имеет несколько функций, которые полезны для AppleScripts, например, останавливает сценарий перед командой keystroke
или key code
до тех пор, пока не будут выпущены клавиши-модификаторы.
Если вы купили Powerpack для Alfred 2 , вы можете создавать такие рабочие процессы:
По умолчанию горячие клавиши имеют небольшую задержку, но вы можете уменьшить ее, изменив поведение триггера:
KeyRemap4MacBook также поддерживает запуск сценариев оболочки:
<?xml version="1.0"?>
<root>
<vkopenurldef>
<name>KeyCode::VK_OPEN_URL_SHELL_say_a</name>
<url type="shell">say a</url>
</vkopenurldef>
<item>
<name>test</name>
<identifier>test</identifier>
<autogen>__KeyToKey__ KeyCode::A, KeyCode::VK_OPEN_URL_SHELL_say_a</autogen>
</item>
</root>
Другие приложения, которые поддерживают назначение ярлыков сценариям:
Другой вариант - создать службу Automator:
- Откройте Automator и выберите шаблон Сервиса.
- Убедитесь, что тип ввода и область применения указаны правильно, или измените «выбранный текст» на «нет ввода», если служба не получает никаких входных данных.
- Добавьте для сценария действие «Выполнить сценарий оболочки» или «Выполнить AppleScript».
- Сохраните сервис и дайте ему ярлык из Системных настроек.
С 10.7 существует ошибка, когда ярлыки для служб не всегда работают, пока вы не наведете курсор мыши на меню служб в строке меню. Ярлыки для сервисов не работают, когда приложение, у которого нет меню сервисов (например, Tower), находится на первом месте. Существует также заметная задержка до запуска служб.
open -a ScreenSaverEngine
даже чуть короче.Если вы используете BetterTouchTool, вы можете назначить ярлык для команды оболочки, выбрав следующее действие: Управление другими приложениями> Выполнить команду терминала
источник
Вот пример скрипта KeePass.sh, который я сделал. Я просто получил информацию и настроил его для работы с терминалом. После этого я создал псевдоним к нему на рабочем столе. Он запускает скрипт KeePass.sh внутри терминала, а затем после выхода из приложения убивает все открытые окна терминала. Вы можете настроить эту последнюю строку :-)
Вам не нужно использовать ничего особенного, как в ответах всех остальных здесь.
источник