diff options
Diffstat (limited to '.old/shows')
-rwxr-xr-x | .old/shows | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/.old/shows b/.old/shows new file mode 100755 index 0000000..a0cb8a6 --- /dev/null +++ b/.old/shows @@ -0,0 +1,26 @@ +#!/bin/sh +showsdir=/media/4tbhdd/Videos/Shows +dmenucolors="-l 25" + +playvid() { [ -e "$1" ] && mpv --fullscreen "$1" || exit 1; } + +# Select show +show="`ls "$showsdir" | dmenu $dmenucolors -p "Show:"`" || exit 1 + +# Select season or special option +allep="Show All Episodes" +randep="Play Random Episode" +season="`echo "$allep\n$randep\n$(ls "$showsdir/$show")" | dmenu $dmenucolors -p "Season:"`" || exit 1 + +# Select episode +case "$season" in + $allep) + ep="$(find "$showsdir/$show" -type f | sort | sed 's/.* \([0-9]*\)\/\(.*\)\.mkv$/S\1E\2/' | dmenu $dmenucolors -p "Episode:")" + playvid "$showsdir/$show/$(echo "$ep" | sed 's/^S\([0-9]*\)E/Season \1\//').mkv" + ;; + $randep) playvid "$(find "$showsdir/$show" -type f | shuf -n1)" ;; + *) + ep="$(ls "$showsdir/$show/$season" | sed 's/\.mkv$//' | dmenu $dmenucolors -p "Episode:")" + playvid "$showsdir/$show/$season/$ep.mkv" + ;; +esac |