X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/8fc9c620eeb9b410a2bcb36c65b15d73b5e5c9e1..f2a9d548e6172987c554cdd1261c1008e2670328:/mpd.md?ds=inline diff --git a/mpd.md b/mpd.md index d86b2c6..8b35e81 100644 --- a/mpd.md +++ b/mpd.md @@ -1,6 +1,8 @@ +[<- widgets](https://github.com/copycat-killer/lain/wiki/Widgets) + Shows MPD status in a textbox. - mympd = lain.widgets.mpd() + mpdwidget = lain.widgets.mpd() Now playing songs are notified like this: @@ -12,56 +14,68 @@ Now playing songs are notified like this: | +-------+ | +--------------------------------------------------------+ -Dependencies - -- imagemagick - -The function takes a table as optional argument, which can contain: +### input table Variable | Meaning | Type | Default --- | --- | --- | --- +`timeout` | Refresh timeout seconds | int | 1 `password` | MPD password | string | "" `host` | MPD server | string | "127.0.0.1" `port` | MPD port | string | "6600" `music_dir` | Music directory | string | "~/Music" -`refresh_timeout` | Refresh timeout seconds | int | 1 -`color_artist` | Artist value color | string | `beautiful.fg_normal` or "#FFFFFF" -`color_song` | Song value color | string | `beautiful.fg_focus` or "#FFFFFF" -`spr` | Separator text between artist and song values | string | " " -`app` | Music program to spawn on click | string | "ncmpcpp" -`shadow` | Hide widget when there are no songs playing | boolean | false +`settings` | User settings | function | empty function + +`settings` can use `mpd_now` table, which contains the following string values: + +- state +- file +- artist +- title +- album +- date + +and can modify `notification_preset` table, which will be the preset for the naughty notifications. Check [here](http://awesome.naquadah.org/doc/api/modules/naughty.html#notify) for the list of variables it can contain. Default definition: -**Note**: `spr` can be a markup text. + notification _preset = { + title = "Now playing", + text = mpd_now.artist .. " (" .. + mpd_now.album .. ") - " .. + mpd_now.date .. "\n" .. + mpd_now.title, + fg = beautiful.fg_normal or "#FFFFFF", + bg = beautiful.bg_normal or "#000000", + timeout = 6 + } -`lain.widgets.mpd` outputs the following table: +### output table Variable | Meaning | Type --- | --- | --- `widget` | The textbox | `wibox.widget.textbox` `notify` | The notification | function -Finally, you can control the widget with key bindings like these: +You can control the widget with key bindings like these: -- MPD control awful.key({ altkey, "Control" }, "Up", - function () - awful.util.spawn_with_shell( "mpc toggle || ncmpcpp toggle || ncmpc toggle || pms toggle", false ) - mympd.notify() - end), + function () + awful.util.spawn_with_shell("mpc toggle || ncmpcpp toggle || ncmpc toggle || pms toggle") + mpdwidget.notify() + end), awful.key({ altkey, "Control" }, "Down", - function () - awful.util.spawn_with_shell( "mpc stop || ncmpcpp stop || ncmpc stop || pms stop", false ) - mympd.notify() - end), + function () + awful.util.spawn_with_shell("mpc stop || ncmpcpp stop || ncmpc stop || pms stop") + mpdwidget.notify() + end), awful.key({ altkey, "Control" }, "Left", - function () - awful.util.spawn_with_shell( "mpc prev || ncmpcpp prev || ncmpc prev || pms prev", false ) - mympd.notify() - end), + function () + awful.util.spawn_with_shell("mpc prev || ncmpcpp prev || ncmpc prev || pms prev") + mpdwidget.notify() + end), awful.key({ altkey, "Control" }, "Right", - function () - awful.util.spawn_with_shell( "mpc next || ncmpcpp next || ncmpc next || pms next", false ) - mympd.notify() - end), + function () + awful.util.spawn_with_shell("mpc next || ncmpcpp next || ncmpc next || pms next") + mpdwidget.notify() + end), where `altkey = "Mod1"`. \ No newline at end of file