33 lines
		
	
	
		
			887 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			887 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#! /bin/bash
 | 
						|
#
 | 
						|
# ptgdp-rofi
 | 
						|
# Uses rofi to select a ptgdp playlist in ~/Music/Playlists
 | 
						|
# Copyright (C) 2019 Vintage Salt <rehashedsalt@cock.li>
 | 
						|
#
 | 
						|
# 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 -no-custom -p "$prompt" <<< "$playlists" 2>/dev/null)"
 | 
						|
[ -z "$choice" ] && exit 2
 | 
						|
exec ptgdp -p "$playlistdir"/"$choice".gdp
 |