summaryrefslogtreecommitdiff
path: root/bin/guiscripts/stplumb
diff options
context:
space:
mode:
authorRaymaekers Luca <raymaekers.luca@gmail.com>2024-07-01 01:14:59 +0200
committerRaymaekers Luca <raymaekers.luca@gmail.com>2024-07-01 01:14:59 +0200
commite1de506156454ba1d324faf548ad15fe804aa806 (patch)
tree1ca249b22bace59d41e950b7482443440ccc8c5e /bin/guiscripts/stplumb
parentfecb6306631aaec1774497093b7da44ab5950d92 (diff)
parentb2077bbddf86dbdbf6cc63aaf2ceb8a2da614ebc (diff)
Merge branch 'main' of db:dotfiles
Diffstat (limited to 'bin/guiscripts/stplumb')
-rwxr-xr-xbin/guiscripts/stplumb29
1 files changed, 29 insertions, 0 deletions
diff --git a/bin/guiscripts/stplumb b/bin/guiscripts/stplumb
new file mode 100755
index 0000000..1898bd1
--- /dev/null
+++ b/bin/guiscripts/stplumb
@@ -0,0 +1,29 @@
+#!/bin/sh
+
+select_link() {
+ regex='(((file|https?|gopher|gemini|ftps?|git)://|www\.)[a-zA-Z0-9.]*[:;!a-zA-Z0-9./+@$&%?$\#=_~-]*)|(magnet:\?xt=urn:btih:[a-zA-Z0-9]*)'
+ tr -d '\n' | grep -Eo "$regex" | dmenu -n -x -c
+}
+
+case $1 in
+'copylink')
+ url="$(select_link)"
+ [ "$url" ] || exit 1
+ printf '%s' "$url" | clipp
+ ;;
+'open')
+ url="$(select_link)"
+ [ "$url" ] || exit 1
+ lh "$url"
+ ;;
+'copypath')
+ path="$(grep -Eo -e '/([^/ ](/?)+)+' -e '[^ /]+/+([^ /]+(/?)+)*' |
+ sort | uniq | dmenu -n -x -c)"
+ [ "$path" ] || exit 1
+ printf '%s' "$path" | clipp
+ ;;
+*)
+ echo "no option"
+ exit 1
+ ;;
+esac