diff options
author | Taru Karttunen <taruti@taruti.net> | 2011-03-30 16:53:33 +0300 |
---|---|---|
committer | Taru Karttunen <taruti@taruti.net> | 2011-03-30 16:53:33 +0300 |
commit | e463eb40363ff4c68b1d903f4e0cdd0ac1c5977f (patch) | |
tree | d5e9f57c28f026cb21de3bd77cc10cd7f64aaa85 /sys/lib/plumb | |
parent | b41b9034225ab3e49980d9de55c141011b6383b0 (diff) |
Import sources from 2011-03-30 iso image - sys/lib
Diffstat (limited to 'sys/lib/plumb')
-rwxr-xr-x | sys/lib/plumb/basic | 118 | ||||
-rwxr-xr-x | sys/lib/plumb/fileaddr | 3 |
2 files changed, 121 insertions, 0 deletions
diff --git a/sys/lib/plumb/basic b/sys/lib/plumb/basic new file mode 100755 index 000000000..3d7ad240e --- /dev/null +++ b/sys/lib/plumb/basic @@ -0,0 +1,118 @@ +# these are generally in order from most specific to least, +# since first rule that fires wins. + +include fileaddr + +# declarations of ports without rules +plumb to seemail +plumb to showmail + +# cheap http/gif,jpeg,ps,pdf renderer +type is text +data matches '(https?|ftp|file|gopher|mailto|news|nntp|telnet|wais|prospero)://[a-zA-Z0-9_@\-]+([.:][a-zA-Z0-9_@\-]+)*/?[a-zA-Z0-9_?.,%#~&/\-+=]+([:.][a-zA-Z0-9_?,%#~&/\-+=]+)*\.(jpe?g|JPE?G|gif|GIF|ps|PS|pdf|PDF|png|PNG)' +plumb start rc -c 'hget '''$0''' | page -w' + +## open urls with abaco web browser +#type is text +#data matches 'https?://[a-zA-Z0-9_@\-]+([.:][a-zA-Z0-9_@\-]+)*/?[a-zA-Z0-9_?,%#~&/\-+=]+([:.][a-zA-Z0-9_?,''%#~&/\-+=;]+)*' +#plumb to web +#plumb client window abaco + +# rtf files go to wdoc2txt +type is text +data matches '[a-zA-Z¡-0-9_\-./]+' +data matches '([a-zA-Z¡-0-9_\-./]+)\.rtf' +arg isfile $0 +plumb to msword +plumb start wdoc2txt $file + +# start rule for microsoft word documents without .doc suffix +type is text +dst is msword +plumb to msword +plumb start wdoc2txt $file + +# email addresses get a new mail window +type is text +data matches '[a-zA-Z0-9_+.\-]+@[a-zA-Z0-9_+.\-]*' +plumb to sendmail +plumb start window rc -c '''echo % mail '''$0'; mail '$0 + +# image files go to page +type is text +data matches '[a-zA-Z¡-0-9_\-./]+' +data matches '([a-zA-Z¡-0-9_\-./]+)\.(jpe?g|JPE?G|gif|GIF|tiff?|TIFF?|ppm|PPM|bit|BIT|png|PNG|pgm|PGM|bmp|BMP|yuv|YUV)' +arg isfile $0 +plumb to image +plumb client page -wi + +# postscript/pdf/dvi/doc go to page but not over the a plumb port +# the port is here for reference but is unused +type is text +data matches '[a-zA-Z¡-0-9_\-./]+' +data matches '([a-zA-Z¡-0-9_\-./]+)\.(ps|PS|eps|EPS|pdf|PDF|dvi|DVI|doc|DOC)' +arg isfile $0 +plumb to postscript +plumb start page -w $file + +# existing files, possibly tagged by line number, go to editor +type is text +data matches '([.a-zA-Z¡-0-9_/+\-]*[a-zA-Z¡-0-9_/+\-])('$addr')?' +arg isfile $1 +data set $file +attr add addr=$3 +plumb to edit +plumb client window $editor + +# .h files are looked up in /sys/include and passed to edit +type is text +data matches '([a-zA-Z¡-0-9]+\.h)('$addr')?' +arg isfile /sys/include/$1 +data set $file +attr add addr=$3 +plumb to edit +plumb client window $editor + +# .m files are looked up in /usr/inferno/module and passed to edit +type is text +data matches '([a-zA-Z¡-0-9]+\.m)('$addr')?' +arg isfile /usr/inferno/module/$1 +data set $file +attr add addr=$3 +plumb to edit +plumb client window $editor + +# faces -> new mail window for message +type is text +data matches '[a-zA-Z¡-0-9_\-./]+' +data matches '/mail/fs/[a-zA-Z¡-0-9/]+/[0-9]+' +plumb to showmail +plumb start window -r 4 120 750 600 upas/nedmail -s $0 + +# man index entries are synthesized +type is text +data matches '([a-zA-Z¡-0-9_\-./]+)\(([1-8])\)' +plumb start rc -c 'man -b '$2' '$1' + +# RFC references are looked up in /lib/rfc and passed to editor +type is text +data matches 'RFC ?([0-9]+)' +arg isfile /lib/rfc/rfc$1 +data set $file +plumb to edit +plumb client window $editor + +# start rule for images without known suffixes +dst is image +plumb to image +plumb client page -wi + +# start rule for postscript without known suffixes +dst is postscript +arg isfile $data +plumb start page -w $data + +type is text +data matches 'Local (.*)' +plumb to none +plumb start rc -c $1 diff --git a/sys/lib/plumb/fileaddr b/sys/lib/plumb/fileaddr new file mode 100755 index 000000000..0f08dc3ea --- /dev/null +++ b/sys/lib/plumb/fileaddr @@ -0,0 +1,3 @@ +addrelem='((#?[0-9]+)|(/[A-Za-z0-9_\^]+/?)|[.$])' +addr=:($addrelem([,;+\-]$addrelem)*) + |