summaryrefslogtreecommitdiff
path: root/dot-config/rofi/scripts/cliphist-rofi-img
blob: 9fb50eb6253ec49d8049d41bb67af17452b294a5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/usr/bin/env bash

tmp_dir="/tmp/cliphist"

if [[ -n "$1" ]]; then
    cliphist decode <<<"$1" | wl-copy
    exit
fi

mkdir -p "$tmp_dir"

read -r -d '' prog <<EOF
/^[0-9]+\s<meta http-equiv=/ { next }
match(\$0, /^([0-9]+)\s(\[\[\s)?binary.*(jpg|jpeg|png|bmp)/, grp) {
    system("echo " grp[1] "\\\\\t | cliphist decode >$tmp_dir/"grp[1]"."grp[3])
    print \$0"\0icon\x1f$tmp_dir/"grp[1]"."grp[3]
    next
}
1
EOF
# echo $(cat "$tmp_dir/cliphist")
# format: <id>\t<100 char preview> remove the ID

# cat "$tmp_dir/cliphist"
cliphist list | head -n 100 | gawk "$prog" &