mirror of
https://github.com/Zedfrigg/ironbar.git
synced 2025-04-20 11:54:23 +02:00
Resolves #25. Completely refactors the MPD module to be the 'music' module. This now supports both MPD and MPRIS with the same UI for both. BREAKING CHANGE: The `mpd` module has been renamed to `music`. You will need to update the `type` value in your config and add `player_type` to continue using MPD. You will also need to update your styles.
5.5 KiB
5.5 KiB
Displays currently playing song from your music player. This module supports both MPRIS players and MPD servers. Clicking on the widget opens a popout displaying info about the current song, album art and playback controls.
in MPRIS mode, the widget will listen to all players and automatically detect/display the active one.
Configuration
Type:
music
Type | Default | Description | |
---|---|---|---|
player_type |
mpris or mpd |
mpris |
Whether to connect to MPRIS players or an MPD server. |
format |
string |
{icon} {title} / {artist} |
Format string for the widget. More info below. |
icons.play |
string |
|
Icon to show when playing. |
icons.pause |
string |
|
Icon to show when paused. |
icons.volume |
string |
墳 |
Icon to show under popup volume slider. |
host |
string |
localhost:6600 |
[MPD Only] TCP or Unix socket for the MPD server. |
music_dir |
string |
$HOME/Music |
[MPD Only] Path to MPD server's music directory on disc. Required for album art. |
JSON
{
"start": [
{
"type": "music",
"player_type": "mpd",
"format": "{icon} {title} / {artist}",
"icons": {
"play": "",
"pause": ""
},
"music_dir": "/home/jake/Music"
}
]
}
TOML
[[start]]
type = "music"
player_type = "mpd"
format = "{icon} {title} / {artist}"
music_dir = "/home/jake/Music"
[[start.icons]]
play = ""
pause = ""
YAML
start:
- type: "music"
player_type: "mpd"
format: "{icon} {title} / {artist}"
icons:
play: ""
pause: ""
music_dir: "/home/jake/Music"
Corn
{
start = [
{
type = "music"
player_type = "mpd"
format = "{icon} {title} / {artist}"
icons.play = ""
icons.pause = ""
music_dir = "/home/jake/Music"
}
]
}
Formatting Tokens
The following tokens can be used in the format
config option,
and will be replaced with values from the currently playing track:
Token | Description |
---|---|
{icon} |
Either icons.play or icons.pause |
{title} |
Title |
{album} |
Album name |
{artist} |
Artist name |
{date} |
Release date |
{track} |
Track number |
{disc} |
Disc number |
{genre} |
Genre |
{duration} |
Duration in mm:ss |
{elapsed} |
Time elapsed in mm:ss |
Styling
Selector | Description |
---|---|
#music |
Tray widget button |
#popup-music |
Popup box |
#popup-music #album-art |
Album art image inside popup box |
#popup-music #title |
Track title container inside popup box |
#popup-music #title .icon |
Track title icon label inside popup box |
#popup-music #title .label |
Track title label inside popup box |
#popup-music #album |
Track album container inside popup box |
#popup-music #album .icon |
Track album icon label inside popup box |
#popup-music #album .label |
Track album label inside popup box |
#popup-music #artist |
Track artist container inside popup box |
#popup-music #artist .icon |
Track artist icon label inside popup box |
#popup-music #artist .label |
Track artist label inside popup box |
#popup-music #controls |
Controls container inside popup box |
#popup-music #controls #btn-prev |
Previous button inside popup box |
#popup-music #controls #btn-play-pause |
Play/pause button inside popup box |
#popup-music #controls #btn-next |
Next button inside popup box |
#popup-music #volume |
Volume container inside popup box |
#popup-music #volume #slider |
Volume slider popup box |
#popup-music #volume .icon |
Volume icon label inside popup box |