xref: /plan9/mail/lib/msgcat.rc (revision 09762551a2283940baa4807956116d4373b76937)
1*4246b616SDavid du Colombier#!/bin/rc
2*4246b616SDavid du Colombier
3*4246b616SDavid du Colombierrfork ne
4*4246b616SDavid du Colombier
5*4246b616SDavid du Colombierif(~ $1 /mail/fs/mbox*){
6*4246b616SDavid du Colombier	dir=$*
7*4246b616SDavid du Colombier}
8*4246b616SDavid du Colombierif not{
9*4246b616SDavid du Colombier	upas/fs -f $1
10*4246b616SDavid du Colombier	dir=/mail/fs/mbox/[0-9]*
11*4246b616SDavid du Colombier}
12*4246b616SDavid du Colombier
13*4246b616SDavid du Colombierfn catmsg {
14*4246b616SDavid du Colombier	t=`{cat type}
15*4246b616SDavid du Colombier	switch($t){
16*4246b616SDavid du Colombier	case text/html
17*4246b616SDavid du Colombier		echo '
18*4246b616SDavid du Colombier			,x/<!--(-?[^\-]|--[^>]|\n)*-->/ c//
19*4246b616SDavid du Colombier			,x/<[^>]+>/d
20*4246b616SDavid du Colombier			,p
21*4246b616SDavid du Colombier			u
22*4246b616SDavid du Colombier			,y/<[^>]+>/d
23*4246b616SDavid du Colombier			,p
24*4246b616SDavid du Colombier		' | sam -d body |[2] sed '1d;/^\?/d'
25*4246b616SDavid du Colombier	case text/*
26*4246b616SDavid du Colombier		cat body
27*4246b616SDavid du Colombier	case message/*
28*4246b616SDavid du Colombier		cat body
29*4246b616SDavid du Colombier	case multipart/alternative
30*4246b616SDavid du Colombier		if(~ `{cat 1/type} text/plain)
31*4246b616SDavid du Colombier			cd 1 && {catmsg; cd ..}
32*4246b616SDavid du Colombier		if not if (~ `{cat 2/type >[2]/dev/null} text/plain)
33*4246b616SDavid du Colombier			cd 2 && {catmsg; cd ..}
34*4246b616SDavid du Colombier		if not {
35*4246b616SDavid du Colombier			for (i in [0-9]*)
36*4246b616SDavid du Colombier				cd $i && {catmsg; cd ..}
37*4246b616SDavid du Colombier		}
38*4246b616SDavid du Colombier	case *
39*4246b616SDavid du Colombier		echo $t
40*4246b616SDavid du Colombier	}
41*4246b616SDavid du Colombier}
42*4246b616SDavid du Colombier
43*4246b616SDavid du Colombierfor(i in $dir){
44*4246b616SDavid du Colombier	cd $i
45*4246b616SDavid du Colombier	cat unixheader header
46*4246b616SDavid du Colombier	echo
47*4246b616SDavid du Colombier	catmsg
48*4246b616SDavid du Colombier	echo
49*4246b616SDavid du Colombier}
50