summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Cady <d@jerkface.net>2021-09-14 02:12:42 -0400
committerAndrew Cady <d@jerkface.net>2021-09-14 02:12:42 -0400
commitcddfcca3838898e8c718ea2d3c0eccfe9f1e34db (patch)
treea3dca94e05a568b73e39a38ce163d3227c5b412f
parent619460b2a356a4093538cb3799964bec3b4b6b59 (diff)
cutbuffer_pop: cleanup
-rwxr-xr-xdot/local/bin/cutbuffer_pop62
1 files changed, 4 insertions, 58 deletions
diff --git a/dot/local/bin/cutbuffer_pop b/dot/local/bin/cutbuffer_pop
index 6a693c6..f817c08 100755
--- a/dot/local/bin/cutbuffer_pop
+++ b/dot/local/bin/cutbuffer_pop
@@ -1,62 +1,12 @@
1#!/bin/sh 1#!/bin/sh
2
3# A screen-grab will be saved in $SCREEN_GRAB_DEST_DIR if set, otherwise
4# in $HOME/screen_grab/ if it exsts; otherwise $HOME.
5
6default_basename=cutbuffer_grab 2default_basename=cutbuffer_grab
7default_extension=txt 3default_extension=txt
8date_format=+%F_%H%M%S 4destdir=$HOME/$default_basename
9SCREEN_GRAB_DEST_DIR=$HOME/$default_basename
10 5
11chdir_to_destination() 6chdir_to_destination()
12{ 7{
13 [ -d "$SCREEN_GRAB_DEST_DIR" ] || mkdir -p "$SCREEN_GRAB_DEST_DIR" 8 [ -d "$destdir" ] || mkdir -p "$destdir"
14 cd "$SCREEN_GRAB_DEST_DIR" 9 cd "$destdir"
15}
16
17choose_destination()
18{
19 local stamp basename extension now
20 case $# in
21 1) ;;
22 0) now=$(date "$date_format")
23 DESTINATION=$default_basename.$now.$default_extension
24 return
25 ;;
26 *) return 1 ;;
27 esac
28
29 case "$1" in
30 *.*)
31 basename=${1%.*}
32 extension=${1##*.}
33 ;;
34 *)
35 basename=$1
36 extension=$default_extension
37 ;;
38 esac
39 DESTINATION=$basename.$extension
40}
41
42get_out_the_way()
43{
44 local stamp basename extension destination
45 [ -e "$1" ] || return 0
46
47 stamp=$(date -r "$1" "$date_format") || return
48 case "$1" in
49 *.*)
50 basename=${1%.*}
51 extension=${1##*.}
52 destination=$basename.$stamp.$extension
53 ;;
54 *)
55 destination=$1.$stamp
56 ;;
57 esac
58 [ ! -e "$destination" ] || return
59 mv "$1" "$destination"
60} 10}
61 11
62extract() 12extract()
@@ -64,15 +14,11 @@ extract()
64 sort -z -k1,1 -r | head -z -n 1 | xargs -0 printf '%s\n' | cut -d' ' -f2 14 sort -z -k1,1 -r | head -z -n 1 | xargs -0 printf '%s\n' | cut -d' ' -f2
65} 15}
66 16
67
68set -e 17set -e
69 18
70chdir_to_destination 19chdir_to_destination
71 20
72f=$(find . -maxdepth 1 -type f -printf "%C@ %h/%f\0" | extract) 21f=$(find . -maxdepth 1 -type f -name 'cutbuffer_grab.*.txt' -printf "%C@ %h/%f\0" | extract)
73
74set -x
75exec 2> /tmp/cbp.log
76 22
77xcb -s 0 < "$f" 23xcb -s 0 < "$f"
78xsel --input < "$f" 24xsel --input < "$f"