X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/cdec1be974fb9a041d75d4e363463e58766309b3..94187a80bd60baab4b9c4b949ad820d730578123:/etc/mhn.defaults.sh?ds=sidebyside diff --git a/etc/mhn.defaults.sh b/etc/mhn.defaults.sh index 26e5f910..0253f283 100755 --- a/etc/mhn.defaults.sh +++ b/etc/mhn.defaults.sh @@ -1,4 +1,4 @@ -#!/bin/sh +#! /bin/sh # # mhn.defaults.sh -- create extra profile file for MIME handling # @@ -25,30 +25,29 @@ fi TMP=/tmp/nmh_temp.$$ trap "rm -f $TMP" 0 1 2 3 13 15 -PGM=`$SEARCHPROG "$SEARCHPATH" w3m` -if [ ! -z "$PGM" ]; then - echo 'mhfixmsg-format-text/html: charset=%{charset}; '"\ -$PGM "'-dump ${charset:+-I "$charset"} -O utf-8 -T text/html %F' >> $TMP +if [ ! -z `$SEARCHPROG "$SEARCHPATH" par` ]; then + #### The widths here correspond to those for the text browsers below. + textfmt=' | par 64' + replfmt=" | sed 's/^\(.\)/> \1/; s/^$/>/;' | par 64" +elif [ ! -z `$SEARCHPROG "$SEARCHPATH" fmt` ]; then + textfmt=' | fmt' + replfmt=" | fmt | sed 's/^\(.\)/> \1/; s/^$/>/;'" else - PGM=`$SEARCHPROG "$SEARCHPATH" lynx` - if [ ! -z "$PGM" ]; then - #### lynx indents with 3 spaces, remove them and any trailing spaces. - echo 'mhfixmsg-format-text/html: charset=%{charset}; '"\ -$PGM "'-child -dump -force_html ${charset:+--assume_charset "$charset"} %F | '"\ -expand | sed -e 's/^ //' -e 's/ *$//'" >> $TMP - else - PGM=`$SEARCHPROG "$SEARCHPATH" elinks` - if [ ! -z "$PGM" ]; then - echo "mhfixmsg-format-text/html: $PGM -dump -force-html \ --no-numbering -eval 'set document.browse.margin_width = 0' %F" >> $TMP - fi - fi + textfmt= + replfmt= fi +[ ! -z `$SEARCHPROG "$SEARCHPATH" iconv` ] && + charsetconv=' | iconv -f ${charset:-us-ascii} -t utf-8'"${textfmt}" || + charsetconv= -echo "mhstore-store-text: %m%P.txt" >> $TMP -echo "mhstore-store-text/richtext: %m%P.rt" >> $TMP -echo "mhstore-store-video/mpeg: %m%P.mpg" >> $TMP -echo "mhstore-store-application/PostScript: %m%P.ps" >> $TMP +cat >>"$TMP" <<'EOF' +mhstore-store-text: %m%P.txt +mhstore-store-text/calendar: %m%P.ics +mhstore-store-text/html: %m%P.html +mhstore-store-text/richtext: %m%P.rt +mhstore-store-video/mpeg: %m%P.mpg +mhstore-store-application/PostScript: %m%P.ps +EOF PGM=`$SEARCHPROG "$SEARCHPATH" xwud` if [ ! -z "$PGM" ]; then @@ -128,9 +127,11 @@ fi #### mhbuild-disposition-[/] entries are used by the #### WhatNow attach for deciding whether the Content-Disposition #### should be 'attachment' or 'inline'. Only those values are -#### supported. +#### supported. mhbuild-convert-text/html is defined below. #### -cat <> ${TMP} +cat <>${TMP} +mhbuild-convert-text/calendar: mhical -infile %F -contenttype +mhbuild-convert-text: charset=%{charset}; iconv -f \${charset:-us-ascii} -t utf-8 %F${replfmt} mhbuild-disposition-text/calendar: inline mhbuild-disposition-message/rfc822: inline EOF @@ -180,6 +181,11 @@ else fi fi +echo "mhshow-show-text/calendar: mhical -infile %F" >> $TMP +echo "mhshow-show-application/ics: mhical -infile %F" >> $TMP +echo "mhfixmsg-format-text/calendar: mhical -infile %F" >> $TMP +echo "mhfixmsg-format-application/ics: mhical -infile %F" >> $TMP + PGM=`$SEARCHPROG "$SEARCHPATH" ivs_replay` if [ ! -z "$PGM" ]; then echo "mhshow-show-application/x-ivs: %l$PGM -o %F" >> $TMP @@ -258,6 +264,7 @@ mhshow-suffix-image/jpeg: .jpg mhshow-suffix-image/png: .png mhshow-suffix-image/tiff: .tif mhshow-suffix-image/tiff: .tiff +mhshow-suffix-text: .txt mhshow-suffix-text/calendar: .ics mhshow-suffix-text/css: .css mhshow-suffix-text/html: .html @@ -281,18 +288,37 @@ EOF PGM=`$SEARCHPROG "$SEARCHPATH" w3m` if [ ! -z "$PGM" ]; then echo 'mhshow-show-text/html: charset=%{charset}; '"\ -%l$PGM"' -dump ${charset:+-I "$charset"} -T text/html %F' >> $TMP +%l$PGM"' -dump ${charset:+-I} ${charset:+"$charset"} -T text/html %F' >> $TMP + echo 'mhfixmsg-format-text/html: charset=%{charset}; '"\ +$PGM "'-dump ${charset:+-I} ${charset:+"$charset"} -O utf-8 -T text/html %F' \ + >> $TMP + echo 'mhbuild-convert-text/html: charset=%{charset}; '"\ +$PGM "'-dump ${charset:+-I} ${charset:+"$charset"} -O utf-8 -T text/html %F '"\ +${replfmt}" >> $TMP else PGM=`$SEARCHPROG "$SEARCHPATH" lynx` if [ ! -z "$PGM" ]; then echo 'mhshow-show-text/html: charset=%{charset}; '"\ -%l$PGM"' -child -dump -force-html ${charset:+--assume_charset "$charset"} %F' >> $TMP +%l$PGM"' -child -dump -force-html ${charset:+--assume_charset} ${charset:+"$charset"} %F' >> $TMP + #### lynx indents with 3 spaces, remove them and any trailing spaces. + echo 'mhfixmsg-format-text/html: charset=%{charset}; '"\ +$PGM "'-child -dump -force_html ${charset:+--assume_charset} ${charset:+"$charset"} %F | '"\ +expand | sed -e 's/^ //' -e 's/ *$//'" >> $TMP + echo 'mhbuild-convert-text/html: charset=%{charset}; '"\ +$PGM "'-child -dump -force_html ${charset:+--assume_charset} ${charset:+"$charset"} '"\ +%F${replfmt}" >> $TMP else - PGM=`$SEARCHPROG "$SEARCHPATH" elinks` - if [ ! -z "$PGM" ]; then - echo "mhshow-show-text/html: $PGM -dump -force-html \ + PGM=`$SEARCHPROG "$SEARCHPATH" elinks` + if [ ! -z "$PGM" ]; then + echo "mhshow-show-text/html: %l$PGM -dump -force-html \ -eval 'set document.browse.margin_width = 0' %F" >> $TMP - fi + echo "mhfixmsg-format-text/html: $PGM -dump -force-html \ +-no-numbering -eval 'set document.browse.margin_width = 0' %F" >> $TMP + echo "mhbuild-convert-text/html: $PGM -dump -force-html \ +-no-numbering -eval 'set document.browse.margin_width = 0' %F${replfmt}" >> $TMP + else + echo 'mhbuild-convert-text/html: cat %F' >> $TMP + fi fi fi @@ -326,8 +352,11 @@ case "`uname`" in ;; esac -# output a sorted version of the file -sort < $TMP +# Output a sorted version of the file, along with some comments in +# appropriate places. +echo '#: This file was generated by mhn.defaults.sh.' +sort < $TMP | \ + sed -e 's|^\(mhshow-show-application/ics:.*\)|#: might need -notextonly -noinlineonly or -part/-type to show application/ics parts\n\1|' exit 0