Add back more functions from Sway into Niri, add a standard naming scheme
This commit is contained in:
parent
ac4da6559d
commit
8d1271c017
18 changed files with 128 additions and 117 deletions
44
modules/home/wms/sway/programs/screen-sway/default.nix
Normal file
44
modules/home/wms/sway/programs/screen-sway/default.nix
Normal file
|
@ -0,0 +1,44 @@
|
|||
{ pkgs, config, ... }:
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
(pkgs.writeScriptBin "screen-sway" ''
|
||||
swappy() {
|
||||
# Create an imv window to act as a static screen
|
||||
grim -t jpeg -q 90 - | imv -w "GlobalShot" - & imv_pid=$!
|
||||
|
||||
# Capture the screenshot of the selected area and save to a temporary file
|
||||
selected_area=$(swaymsg -t get_tree | jq -r '.. | select(.pid? and .visible?) | .rect | "\(.x),\(.y) \(.width)x\(.height)"'\
|
||||
| XCURSOR_SIZE=40 slurp -w ${config.look.border.string} -c ${config.look.colors.prime} -B 00000066 -b 00000099)
|
||||
temp_file=$(mktemp -u).png
|
||||
grim -g "$selected_area" "$temp_file"
|
||||
kill $imv_pid
|
||||
|
||||
# Copy the screenshot to the clipboard and clear the temp
|
||||
${pkgs.swappy}/bin/swappy -f - < "$temp_file"
|
||||
rm "$temp_file"
|
||||
}
|
||||
|
||||
screen() {
|
||||
temp_file=$(mktemp -u).png
|
||||
grim -o $(swaymsg -t get_outputs | jq -r '.[] | select(.focused) | .name') "$temp_file"
|
||||
|
||||
# Check if the screenshot was successfully taken
|
||||
if [ $? -eq 0 ]; then
|
||||
wl-copy < "$temp_file"
|
||||
notify-send -i "$temp_file" "Current screen copied."
|
||||
rm "$temp_file"
|
||||
else
|
||||
notify-send "Error: Unable to capture screenshot."
|
||||
fi
|
||||
}
|
||||
|
||||
if [ "$1" == "--swappy" ]; then
|
||||
swappy
|
||||
elif [ "$1" == "--screen" ]; then
|
||||
screen
|
||||
else
|
||||
echo "Please use the arguments --swappy or --screen."
|
||||
fi
|
||||
'')
|
||||
];
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue