mirror of
https://github.com/foo-dogsquared/dotfiles.git
synced 2025-01-31 04:57:57 +00:00
43 lines
970 B
Bash
43 lines
970 B
Bash
#!/bin/sh
|
|
|
|
# Simply captures an image with regional selection.
|
|
|
|
# Here are the dependencies needed to successfully
|
|
# run this script:
|
|
# * maim (version 5.5.3)
|
|
# * date (version 8.31)
|
|
|
|
# setting up variables for the color
|
|
red="\u001b[31m"
|
|
green="\u001b[32m"
|
|
reset="\u001b[0m"
|
|
|
|
function error_cleanup() {
|
|
rm "$pic_filepath"
|
|
printf "$red An error occurred on line $1\n $reset"
|
|
}
|
|
|
|
delay=0
|
|
|
|
if [[ -n "$1" || "$1" -gt 0 ]]; then
|
|
delay=$1
|
|
fi
|
|
|
|
# setting up a exit trap in case of error
|
|
trap 'error_cleanup $LINENO' ERR
|
|
|
|
pic_directory=${PICTURES_DIRECTORY:-"$HOME/Pictures"}
|
|
|
|
date_format=$(date +%F-%H-%M-%S)
|
|
|
|
pic_filepath="$pic_directory/$date_format.png"
|
|
|
|
if [[ $delay -gt 0 ]]; then
|
|
notify-send "Delayed screenshot" "A delayed screenshot is about to be taken in $delay seconds." --expire-time=$(( ($delay * 1000) - 1000))
|
|
fi
|
|
|
|
maim_process=$(maim $pic_filepath --hidecursor --delay=$delay)
|
|
|
|
notify-send "Screenshot taken" "It is saved at $pic_filepath."
|
|
|