#!/bin/sh

case "$1" in 
*.[Zz][Ii][Pp]|*.[Ee][Xx][Ee]) exec /loc/share/lib/netscape/textview "$1";;
*****.[Pp][Ss]|*.[Ee][Pp][Ss]) exec gv "$1";;
****************.[Pp][Dd][Ff]) exec /loc/share/lib/netscape/pdfviewer "$1";;
****************.[Xx][Ll][Ss]) exec /loc/share/lib/netscape/applixview "$1";;
****************.[Uu][Rr][Ll]) exec /loc/share/lib/netscape/textview "$1";;
****************.[Jj][Pp][Gg]) exec /mmach/bin/netscape "$1";;
****************.[Gg][Ii][Ff]) exec /mmach/bin/netscape "$1";;
"") exit;;
esac

trap "exec rm -rf $1.txt $1.html /tmp/`basename $1`?*" 0 1 2 3 15

utf8decode='s/utf-8/iSo-8859-1/i;$format="&#%d;";
s/([\xC0-\xDF])([\x80-\xBF])/sprintf($format,
unpack("c",$1)<<6&0x07C0|unpack("c",$2)&0x003F)/ge;
s/([\xE0-\xEF])([\x80-\xBF])([\x80-\xBF])/sprintf($format,
unpack("c",$1)<<12&0xF000|unpack("c",$2)<<6&0x0FC0|unpack("c",$3)&0x003F)/ge;
s/([\xF0-\xF7])([\x80-\xBF])([\x80-\xBF])([\x80-\xBF])/sprintf($format,
unpack("c",$1)<<18&0x1C0000|unpack("c",$2)<<12&0x3F000|
unpack("c",$3)<<6&0x0FC0|unpack("c",$4)&0x003F)/ge;'

rtfaccents='s/\\[lr]dblquote\s?/"/g;s/\\[lr]quote\s?/'\''/g;
s/\\u([0-9]+)\r*\\'\''[0-9a-f][0-9a-f]/sprintf("%c",$1)/ge'

PATH=/mmach/bin:/opt/kde/bin:/usr/bin/X11:/usr/bin:/bin:/mach/bin:$PATH
xmessage="xmessage -name worddoc -fn variable -xrm *Command.foreground:blue"

case `$xmessage -print \
    -buttons antiword,applixware,RTF-Ted,wvware,textview,pdf,xv,korr2tkr \
    "$1 ist eine Datei undefinierten Typs,
möglicherweise ein böses Microsoft-Windows-Dokument,
obwohl wir doch viel lieber ISO-Plaintext lesen.

Dafür gibt es leider kein perfektes Darstellungsprogramm, aber das
eine oder andere der folgenden virensicheren Hilfsprogramme kann Dir
vielleicht den in der Datei enthaltenen Text so dechiffrieren,
dass Du ihn Dir mit der Maus in Deinen Editor kopieren oder gar
ausdrucken kannst.

antiword
    anno 2000 das neueste und schnellste MS-Word-*.DOC-Dekoding

applixware
    verdaut etliche ältere Office-Formate und bewahrt Originallayout

RTF-Ted
    editiert nur Microsofts Richtextformat *.RTF

wvware
    die Nachfolgerin von mswordview präsentiert *.DOC

textview
    aus der Plaintextansicht lassen sich oft Textteile ausschneiden

pdf
    PDF-Viewer

xv
    Bildbetrachter für etliche Grafikdateiformate

korr2tkr
    Textextraktion auf dem Tickerserver

Probiere zur Not einfach ein Hilfsprogramm nach dem anderen aus.
Klicke dazu einfach noch mal auf den Link zu diesem Dokument.

Zum Abspeichern der Originaldatei (falls Du sie mit noch einem anderen
Programm bearbeiten möchtest) klicke den Link in Netscape 
zusammen mit gedrückter Umschalttaste [Shift] an oder nimm wget.

Manchmal lohnt es sich auch, Deine unixadmin@taz.de (Telefon 107) auf
bestehende Probleme aufmerksam zu machen. 

Last but not least: Als beste und radikalste Lösung bleibt immer noch,
die unbedarften AutorInnen freundlich zur Verwendung lesbarer
normierter Formate zu bewegen, um sich von Bill Gates zu emanzipieren.

Womit möchtest Du Dir $1
nun ansehen?  Du hast die freie Wahl:"` in

xv)	exec xv "$1";;
pdf*)	exec /loc/share/lib/netscape/pdfviewer "$1";;
t*v*)	exec /loc/share/lib/netscape/textview "$1";;
appl*)	exec /loc/share/lib/netscape/applixview "$1";;
anti*)  antiword "$1" > "$1".txt;
	[ -s "$1".txt ] || exec $0 "$1"; netscape "$1".txt && sleep 360;;
wv*)	cd /tmp || exit
        wvHtml "$1" `basename "$1"`.html;
	perl -pe "$utf8decode" -i "$1".html
	[ -s "$1".html ] || exec $0 "$1"
        netscape /tmp/`basename "$1"`.html && sleep 360
        ;;
RTF*)	exec Ted 1>/dev/console 2>/dev/console "$1";;
*w*v*)	mswordview "$1"; perl -pe "$utf8decode" -i "$1".html
	[ -s "$1".html ] || exec $0 "$1"
        netscape "$1".html && sleep 360;;
*ko*) case "`find $1 -size +200000c -print`" in 
	?*) $xmessage "$1 ist leider zu groß für den Tickerserver!";;
	*) case `$xmessage -print -buttons ja,nein \
		"Ist $1 ein vertrauliches Dokument?"` in 

ja) $xmessage "Dann solltest Du $1 lieber nicht auf den Tickerserver senden!";
	    exec $0 "$1";;

nein) echo "To: worddoc@taz.de
Subject: $1
MIME-Version: 1.0
Content-Type: application/msword
Content-Transfer-Encoding: base64

`mmencode $1`" | /usr/lib/sendmail -t &&
$xmessage "$1 wurde zum worddoc (msd@ticker.taz.de) gesandt..." &&
netscape http://ticker.taz.de/korr/ifra.cgi
esac
esac
esac

# $Id: worddoc,v 1.20 2002-06-21 18:56:34+02 fd Exp fd $
