Skip to content

Commit 53fc6ac

Browse files
authored
Merge pull request #512 from danyael031/now-playing/playerctl-extra-options
Add config options to pass --player and --ignore-player options to playerctl.
2 parents 6cddf80 + a563b27 commit 53fc6ac

1 file changed

Lines changed: 21 additions & 1 deletion

File tree

segments/now_playing.sh

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ TMUX_POWERLINE_SEG_NOW_PLAYING_LASTFM_UPDATE_PERIOD_DEFAULT="30"
2020
TMUX_POWERLINE_SEG_NOW_PLAYING_PLEXAMP_UPDATE_PERIOD_DEFAULT="30"
2121
TMUX_POWERLINE_SEG_NOW_PLAYING_MPD_SIMPLE_FORMAT_DEFAULT="%artist% - %title%"
2222
TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_FORMAT_DEFAULT="{{ artist }} - {{ title }}"
23+
TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_OPT_PLAYER_DEFAULT=""
24+
TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_OPT_IGNORE_PLAYER_DEFAULT=""
2325
TMUX_POWERLINE_SEG_NOW_PLAYING_RHYTHMBOX_FORMAT_DEFAULT="%aa - %tt"
2426
TMUX_POWERLINE_SEG_NOW_PLAYING_NOTE_CHAR_DEFAULT=""
2527
TMUX_POWERLINE_SEG_NOW_PLAYING_MUSIC_PLAYER_DEFAULT="spotify"
@@ -56,6 +58,10 @@ export TMUX_POWERLINE_SEG_NOW_PLAYING_MPD_PORT="${TMUX_POWERLINE_SEG_NOW_PLAYING
5658
export TMUX_POWERLINE_SEG_NOW_PLAYING_MPD_SIMPLE_FORMAT="${TMUX_POWERLINE_SEG_NOW_PLAYING_MPD_SIMPLE_FORMAT_DEFAULT}"
5759
# Song display format for playerctl. see "Format Strings" in playerctl(1).
5860
export TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_FORMAT="${TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_FORMAT_DEFAULT}"
61+
# playerctl --player option value. Used to select specific players or set priority order. See "Description" in playerctl(1).
62+
# export TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_OPT_PLAYER="${TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_OPT_PLAYER_DEFAULT}"
63+
# playerctl --ignore-player option value. See "Description" in playerctl(1).
64+
# export TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_OPT_IGNORE_PLAYER="${TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_OPT_IGNORE_PLAYER_DEFAULT}"
5965
# Song display format for rhythmbox. see "FORMATS" in rhythmbox-client(1).
6066
export TMUX_POWERLINE_SEG_NOW_PLAYING_RHYTHMBOX_FORMAT="${TMUX_POWERLINE_SEG_NOW_PLAYING_RHYTHMBOX_FORMAT_DEFAULT}"
6167
@@ -216,6 +222,12 @@ __process_settings() {
216222
if [ -z "$TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_FORMAT" ]; then
217223
export TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_FORMAT="${TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_FORMAT_DEFAULT}"
218224
fi
225+
if [ -z "$TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_OPT_PLAYER" ]; then
226+
export TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_OPT_PLAYER="${TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_OPT_PLAYER_DEFAULT}"
227+
fi
228+
if [ -z "$TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_OPT_IGNORE_PLAYER" ]; then
229+
export TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_OPT_IGNORE_PLAYER="${TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_OPT_IGNORE_PLAYER_DEFAULT}"
230+
fi
219231
if [ -z "$TMUX_POWERLINE_SEG_NOW_PLAYING_RHYTHMBOX_FORMAT" ]; then
220232
export TMUX_POWERLINE_SEG_NOW_PLAYING_RHYTHMBOX_FORMAT="${TMUX_POWERLINE_SEG_NOW_PLAYING_RHYTHMBOX_FORMAT_DEFAULT}"
221233
fi
@@ -410,7 +422,15 @@ __np_rhythmbox() {
410422

411423
__np_playerctl() {
412424
if [ "$(playerctl status)" = "Playing" ]; then
413-
np=$(playerctl metadata --format="$TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_FORMAT")
425+
local playerctl_args=()
426+
if [ -n "${TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_OPT_PLAYER}" ]; then
427+
playerctl_args+=( "--player=${TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_OPT_PLAYER}" )
428+
fi
429+
if [ -n "${TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_OPT_IGNORE_PLAYER}" ]; then
430+
playerctl_args+=( "--ignore-player=${TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_OPT_IGNORE_PLAYER}" )
431+
fi
432+
playerctl_args+=( "metadata" "--format=${TMUX_POWERLINE_SEG_NOW_PLAYING_PLAYERCTL_FORMAT}" )
433+
np=$( playerctl "${playerctl_args[@]}" )
414434
echo "$np"
415435
fi
416436
}

0 commit comments

Comments
 (0)