Этот плагин добавляет следующие возможности:
- цветные id/username/tag;
- кликабельные id/username/tag:
- Если нажать
RET
на id/username, то оно будет вставлено в буфер ввода; - Если нажать
RET
на теге, то будет выведено последние 10 сообщений с этим тегом; - Если нажать
s/u
на id/username, то вы будете подписаны/отписаны на это сообщение/пользователя; - Если нажать
p
на имени пользователя, то в поле ввода будет вставлен текст видаPM @username
.
- Если нажать
- Геолокация (через PEP и message);
- Tune (через PEP и message);
- Mood (через message);
- Загрузка картинок через IBB (IBB реализован в одну сторону, т.е. позволяет только отправлять файлы, но не принимать);
- Отображение аватарок;
- Исправление неправильного ввода команд juick бота (РУДЗ -> HELP, № -> #, ...);
- Подписка на теги;
- Автоматическая подписка на сообщения с определенным тегом/именем пользователя;
- Закладки.
- Для перемещения по сообщениям можно использовать
M-e
,M-a
; g
- на имение пользователя или номере сообщение, откроет браузер с соответсвующей ссылкой.
После того как вы ответили на сообщение т.е. нажали RET
на id, можно нажать
C-u C-SPACE
(стандартное сочетание емакса для навигация по локальным меткам) и
переместиться на позицию где вы были (удобно когда приходит много сообщений и
по мере чтения отвечать на них)
Указать геолокацию можно одним из способов:
- Через PEP
Что бы отправить PEP сообщение с геолокацией нажмите
C-cjp
(или наберитеjabber-pep-location-send
) далее следует ввести название местности (например "Санкт Петербург"), после чего будет произведена попытка узнать координаты этой местности через google maps, и отправлена серверу. - Через сообщение eсли jabber сервер не поддерживает PEP, то сообщить о
геолокации можно прямо в сообщение. После того как вы набрали сообщение,
нажмите
C-cjg
(илиjabber-pep-location-send
), геолокация указывается так же как и в предыдущем случае.
Если вы пользуетесь emms, то для отправки tune сообщений можно использовать следующий код:
(add-hook 'emms-player-started-hook
'(lambda ()
(let* ((emms-current-track (emms-playlist-current-selected-track)))
(run-with-timer 10 nil 'jabber-pep-tune-send
(emms-track-get emms-current-track 'info-artist)
(number-to-string (or (emms-track-get emms-current-track 'info-playing-time) 0))
"0" ;;; use rating ?
(emms-track-get emms-current-track 'info-album)
(emms-track-get emms-current-track 'info-title)
(emms-track-get emms-current-track 'info-tracknumber)
""))))
Если вы используете какой либо другой плеер то, необходимо получить данные о исполнителе (через dbus/etc) и выполнить команду:
emacsclient --eval "(jabber-pep-tune-send \"artist\" \"length\" \"rating\"
\"source\" \"title\" \"track\" \"uri\")"
или (если сервер не поддерживает PEP):
emacsclient --eval "(jabber-event-tune-send juick-bot-jid \"artist\" \"length\" \"rating\"
\"source\" \"title\" \"track\" \"uri\")"
Примечание:
Если сервре не поддерживает PEP то в случае emms стоит использовать
jabber-event-tune-send
(функция включает дополнительный параметр - jid
пользователя которому будет отсылаться event, т.е. jid juick бота.
Перед тем как запостить сообщение, нажмите M-x jabber-mood-message
выберите
настроение и нажмите RET
, теперь это сообщение будет отправлено с
соответствующим настроением, последующие сообщения будут посылаться без mood.
Для отправки картинок используется стандартная функция jabber-el -
jabber-ft-send
За отображения аватарок отвечает переменная juick-icon-mode
, если она имеет
значение t, то они отображаются иначе - нет (по умолчанию t).
Размер аватарок регулируется с помощью переменной juick-icon-hight
, если она
имеет значение t, то полагается размер 96x96, иначе 32x32 пикселя (по
умолчанию nil).
По умолчанию аватарки сохраняются в /tmp/juick-images-<user name>/
, отвечает
за это переменная juick-tmp-dir
.
Для того что бы подписаться на тег, нужно его добавить в список
juick-tag-subscribed
, например вот так:
(setq juick-tag-subscribed '("linux" "juick"))
и активировать автообновление:
(juick-auto-update t)
Для автоматической подписки на сообщения (S #NNNNN) с определенными тегами или
именами (S @ABC) пользователей, используется список
juick-auto-subscribe-list
, например так:
(setq juick-auto-subscribe-list '("linux" "juick" "ugnich"))
Что бы внести пользователя или сообщение в закладки - поставьте курсор на
сообщение/имя пользователя и нажмите b
.
Просмотр списка закладок - C-cjb
;
Удаление закладки - C-k
, d
(в списки закладок);
По умолчанию закладки сохраняются в ~/.emacs.d/.juick-bkm
, отвечает за это
переменная juick-bookmark-file
.
Загрузите последнюю версию:
git clone git://github.com/mad/emacs-juick-el.git
Добавьте следующие строки в ваш инициализационный файл:
(add-to-list 'load-path "path/to/juick-el/")
(require 'juick)
Это дополнение тестировалось на jabber-el 0.7.82 и выше.
Если не работает RET на комментариях и сообщениях, смотри: #854650
ВНИМАНИЕ
C jabber-el 0.7.1 и ниже плагин не работает!
-
При отправки большой картинки возникает "зависание" емакса, связано с тем что IBB протокол реализован таким образом, что картинка отправляется не асинхронно.
-
Если не отправляются картинки, см #222870;
Просьба о багах/фичах/etc писать сюда #104079 или на мыло.