Как забыть про ярлыки на рабочем столе?
Введение
Лаунчеры
Недавно (по-моему после прочтения книги "Продуктивный программист. Как сделать сложное простым, а невозможное – возможным" Нила Форда) мой интерес пал на launcher’ы. Для windows-платформы я нашёл несколько:
- SlickRun http://www.bayden.com/SlickRun/
- slimCODE http://www.slimcode.com/
- Colibri http://colibri.leetspeak.org/ – некоторый аналог небезызвестного Quicksilver для Mac OS X
- Launchy http://www.launchy.net/
Ну и герой этого поста:
Немного истории
Изложу настолько, насколько я сумел разобраться в ней. Первоначально Enso был строго коммерческим проектом, разрабатываемым компанией Humanized (основанной Джеффри Раскиным, в котрой в последующем работал его сын). В дальнейшем компания начала работу над Mozilla Ubiquity (аналог Enso, являющийся плагином для FireFox), что позволило ей сделать Enso бесплатным.
Enso
Лучше 1 раз увидеть, чем 7 раз прочитать, базовые возможности представлены в следующих роликах:
www.youtube.com/v/JXfjwZw8cj8
www.youtube.com/v/Bs-L63X_xlI
*сорри, но не получилось сделать видео ембедед
На настоящий момент на сайте компании есть две версии продукта:
- Версия 1 http://humanized.com/enso/
удобна в эксплуатации, но умеет делать лишь базовые вещи.
настройка (как и во второй версии) происходит через embeded веб-сервер
- Версия 2 http://humanized.com/enso/beta/all/ (остальное на данной странице является плагинами для Enso)
в данной версии появилось огромное количество очень полезных плагинов (к примеру поиск в google, генерация объектов-карт по выделенному адресу) однако юзабили немного упало (с моей точки зрения) в плане того, что после ввода команды начала открываться отдельная строка для ввода параметров, на что уходило время, и приходилось нажимать лишний раз enter
Все отлично, за исключением того, что проект на данном сайте вроде как заброшен, что не совсем воодушевляло к использованию, однако слазив внутрь и посмотрев реализацию, обнаружилось, что всё написано на Python (межплатформенность?), а так же исходники доступны в свободном доступе, что немного приободрило.
В дальнейших поисках упоминаний о Enso я наткнулся на коммунити http://www.ensowiki.com, а так же (самое главное) хостинг нынешей версии Enso https://launchpad.net/enso, итак, что же изменилось с тех времен:
- настройка больше не через веб-сервер
- межплатформенность (Windows, Linux, Mac OS X, etc)
- интерфейс первой версии
- практически все плагины из второй версии
Используем Enso
Для установки существует инсталлер, поэтому трудности вряд ли могут встретиться. Далее у меня возникла необходимость в настройке (теперь для совершения настроек существует файл enso\config.py) “основной” клавиши (Caps Lock) в режим залипания (Sticky в терминологии создателей программы), для этого я проделал следующее:
# Whether the Quasimode is actually modal («sticky»).
IS_QUASIMODE_MODAL = True
Расширяем Enso
Классно, мой питомец (Enso) теперь стал послушным и ласковым, однако хочется научить его понимать новые команды, ну что ж, пускай это будет Enso hello world.
Я отправился в папку commands в корне, куда добавил файл butaji.py со следующим содержимым:
import enso.config
from enso.messages import displayMessage
def cmd_butaji(ensoapi, cmd):
if cmd == «time»:
ensoapi.display_message(«Hello world»)
cmd_butaji.valid_args = ['time']
И у меня получилось следующее:
Великолепно! я думаю, что мы с Enso очень сдружимся.