diff options
author | filip <“filip.rabiega@gmail.com”> | 2025-10-14 21:57:25 +0200 |
---|---|---|
committer | filip <“filip.rabiega@gmail.com”> | 2025-10-14 21:57:25 +0200 |
commit | 91a4eacb0419bd0f67774f6124b6f0b1525eb988 (patch) | |
tree | de8189790a11437e540f7792fd7559f88212bae7 /via-open | |
parent | 7f6189dcbed755af34e222237b8cfa8b1f903696 (diff) | |
download | chadscripts-91a4eacb0419bd0f67774f6124b6f0b1525eb988.tar.gz chadscripts-91a4eacb0419bd0f67774f6124b6f0b1525eb988.tar.bz2 chadscripts-91a4eacb0419bd0f67774f6124b6f0b1525eb988.zip |
new stuff
Diffstat (limited to 'via-open')
-rwxr-xr-x | via-open | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/via-open b/via-open new file mode 100755 index 0000000..6832526 --- /dev/null +++ b/via-open @@ -0,0 +1,56 @@ +#!/bin/bash + +exec &> /dev/null + +while read -r arg; do + # first try matching by filename or pathname + case "${arg,,}" in + w\ *) + target=$(echo "$arg"|cut -d ' ' -f 3-) + wmctrl -a "$target" + ;; + http*) + $BROWSER "$arg" & + ;; + [^/]*) # doesn't start with '/' + sh -c "$arg" + ;; + *.txt) + tabbed -c -r 2 st -w '' -e $EDITOR "$arg" & + # $TERMINAL $EDITOR "$arg" & + ;; + *.pdf | *.epub) + zathura "$arg" & + ;; + *.mp3) + $TERMINAL mpg123 -opulse "$arg" & + ;; + *.od[tsp]|*.doc|*.docx|*.ppt|*.pptx|*.xls|*.xlsx) + libreoffice "$arg" & + ;; + *) + # then try matching by mimetype + mimetype=$(file -Lb --mime-type "$arg") + case "$mimetype" in + text/html) + $BROWSER "$arg" & + ;; + text/* | inode/x-empty | message/rfc822) + tabbed -c -r 2 st -w '' -e $EDITOR "$arg" & + # $TERMINAL $EDITOR "$arg" & + ;; + inode/directory) + cd "$arg" || exit + $TERMINAL & + cd - || exit + ;; + image/*) + sxiv "$arg" & + ;; + *) + exit 1 + ;; + esac + ;; + esac +done |