aboutsummaryrefslogtreecommitdiff
path: root/.local/bin/screenshot.sh
blob: 19a9157eb788cbf0a0d19dc762e78533dc980523 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/bin/sh

# Get focused output
output="$(mmsg get all-monitors | jq -r '.monitors[] | select(.active == true) | .name')"

case $1 in
	selected-region)
		# Take a screenshot of the selected region
		grim -t jpeg -g "$(slurp)" ~/Pictures/Screenshots/"$(date +%Y-%m-%d_%H-%m-%s)".jpg
		;;
	save-to-clipboard)
		# Take a screenshot and save it to the clipboard
		grim -g "$(slurp -d)" - | wl-copy
		;;
	focused-window)
		# Take a screenshot of the focused window
		geometry=$(mmsg get focusing-client | jq -r '"\(.x),\(.y) \(.width)x\(.height)"')
		grim -g "$geometry" -t jpeg ~/Pictures/Screenshots/"$(date +%Y-%m-%d_%H-%m-%s)".jpg
		;;
		*)
		# Take a screenshot of the currently focused output and save it into screenshots
		grim -o "$output" -t jpeg ~/Pictures/Screenshots/"$(date +%Y-%m-%d_%H-%m-%s)".jpg
		;;
esac