diff options
Diffstat (limited to 'dotfiles/.local/bin/menugrim')
-rwxr-xr-x | dotfiles/.local/bin/menugrim | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/dotfiles/.local/bin/menugrim b/dotfiles/.local/bin/menugrim new file mode 100755 index 0000000..bc77c11 --- /dev/null +++ b/dotfiles/.local/bin/menugrim @@ -0,0 +1,33 @@ +#!/bin/sh + +if ! [ -d $SCROT_DIR ]; then + mkdir -p $SCROT_DIR +fi + +# Source settings from .bemenurc +. $HOME/.bemenurc + +notify_saved() { + notify-send "screenshot has been saved in $SCROT_DIR" ; +} + +notify_copied() { + notify-send "screenshot has been copied to clipboard" ; +} + +case "$1" in + --quick|-q) + grim $SCROT_DIR/fullscreen-"$(date '+%y%m%d-%H%M-%S').png"; notify_saved ;; + *) + case "$(printf "a selected area\ncurrent window\nfull screen\na selected area (copy)\ncurrent window (copy)\nfull screen (copy)\n" | bemenu -l 6 -i -p "Screenshot which area?" --tf="$BEMENU_TF" --tb="$BEMENU_NB" --fb="$BEMENU_NB" --fn="$BEMENU_FN" --nb="$BEMENU_NB" --nf="$BEMENU_NF" --hf="$BEMENU_HF" --hb="$BEMENU_HB")" in + "a selected area") grim -g "$(slurp)" $SCROT_DIR/selected-"$(date '+%y%m%d-%H%M-%S').png"; notify_saved ;; + "current window") grim -g "$(swaygetcurrentwindow)" $SCROT_DIR/window-"$(date '+%y%m%d-%H%M-%S').png"; notify_saved ;; + "full screen") grim $SCROT_DIR/fullscreen-"$(date '+%y%m%d-%H%M-%S').png"; notify_saved ;; + "a selected area (copy)") grim -g "$(slurp)" - | wl-copy; notify_copied ;; + "current window (copy)") grim -g "$(swaygetcurrentwindow)" - | wl-copy; notify_copied ;; + "full screen (copy)") grim - | wl-copy; notify_copied ;; + *) exit 0 ;; + esac +esac + + |