Awesompd/ru

Описание




Awesompd - это не просто обычный MPD-виджет. Его цель - обеспечить пользователей awesome качественным, функциональным и дополняемым MPD-клиентом в форме виджета.

Основные возможности awesompd:


 * Возможность управлять воспроизведением, изменять текущую композицию, плейлисты, регулировать громкость и другие опции.


 * Показывает информацию с помощью уведомлений naughty.


 * Поддерживает несколько серверов и возможность переключения между ними на лету.


 * Поддерживает UTF-кодировку.


 * Работает как плеер для сервиса Jamendo music (больше об этом ниже).


 * Показывает обложки альбомов в уведомлениях (и для локальных треков и для Jamendo-стримов).

Jamendo








Jamendo - это веб-сервис, где исполнители выкладывают собственную музыку под лицензией Creative Commons. Это означает, что вся музыка свободна для скачивания и распространения, она свободна от любого вида DRM-защиты. Другая приятная особенность Jamendo состоит в том, что вы можете слушать песни прямо с сайта Jamendo, без предварительной загрузки трека. Awesompd действует как проводник между Jamendo и MPD-сервером. Вот возможности Awesompd для использования Jamendo:


 * Поиск музыки на Jamendo и добавление стримов в ваш MPD.


 * Получение правильных названий треков и их отображение (в отличии от безликих ссылок на стримы).


 * Поиск треков по исполнителю, альбому или тегу.


 * Добавление текущего "Топ 100" в ваш плейлист. Топ 100 может быть определен по рейтингу треков за день, неделю или за все время.


 * Переключение между двумя форматами стрима: MP3 и Ogg Vorbis.


 * Получение и отображение обложек альбомов для треков с Jamendo.


 * Открытие страницы Jamendo в браузере для воспроизводимого исполнителя или альбома.

Order
Главное меню Jamendo содержит в себе подменю с названием Order. Выбранный пункт в нем определяет, как будут сортироваться результаты в поиске. Например, если вы ищете по тегу "rock" и выбрали в подменю order пункт daily rating, тогда 100 сегодняшних самых популярных треков рок-исполнителей будут добавлены в плейлист. Или если вы ищете исполнителя "lukhash", когда текущий order выставлен как random, тогда все треки этого исполнителя будут расположены в плейлисте в случайном порядке.

Установка

 * Для начала вам необходимо скачать сам виджет. Вы можете скачать последнюю версию на: https://github.com/alexander-yakushev/awesompd/tree/for-awesome-git.

Также вы можете скачать архив по прямой ссылке: https://github.com/alexander-yakushev/awesompd/archive/for-awesome-git.zip


 * Создайте новую папку с названием "awesompd" в вашей папке ~/.config/awesome/. Скопируйте загруженные файлы из архива(awesompd.lua, jamendo.lua, utf8.lua, папка icons/) туда так, чтобы путь к ним был в формате ~/.config/awesome/awesompd/awesompd.lua.


 * Установите mpc:

Для Debian/Ubuntu вы можете сделать это так:

$ sudo aptitude install mpc

Для других дистрибутивов смотрите руководство по пакетному менеджеру.


 * Для использования функций Jamendo также необходимы curl и wget. Наиболее вероятно, что они уже установлены в вашей системе. Для уверенности можно сделать проверку с помощью следующих команд:

$ curl --version $ wget --version


 * Откройте свой файл rc.lua в любимом текстовом редакторе и добавьте такие строчки:

local awesompd = require("awesompd/awesompd") musicwidget = awesompd:create -- Create awesompd widget musicwidget.font = "Liberation Mono" -- Set widget font musicwidget.scrolling = true -- If true, the text in the widget will be scrolled musicwidget.output_size = 30 -- Set the size of widget in symbols musicwidget.update_interval = 10 -- Set the update interval in seconds -- Set the folder where icons are located (change username to your login name) musicwidget.path_to_icons = "/home/username/.config/awesome/awesompd/icons" -- Set the default music format for Jamendo streams. You can change -- this option on the fly in awesompd itself. -- possible formats: awesompd.FORMAT_MP3, awesompd.FORMAT_OGG musicwidget.jamendo_format = awesompd.FORMAT_MP3 -- If true, song notifications for Jamendo tracks and local tracks will also contain -- album cover image. musicwidget.show_album_cover = true -- Specify how big in pixels should an album cover be. Maximum value -- is 100. musicwidget.album_cover_size = 50 -- This option is necessary if you want the album covers to be shown -- for your local tracks. musicwidget.mpd_config = "/home/username/.mpdconf" -- Specify the browser you use so awesompd can open links from -- Jamendo in it. musicwidget.browser = "firefox" -- Specify decorators on the left and the right side of the -- widget. Or just leave empty strings if you decorate the widget -- from outside. musicwidget.ldecorator = " " musicwidget.rdecorator = " " -- Set all the servers to work with (here can be any servers you use) musicwidget.servers = { { server = "localhost", port = 6600 }, { server = "192.168.0.72", port = 6600 } } -- Set the buttons of the widget musicwidget:register_buttons({ { "", awesompd.MOUSE_LEFT, musicwidget:command_toggle },      			         { "Control", awesompd.MOUSE_SCROLL_UP, musicwidget:command_prev_track },  			         { "Control", awesompd.MOUSE_SCROLL_DOWN, musicwidget:command_next_track },  			         { "", awesompd.MOUSE_SCROLL_UP, musicwidget:command_volume_up },  			         { "", awesompd.MOUSE_SCROLL_DOWN, musicwidget:command_volume_down },  			         { "", awesompd.MOUSE_RIGHT, musicwidget:command_show_menu },                                  { "", "XF86AudioLowerVolume", musicwidget:command_volume_down },                                  { "", "XF86AudioRaiseVolume", musicwidget:command_volume_up },                                  { modkey, "Pause", musicwidget:command_playpause } }) musicwidget:run -- After all configuration is done, run the widget

И, наконец, добавьте виджет в контейнер для виджетов. Вам следует добавить такую строчку в код контейнера для виджета(Wibox):

musicwidget.widget

Также для включения глобальных хоткеев добавьте эти строчки перед root.keys:

musicwidget:append_global_keys root.keys(globalkeys)

Примечание: Если вы используете другую таблицу для глобальных хоткеев, тогда пропустите предыдущий пункт и используйте вот такую строчку:

root.keys(musicwidget:append_global_keys(my_key_table))

Awesompd поставляется с файлом rcsample.lua, который содержит стандартный rc.lua с встроенным awesompd виджетом. Вы можете попробовать его, в случае, если у вас возникнут проблемы с запуском awesompd с вашим собственным конфигурационном файлом.

Стандартное управление

 * Щелчок левой кнопкой мыши(или Mod+Pause|Break на клавиатуре) - Воспроизведение/пауза текущей песни


 * Щелчок правой кнопкой мыши - Показать/скрыть меню


 * Скроллинг мышью вверх/вниз (или XF86VolumeLower/RaiseVolume) - Увеличение/уменьшение громкости


 * CTRL + скроллинг мышью - Следующая/предыдущая песня

Если вы немного знаете Lua, то можете сменить управление, добавить новые функции и комбинации клавиш и даже больше. Настройка управление сделана по принципу наиболее простого и понятного (смотрите функцию register_buttons).

Не оповещать когда mpd отключен
Добавьте следующие строки в rc.lua туда, где вы настраиваете ваш MPD-виджет:

awesompd.DISCONNECTED="" musicwidget.notify_connect = function end musicwidget.notify_disconnect = function end