index — dotfiles @ 82a32ab8b3e62639e4f9cf787b8967c8da1f1232

my dotfiles

bin/screenshot (view raw)

 1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
#!/bin/sh

# 
# Takes a screenshot with grimshot, in clipboard or in given directory
#

MODE=$(printf "copy\nsave" | dmenu)

# If dmenu was cancelled, exit program
if [ $? -ne 0 ]; then
    exit 1
fi

case "$MODE" in 
  *save*)
    cd $HOME
    while true; do
        selected_dir=$(ls | dmenu -i)
        if [ -z "$selected_dir" ]; then
            exit 0
        fi

        if [ -d "$selected_dir" ]; then
            cd "$selected_dir"
            continue
        fi 

        if [ -e "$selected_dir" ]; then
            notify-send "Error: File exists!"
            exit 0
        fi 

        break
    done

    grimshot save area "$PWD/$selected_dir.png" && notify-send "$PWD/$selected_dir.png" "saved" 
    ;;
  *copy*)
    grimshot copy area && notify-send "Screenshot copied" 
    ;;
esac