aboutsummaryrefslogtreecommitdiff
path: root/.local/bin/rssadd
blob: 13a525f67950c074261e9b64f9c20f8fe753be07 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/bin/sh

if echo "$1" | rg -q "https*://\S\+\.[A-Za-z]\+\S*" ; then
	url="$1"
else
	url="$(rg -Eom1 '<[^>]+(rel="self"|application/[a-z]+\+xml)[^>]+>' "$1" |
		rg -o "https?://[^\" ]")"

	echo "$url" | rg -q "https*://\S\+\.[A-Za-z]\+\S*" ||
		notify-send "That doesn't look like a full URL." && exit 1
fi

RSSFILE="${XDG_CONFIG_HOME:-$HOME/.config}/newsboat/urls"
if awk '{print $1}' "$RSSFILE" | rg "^$url$" >/dev/null; then
	notify-send "You already have this RSS feed."
else
	echo "$url" >> "$RSSFILE" && notify-send "RSS feed added."
fi