From e45fb0f5e97973e13d1bdbe1eef60628d602580b Mon Sep 17 00:00:00 2001 From: Josh Rahm Date: Thu, 13 Jan 2022 13:53:45 -0700 Subject: Added library-view.sh and bound it to o --- extras/HOME/.local/bin/library-view.sh | 28 ++++++++++++++++++++++++++++ src/Internal/Keys.hs | 3 +++ 2 files changed, 31 insertions(+) create mode 100755 extras/HOME/.local/bin/library-view.sh diff --git a/extras/HOME/.local/bin/library-view.sh b/extras/HOME/.local/bin/library-view.sh new file mode 100755 index 0000000..29925a8 --- /dev/null +++ b/extras/HOME/.local/bin/library-view.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +MENU=(rofi -i -dmenu -sort -theme-str '* {theme-color: #ff88ff;}' -p "Library") + +if (which zathura) ; then + pdfviewer=zathura +elif (which evince) ; then + pdfviewer=evince +else + pdfviewer='xdg-open' +fi + + +cd ~/Library + +files=(*.pdf) + +file_with_title="$(for file in "${files[@]}" ; do + echo "$file| $(echo "$file" | sed 's#\(^\|_\|\s\)\([a-z]\)#\1\U\2#g' | tr '_' ' ' | sed 's/.[^.]*$//')" +done)" + +selected=$(echo "$file_with_title" | (while read file ; do + echo "${file//*|}" +done) | "${MENU[@]}") + +if [ ! -z "${selected}" ] ; then + $pdfviewer "$(echo "$file_with_title" | grep "$selected" | sed 's/|.*//')" +fi diff --git a/src/Internal/Keys.hs b/src/Internal/Keys.hs index 3189ddb..936b12a 100644 --- a/src/Internal/Keys.hs +++ b/src/Internal/Keys.hs @@ -244,6 +244,9 @@ keymap = runKeys $ do bind xK_w $ (justMod -|- noMod) $ spawn "networkmanager_dmenu" + bind xK_o $ + (justMod -|- noMod) $ spawn "library-view.sh" + bind xK_v $ do (justMod -|- noMod) $ spawn "set-volume.sh" (shiftMod -|- rawMask shiftMask) $ spawn "set-volume.sh -a" -- cgit