Регистрация глобальных горячих клавиш на Mac?

Я пишу приложение с Titanium Developer, которое позволяет мне использовать Javascript, PHP, Ruby и Python. Он предоставляет API с определенными стандартными функциями, которые могут понадобиться, но отсутствуют глобальные события.

Теперь я хочу назначить глобальные горячие клавиши для своего приложения, и я почти ничего не знаю. Сейчас я нацелен только на MAC, но не могу найти никаких решений для Python или Ruby. Я нашел следующую библиотеку для Cocoa, которая, кажется, может это сделать:

https://github.com/secondgear/SGHotKeysLib

Но у меня нет опыта работы с Objective C, и я не хочу тратить время на его изучение только для того, чтобы реализовать одну единственную вещь.

Может ли кто-нибудь дать мне совет по одному из следующих ..

  • Как зарегистрировать глобальные горячие клавиши на Mac с помощью Python
  • Как зарегистрировать глобальные горячие клавиши на Mac с помощью Ruby
  • Как использовать SGHotkeysLib для создания демона CLI, который мог бы направлять глобальные горячие клавиши другим приложениям (я мог бы использовать инструмент командной строки, чтобы, например, зарегистрировать, что Command+K запускает определенное приложение).

Или, возможно, какие-то другие идеи, о которых я не подумал?

Просто указатель в правильном направлении будет высоко оценен.

Заранее спасибо.


person Naatan    schedule 25.04.2011    source источник
comment
любые другие идеи › изучить Objective-C? Это действительно не так сложно...   -  person Dave DeLong    schedule 26.04.2011
comment
Я в этом не сомневаюсь, но на данный момент у меня нет времени изучать Objective-C.   -  person Naatan    schedule 26.04.2011


Ответы (1)


Вы можете использовать Python для прямого вызова PyObjC, который является интерфейсом Python для Objective-C. Поиск по запросу «горячая клавиша pyobjc» выдал этот документ. (Тот, что на официальном PyObjC, почему-то не работает.)

person jathanism    schedule 25.04.2011
comment
Благодаря jathanism, конкретный скрипт, который вы связали, к сожалению, не совместим со Snow Leopard, но я посмотрю, что еще я могу найти при вызове PyObjC через Python. - person Naatan; 26.04.2011