diff options
Diffstat (limited to 'bin/menuscripts/mmedia')
-rwxr-xr-x | bin/menuscripts/mmedia | 91 |
1 files changed, 52 insertions, 39 deletions
diff --git a/bin/menuscripts/mmedia b/bin/menuscripts/mmedia index 3141c3b..f4e6e3c 100755 --- a/bin/menuscripts/mmedia +++ b/bin/menuscripts/mmedia @@ -6,52 +6,65 @@ dirs="$HOME/dl" concat_path() { sed "s#^$HOME#\~#;s#\([^/]\)[^/]*/#\1/#g"; } -case "$1" in - "video") - regex='^.\+\.\(webm\|mp4\|mpeg\|mkv\)$' - dirs="$dirs $HOME/vids" - viewer() { $PLAYER "$1"; } ;; - "pdf") - regex='^.\+\.\(pdf\)$' - dirs="$dirs $HOME/docs" - viewer() { $VIEWER "$1"; } ;; - "image") - regex='^.\+\.\(png\|avif\|jpg\)$' - dirs="$dirs $HOME/pics" - viewer() { $IMAGE "$1"; } ;; - "cursus") - regex='^.*/[cC]ursus/index.html$' - dirs="$HOME/docs/school/Vakken" - concat_path() { sed "s#$dirs/##;s#/[cC]ursus/index.html##"; } - viewer() { $BROWSER "$1"; } ;; - "schoolpdf") - regex='^.\+\.\(pdf\)$' - dirs="$HOME/docs/school/Vakken" - concat_path() { sed "s#$dirs/##;s#/[cC]ursus/index.html##;s#/Cursus/viewer/files/#: #"; } - viewer() { $VIEWER "$1"; } ;; - *) - choice="$(cat <<-EOF | dmenu -g 5 -l 1 -c - video - pdf - image - cursus - schoolpdf +case "$1" in +"video") + regex='^.\+\.\(webm\|mp4\|mpeg\|mkv\)$' + dirs="$dirs $HOME/vids" + viewer() { $PLAYER "$1"; } + ;; +"pdf") + regex='^.\+\.\(pdf\)$' + dirs="$dirs $HOME/docs" + viewer() { $VIEWER "$1"; } + ;; +"image") + regex='^.\+\.\(png\|avif\|jpg\)$' + dirs="$dirs $HOME/pics" + viewer() { $IMAGE "$1"; } + ;; +"cursus") + regex='^.*/[cC]ursus/index.html$' + dirs="$HOME/docs/school/Vakken" + concat_path() { sed "s#$dirs/##;s#/[cC]ursus/index.html##"; } + viewer() { $BROWSER "$1"; } + ;; +"schoolpdf") + regex='^.\+\.\(pdf\)$' + dirs="$HOME/docs/school/Vakken" + concat_path() { sed "s#$dirs/##;s#/[cC]ursus/index.html##;s#/Cursus/viewer/files/#: #"; } + viewer() { $VIEWER "$1"; } + ;; +"lecture") + dmfm $HOME/docs/lecture + exit + ;; +*) + choice="$( + cat <<-EOF | dmenu -g 6 -l 1 -c + video + pdf + image + cursus + schoolpdf + lecture EOF - )" - [ "$choice" ] || exit 1 - "$0" "$choice" - exit ;; + )" + [ "$choice" ] || exit 1 + "$0" "$choice" + exit + ;; esac shift [ "$1" ] && dirs="$1" choice="$( - find -L $dirs 2> /dev/null | - grep "$regex" | - sort | tee "$tmp" | - concat_path | - dmenu -px -c -i -l 10 -g 1 -x)" + find -L $dirs 2>/dev/null | + grep -i "$regex" | + sort | tee "$tmp" | + concat_path | + dmenu -px -c -i -l 10 -g 1 -x +)" file="$(sed -n "${choice}p" "$tmp")" [ -r "$file" ] || exit 1 |