summaryrefslogtreecommitdiff
path: root/rssadd
diff options
context:
space:
mode:
authorfilip <“filip.rabiega@gmail.com”>2025-10-10 18:37:10 +0200
committerfilip <“filip.rabiega@gmail.com”>2025-10-10 18:37:10 +0200
commit08204fc9b9f63015a1dc083b471c6839818eeb59 (patch)
tree3b68ffffe45759f82cebb24fbeaecf3e66aec7a1 /rssadd
parent9535dd8f8ac46335f75d42b773cf0fa9305a722d (diff)
downloadchadscripts-08204fc9b9f63015a1dc083b471c6839818eeb59.tar.gz
chadscripts-08204fc9b9f63015a1dc083b471c6839818eeb59.tar.bz2
chadscripts-08204fc9b9f63015a1dc083b471c6839818eeb59.zip
new stuff
Diffstat (limited to 'rssadd')
-rwxr-xr-xrssadd18
1 files changed, 18 insertions, 0 deletions
diff --git a/rssadd b/rssadd
new file mode 100755
index 0000000..910fca3
--- /dev/null
+++ b/rssadd
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+if echo "$1" | grep -q "https*://\S\+\.[A-Za-z]\+\S*" ; then
+ url="$1"
+else
+ url="$(grep -Eom1 '<[^>]+(rel="self"|application/[a-z]+\+xml)[^>]+>' "$1" |
+ grep -o "https?://[^\" ]")"
+
+ echo "$url" | grep -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" | grep "^$url$" >/dev/null; then
+ notify-send "You already have this RSS feed."
+else
+ echo "$url" >> "$RSSFILE" && notify-send "RSS feed added."
+fi