aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/scregcp.sh
diff options
context:
space:
mode:
authorJoursoir <chat@joursoir.net>2023-10-14 20:01:00 +0300
committerJoursoir <chat@joursoir.net>2023-11-04 16:45:05 +0300
commitab6b1d71e93967aa1d00e0026cb75ac2ffbfc11a (patch)
treed5de64928ed59dcd0e01fbbbd7c0626d42c16693 /scripts/scregcp.sh
parent65244696d0a0676fd8a814cc1bbad584a76798ac (diff)
downloaddotfiles-ab6b1d71e93967aa1d00e0026cb75ac2ffbfc11a.tar.gz
dotfiles-ab6b1d71e93967aa1d00e0026cb75ac2ffbfc11a.tar.bz2
dotfiles-ab6b1d71e93967aa1d00e0026cb75ac2ffbfc11a.zip
rename 'bin' dir to 'scripts'
Diffstat (limited to 'scripts/scregcp.sh')
-rw-r--r--scripts/scregcp.sh39
1 files changed, 39 insertions, 0 deletions
diff --git a/scripts/scregcp.sh b/scripts/scregcp.sh
new file mode 100644
index 0000000..2f2bab2
--- /dev/null
+++ b/scripts/scregcp.sh
@@ -0,0 +1,39 @@
+#!/usr/bin/env bash
+
+# Dependencies: 'imagemagick', 'xclip'
+
+function help_and_exit {
+ if [ -n "${1}" ]; then
+ echo "${1}"
+ fi
+ cat <<-EOF
+ Usage: scregcp [-h|-s] [<screenshots_base_folder>]
+
+ Take screenshot of a whole screen or a specified region,
+ save it to a specified folder (current folder is default)
+ and copy it to a clipboard.
+
+ -h - print help and exit
+ -s - take a screenshot of a screen region
+EOF
+ if [ -n "${1}" ]; then
+ exit 1
+ fi
+ exit 0
+}
+
+if [ "${1}" == '-h' ]; then
+ help_and_exit
+elif [ "${1:0:1}" == '-' ]; then
+ if [ "${1}" != '-s' ]; then
+ help_and_exit "error: unknown option ${1}"
+ fi
+ base_folder="${2}"
+else
+ base_folder="${1}"
+ params="-window root"
+fi
+
+file_path=${base_folder}$( date '+%Y-%m-%d_%H-%M-%S' )_screenshot.png
+import ${params} ${file_path}
+xclip -selection clipboard -target image/png -i < ${file_path}