summaryrefslogtreecommitdiff
path: root/st-urlhandler
blob: d44bb9965065f1e3f5fdece733a0a22863bd399c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/bin/sh

urlregex="(((http|https)://|www\\.)[a-zA-Z0-9.]*[:]?[a-zA-Z0-9./@$&%?$#=_-]*)|((magnet:\\?xt=urn:btih:)[a-zA-Z0-9]*)"

# First remove linebreaks and mutt sidebars:
urls="$(sed 's/.*│//g' | tr -d '\n' |
	grep -aEo "$urlregex" | # grep only urls as defined above.
	uniq | # Ignore neighboring duplicates.
	sed 's/^www./http:\/\/www\./g')"

[ -z "$urls" ] && exit

chosen="$(echo "$urls" | dmenu -i -p 'Follow which url?' -l 10)"

setsid xdg-open "$chosen" >/dev/null 2>&1 &