diff options
author | Tom Ryder <tom@sanctum.geek.nz> | 2016-08-14 21:18:45 +1200 |
---|---|---|
committer | Tom Ryder <tom@sanctum.geek.nz> | 2016-08-14 21:18:45 +1200 |
commit | 974da7f15d5f8c50ca9b42a16f5a590704d0aa3a (patch) | |
tree | 826cd3034e3900a17208120cebc5ec71aaad1073 /bin/xgo | |
parent | Remove unneeded options from dmenu_run (diff) | |
download | dotfiles-974da7f15d5f8c50ca9b42a16f5a590704d0aa3a.tar.gz dotfiles-974da7f15d5f8c50ca9b42a16f5a590704d0aa3a.zip |
Refactor br(1), brxs(1), add xgo(1) and xgoc(1)
Including updating keybindings
Diffstat (limited to 'bin/xgo')
-rwxr-xr-x | bin/xgo | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/bin/xgo b/bin/xgo new file mode 100755 index 00000000..56bbb0f9 --- /dev/null +++ b/bin/xgo @@ -0,0 +1,33 @@ +#!/bin/sh +# Test and open a clipboard URL with an apt program + +# Check arguments +if [ "$#" -eq 0 ] ; then + printf 2>&1 'xgo: At least one URL required\n' +fi + +# Iterate over the URL arguments +for url ; do ( + + # If it's a YouTube video without a given start time, load it in mpv(1) + case $url in + *youtube.com/watch*[?\&]t=) ;; + *youtube.com/watch*) + mpv -- "$url" && continue + ;; + esac + + # If the MIME type is an image, load it in feh(1) + case $mt in + image/gif) ;; + image/*) + curl -- "$url" | feh - && continue + ;; + esac + + # Get the MIME type data + mt=$(urlmt "$url") + + # Otherwise, just pass it to br(1) + br "$url" +) & done |