Put the patterns/openers rules in a separate `rules' file (${PLUMB_RULES}). - plumb - Open certain URL patterns with an ad-hoc opener (plumber)
(HTM) hg clone https://bitbucket.org/iamleot/plumb
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
---
(DIR) changeset 3c971ed08a8f15017695bdb0b7a8c3be50b5dd45
(DIR) parent 9f0077e54611f25cd12dbf58d63e8363aacc4f11
(HTM) Author: Leonardo Taccari <iamleot@gmail.com>
Date: Tue, 27 Mar 2018 09:38:00
Put the patterns/openers rules in a separate `rules' file (${PLUMB_RULES}).
Put all patterns/openers rules in a separate file. The path of
rules file can be defined initializing the ${PLUMB_RULES} environment variable
(by default it is `~/.plumb/rules').
Update README accordingly.
Diffstat:
README | 5 ++-
plumb | 72 +----------------------------------------------------------------
rules | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 75 insertions(+), 72 deletions(-)
---
diff -r 9f0077e54611 -r 3c971ed08a8f README
--- a/README Mon Mar 26 22:58:44 2018 +0200
+++ b/README Tue Mar 27 09:38:00 2018 +0200
@@ -7,11 +7,12 @@
<http://git.r-36.net/plumber>
To use `plumb' first the ${PLUMB_OPENERS_PATH} (if not defined by
-default it is `~/.plumb/openers') need to be populated with all
-the "openers":
+default it is `~/.plumb/openers') and ${PLUMB_RULES} (if not defined
+by default it is `~/.plumb/rules') need to be populated:
% mkdir -p ~/.plumb/openers
% cp openers/* ~/.plumb/openers
+ % cp rules ~/.plumb/rules
After that you can start using `plumb', e.g.:
diff -r 9f0077e54611 -r 3c971ed08a8f plumb
--- a/plumb Mon Mar 26 22:58:44 2018 +0200
+++ b/plumb Tue Mar 27 09:38:00 2018 +0200
@@ -29,6 +29,7 @@
: ${PLUMB_OPENERS_PATH:=${HOME}/.plumb/openers}
+: ${PLUMB_RULES:=${HOME}/.plumb/rules}
: ${PLUMB_NOOPEN:=no}
@@ -78,76 +79,7 @@
for u in "$@"; do
- case $u in
- *://*.pdf )
- open "pdf" "$u"
- ;;
- *://*.txt | *://*.patch | *://*.diff | *://*.log )
- open "txt" "$u"
- ;;
- *://*.jpg | *://*.jpeg | *://*.png | *://*.gif )
- open "image" "$u"
- ;;
- *://*.mp3 | *://*.ogg | *://*.m3u8 | *://*.opus | *://*.flac | \
- *://*.mp4 | *://*.webm | *://*.gifv | \
- *://youtu.be/* | *://www.youtube.com/* | *://youtube.com/* | \
- *://vimeo.com/[0-9]* | \
- ytdl://* )
- open "media" "$u"
- ;;
- gopher://* )
- open "gopher" "$u"
- ;;
- *://feed.dilbert.com/*/[0-9]*-[0-9]*-[0-9]* | \
- *://dilbert.com/strip/[0-9]*-[0-9]*-[0-9]* )
- open "dilbert" "$u"
- ;;
- *://codepad.org/* | *://paste.* | *://pastebin.* | \
- *://sprunge.us/* | *://slexy.org/* | *://ix.io/* | \
- *://termbin.com/* )
- open "txtweb" "$u"
- ;;
- *://mail-index.netbsd.org/* | *://mail-index.NetBSD.org/* | \
- *://www.mail-archive.info/* | *://lkml.org/* | \
- *://marc.info/* | *://www.openwall.com/lists/* )
- open "txtweb" "$u"
- ;;
- *://gnats.netbsd.org/* | *://gnats.NetBSD.org/* )
- open "txtweb" "$u"
- ;;
- *://*/meta/report.html )
- open "txtweb" "$u"
- ;;
- *://oppressive-silence.com/comic/* | \
- *://nothingsuspicio.us/comics/* )
- open "ogimage" "$u"
- ;;
- *://buttersafe.com/*/*/*/* | \
- *://feedproxy.google.com/*/Buttersafe/* )
- open "buttersafe" "$u"
- ;;
- *://ars.userfriendly.org/cartoons/* )
- open "userfriendly" "$u"
- ;;
- arxiv://* )
- open "arxiv" "$u"
- ;;
- doi://* )
- open "doi" "$u"
- ;;
- cve://* )
- open "cve" "$u"
- ;;
- git://* | *://*.git )
- open "git" "$u"
- ;;
- ftp://* )
- open "ftp" "$u"
- ;;
- http://* | https://* )
- open "web" "$u"
- ;;
- esac
+ . ${PLUMB_RULES}
done
}
diff -r 9f0077e54611 -r 3c971ed08a8f rules
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/rules Tue Mar 27 09:38:00 2018 +0200
@@ -0,0 +1,70 @@
+case $u in
+*://*.pdf )
+ open "pdf" "$u"
+ ;;
+*://*.txt | *://*.patch | *://*.diff | *://*.log )
+ open "txt" "$u"
+ ;;
+*://*.jpg | *://*.jpeg | *://*.png | *://*.gif )
+ open "image" "$u"
+ ;;
+*://*.mp3 | *://*.ogg | *://*.m3u8 | *://*.opus | *://*.flac | \
+*://*.mp4 | *://*.webm | *://*.gifv | \
+*://youtu.be/* | *://www.youtube.com/* | *://youtube.com/* | \
+*://vimeo.com/[0-9]* | \
+ytdl://* )
+ open "media" "$u"
+ ;;
+gopher://* )
+ open "gopher" "$u"
+ ;;
+*://feed.dilbert.com/*/[0-9]*-[0-9]*-[0-9]* | \
+*://dilbert.com/strip/[0-9]*-[0-9]*-[0-9]* )
+ open "dilbert" "$u"
+ ;;
+*://codepad.org/* | *://paste.* | *://pastebin.* | \
+*://sprunge.us/* | *://slexy.org/* | *://ix.io/* | \
+*://termbin.com/* )
+ open "txtweb" "$u"
+ ;;
+*://mail-index.netbsd.org/* | *://mail-index.NetBSD.org/* | \
+*://www.mail-archive.info/* | *://lkml.org/* | \
+*://marc.info/* | *://www.openwall.com/lists/* )
+ open "txtweb" "$u"
+ ;;
+*://gnats.netbsd.org/* | *://gnats.NetBSD.org/* )
+ open "txtweb" "$u"
+ ;;
+*://*/meta/report.html )
+ open "txtweb" "$u"
+ ;;
+*://oppressive-silence.com/comic/* | \
+*://nothingsuspicio.us/comics/* )
+ open "ogimage" "$u"
+ ;;
+*://buttersafe.com/*/*/*/* | \
+*://feedproxy.google.com/*/Buttersafe/* )
+ open "buttersafe" "$u"
+ ;;
+*://ars.userfriendly.org/cartoons/* )
+ open "userfriendly" "$u"
+ ;;
+arxiv://* )
+ open "arxiv" "$u"
+ ;;
+doi://* )
+ open "doi" "$u"
+ ;;
+cve://* )
+ open "cve" "$u"
+ ;;
+git://* | *://*.git )
+ open "git" "$u"
+ ;;
+ftp://* )
+ open "ftp" "$u"
+ ;;
+http://* | https://* )
+ open "web" "$u"
+ ;;
+esac