grimshot - added option to 'save-copy' to save to file and copy to clipboard

This commit is contained in:
bugrasan 2020-12-28 13:56:12 +01:00
parent e8e7bbc85f
commit b6aba79abe
3 changed files with 32 additions and 18 deletions

View file

@ -1,4 +1,5 @@
#!/bin/sh
# vim: set ts=2 sw=2 et :
## Grimshot: a helper for screenshots within sway
## Requirements:
@ -30,9 +31,9 @@ ACTION=${1:-usage}
SUBJECT=${2:-screen}
FILE=${3:-$(getTargetDirectory)/$(date -Ins).png}
if [ "$ACTION" != "save" ] && [ "$ACTION" != "copy" ] && [ "$ACTION" != "check" ]; then
if [ "$ACTION" != "save" ] && [ "$ACTION" != "copy" ] && [ "$ACTION" != "save-copy" ] && [ "$ACTION" != "check" ]; then
echo "Usage:"
echo " grimshot [--notify] (copy|save) [active|screen|output|area|window] [FILE]"
echo " grimshot [--notify] (copy|save|save-copy) [active|screen|output|area|window] [FILE]"
echo " grimshot check"
echo " grimshot usage"
echo ""
@ -148,6 +149,9 @@ else
MESSAGE=$(basename "$FILE")
notifyOk "$MESSAGE" "$TITLE"
echo $FILE
if [ "$ACTION" = "save-copy" ] ; then
wl-copy --type image/png < "$FILE"
fi
else
notifyError "Error taking screenshot with grim"
fi

View file

@ -1,11 +1,11 @@
.\" Generated by scdoc 1.11.1
.\" Generated by scdoc 1.11.0
.\" Complete documentation for this program is not available as a GNU info page
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.nh
.ad l
.\" Begin generated content:
.TH "grimshot" "1" "2020-12-20"
.TH "grimshot" "1" "2020-12-28"
.P
.SH NAME
.P
@ -13,7 +13,7 @@ grimshot - a helper for screenshots within sway
.P
.SH SYNOPSIS
.P
\fBgrimshot\fR [--notify] (copy|save) [TARGET] [FILE]
\fBgrimshot\fR [--notify] (copy|save|save-copy) [TARGET] [FILE]
.br
\fBgrimshot\fR check
.br
@ -23,26 +23,32 @@ grimshot - a helper for screenshots within sway
.P
\fB--notify\fR
.RS 4
Show notifications to the user that a screenshot has been taken.\&
Show notifications to the user that a screenshot has been taken.
.P
.RE
\fBsave\fR
.RS 4
Save the screenshot into a regular file.\& Grimshot will write images
Save the screenshot into a regular file. Grimshot will write images
files to \fBXDG_SCREENSHOTS_DIR\fR if this is set (or defined
in \fBuser-dirs.\&dir\fR), or otherwise fall back to \fBXDG_PICTURES_DIR\fR.\&
in \fBuser-dirs.dir\fR), or otherwise fall back to \fBXDG_PICTURES_DIR\fR.
.P
.RE
\fBcopy\fR
.RS 4
Copy the screenshot data (as image/png) into the clipboard.\&
Copy the screenshot data (as image/png) into the clipboard.
.P
.RE
\fBsave-copy\fR
.RS 4
Save the screeshot into a regular file (see above for save) and
copy the screenshot data into the clipboard (see above for copy).
.P
.RE
.SH DESCRIPTION
.P
Grimshot is an easy-to-use screenshot utility for sway.\& It provides a
Grimshot is an easy-to-use screenshot utility for sway. It provides a
convenient interface over grim, slurp and jq, and supports storing the
screenshot either directly to the clipboard using wl-copy or to a file.\&
screenshot either directly to the clipboard using wl-copy or to a file.
.P
.SH EXAMPLES
.P
@ -69,34 +75,34 @@ grimshot can capture the following named targets:
.P
\fIactive\fR
.RS 4
Captures the currently active window.\&
Captures the currently active window.
.P
.RE
\fIscreen\fR
.RS 4
Captures the entire screen.\& This includes all visible outputs.\&
Captures the entire screen. This includes all visible outputs.
.P
.RE
\fIarea\fR
.RS 4
Allows manually selecting a rectangular region, and captures that.\&
Allows manually selecting a rectangular region, and captures that.
.P
.RE
\fIwindow\fR
.RS 4
Allows manually selecting a single window (by clicking on it), and
captures it.\&
captures it.
.P
.RE
\fIoutput\fR
.RS 4
Captures the currently active output.\&
Captures the currently active output.
.P
.RE
.SH OUTPUT
.P
Grimshot will print the filename of the captured screenshot to stdout if called
with the \fIsave\fR subcommand.\&
with the \fIsave\fR subcommand.
.P
.SH SEE ALSO
.P

View file

@ -6,7 +6,7 @@ grimshot - a helper for screenshots within sway
# SYNOPSIS
*grimshot* [--notify] (copy|save) [TARGET] [FILE]++
*grimshot* [--notify] (copy|save|save-copy) [TARGET] [FILE]++
*grimshot* check++
*grimshot* usage
@ -23,6 +23,10 @@ grimshot - a helper for screenshots within sway
*copy*
Copy the screenshot data (as image/png) into the clipboard.
*save-copy*
Save the screeshot into a regular file (see above for save) and
copy the screenshot data into the clipboard (see above for copy).
# DESCRIPTION
Grimshot is an easy-to-use screenshot utility for sway. It provides a