added tagdump preview

This commit is contained in:
Luxferre
2026-04-25 22:02:45 +03:00
parent 94b9d87b7e
commit 2f59ac3c30
+5 -6
View File
@@ -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