diff options
| author | Craig Jennings <c@cjennings.net> | 2025-05-21 22:01:35 -0500 | 
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2025-05-21 22:01:35 -0500 | 
| commit | b4463015b97912658d630377fafbf630f7588d1e (patch) | |
| tree | d04b66d992fe2ce88391889c21c5d8dc97acd0ef /dotfiles/system/.local/bin/linkhandler | |
| parent | 548154ea395356868e87980b149dfc0abdc84e17 (diff) | |
moving arch dotfiles into archsetup
Diffstat (limited to 'dotfiles/system/.local/bin/linkhandler')
| -rwxr-xr-x | dotfiles/system/.local/bin/linkhandler | 26 | 
1 files changed, 26 insertions, 0 deletions
| diff --git a/dotfiles/system/.local/bin/linkhandler b/dotfiles/system/.local/bin/linkhandler new file mode 100755 index 0000000..cc971fc --- /dev/null +++ b/dotfiles/system/.local/bin/linkhandler @@ -0,0 +1,26 @@ +#!/bin/sh + +# Feed script a url or file location. +# If an image, it will view in sxiv, +# if a video or gif, it will view in mpv +# if a music file or pdf, it will download, +# otherwise it opens link in browser. + +if [ -z "$1" ]; then +	url="$(xclip -o)" +else +	url="$1" +fi + +case "$url" in +	*mkv|*webm|*mp4|*youtube.com/watch*|*youtube.com/playlist*|*youtu.be*|*hooktube.com*|*bitchute.com*|*videos.lukesmith.xyz*|*odysee.com*) +		setsid -f mpv -quiet "$url" >/dev/null 2>&1 ;; +	*png|*jpg|*jpe|*jpeg|*gif) +		curl -sL "$url" > "/tmp/$(echo "$url" | sed "s/.*\///;s/%20/ /g")" && sxiv -a "/tmp/$(echo "$url" | sed "s/.*\///;s/%20/ /g")"  >/dev/null 2>&1 & ;; +	*pdf|*cbz|*cbr) +		curl -sL "$url" > "/tmp/$(echo "$url" | sed "s/.*\///;s/%20/ /g")" && zathura "/tmp/$(echo "$url" | sed "s/.*\///;s/%20/ /g")"  >/dev/null 2>&1 & ;; +	*mp3|*flac|*opus|*mp3?source*) +		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 +esac | 
