18 февраля 2007 г.

Tkabber: настройка и фичи

Я уже писал, что совершенно неожиданно tkabber стал моим постоянно используемым jabber-клиентом. Так вот, теперь я хочу написать о его базовой настройке, дабы пользователь, увидевший его впервые не махнул на него рукой, как это некогда сделал я, а посмотрел на него с другой, лучшей стороны.

Итак, имеем: установленный tkabber со всеми зависимостями. Необходимо: настроить подключение к нескольким аккаунтам, подружить клиент с SSL, сделать шрифт менее страшным, подключить проверку орфографии и настроить OSD.

А настройка начинается с установки всего необходимого (ispell-russian для проверки орфографии и tcltls для поддержки SSL):
$ sudo apt-get install irussian tcltls xosd

Теперь выкачиваем osd.tcl (нажать по ссылке правой клавишей - сохранить как...) и сохраняем в папке с плагинами (адрес плагина должен выглядеть так: ~/.tkabber/plugins/osd/osd.tcl для локальной установки или /usr/share/tkabber/plugins/osd/osd.tcl для глобальной), обратите внимание, что файл плагина должен лежать в одноименной папке.

После того, как все будет поставлено, создаем в папке ~/.tkabber таинственный файл с названием config.tcl, текст можно править любым редактором, я использовал свой любимый vim:
$ vim ~/.tkabber/config.tcl

Вот его мы и будем терзать. Вставлять в этот файл комментарии (формата "# комментарий") не только не запрещается, но и рекомендуется. Приступим к правке:
set use_ispell 1

Вышеозначенная строчка включит ispell.
set loginconfX(profile) "example.com"
set loginconfX(user) login
set loginconfX(password) ""
set loginconfX(server) example.com
set loginconfX(resource) tkabber
set loginconfX(priority) 16
set loginconfX(usealtserver) 0
set loginconfX(altserver) example.com
set loginconfX(altport) 5223
set loginconfX(stream_options) ssl
set loginconfX(useproxy) 0
set loginconfX(allowauthplain) 0
set loginconfX(httpproxy) localhost
set loginconfX(httpproxyport) 3128
set loginconfX(httplogin) ""
set loginconfX(httppassword) ""

Этот набор настроек отвечает за автоматически заполенные поля в окне настройки соединения, которое возникает при запуске программы. Если аккаунт один - то X после loginconf удаляем, первая строка тоже не нужна. Если аккаунтов несколько, то меняем X на соответствующие цифры (для первого аккаунта loginconf1, для второго loginconf2 и т.д. В этом случае в окошке входа появится кнопка "Профили", по нажатию на которую мы будем видеть список из названий профилей, указанных в loginconfX(profile) и выбирать из них. Теперь подробнее по пунктам.

user отвечает за логин (только то, что стоит до "@", т.е. если ваш адрес login@example.com, то вы вставляете login), password отвечает за пароль (лучше не хранить пароль в файле конфигурации - там он не шифруется, поэтому строку про пароль лучше вообще удалить - в этом случае он сохранит пароль где-то в другом месте в зашифрованном виде). server - то, что стоит после "@" (то есть, если ваш адрес login@example.com, то вы вставляете example.com). resource - ресурс, priority - приоритет, usealtserver (0=нет, 1=да) - задавать ли сервер в ручную (допустим, если вы используете Google Talk или сервер, который в силу каких-то причин требует явного указания адреса сервера), altserver и altport - соответственно жестко задаваемые сервер и порт, если вы используете задаваемый вручную сервер (в противном случае можно их оставить, тогда они будут уже заполнены, если вы захотите включить их вручную перед установкой соединения), stream_options ssl заставит tkabber автоматически использовать ssl (внимание! замечена бага: как только вы включаете tkabber, ssl выключен независимо от настроек этой опции, для того, чтобы он включился нужно ткнуть "профили" и заново выбрать профиль, можно тот же). useproxy (0=нет, 1=да) - использовать ли прокси, allowauthplain (0=нет, 1=да) - использовать ли пересылку регистрационных данных "голым" текстом (может требоваться например Google Talk, без SSL лучше не трогать), httpproxy, httpproxyport, httplogin и httppassword отвечают за настройки proxy, если вы их используете. Ненужные пункты в процессе настройки можно просто выкинуть.

Перейдем к шрифту. Начните с выбора нужного вам шрифта (запустите xfontsel и выберите), я буду производить манипуляции на примере шрифта -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-koi8-r. Добавляем строки:
set font "-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-koi8-r"
option add *font \
"-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-koi8-r" \
userDefault

Теперь со шрифтами все в порядке. И остается последний пункт - OSD. Для этого нам понадобится добавить следующее:
proc postload {} {
# Set OSD plugin options
namespace eval ::osd {}
set ::osd::osdfont "-misc-fixed-medium-r-normal--20-200-75-75-c-100-koi8-r"
set ::osd::options "-c yellow -A right -s 1 -p bottom"
}
set ::osd {presence chat_message}

Естественно, в качестве osdfont можете использовать тот шрифт, что вам нравится. options тоже можете заполнить на свой вкус (подробно они описаны в man osd_cat). set ::osd {presence chat_message} отвечает за то, в каких случаях будут выскакивать OSD-сообщения, например, в нашем случае - это когда у пользователей из нашего ростера изменяется статус (presence) и когда мы получаем новое сообщение (chat_message). Мне это подсказали в официальной конференции tkabber, более подробных разъяснений мне добиться не удалось - никакой документации по использованию osd.tcl не существует.

Во время использования tkabber с osd мною была замечена следующая особенность: при просмотре видео через gl2-вывод (mplayer file.avi -vo gl2) при появлении сообщений, видео начинало жестоко тормозить. Не знаю, как OSD влияет на другие OpenGL-приложения, это мне еще только предстоит выяснить.

15 комментариев:

virens комментирует...

Так заразительно пишешь, что даже самому попробовать захотелось. :-) Надо будет в эмуляторе попробовать...
Только один момент: в статье напирается на использование vim для правки конфигов. Этот вопрос настолько деликатен, что лучше бы написать "любимый текстовый редактор" :-)

