11 July 2008

jabber.el или джаббер-клиента емакса

Emacs
В последнее время я начал проводить много времени в редакторе среде Emacs, потому что после некоторого периода адаптации понял, что это очень удобная вещь. Конечно, вы можете спросить, мол а может я линуксойд-фанатик и на самом деле ничего удобного в Emacs-е нет. Попытаюсь аргументировать: разве неудобно когда все под рукой? Все в одном средстве: и тектовый редактор, и средство для планирования (например своего свободного времени на неделе), и почтовый клиент, и средство для работы с системами контроля версий, такими, как CVS или SVN, и даже небольшой, просто веб-браузер (большие сайты он конечно не всегда просматривает правильно, но почитать новости на ЛОР-е удобно вполне). По-моему, такой подход имеет право на существование. Да, и не стоит забывать, что среда Emacs имеет встроенный язык программирования elisp, что позволяет заточить среду под свои конкретные нужды или даже разработать свой собственный встроенный модуль и все это еще и OpenSource! В этой статье, я хочу познакомить читателей с jabber-клиентом Emacs-а, который называется jabber.el.

Итак, хочется начать с того, что jabber.el разрабатывается отдельно от emacs-а, поэтому не входит в стандартную поставку, но его легко можно доустановить, например в Ubuntu установка сводится к одной строке в консоли:
sudo aptitude install emacs-jabber
Лично мне кажется, что в репозиториях различных линукс-дистрибутивов лежит достаточно старая версия jabber.el, поэтому я предпочитаю получать jabber-клиент с git репозитория Кирилла Коринского — одного из разработчиков jabber.el.
Итак, после установки jabber.el нужно подключить его в файле конфигурации Emacs, который называется (.emacs). Дописываем туда следующую строку:
(require 'jabber)
После этого запускаем emacs. Итак, мы указали emacs-у, что надо загрузить модуль jabber.el при старте, теперь необходимо настроить jabber-аккаунт. В emacs-е набираем:
M-x jabber-customize
после этого мы попадаем на страницу настроек соединения с jabber-сервером.
Настройка jabber.el
После настройки мы можем подключиться к серверу с помощью команды
M-x jabber-connect
Или же с помощью нажатия клавиш С-x C-j C-c Не пугайтесь, эти огромные сочетания клавиш, естественно, можно сделать автоматическим, например подключаться к jabber-серверу при запуске редактора или же назначить это большое сочетание клавиш его какой-то, удобный вам шоткат, к примеру, назначим подключение на клавишу , для этого добавим в конфиг Emacs-а следующую строку:
(global-set-key [f5] 'jabber-connect)
После подключения можно переключиться на ростер (список контактов) с помощью команды
M-x jabber-switch-to-roster-buffer
Или сочетания клавиш C-x C-j C-r
В верхней части ростера приведен краткий список команд. Например, чтобы зайти в конференцию, необходимо нажать клавишу j, а чтобы начать диалог с кем-нибудь из контактов — нужно подвести к нему курсор и нажать Enter.
Еще одно интересное действие: допустим, что мы хотим переключиться в буффер, где у нас есть непрочитанные сообщения, для этого достаточно выполнить:
M-x jabber-activity-switch-to
Или же лучше добавим это дело в конфиг на на горячие клавиши C-x C-a:
(global-set-key "\C-x\C-a" 'jabber-activity-switch-to)
А также интересно было бы включать проверку орфографии в буферах сообщений, для этого добавим следующую строку в конфиг:
(add-hook 'jabber-chat-mode-hook 'flyspell-mode)
Это я обнаружил тут
Как видно, тут используется интересный механизм емакса — ловушки (hooks), т.е. запуск некоторых заданных функций при наступлении какого-то события (в нашем примере при переключении в режим чата, а такой режим используется во всех окнах сообщений jabber.el включается проверка орфографии «на лету»).
В своей короткой статье я, конечно же, не описал и сотую долю возможностей jabber.el, а уж тем более Emacs-а, — я ведь такой же новичок в Emacs-е, как и многие другие. Хотелось бы отметить, что многие вопросы, мне помогли решить люди из конференции emacs@conference.jabber.ru и я им очень за это благодарен.
И в заключение, хочу сказать, что возможно, такой jabber-клиент покажется новичку неудобным, но поверьте, через несколько недель плотного общения с Emacs-ом, вы взглянете на него по-новому.
Tags:linuxemacsjabber
Hubs: Emacs
+13
3.8k 15
Comments 38
Popular right now