Пишем "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, который я, собственно, и тыкал в целях изучения. Взято из заметок арчера.

Размещено: 17.02.2008 22:37 Всего комментариев: 0
Автор: ferhiord Блог: ferhiord's blog
Тэги: konversation , настройка

Комментарии:

Нет комментариев.

Пожалуйста войдите или зарегистрируйтесь чтобы оставлять комментарии.