commit 6c61e22dd2ed40f242b0133ec407d55932faea50 Spenser Truex <truex@equwal.com> 2025-09-01 18:16:12 -0400 Initial commit
dmodurl | 24 ++++++++++++++++++++++++ dmodurl.sed | 12 ++++++++++++ drss.sed | 11 +++++++++++ drssurl | 17 +++++++++++++++++ modurl | 3 +++ rssurl | 3 +++ 6 files changed, 70 insertions(+)
diff --git a/dmodurl b/dmodurl new file mode 100755 index 0000000..ac0aae4 --- /dev/null +++ b/dmodurl @@ -0,0 +1,24 @@ +#!/bin/sh +# +# Requires modurl +# + +test -s $HOME/.dmenurc && . $HOME/.dmenurc +PROMPT="url: " + +# Trying to show an interactive url list here somehow. Probably need to +# use a DSL rather than a raw sed file in order to Do The Right Thing +#URLLIST="$(sed 's:^s#:: +#s:\(#.*\)#.*$:\1: +#s:' "$XDG_CONFIG_HOME"/dmodurl.sed)" + +url="$(xclip -o | dmenu -p "$PROMPT")" + +newurl=$(modurl "$url") +url="$newurl" + +test -z "${url}" && exit + +choice="$(echo "copy\nbrowse" | dmenu -p "$url -- choice: ")" +[ "$choice" = "copy" ] && echo "$url" | xclip -i -sel clip +[ "$choice" = "browse" ] && dbrowsel "$url" diff --git a/dmodurl.sed b/dmodurl.sed new file mode 100644 index 0000000..a4ae9eb --- /dev/null +++ b/dmodurl.sed @@ -0,0 +1,12 @@ +# FORMAT: +# s#\(https\?://\)\?\(www\.\)\?OLDSITE#NEWSITE: +# we use # separator + + +# stuff to consider, which doesn't have a canonical link: +# FF send +# https://github.com/timvisee/send-instances/ +# + +# search +s#\(https\?://\)\?\(www\.\)\?google\.com#duckduckgo.com# diff --git a/drss.sed b/drss.sed new file mode 100644 index 0000000..25b2ee6 --- /dev/null +++ b/drss.sed @@ -0,0 +1,11 @@ +# FORMAT: +# s#\(https\?://\)\?\(www\.\)\?OLDSITE#NEWSITE: +# we use # separator + + +# stuff to consider, which doesn't have a canonical link: +# FF send +# https://github.com/timvisee/send-instances/ +# +s#\(https\?://\)\?\(www\.\)\?youtube.com/c/\(.*/?\)#youtube.com/feeds/videos.xml?channel_id=\3# +s#\(https\?://\)\?\(www\.\)\?youtube.com/channel/\(.*/?\)#youtube.com/feeds/videos.xml?channel_id=\3# diff --git a/drssurl b/drssurl new file mode 100755 index 0000000..d9af81e --- /dev/null +++ b/drssurl @@ -0,0 +1,17 @@ +#!/bin/sh +# +# Requires rssurl +# + +test -s $HOME/.dmenurc && . $HOME/.dmenurc +PROMPT="url: " + +url="$(xclip -o | dmenu -p "$PROMPT")" + +newurl=$(rssurl "$url") +url="$newurl" + +test -z "${url}" && exit + +#choice="$(echo "copy\nbrowse" | dmenu -p "$url -- choice: ")" +echo "$url" | xclip -i -sel clip diff --git a/modurl b/modurl new file mode 100755 index 0000000..1017698 --- /dev/null +++ b/modurl @@ -0,0 +1,3 @@ +#!/bin/sh +SCRIPTFILE="$XDG_CONFIG_HOME"/dmodurl.sed +echo "$1" | sed -f "$SCRIPTFILE" diff --git a/rssurl b/rssurl new file mode 100755 index 0000000..1124bbc --- /dev/null +++ b/rssurl @@ -0,0 +1,3 @@ +#!/bin/sh +SCRIPTFILE="$XDG_CONFIG_HOME"/drss.sed +echo "$1" | sed -f "$SCRIPTFILE"