diff options
Diffstat (limited to 'scripts/buku-archive.sh')
-rwxr-xr-x | scripts/buku-archive.sh | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/scripts/buku-archive.sh b/scripts/buku-archive.sh new file mode 100755 index 0000000..2a2a702 --- /dev/null +++ b/scripts/buku-archive.sh @@ -0,0 +1,31 @@ +#!/usr/bin/env bash + +SEL="$(xclip -o | tr -d '\n')" +if [[ -z "${SEL// }" ]]; then + echo "Empty selection." + exit 1 +fi +BOOKMARK_ID= +IFS=" +" +BOOKMARKS="$(buku "$SEL" -f 1 --tacit)" + +for bookmark in $BOOKMARKS; do + echo "$bookmark" + ID="$(echo "$bookmark" | cut -d$'\t' -f 1)" + URL="$(echo "$bookmark" | cut -d$'\t' -f 2)" + if [[ "$URL" = "$SEL" ]]; then + BOOKMARK_ID="$ID" + break + fi +done + + +if [[ -n "$BOOKMARK_ID" ]]; then + echo "Archiving $BOOKMARK_ID (URL: $SEL)." + buku -u "$BOOKMARK_ID" --tag - ril + buku -u "$BOOKMARK_ID" --tag + simple-archive +else + echo "Bookmark for '$SEL' not found." + exit 1 +fi |