home/desktop: simplify screenshoot bindings

This commit is contained in:
Aly Raffauf 2024-07-21 23:31:46 -04:00
parent 6b1be071f6
commit 5687e919f9
3 changed files with 21 additions and 29 deletions

View file

@ -34,8 +34,7 @@
### Screenshots ### Screenshots
- PRINT // CTRL + F12: Take screenshot of monitor. - PRINT // CTRL + F12: Take screenshot of monitor or selected area.
- SUPER + PRINT // SUPER CTRL + F12: Take screenshot of selected area.
### Session Control ### Session Control

View file

@ -27,7 +27,6 @@ in {
bind = bind =
[ [
"$mod CONTROL,F12,exec,${helpers.screenshot.region}"
"$mod CONTROL,L,exec,${lib.getExe pkgs.swaylock}" "$mod CONTROL,L,exec,${lib.getExe pkgs.swaylock}"
"$mod SHIFT,S,movetoworkspace,special:magic" "$mod SHIFT,S,movetoworkspace,special:magic"
"$mod SHIFT,V,togglefloating" "$mod SHIFT,V,togglefloating"
@ -41,7 +40,6 @@ in {
"$mod,F,exec,${lib.getExe cfg.defaultApps.fileManager}" "$mod,F,exec,${lib.getExe cfg.defaultApps.fileManager}"
"$mod,F11,exec,pkill -SIGUSR1 waybar" "$mod,F11,exec,pkill -SIGUSR1 waybar"
"$mod,M,exec,${lib.getExe pkgs.wlogout}" "$mod,M,exec,${lib.getExe pkgs.wlogout}"
"$mod,PRINT,exec,${helpers.screenshot.region}"
"$mod,R,exec,${lib.getExe pkgs.fuzzel}" "$mod,R,exec,${lib.getExe pkgs.fuzzel}"
"$mod,S,togglespecialworkspace,magic" "$mod,S,togglespecialworkspace,magic"
"$mod,T,exec,${lib.getExe cfg.defaultApps.terminal}" "$mod,T,exec,${lib.getExe cfg.defaultApps.terminal}"
@ -49,8 +47,8 @@ in {
"$mod,mouse_down,workspace,+1" "$mod,mouse_down,workspace,+1"
"$mod,mouse_up,workspace,-1" "$mod,mouse_up,workspace,-1"
"$mod,period,exec,${lib.getExe pkgs.hyprnome}" "$mod,period,exec,${lib.getExe pkgs.hyprnome}"
",PRINT,exec,${helpers.screenshot.screen}" ",PRINT,exec,${helpers.screenshot}"
"CONTROL,F12,exec,${helpers.screenshot.screen}" "CONTROL,F12,exec,${helpers.screenshot}"
"CTRL ALT,M,submap,move" "CTRL ALT,M,submap,move"
"CTRL ALT,R,submap,resize" "CTRL ALT,R,submap,resize"
] ]

View file

@ -18,33 +18,28 @@
prev = "${bin} previous"; prev = "${bin} previous";
}; };
screenshot = rec { screenshot = pkgs.writeShellScript "screenshooter" ''
bin = pkgs.writeShellScript "screenshooter" '' FILENAME=${config.xdg.userDirs.pictures}/screenshots/$(date +'%Y-%m-%d-%H:%M:%S_grim.png')
FILENAME=${config.xdg.userDirs.pictures}/screenshots/$(date +'%Y-%m-%d-%H:%M:%S_grim.png') MAKO_MODE=$(${lib.getExe' pkgs.mako "makoctl"} mode)
MAKO_MODE=$(${lib.getExe' pkgs.mako "makoctl"} mode)
if echo "$MAKO_MODE" | grep -q "do-not-disturb"; then if echo "$MAKO_MODE" | grep -q "do-not-disturb"; then
DND=true DND=true
else else
DND=false DND=false
${lib.getExe' pkgs.mako "makoctl"} mode -t do-not-disturb ${lib.getExe' pkgs.mako "makoctl"} mode -t do-not-disturb
fi fi
${lib.getExe pkgs.grim} -g "$(${lib.getExe pkgs.slurp} -o)" "$FILENAME" ${lib.getExe pkgs.grim} -g "$(${lib.getExe pkgs.slurp} -o)" "$FILENAME"
if [ "$DND" = false ]; then if [ "$DND" = false ]; then
${lib.getExe' pkgs.mako "makoctl"} mode -t do-not-disturb ${lib.getExe' pkgs.mako "makoctl"} mode -t do-not-disturb
fi fi
if [ -e "$FILENAME" ]; then if [ -e "$FILENAME" ]; then
${lib.getExe' pkgs.wl-clipboard-rs "wl-copy"} $FILENAME ${lib.getExe' pkgs.wl-clipboard-rs "wl-copy"} $FILENAME
${lib.getExe' pkgs.libnotify "notify-send"} "Screenshot saved" "$FILENAME" -i "$FILENAME" ${lib.getExe' pkgs.libnotify "notify-send"} "Screenshot saved" "$FILENAME" -i "$FILENAME"
fi fi
''; '';
region = "${bin}";
screen = "${bin}";
};
volume = rec { volume = rec {
bin = lib.getExe' pkgs.swayosd "swayosd-client"; bin = lib.getExe' pkgs.swayosd "swayosd-client";