diff options
| -rw-r--r-- | ar/.config/newsboat/config | 2 | ||||
| -rwxr-xr-x | ar/.local/bin/linkhandler | 15 |
2 files changed, 14 insertions, 3 deletions
diff --git a/ar/.config/newsboat/config b/ar/.config/newsboat/config index bf08431..8e2d56f 100644 --- a/ar/.config/newsboat/config +++ b/ar/.config/newsboat/config @@ -1,5 +1,6 @@ # Options auto-reload yes +browser linkhandler external-url-viewer "urlscan -dc -r 'linkhandler {}'" # Keys @@ -23,7 +24,6 @@ bind-key U show-urls bind-key x pb-delete # Macros -browser linkhandler macro a set browser "tsp yt-dlp --embed-metadata -xic -f bestvideo*+bestaudio/best -O after_move:'%(title)s [%(id)s].%(ext)s'" ; open-in-browser ; set browser linkhandler ; -- "Download a file via yt-dlp" macro c set browser "clonerepo" ; open-in-browser ; set browser linkhandler ; -- "Clone a git repo" macro d set browser "dmenuhandler" ; open-in-browser ; set browser linkhandler ; -- "Open dmenu handler" diff --git a/ar/.local/bin/linkhandler b/ar/.local/bin/linkhandler index 7dccafc..d95c1d4 100755 --- a/ar/.local/bin/linkhandler +++ b/ar/.local/bin/linkhandler @@ -13,7 +13,7 @@ else fi case "$url" in -*mkv | *webm | *mp4 | *youtube.com/watch* | *youtube.com/playlist* | *youtube.com/shorts* | *youtu.be* | *hooktube.com* | *bitchute.com* | *videos.lukesmith.xyz* | *odysee.com*) +*mkv | *webm | *mp4 | *youtube.com/watch* | *youtube.com/playlist* | *youtube.com/shorts* | *youtu.be* | *hooktube.com* | *bitchute.com* | *videos.thesiah.xyz* | *odysee.com*) setsid -f mpv -quiet "$url" >/dev/null 2>&1 ;; *png | *jpg | *jpe | *jpeg | *gif | *webp) @@ -26,6 +26,17 @@ case "$url" in qndl "$url" 'curl -LO' >/dev/null 2>&1 ;; *) - [ -f "$url" ] && setsid -f "$TERMINAL" -e "$EDITOR" "$url" >/dev/null 2>&1 || setsid -f "$BROWSER" "$url" >/dev/null 2>&1 + [ -f "$url" ] && setsid -f "${TERMINAL:-st}" -e "$EDITOR" "$url" >/dev/null 2>&1 || { + if command -v w3m >/dev/null 2>&1; then + w3m "$url" + exit + elif command -v lynx >/dev/null 2>&1; then + lynx "$url" + exit + else + setsid -f "${BROWSER:-firefox}" "$url" >/dev/null 2>&1 + exit + fi + } ;; esac |
