mirror of https://github.com/lcpz/lain.git
2.3 KiB
2.3 KiB
Shows mpd status in a textbox.
mympd = lain.widgets.mpd()
Now playing songs are notified like this:
+--------------------------------------------------------+
| +-------+ |
| |/^\_/^\| Now playing |
| |\ O O /| Cannibal Corpse (Hammer Smashed Face) - 1993 |
| | '.o.' | Hammer Smashed Face (Radio Disney Version) |
| +-------+ |
+--------------------------------------------------------+
Dependencies
- imagemagick
The function takes a table as optional argument, which can contain:
Variable | Meaning | Type | Default |
---|---|---|---|
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 |
Note: spr
can be a markup text.
lain.widgets.mpd
outputs the following 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:
-- 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),
awful.key({ altkey, "Control" }, "Down",
function ()
awful.util.spawn_with_shell( "mpc stop || ncmpcpp stop || ncmpc stop || pms stop", false )
mympd.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),
awful.key({ altkey, "Control" }, "Right",
function ()
awful.util.spawn_with_shell( "mpc next || ncmpcpp next || ncmpc next || pms next", false )
mympd.notify()
end),
where altkey = "Mod1"
.