Compare commits

...

4 Commits

2 changed files with 20 additions and 18 deletions

9
n
View File

@ -2,8 +2,6 @@
# nnn previewer wrapper
set -euf
[ -n "${TMUX:-}" ] && exec nnn
vars="NNN_BATTHEME=Dracula
NNN_BATSTYLE=full
"
@ -15,4 +13,9 @@ for env in $vars; do
varstring="$varstring -e $env"
done; unset IFS
tmux new $varstring -s nnn -c exec nnn "${PWD:-"$HOME"}" || tmux new-window -t nnn: nnn "${PWD:-"$HOME"}" \; a -t nnn
[ -n "${TMUX:-}" ] && exec nnn
PWD="'$(printf '%s' "$PWD" | sed "s/'/'\\\\''/g")'"
tmux new $varstring -c exec sh -c 'cd '"${PWD:-$HOME}"' && exec nnn "$@"' sh "$@"
# tmux new $varstring -s nnn -c exec nnn "${PWD:-"$HOME"}" || tmux new-window -t nnn: nnn "${PWD:-"$HOME"}" \; a -t nnn

View File

@ -1,7 +1,7 @@
#!/bin/sh
set -euf
OUTFILE="${HOME}/pics/screenshots/$(date +"%Y-%m-%d_%H-%M-%S").jxl" # output file template, change as needed
OUTFILE="${HOME}/pics/screenshots/$(date +"%Y-%m-%d_%H-%M-%S")" # output file template, change as needed
# menu + args, split on spaces
MENU="fzfmenu -p screenshot"
@ -12,26 +12,25 @@ clean() {
}
save() {
cjxl "$tmpfp" -d 0.0 "$OUTFILE"
case "${1##*(}" in
png) oxipng -o max "$tmpfp" && mv "$tmpfp" "$OUTFILE.png" ;;
jxl) cjxl "$tmpfp" -d 0.0 "$OUTFILE.jxl" ;;
*) exit 0 ;;
esac
notify-send -u low "$OUTFILE"
exit 0
}
choose() {
while true; do
case "$(printf "save\nedit\nscan" | $MENU)" in
save) save ;;
edit)
h1="$(sha256sum "$tmpfp")"
$editor "$tmpfp"
h2="$(sha256sum "$tmpfp")"
[ "$h1" != "$h2" ] && save # change, save
exit 0
;;
c="$(printf "save (jxl)\nsave (png)\nedit\nscan" | $MENU)"
case "$c" in
save*) save "${c%)}" ;;
edit) eval "$editor"' "$tmpfp"' ;;
scan)
zdata="$(zbarimg -1 "$tmpfp")" || zdata="error: scan failed with exit code $?"
export zdata
$TERMINAL -e sh -c 'printf "%s\n" "${zdata#*:}"; read -r __' &
$TERMINAL -e sh -c 'printf "%s\n" "${zdata#*:}" | less' &
printf '%s\n' "${zdata#*:}"
;;
*) break ;;
@ -51,19 +50,19 @@ freeze() {
case "${XDG_SESSION_TYPE:-}" in
wayland)
editor="swappy -f"
editor='swappy -o "$tmpfp" -f'
freeze_img="swayimg -g 0,0,1920,1080"
freeze_cmd="grim -l 0"
ss() {
if [ -n "$REGION" ]; then
reg="$(slurp -f '-g "%x,%y %wx%h"')" || return 1
reg="$(slurp -f '%x,%y %wx%h')" || return 1
fi
grim ${REGION:+-g "$reg"} "$tmpfp"
wl-copy < "$tmpfp"
}
;;
*)
editor="gimp -n"
editor='gimp -n'
freeze_img="nsxiv -b -N SCREENSHOT_FREEZE"
freeze_cmd="shotgun"
ss() {