added tagdump preview
This commit is contained in:
@@ -5,7 +5,9 @@
|
|||||||
|
|
||||||
[ -z "$PLAYER" ] && PLAYER='mpg123'
|
[ -z "$PLAYER" ] && PLAYER='mpg123'
|
||||||
[ -z "$FTYPES" ] && FTYPES='mp3 MP3'
|
[ -z "$FTYPES" ] && FTYPES='mp3 MP3'
|
||||||
|
if [ -z "$TAGDUMP" ]; then
|
||||||
|
TAGDUMP='mpg123-id3dump -n {} | grep -E "^(Title|Artist|Album|Year|Comment|Genre):" | sort -u'
|
||||||
|
fi
|
||||||
mdir="$1"
|
mdir="$1"
|
||||||
[ -z "$mdir" ] && mdir='.'
|
[ -z "$mdir" ] && mdir='.'
|
||||||
set --
|
set --
|
||||||
@@ -16,16 +18,13 @@ for ext in $FTYPES; do
|
|||||||
set -- "$@" -o -name "*.$ext"
|
set -- "$@" -o -name "*.$ext"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
cd "$mdir"
|
cd "$mdir"
|
||||||
echo "Indexing music..."
|
|
||||||
muslist="$(find . -type f \( "$@" \))"
|
muslist="$(find . -type f \( "$@" \))"
|
||||||
dirlist="$(find . -type f \( "$@" \) -print0 | xargs -0 dirname | sort -u)"
|
dirlist="$(find . -type f \( "$@" \) -print0 | xargs -0 dirname | sort -u)"
|
||||||
muslist="$(printf '%s\n%s' "$muslist" "$dirlist" | sort -u)"
|
muslist="$(printf '%s\n%s' "$muslist" "$dirlist" | sort -u)"
|
||||||
echo "Indexing complete"
|
PREVIEWCMD="[ -d {} ] && ls -1 {} || ([ {} != 'Quit' ] && $TAGDUMP)"
|
||||||
|
|
||||||
while true; do
|
while true; do
|
||||||
src="$(printf '%s\nQuit' "$muslist" | fzf --tac -0 -1)"
|
src="$(printf '%s\nQuit' "$muslist" | fzf --tac --preview="$PREVIEWCMD" -0 -1)"
|
||||||
[ -d "$src" ] && src="$(find "$src" -type f \( "$@" \) | sort -u)"
|
[ -d "$src" ] && src="$(find "$src" -type f \( "$@" \) | sort -u)"
|
||||||
[ "$src" = 'Quit' ] && break
|
[ "$src" = 'Quit' ] && break
|
||||||
if [ -n "$src" ]; then
|
if [ -n "$src" ]; then
|
||||||
|
|||||||
Reference in New Issue
Block a user