Пишем "now listening"-скрипт для Konversation.
На самом деле ничего сложного нет. Данные о треке берутся через DCOP (Desktop COmmunication Protocol) - протокол позволяющий приложениям взаимодействовать между собой и средой, а затем все выводится в Konversation через него же.
#!/bin/sh
APP=${1}; # Получаем имя вызывающего приложения
SERVER_IP=${2}; # Получаем IP сервера, на котором находимся
NICKNAME=${3}; # Получаем свой никнэйм
TITLE=$(dcop amarok player title); # Название
ALBUM=$(dcop amarok player album); # Альбом
ARTIST=$(dcop amarok player artist); # Исполнитель
GENRE=$(dcop amarok player genre); # Жанр
echo "/me слушает ${TITLE} из альбома ${ALBUM} от ${ARTIST} [${GENRE}]" |
while read LINE; do
dcop ${APP} default say ${SERVER_IP} "${NICKNAME}" "${LINE}";
done
Так же вы можете вытащить из Amarok'а такие данные о треках, как общее время, тип файла, битрейт, год релиза... "/me <что-то>" в IRC преобразуется в выделенное сообщение, используется для сообщения о себе в третьем лице. К примеру, для меня: "/me пошел спать" преобразуется в "Ferhiord пошел спать". Как видите скрипт действительно прост, и каждый может его изменить по своему вкусу. Осталось только сохранить (допустим как nl, от now listening), сделать его исполняемым и скопировать в /opt/kde/share/apps/konversation/scripts/ (для Arch) или /usr/share/apps/konversation/scripts/ (для Fedora и т.д.), а затем задать вызов.
$ chmod +x nl
$ su
# cp nl /opt/kde/share/apps/konversation/scripts/
Далее находим в настройках Konversation "Command Aliases" ("Псевдонимы
Команд") и добавляем новый скрипт: имя - nl; вызов - /exec nl. Все. :)
P.S. Огромное спасибо создателям скрипта np, который я,
собственно, и тыкал в целях изучения. Взято из заметок арчера.
Комментарии:
Нет комментариев.
Пожалуйста войдите или зарегистрируйтесь чтобы оставлять комментарии.