В остальном супер.

Von_old комментирует...

Так заразительно пишешь, что даже самому попробовать захотелось. :-)
Ну, лично я люблю попробовать что-нибудь новое, почти всегда делаю это с огромным удовольствием, чего и желаю всем своим читателям. Для того и пишу. :)
лучше бы написать "любимый текстовый редактор"
Спасибо, поправил. :)

Анонимный комментирует...

А я фанат Gajim. Имхо, это лучший джаббер в мире )))

Von_old комментирует...

Gajim не только лучший, но и самый медлительный и неповоротливый. :)

Анонимный комментирует...

Как говорится +100! (факториал)

=) Как раз начал переползать на tkabber.
Из пересмотренных (psi, gaim, gajim) только им можно нормально пользоватся не пользуясь мышью.

по этой же причине (уход от мыши) в качестве "любимого текстового редактора" переполз на vim =)

to virens: ну понятно, что вопрос деликатный =) Некоторые пользуются emacs =)

Анонимный комментирует...

> Gajim не только лучший, но и самый медлительный и неповоротливый. :)

Не замечал этого. Может быть потому что Core 2 Duo и 2 гига оперативы...

Анонимный комментирует...

А может потому, что он не стоит на месте, и в новых версиях он стал быстрее? Давно смотрели обновления? Я вообще из svn юзаю.

Ivan A-R комментирует...

собственно есть вопрос. Если оставить tkabber на некоторое время он теряет контакт с сервером =( Я так понимаю, что он не шлёт keep-alive пакетов. Кто разнюхал как исправить?

Анонимный комментирует...

keep-alive есть в версии из SVN.

Анонимный комментирует...

У Ткаббера есть достаточно "толстое" вики, на котором, в числе прочего, много информации по конфигурированию клиента: http://ru.tkabber.jabe.ru

Анонимный комментирует...

у меня ткабер в убунте 6.10 утратил способность писать по русски. как в прочем и все тк приложения. есть решение?

Von_old комментирует...

Kostix, в вики есть далеко не все. Например, там нет про настройку OSD. Пришлось выспрашивать в чате.

Всеволод, увы, не сталкивался. Боюсь, ничем помочь не могу.

Анонимный комментирует...

>Из пересмотренных (psi, gaim, gajim) только им можно нормально пользоватся не пользуясь мышью.

Не согласен. Как пользоваться без мыши tkabber'ом, если хочешь выбрать собеседника в контакт-листе?

p.s. сам tkabber пользователь

Unknown комментирует...

а как же обзора консольных клиентов не будет?

Von_old комментирует...

Пока не планируется.

Отправить комментарий