Not just screenshots like hyprshot, but also recording videos of part of the screen. I used to use spectacle but there’s no way without kwin.
You must log in or register to comment.
OBS
bind screenshot key to execute
flameshot full -cedit: for video I use obs
i have this script on a keybind.
uses rofi, slurp and gpu-screen-recorder
modify as needed. i dont remember where i got it from originally
#!/bin/env bash recorder_check() { if pgrep -x "gpu-screen-reco" > /dev/null; then pkill -INT -x gpu-screen-reco notify-send "Stopping all instances of gpu-screen-recorder" "$(cat /tmp/recording.txt)" cat /tmp/recording.txt | wl-copy exit 0 fi } recorder_check SELECTION=$(echo -e "record selection\nrecord eDP-1\nrecord DP-4" | rofi -dmenu -p " ") VID="${HOME}/video/recordings/$(date +%Y-%m-%d_%H-%m-%s).mp4" case "$SELECTION" in "record selection") echo "$VID" > /tmp/recording.txt # Get selection geometry read X Y W H <<< $(slurp -f "%x %y %w %h") # Get monitor info (JSON) MONITORS=$(hyprctl monitors -j) # Find the monitor containing the selection and extract its scale SCALE=$(echo "$MONITORS" | jq -r \ --argjson x "$X" --argjson y "$Y" ' .[] | select(.x <= $x and .y <= $y and ($x < (.x + .width)) and ($y < (.y + .height))) | .scale') # Calculate physical coordinates PX=$(awk "BEGIN {printf \"%d\", $X * $SCALE}") PY=$(awk "BEGIN {printf \"%d\", $Y * $SCALE}") PW=$(awk "BEGIN {printf \"%d\", $W * $SCALE}") PH=$(awk "BEGIN {printf \"%d\", $H * $SCALE}") # Format geometry string GEOM="${PW}x${PH}+${PX}+${PY}" gpu-screen-recorder -w region -region "$GEOM" -o "$VID" &>/dev/null ;; "record eDP-1") echo "$VID" > /tmp/recording.txt gpu-screen-recorder -w eDP-1 -o "$VID" &>/dev/null ;; "record DP-4") echo "$VID" > /tmp/recording.txt gpu-screen-recorder -w DP-4 -o "$VID" &>/dev/null ;; "record both screens") notify-send "recording both screens is not functional" ;; *) ;; esacVery nice
That works perfect btw thank you.
np
i did have issues recently trying to capture from a selection on multiple displays when each display is a different scale factor… i haven’t had time to figure out how to fix that, for now i just capture on my main display only


