X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/f075850c6b45229efa768dc62a776420fed5b420..807599b7446b4866a8a2030b9a0fb4fd4f9ce754:/mpd.md diff --git a/mpd.md b/mpd.md index 1d35f02..0e2eca5 100644 --- a/mpd.md +++ b/mpd.md @@ -2,7 +2,7 @@ Shows MPD status in a textbox. - mympd = lain.widgets.mpd() + mpdwidget = lain.widgets.mpd() Now playing songs are notified like this: @@ -14,57 +14,72 @@ Now playing songs are notified like this: | +-------+ | +--------------------------------------------------------+ -Dependencies +You need a file like this -- imagemagick + (Front|front|Cover|cover|Art|art|Folder|folder)\.(jpg|jpeg|png|gif) -The function takes a table as optional argument, which can contain: +in the album folder in order to show album art too. + +### 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 -`header_color` | Artist value color | string | `beautiful.fg_normal` or "#FFFFFF" -`color` | Song value color | string | `beautiful.fg_focus` or "#FFFFFF" -`spr` | Separator text between artist and song values | string | " " -`footer` | Text to append after values | string | "" -`app` | Music program to spawn on click | string | "ncmpcpp" -`shadow` | Hide widget when there are no songs playing | boolean | false +`cover_size` | Album art notification size | int | 100 +`default_art` | Default art | string | "" +`settings` | User settings | function | empty function + +`settings` can use `mpd_now` table, which contains the following string values: + +- state (possible values: "play", "pause", "stop") +- file +- artist +- title +- album +- date + +and can modify `mpd_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` and `footer` can be markup text. + mpd_notification _preset = { + title = "Now playing", + timeout = 6, + text = string.format("%s (%s) - %s\n%s", mpd_now.artist, + mpd_now.album, mpd_now.date, mpd_now.title) + } -`lain.widgets.mpd` outputs the following table: +### output table Variable | Meaning | Type --- | --- | --- `widget` | The textbox | `wibox.widget.textbox` -`notify` | The notification | function +`update` | 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") - mpdwidget.notify() + mpdwidget.update() end), awful.key({ altkey, "Control" }, "Down", function () awful.util.spawn_with_shell("mpc stop || ncmpcpp stop || ncmpc stop || pms stop") - mpdwidget.notify() + mpdwidget.update() end), awful.key({ altkey, "Control" }, "Left", function () awful.util.spawn_with_shell("mpc prev || ncmpcpp prev || ncmpc prev || pms prev") - mpdwidget.notify() + mpdwidget.update() end), awful.key({ altkey, "Control" }, "Right", function () awful.util.spawn_with_shell("mpc next || ncmpcpp next || ncmpc next || pms next") - mpdwidget.notify() + mpdwidget.update() end), where `altkey = "Mod1"`. \ No newline at end of file