mirror of
https://github.com/caelestia-dots/cli.git
synced 2026-06-05 14:59:29 -05:00
screenshot script
This commit is contained in:
@@ -31,7 +31,7 @@ if set -q _flag_h
|
||||
echo ' -F, --no-filter Do not filter by size'
|
||||
echo ' -t, --threshold <threshold> The minimum percentage of the size the image must be greater than to be selected (default '$threshold')'
|
||||
else
|
||||
set -q XDG_CACHE_HOME && set cache_dir $XDG_CACHE_HOME/caelestia/wallpaper || set cache_dir ~/.cache/caelestia/wallpaper
|
||||
set cache_dir $CACHE/wallpaper
|
||||
|
||||
# The path to the last chosen wallpaper
|
||||
set last_wallpaper_path "$cache_dir/last.txt"
|
||||
|
||||
@@ -18,6 +18,11 @@ if test "$argv[1]" = shell
|
||||
exit
|
||||
end
|
||||
|
||||
if test "$argv[1]" = screenshot
|
||||
./screenshot.fish $argv[2..]
|
||||
exit
|
||||
end
|
||||
|
||||
if test "$argv[1]" = workspace-action
|
||||
./workspace-action.sh $argv[2..]
|
||||
exit
|
||||
|
||||
Executable
+23
@@ -0,0 +1,23 @@
|
||||
#!/bin/fish
|
||||
|
||||
. (dirname (status filename))/util.fish
|
||||
|
||||
mkdir -p "$CACHE/screenshots"
|
||||
set tmp_file "$CACHE/screenshots/$(date +'%Y%m%d%H%M%S')"
|
||||
grim $argv $tmp_file; and wl-copy < $tmp_file; or exit 1
|
||||
|
||||
set action (notify-send -i 'image-x-generic-symbolic' -h "STRING:image-path:$tmp_file" \
|
||||
-a (basename (status current-filename)) --action='open=Open' --action='save=Save' \
|
||||
'Screenshot taken' "Screenshot stored in $tmp_file and copied to clipboard")
|
||||
switch $action
|
||||
case 'open'
|
||||
uwsm app -- swappy -f $tmp_file & disown
|
||||
case 'save'
|
||||
set save_file (uwsm app -- zenity --file-selection --save --title='Save As')
|
||||
[ -z $save_file ] && exit 0
|
||||
if [ -f $save_file ]
|
||||
uwsm app -- yad --image='abrt' --title='Warning!' --text-align='center' --buttons-layout='center' --borders=20 \
|
||||
--text='<span size="x-large">Are you sure you want to overwrite this file?</span>' || exit 0
|
||||
end
|
||||
cp -f $tmp_file $save_file
|
||||
end
|
||||
Reference in New Issue
Block a user