Mailtext 3.0 (4.3.97) von Olaf Peters Ein MUI Customclass Paket zum Anzeigen von elektronischen Nachrichten *ANMERKUNG*: Mailtext ist GiftWare, wenn Sie es regelmäßig benutzen, sollten Sie ein Geschenk an den *Note Autor:: schicken. Übersicht ********* Was ist Mailtext? Mailtext ist eine Customclass für das Magic User Interface (MUI) von Stefan Stuntz. Sie ist als Ersatz für MUIs Floattext-Klasse gedacht, wenn es darum geht, elektronische Nachrichten (eMail, News) anzuzeigen. In e-Nachrichten findet man oft Worte oder Sätze, die von z.B. '*' oder '_' eingeschlossen sind, wie *fett*, _unterstrichen_. Wenn nun Mailtext statt MUIs Floattext-Klasse benutzt wird, wird der Text, der von diesen Attributzeichen eingeschlossen wurde mit dem entsprechenden Attribut ausgegeben, also wird * *text* fett dargestellt, * /text/ kursiv dargestellt, * _text_ unterstrichen dargestellt, * #text# andersfarbig dargstellt. Die Farbe kann in MUI-Prefs/Mailtext beliebig konfiguriert werden Die Attributersetzung wird eingestellt, wenn Mailtext uu-codierte Dateien, Signaturen, PGP-Signaturen, -Schlüssel oder -Nachrichten erkennt. Aber das ist ist noch längst nicht alles ... Mailtext kann auch zitierte Texte hervorheben - mit verschiedenen Farben für bis zu fünf unterschiedliche Zitatebenen. "Uniformat Resource Locators" (URL), wie sie aus dem World Wide Web bekannt sind, werden von Mailtext erkannt und Sie können eine Aktion einstellen, die immer dann ausgelöst wird, wenn sie auf eine URL doppelklicken. So kann z.B. eine AmigaDOS-Kommando oder ein ARexx-Skript gestartet werden, das die URL an einen Webbrowser weiterleitet. Signaturzeichen, z.B. '-- ', können durch eine horizontale Linie ersetzt werde, so daß die Signatur auch optisch vom eigentlichen Text abgehoben wird. Die meisten Features von Mailtext können von Ihnen *Note konfiguriert: Konfiguration und an Ihre Bedürfnisse angepaßt werden. Copyright ********* Mailtext ist Copyright (C) 1996-1997 by Olaf Peters. Dieses Paket darf kopiert und weitergegeben werden, solange die Copright-Notiz und diese Erlaubnis unverändert auf allen Kopien enthalten ist. Mailtext wird als GiftWare vertrieben, wenn Sie dieses Paket also regelmäßig benutzen, z.B. zum Lesen Ihrer eMail und News mit einem Newsreader, der Mailtext benutzt, dann wäre es nett, wenn Sie dem Autor eine kleine Anerkennung für die Arbeit an Mailtext zukommen lassen. Weder die Programme, noch der Quelltext (oder Teile davon) dürfen ohne eine schriftliche Genehmigung des Autors, Olaf Peters, in kommerziellen Programmen (einschließlich Shareware) benutzt werden. *Keine Garantie* Es wird keine Garantie gegeben, daß die Programme, die in dieser Dokumentation beschrieben werden, 100%ig zuverlässig sind. Sie benutzen diese Programme auf eigene Gefahr. Der Autor kann auf keinen Fall für irgendwelche Schäden verantwortlich gemacht werden, die durch die Anwendung dieses Pakets entstehen. *Weitergabe:* Dieses Paket ist "freely distributable". Es darf auf jedes Medium überspielt werden, das für die Weitergabe von freier Software benutzt wird. Das schließt Public-Domain Serien, CDROMs, FTP Server und Mailboxen ein. Es existiert keine Begrenzung für die Kosten, die für das Medium wie Disketten, Streamerbänder oder CDROMs oder für das Kopieren erhoben werden dürfen. Es muß nur absolut klargestellt sein, daß die Kosten *nicht* für die Software sondern allein für das Medium und das Kopieren erhoben werden. Begrenzungen haben sich in der Vergangenheit immer wieder als absolut sinnlos herausgestellt, da nicht der Preis der Disketten gesenkt wurde, sondern die Software von den Originaldisketten entfernt wurde. Wenn Sie dieses Paket weitergeben wollen, so sollte nur das Originalarchiv dafür benutzt werden. Der Autor kann nicht dafür verantwortlich gemacht werden, wenn die Software durch unsachgemäße Veränderung des Archivs unbrauchbar geworden ist. Wenn der Autor auch keine Einschränkungen für die Kosten der Weitergabe macht, will er wenigstens seine persönliche Meinung zu diesem Aspekt abgeben: * Dieses Softwarepaket sollte jedem frei und möglichst kostenlos zugänglich gemacht werden, sobald dies nur irgendwie möglich ist. * Wenn Sie diese Software über den normalen Weg von einem Public-Domain Versand auf einer Diskette erstanden haben und sie haben mehr als 5,-DM oder $5,-US dafür gezahlt, dann war das definitiv zu teuer. Sie sollten sich dann möglichst schnell nach einer anderen, günstigeren Quelle für Public-Domain Software umsehen. *Benutzungsbeschränkungen:* Kein Teil dieses Softwarepaketes (Programme, Dokumentation, etc.) darf auf einer Maschine benutzt werden, die für folgende Zwecke eingesetzt wird: Für die Forschung, Entwicklung, Konstruktion, Tests und Produktion von Waffen oder sonstigen militärischen Gütern. Das gilt natürlich auch für Maschinen, die für das Training von Personen in irgendeiner der obengenannten Tätigkeiten benutzt werden. Autor ===== Geschenke, Bugreports, Featurerequests etc. pp. sollten an diese Adressen gesendet werden: * Gelbe Post: Olaf Peters Kulmer Str. 7 28237 Bremen Germany * E-Mail: op@hb2.maus.de (keine Nachrichten größer als 16 KB, bitte!) olf@informatik.uni-bremen.de (große Nachrichten bitte an diese Adresse!) * Telefon: +49 421 6918020 * World Wide Web: http://www.biba.uni-bremen.de/users/olf/ * Die Mailtext Homepage: http://home.pages.de/~Mailtext/ Installation ************ Was zur Benutzung des Mailtext Pakets benötigt wird: * mindestens Kickstart und Workbench 2.04 * mindestens MUI 3.6 * NList.mcc, NListview.mcc und NListviews.mcp von Gilles Masson. * Crawling.mcc von Klaus Melchior für Mailtext.mcp (wird nicht unbedingt benötigt, Mailtext.mcp kommt auch ohne aus.) Zur Installation des Pakets sollte das beiliegende Installationsscript benutzt werden, das Ihr System auf die Benutzung von Mailtext vorbereitet. Konfiguration ************* Die meisten Features von Mailtext können auf der Mailtext Seite in MUI-Prefs an Ihre Bedürfnisse angepaßt werden. Alle Elemente dort benutzen MUIs Bubblehelp System, so daß hier nur ein paar wesentliche Anmerkungen zu finden sind. Zeichen-Seite ============= Bei der Konfiguration von Mailtext ist es wichtig zu wissen, was mit den Begriffen "einführendes (Attribut-)zeichen" und "abschließendem (Attribut-)zeichen" gemeint ist. Zur Verdeutlichung dient das folgende Beispiel ('+' sei hierbei eines der Attributzeichen '*', '/', '_' oder '#'): +Text+ ^ ^ | | | +- das abschließende Attributzeichen | +- das einführende Attributzeichen Wenn Sie das im Hinterkopf behalten, sollte es recht einfach sein, Mailtext an Ihre Bedürfnisse anzupassen. Abstände-Seite ============== Mit dem Zitatabstand kann Mailtexts Erkennung von zitierten Textpassagen eingestellt werden. Das kann bei mehreren Zitatebenen recht knifflig werden, schauen Sie sich also bitte folgendes Beispiel an: XYZ> ABC> Zitierter Text ^ ^ 123412345 Mit einem Zitatabstand <= 3 würde der Text nicht als Zitat markiert, da das erste Zitatzeichen an vierter Stelle in der Zeile auftaucht. Mit einem Zitatabstand von 4 würde der gesamte Text mit der Farbe für Ebene 1 markiert, die zweite Zitatebene würde nicht erkannt. Mit einem Zitatabstand >= 5 würde auch die zweite Zitatebene erkannt, da das zweite Zitatzeichen das fünfte Zeichen hinter dem ersten Zitatzeichen ist. Zu kompliziert? Och nööö ... ;-) URLs-Seite ========== Die URL Aktion ist ein normale AmigaDOS-Kommando wie es z.B. in einem Shellfenster eingegeben wird. ARexx-Skripte müssen daher mit dem 'rx' Kommando gestartet werden. Das erste Vorkommen von `%s' in dem URL Aktionskommando wird durch die URL ersetzt, auf die doppeltgeklickt wurde. Mailtext erkennt die folgenden URL-Typen, wie sie in RFC 1738 definiert werden: `file://' - Host-spezifische Dateinamen `ftp://' - File Transfer Protokoll `gopher://' - Das Gopher Protokoll `http://' - Hypertext Transfer Protocol (World Wide Web) `mailto:' - e-Mail Adresse `news:' - USENET News `nntp://' - USENET News unter Benutzung von NNTP Zugriff `prospero://' - Prospero Directory Service `telnet://' - Referenz auf interaktive Sitzung `wais://' - Wide Area Information Servers Es ist jedoch nicht möglich für jeden dieser URL-Typen eine eigenes Aktionskommando einzustellen; das sollte von einem geeigneten ARexx-Skript erledigt werden. Häufig gestellte Fragen *********************** `Frage': Ich habe in MUI-Prefs/Mailtext auf der `Sonstiges'-Seite "Signatur abteilen" (Separate Signatures) ausgewählt, aber das scheint nicht zu funktionieren. Warum? `Antwort': Höchstwahrscheinlich sind die Signaturtrenner '-- ', '--' oder '---' im "Ausschalten"-Muster (siehe `Muster'-Seite) enthalten. Entfernen Sie sie aus dem Muster, so wird auch das Abteilen der Signatur funktionieren. In Mailtext Versionen vor 3.0 waren die Signaturtrenner '-- ' und '---' per Vorgabe im "Ausschalten"-Muster enthalten. `* * *' `Frage': Mehrfachattribute, z.B. _*/Dies hier/*_, scheinen nicht zu funktionieren. Warum? `Antwort': Ich tippe mal, daß Sie (wieder) eine Mailtext Version vor 3.0 benutzt haben? Sie sollten die Zeichen *_#/ bei den Leerzeichen ("Whitespace") und abschließenden Zeichen ("Terminating") einfügen und aus den nicht einführenden Zeichen ("Nonintroducing") entfernen (siehe `Zeichen'-Seite in MUI-Prefs/Mailtext). `* * *' `Frage': Wenn der Mauszeiger über dem Mailtext-Objekt steht kann ich nicht mehr auf die Menüshortcuts der Anwendunge zugreifen. Wenn ich die Maus dann aus dem Bereich des Mailtext-Objekts bewege geht's wieder. Was ist das? `Antwort': Das ist ein MUI Problem/Feature. Wenn ein Objekt ein Kontextmenü besitzt und der Mauszeiger über diesem Objekt steht kann nicht auf das Menü der Anwendung zugegriffen werden. Vielleicht wird das mit einem zukünftigen MUI mal möglich sein, MUI 3.8 - das gerade aktuell ist, als dieser Text geschrieben wird - zeigt immer noch dieses Verhalten. Das ist übrigens auch der Grund, warum Mailtexts Kontextmenü in MUI-Prefs/Mailtext auf der `Sonstiges'-Seite ausgeschaltet werden kann. Entwickler ********** Wenn Sie in Betracht ziehen, Mailtext in einem Ihrer eigenen Programme zu benutzen, lesen Sie bitte zunächst die *Note Copyright::-Notiz. Ich würde es sehr begrüßen, wenn sie Mailtext in Ihren eigenen Projekten verwenden würden, die benötigten Headerdateien für C, Oberon und Modula-2 sind jedoch *nur* auf Nachfrage erhältlich, da ich schon gerne wissen möchte, welche Anwendungen diese Klasse benutzen. Um das Entwicklerpaket zu erhalten, sollten Sie sich das Kapitel *Note Autor:: ansehen, um zu sehen auf welchen Wegen ich erreicht werden kann. Anwendungen *********** Die folgenden öffentlich verfügbaren Anwendungen benutzen zur Zeit Mailtext: `IntuiNews v1.4a' von Matthias Scheler und Markus Stipp (Freeware). Ein Newsreader für das Universal Message System (UMS). Erhältlich auf Aminet in comm/ums. `GoodNews v1.5' von Jean-Marc Xiume' und Jerome Fleury (Freeware). Ein weiterer Newsreader für das Universal Message System (UMS). GoodNews basiert auf den Quelltexten von IntuiNews v1.4. Erhältlich auf Aminet in comm/ums. `MUIReaderX v0.45' von Robin Vermaat (Freeware). Ein Offlinereader für Xenolink BBS Systeme. MUIReaderX ist eine grafische Benutzungsoberfläche für Xenolinks Messagebase und ist vergleichbar mit Programmen wie Spot und Foozle. Erhältlich auf Aminet in comm/xeno. Ein aktuelle Liste von Mailtextanwendungen befindet sich auf der Mailtext Homepage http://home.pages.de/~Mailtext/. Sollten Sie auch Ihre Anwendung gerne in dieser Liste sehen, so schreiben sie doch dem *Note Autor::, Olaf Peters, eine kurze Nachricht und erzählen ihm von Ihrer Anwendung. Danke ***** Der Autor möchte den folgenden Personen danken: `Stefan Stuntz' für das wundervolle "Magic User Interface" (*Note MUI::). `Gilles Masson' für NList.mcc, NListview.mcc und NListviews.mcp, weil diese Klassen erst die vielen neuen Features in v3.0 möglich machten. `Kai Hofmann' für das tolle MCC-Install Installerskript und MCCLib.c. `Matthias Scheler' für die Bugreports und dafür, daß er Mailtext sofort in IntuiNews, einem klasse Newsreader für das Universal Message System (UMS), eingebaut hat. `Klaus 'kmel' Melchior' für die Hilfe mit MUI Customclasses und Crawling.mcc. `Andreas Baum' für die Inspirationen und das Jagen von Bugs! `Frank Duerring' für das Oberon Interface `Ole Friis' für die dänische Katalogübersetzung für Mailtext v1.0 und die Bugreports `Allen, die an der Übersetzung von Mailtext beteiligt waren:' *Mailtext v1.0 Übersetzer* Peter Eriksson (Schwedisch), Francis Labrie (Französisch), Paolo Menichetti (Italienisch), Petter E. Stokke (Norwegisch). *ATO Übersetzer* Daniel Widerström (Schwedisch), Francis Labrie (Französisch), Frederico Borges (Portugiesisch), Lars Svoldgaard (Dänisch), Ljubomir Jankovic (Serbisch), Marcin Orlowski (Polnisch), Marko Honkanen (Finnisch), Pascal Eeftinck (Holländisch), Simone Polacci (Italienisch) und Vit Sindlar (Tschechisch). *ATO Korrektoren* Alexandre Gabriel (Portugiesisch), Carsten Stach (Deutsch), Ciro Scognamiglio (Italienisch), Fredrik Rambris (Schwedisch), Jérôme Fleury (Französisch), Leon Woestenberg (Holländisch), Martin Clausen (Dänisch), Mika Lundell (Finnisch) und Radim Demel (Tschechisch). *ATO Projektkoordinator* Mika Lundell `alle registrierten Mailtext-Entwickler,' z.Z. Bodo Schulz, David Rydh, Jason Weber, Jerome Fleury, Johnny Tevessen, Klaus Melchior, Magnus Heino, Marcel Beck, Mathias Mischler, Michael Leun, Petter E. Stokke, Robin Vermaat, Thorsten Stocksmeier, Timo Jakob, Troels Walsted Hansen für ihr Interesse an diesem Paket. `alle anderen Betatester' Geschichte ********** Och nöö, die übersetze ich nicht auch noch ;-) Mailtext v1.0 (5.6.96) ====================== Mailtext.mcc v10.196, Mailtext.mcp v14.2 * first public release. Mailtext v2.0 (2.11.96) ======================= Mailtext.mcc v17.41, Mailtext.mcp v17.28 * ported Mailtext from Modula-2 to C: - Mailtext now completely complies with the guidelines for MUI Custom Classes - now needs MUI 3.6, support for older MUI versions has been dropped. - the classes are app. 50% smaller. - compiled with SAS/C 6.56. * API did *not* change. No need to request a new developer package. Mailtext v2.1 (10.11.96) ======================== Mailtext.mcc v17.58, Mailtext.mcp v17.40 * when attribute parsing has been disabled (by matching the disable pattern), no text was copied at all, resulting in i.e. lost signatures. * now using MCC-Install 43.4 * compiled with SAS/C 6.57 * polish catalog, thanks to Marcin Orlowski Mailtext v2.2 (19.11.96) ======================== Mailtext.mcc v17.71, Mailtext.mcp v17.55 * should handle i.e. Unix paths (i.e. /home/users/olf/) in messages a little smarter now. With previous versions, that example would have been printed in italics, now no attribute will be set. * switched from mccheader.c to MCCLib.c (thanks to Kai Hofmann, great work!) * version for MC68020 (and above) included. * fixed some bugs in Mailtext.mcp that could occur in low-memory situations. Mailtext v3.0 (4.3.97) ====================== Mailtext.mcc v18.12, Mailtext.mcp v18.4 * Mailtext is now derived from NList.mcc, so it takes advantage of some neat features of NList, making the new features below possible. Thanks to Gilles Masson for the NList package! * It is now possible to mark text with the mouse and copy it to the clipboard (NList feature). * Each mailtext object can now have a contextmenu with the following entries: - copy selected text to clipboard. - display the raw text instead of the processed. - switch wordwrapping * Colors can now be configured for up to 5 different levels of quoted text and also for the '#' attribute. * Multiple attributes (like i.e. _*/Text/*_) are supported correctly now. Therefore, you have to add the characters *_#/ to the whitespace- and terminating-chars and remove them from the nonintroducing-chars. * URLs may be highlighted. It is also possible to configure an action -- i.e. start a webbrowser -- that will be triggered when an URL in the text is doubleclicked. Mailtext recognizes all URL types specified in RFC 1738 "Uniform Resource Locators", Section 3. * signature marks ('--', '-- ' and '---') will now optionally be replaced by a horizontal line. * Wordwrapping for long lines can optionally be switched off: if the Mailtext object is contained in an NListview, a horizontal scrollbar will be display instead. With MUI's Listview this is of course not possible. * Removed '-- ' and '--- ' from the default disable pattern, so you will see i.e. URLs in signatures and enable the signature separation feature. * The state of the checkmarks in the .mcp was not saved correctly. Fixed. * some bugfixes. * API changes (refer to Autodoc): - the behaviour of MUIA_Mailtext_IncPercent changed slightly. - new: MUIA_Mailtext_ActionURL [..G] - new: MUIA_Mailtext_DisplayRaw [.SG] - new: MUIA_Mailtext_ForbidContextMenu [I..] - new: MUIA_Mailtext_Wordwrap [.SG] Zukunft ******* Die folgenden Features stehen auf meiner "ToDo"-Liste für Mailtext, obwohl es natürlich keine Garantie dafür gibt, daß sie je eingebaut werden. Aber es gibt da wohl ein kleines Hintertürchen, um den Autor zu beeinflußen *Note Giftware: Copyright :-) * Text, der uu-kodierte Daten enthält, wird durch ein einstellbares Bild ersetzt und nach Möglichkeit auf dekodiert. * Textsuche. * Doppelklicks auf e-Mail Adressen (ohne mailto:) erkennen und eine Aktion auslösen, genau wie bei URLs. Sollten Ihnen noch ein paar Features einfallen, die Sie gerne in Mailtext eingebaut sehen möchten, so zögern Sie bitte nicht, mit dem Autor Kontakt aufzunehmen. MUI *** This application uses MUI - MagicUserInterface (c) Copyright 1993-97 by Stefan Stuntz MUI is a system to generate and maintain graphical user interfaces. With the aid of a preferences program, the user of an application has the ability to customize the outfit according to his personal taste. MUI is distributed as shareware. To obtain a complete package containing lots of examples and more information about registration please look for a file called "muiXXusr.lha" (XX means the latest version number) on your local bulletin boards or on public domain disks. If you want to register directly, feel free to send DM 30.- or US$ 20.- to Stefan Stuntz Eduard-Spranger-Straße 7 80935 München GERMANY Concept index ************* * Menu: * Übersicht: Übersicht. * abschließendes Zeichen: Zeichen-Seite. * Abstände-Seite: Konfiguration. * Abstand, Zitat-: Abstände-Seite. * Addresse: Autor. * AmigaDOS Kommando: URLs-Seite. * ARexx: URLs-Seite. * Autor: Autor. * Bugreports: Autor. * Copyright: Copyright. * Danke: Danke. * einführendes Zeichen: Zeichen-Seite. * eMail: Autor. * Entwickler: Entwickler. * Entwicklugsgeschichte: Geschichte. * FAQ: FAQ. * Geschichte: Geschichte. * GoodNews: Anwendungen. * Installation: Installation. * IntuiNews: Anwendungen. * Kommando, AmigaDOS: URLs-Seite. * Kommando, URL-Aktion: URLs-Seite. * Konfiguration: Konfiguration. * Kontextmenü: FAQ. * MagicUserInterface: MUI. * Mail: Autor. * Mauszeiger: FAQ. * Mehrfachattribute: FAQ. * MUI: MUI. * MUIReaderX: Anwendungen. * Signaturen: FAQ. * Systemvoraussetzungen: Installation. * URL Aktionskommando: URLs-Seite. * URLs-Seite: Konfiguration. * v1.0: Mailtext v1.0. * v2.0: Mailtext v2.0. * v2.1: Mailtext v2.1. * v2.2: Mailtext v2.2. * v3.0: Mailtext v3.0. * World Wide Web: URLs-Seite. * WorldWideWeb: Autor. * WWW: Autor. * WWW: URLs-Seite. * Zeichen, abschließendes: Zeichen-Seite. * Zeichen, einführendes: Zeichen-Seite. * Zeichen-Seite: Konfiguration. * Zitatabstand: Abstände-Seite. * Zitatebenen: Abstände-Seite. * Zukunft: Zukunft.