X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/0530fc4fd38e073263af06fbee7ccd2010eea238..ad6cdb2ad0f4b3f0fd9c2f0e50b9d5733f6d8b84:/mpd.md?ds=inline diff --git a/mpd.md b/mpd.md index 33a0dd6..44d7826 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,56 +14,71 @@ Now playing songs are notified like this: | +-------+ | +--------------------------------------------------------+ -Dependencies +You need a file like this -- imagemagick + (front|cover|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 -`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 +`cover_size` | Album art notification size | int | 100 +`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` can be a 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