From 31042910057fffa93f904e09b51f39fc44ad8090 Mon Sep 17 00:00:00 2001 From: Salt Date: Thu, 26 Sep 2019 17:20:32 -0500 Subject: [PATCH] Polish README and error messages, add a rofi wrapper script --- ptgdp-rofi | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100755 ptgdp-rofi diff --git a/ptgdp-rofi b/ptgdp-rofi new file mode 100755 index 0000000..515f776 --- /dev/null +++ b/ptgdp-rofi @@ -0,0 +1,32 @@ +#! /bin/bash +# +# ptgdp-rofi +# Uses rofi to select a ptgdp playlist in ~/Music/Playlists +# Copyright (C) 2019 Vintage Salt +# +# Distributed under terms of the MIT license. +# +set -e + +_xdguserdirs="${XDG_CONFIG_HOME:-$HOME/.config}/user-dirs.dirs" +[ -z "$XDG_MUSIC_DIR" ] && [ -r "$_xdguserdirs" ] && source "$_xdguserdirs" +unset _xdguserdirs +playlistdir="${XDG_MUSIC_DIR:-$HOME/Music}/Playlists" + +files=$(find "$playlistdir" -type f -name \*.gdp) +if [ -n "$files" ]; then + playlists="" + while read file; do + filebase="$(basename -- "$file")" + filebase="${filebase%.gdp}" + [ -n "$playlists" ] && playlists+=$'\n' + playlists+="$filebase" + done <<< "$files" +else + echo "No playlists found" + exit 1 +fi +prompt="ptgdp" +choice="$(rofi -dmenu -i -p "$prompt" <<< "$playlists" 2>/dev/null)" +[ -z "$choice" ] && exit 2 +exec ptgdp -p "$playlistdir"/"$choice".gdp