Neu: AutoActions EndAction KorrNews von Thomas G. Liesner

KorrNews V4.11, Stand 8.12.2001
© Thomas G. Liesner


( Homepage ) , ( Download V4.11 ) ,
( Erläuterungen zur Header.def ) ( Korrnews-Historie )

Inhaltsverzeichnis

  1. Allgemeines
  2. Anwendung
  3. Konfiguration / Allgemeines
    1. HTML-Hilfe
    2. Assistent
    3. Default-Zeichensatz-Einstellungen (incl. Einführung in die Zeichensatzproblematik)
    4. "Box-Quotes" konfigurieren
    5. Fußnoten-Automatik konfigurieren
    6. One-Liner & Reformat konfigurieren
  4. Konfiguration / Einzelabschnitt
    1. Grundeinstellungen
    2. Zeichensätze
    3. Kodierungen
      1. Einleitung
      2. Konvertierung zwischen 8-Bit, Base64, QP...
      3. HTML in Text konvertieren
      4. Attachments extrahieren
      5. Überflüssige Leerzeichen und Leerzeilen
    4. Header-Korrekturen
      1. Bzgl. aller Headerzeilen (Header I)
      2. Subject-Header (Header I)
      3. From- und Reply-To-Header (Header I)
      4. Lines-Header (Header I)
      5. Date-Header (Header II)
      6. References-Header (Header II)
      7. Header-Reihenfolge (Header II)
      8. X-Headerzeilen setzen/löschen (Header II)
      9. Copy-Fups-Korrektur (Header III)
      10. Hamster-Mails (Header III)
    5. Body-Korrekturen
      1. Body-Header (Body I)
      2. Signatur (Body I)
      3. Einrückungen (Body II)
    6. Sonderfunktionen
      1. Fußnoten-Automatik
      2. manuelle "Reformats" und "Oneliner"
      3. Boxquotes
      4. OE-Kamm-Quoting-Reparatur
      5. Sonstiges
    7. Header.def
    8. Reihenfolge der diversen technischen Korrekturen
  5. Hinweise zu diversen Newsreadern
    1. Einleitung
    2. Forte Agent
    3. Forte Free Agent
    4. Outlook Express & MS News
    5. Netscapes Mozilla
    6. Anaware Gravity
    7. XNews
    8. Lotus Notes
  6. Support für Korrnews & Co

1. Allgemeines

Dieses Programm erlaubt zum einen, diverse Macken bestehender Newsreader/Mailreader zu umgehen und zum anderen, diverse Komfortfunktionen nachzurüsten. Dies wird dadurch erreicht, daß Korrnews nach dem Verschicken im News/Mailreader, aber vor dem wirklichen Versenden mit dem lokalen Newsserver aufgerufen wird und die als plain Text vorliegenden Dateien anhand seiner Einstellungen überarbeitet.

Korrnews ist für die Zusammenarbeit mit dem Hamster entwickelt worden, es spricht allerdings nichts dagegen, auch einen anderen Server einzusetzen, sofern die entsprechenden Randbedingungen passen. Zur Zeit sollte es ohne Änderungsaufwand mit Morver funktionieren und auch mit Crosspoint sollte es in der aktuellen Version zusammenarbeiten können.

Der "Lieferumfang" enthält folgende Dateien:

(Zum Inhaltsverzeichnis)


2. Anwendung

Anwendung direkt "im" Hamster:

Sofern eine aktuelle Hamsterversion wie 22.0 oder höher eingesetzt wird, kann mittels Assistent der Aufruf dauerhaft so eingerichtet werden, daß jedes Posting und jede ausgehende Mail automatisch nachbearbeitet werden. Die im folgenden gezeigten Skripte sind dann nicht mehr nötig.

Anwendung z.B. innerhalb eines Hamster-Skripts:

Neue Sprachversion, kurzes Skript:
 #!hs2
 Execute ( "KorrNews.exe Mails News", "", 1, true )
 HamRasDial( "..." )
 HamMailExchange
 HamNewsPost
 HamNewsPull
 HamWaitIdle
 HamRasHangUp
 quit
Neue Sprachversion, langes Skript:
 #!hs2
 #!debug 1
 debug(1, "Warten")
 HamWaitIdle
 debug(1, "Funktionen deaktivieren")
 HamMessage ( 2, 0 ) # Reset Counter       
 HamMessage ( 5, 0 ) # Stop SMTP-Server  
 HamMessage ( 3, 0 ) # Stop NNTP-Server
 debug(1, "Korrnews starten")
 Execute ( "KorrNews.exe Mails News", "", 1, true )
 debug(1, "Verbindung herstellen")
 HamRasDial( "..." )
 debug(1, "Die Arbeit beginnt...")
 HamSendmail  ( ... )
 HamFetchmail ( ... )
 ...
 HamNewsPost
 HamNewsPull
 HamWaitIdle
 HamRasHangUp
 Execute ( "mixgroup.exe", "", 1, true )
 Execute ( "CopyFups.exe", "", 1, true )
 HamMessage ( 5, 1 ) # Restart SMTP-Server  
 HamMessage ( 3, 1 ) # Restart NNTP-Server
 print( "Fertig!" )
 quit
Mixgroup und CopyFups sind zusätzliche Tools von mir, die optional sind oder auch durch CopyIf komplett ersetzbar sind.

Um den Korrnews-Aufruf in diesen Skripten so direkt nutzen zu können, sind folgende Einstellungen nötig: Korrnews muß im Hamsterverzeichnis liegen, die Header.def auch, eventuell verwendete Sig-Dateien ebenfalls. Normalerweise sollte Korrnews beim ersten Starten Message-Path korrekt anpassen, ansonsten muss dies ggf. nachgeholt werden - für Mail ist im Hamster der Pfad "Mails\Mail.out" relevant, für News der Pfad "Groups\News.out".

Alle sonstigen Optionen müssen bei Bedarf für News und Mail separat eingestellt werden. Möchte man für Mail und News verschiedene "Header.def"s, kann man dies ebenfalls in der Konfiguration einstellen.

Die Konfiguration erreicht man sehr einfach: Sobald Korrnews ohne Parameter gestartet wird, kommt man direkt in den Konfigurationsdialog.

(Zum Inhaltsverzeichnis)


3. Konfiguration / Allgemeines

Die Konfiguration erreichen Sie durch Starten von Korrnews ohne Parameter. Links sehen sie die Liste der Abschnitte, rechts die konkreten Einstellungen. Die erste Zeile in der Liste enthält die allgemeine Konfiguration.

Die allgemeine Konfiguration regelt die Dinge, die für alle spezifischen Abschnitte gemeinsam gelten sollen. Beim Starten von Korrnews steht der Auswahlbalken automatisch auf der allgemeinen Konfiguration. Die einzelnen Einstellungen sind durch die Buttons rechts erreichbar.


3.1. HTML-Hilfe

ruft diese Hilfe auf.

3.2. Assistent

Der Assistent soll bestimmte Vorgänge etwas vereinfachen, zur Zeit sind folgende Funktionen im Assistent verfügbar:

Im Hamster automatisch aufrufen: Wie weiter oben erwähnt, ist der Hamster in seiner aktuellen Fassung in der Lage, über sogenannte "Actions" schon beim direkten Empfang von Mails oder News Korrnews aufzurufen. Die Konfiguration dieser Actions kann mittels dieser Schaltfläche incl. Einrichtung der entsprechenden Abschnitte auf einen Schlag erledigt werden.

Spezifische Funktionen für Outlook Express aktivieren: Eine Vereinfachung für OE-Nutzer, die keine Lust haben, sich die Optionen einzeln durchzuschauen, der Hinttext erläutert, was exakt aktiviert wird.


3.3. Default-Zeichensatz-Einstellungen

Zuerst einmal ein kurzer Exkurs zur Bedeutung der Zeichensätze:

Unter Windows wird üblicherweise mit dem Zeichensatz Windows-1252 gearbeitet bzw. zumindest unter NT intern mit Unicode. Der Unterschied besteht darin, daß Windows-1252 maximal 255 verschiedene Zeichen beinhalten kann (pro Zeichen ein Byte), wobei die Hälfte bereits durch die ASCII-Zeichen vorgefüllt sind. Unicode erlaubt dagegen bis zu 65535 (UCS-2) oder bis zu 65536*65536 Zeichen (UCS-4) zu unterscheiden. Sinn macht dies zum einen in asiatischen Sprachen mit sehr vielen Wort-/Silbensymbolen oder zum anderen beim Mischen verschiedener Sprachen. Innerhalb von Westeuropa kommt man mit einem deutlich geringeren Zeichenvorrat aus.

Im Usenet ist eigentlich alles per Default alles ascii, was u.a. keine Umlaute, Währungszeichen u.a. erlaubt. Dank MIME kann aber der Zeichensatz angegeben werden, in dem das Posting erstellt wurde, so daß diese Beschränkung umgangen werden kann. Zumindest in de.ALL üblich ist ISO-8859-1, welcher weitgehend dem Windows-Zeichensatz entspricht, aber u.a. typographische Anführungsstriche und den Euro vermissen läßt. Für letzteren gibt es ISO-8859-15, welcher weitgehend ISO-8859-1 entspricht, aber u.a. auch den Euro enthält. Darüberhinaus gibt es noch Zeichensätze für Russisch, für diverse asiatische Sprachen, für skandinavische Sprachen etc pp. Der Oberbegriff ist praktisch Unicode, der alle Zeichen aller spezifischen Zeichensätze umfasst.

Damit Korrnews z.B. beim Einfügen einer Signatur oder ähnlichem korrekt arbeiten kann, unterstützt es ab V4.0 diese Zeichensatzdeklarationen automatisch, auf dieser Seite finden sich die passenden Grundeinstellungen. Korrnews hat dabei defacto folgende Einschränkungen: UCS-4 wird nicht unterstützt, dies dürfte recht selten praxisrelevante Probleme geben, desweiteren beachtet es keine Multi-Byte-Zeichensätze und bei Zeichensätzen, die nicht explizit unterstützt werden, kann keine Garantie für die Ergebnisse im Sonderzeichenbereich gegeben werden. Zumindest die im deutschen und US-Usenet üblichen Zeichensätze dürften aber komplett abgedeckt werden.

Der interne Zeichensatz bezieht sich auf alle Texte innerhalb von Skripten, Signaturdateien etc und sollte nicht grundlos geändert werden - ob diese Einstellung an allen relevanten Stellen im Programmcode schon beachtet wird kann ich zur Zeit auch noch nicht garantieren.

Die folgenden beiden Einstellungen beziehen sich auf die Zeichensätze, auf die KN zurückgreifen darf. Die Headereinstellung bezieht sich auf die Kodierung von Sonderzeichen im Header (Subject, From etc) mittels =?ISO?Zeichensatz?Q?.....?= und die Bodyeinstellung für den im normalen Text verwendeten Zeichensatz.

Sollten die Zeichensatzzusammenstellungen nicht gefallen, kann man die charset.dat entsprechend anpassen. Eine optimale Einstellung gibt es nicht, da jeder Zeichensatz oberhalb von ascii von irgendjemanden als störend betrachtet wird:

  1. ISO-8859-1: Zumindest Amerikaner empfinden Umlaute z.T. schon als störend, innerhalb Westeuropas dürfte man aber damit nicht anecken und die einzig sinnvolle Vermeidung ist das Weglassen aller Sonderzeichen.
  2. ISO-8859-15: Dieser Zeichensatz unterstützt zwar den Euro, aber zum einen hat nicht jeder einen Zeichensatz mit Eurosymbol aktiviert/installiert, zum anderen ist die Unterstützung bei diversen Newsreader noch nicht gegeben, selbst wenn sie prinzipiell mit ANSI umgehen können. Beispiele: Netscapes Mozilla (zumindest in der 4.7x) oder Gnus/Emacs in (älteren?) Versionen. Bei Nicht-MIME-fähigen Newsreadern a la Gravity oder Forte Free Agent oder XNews kommt das internationale Währungszeichen (auch anfliegende Rakete genannt) raus. Falls diese Einschränkungen stören, kann man auch einfach Euro ausschreiben.
  3. Western-1252/cp1252: Der Windows-Zeichensatz ist zwar genauso normiert wie ISO-8859-15, aber speziell Linux-Eiferer reagieren recht allergisch auf diesen Zeichensatz. Für Nicht-MIME-fähige Newsreader unter Windows ist er natürlich das Optimum.
  4. utf-7/utf-8: Theoretisch das Optimum, rein praktisch haben damit noch viele Newsreader Probleme, vor allem ist die Lesbarkeit bei Nichtkodierung grauenvoll. Speziell utf-7 kodiert auch einige "normale" Zeichen wie ">" oder "=", so daß man im Bedarfsfall eher utf-8 nehmen sollte, welches bei 8-Bit-Kodierung aber zumindest theoretisch von Mailgateways oder anderen nicht 8-Bit-festen Streckenpunkten geshreddert werden kann.
Langer Rede kurzer Sinn: Sofern die "normalen" Zeichensätze nicht reichen, muß entweder auf Western-1252 oder Unicode ausgewichen werden, welches man in dem Fall bevorzugt, muß jeder für sich selbst ausmachen, der Default-Wert ist dabei im Endeffekt willkürlich gewählt.

(Specials.ini, Abschnitt [Charsets], Einstellungen "Internal", "DefBody" und "DefHeader")


3.4. "Box-Quotes" konfigurieren

Boxquotes sind eine spezielle Art von Zitaten, welche zur Hervorhebung oder für externe Zitate gedacht sind und aus dem Linux-Newsreader-Raum stammen. In Korrnews sind bis zu neun verschiedene Boxquote-Konfigurationen möglich, die Details kann der Nutzer über den hierüber erreichbaren Dialog einstellen.

Im Dialog sind die Zeilen einstellbar, die für Korrnews die konkrete Erkennung erlauben, diese Zeilen müssen bei der Benutzung exakt incl. Klein/Großschreibung der Einstellung entsprechen. Ob der zitierte Text aus einer externen Datei stammen soll oder im Text selber auftaucht, wird in der jeweiligen Boxquote-Definition eingestellt. Die Erläuterung der weiteren Optionen kann ich mir dank der integrierten Vorschau hier wohl ersparen.

Die Verwendung von Boxquotes sieht dann so aus: Wenn man für den entsprechenden spezifischen Abschnitt die Verwendung von Boxquotes gestattet hat, muß man im Falle von Datei-Boxquotes nur die definierte Anfangszeile gefolgt vom Dateinamen in eine einzelne Zeile schreiben, im anderen Fall muß die Anfangszeile als Einzelzeile im Posting stehen, in der nächsten Zeile kann dann ggf. die Überschrift kommen (und in der darauffolgenden Zeile dann natürlich der eingestellte Trenner Titel/Text) und anschliessend der eigentliche Text, der irgendwann mal mit der eingestellten Endzeile abgeschlossen werden muss. Die Umsetzung erfolgt dann, sobald Korrnews den Artikel zum Bearbeiten erhält.

(Boxquotes.ini, Abschnitt [BQ#Nummer], Einstellungen "BQType", "BQStartLine", "BQSepLine", "BQEndLine", "BQGraphics", "BQTitleLeft", "BQTitleRight", "BQTitle", "BQFrom", "BQWidth", "BQWidthTop", "BQWidthDown", "BQTopLeft", "BQTopRight", "BQLeft", "BQRight", "BQBottomLeft", "BQBottomRight")


3.5. Fußnoten konfigurieren

Fußnoten dienen dazu, URLs oder Zusatzerläuterungen, welche den gerade getippten Satz zu sehr aufblähen würden, am Ende des Postings gesammelt aufführen zu können.

Im Dialog sind folgende Einstellungen nötig: Die Anfangs- und Endkennung, die gewünschte Zeilenbreite und ggf. der Platzhalter für Zeilenumbrüche (sofern er leer ist, sind innerhalb von Fußnoten eben keine Zeilenumbrüche möglich). Für die Darstellung kann noch entschieden werden, ob die Fußnoten ober- oder (IMHO sinnvoller) unterhalb der "Lines" kommen sollen, ob eine Überschrift gewünscht ist, ob und wenn mit welchem Zeichen sie unterstrichen werden soll und ob danach noch eine Leerzeile gewünscht ist.

Die Anwendung sieht dann so aus: Wenn man für den entsprechenden spezifischen Abschnitt die Verwendung von Fußnoten gestattet hat, und man als Anfangskennung beispielsweise "(FN:" und als Endkennung "#)" eingetragen hat, kann man im Text z.B. folgendes schreiben:

  Um Hamster(FN: einen lokalen News/Mailserver für Windows#) voll 
  auszureizen, sind die Tools Korrnews(FN: http://home.knuut.de/tgl///(Da
  gibt's auch den Hamster selber)#) 
  und CopyIf(FN: ebenfalls auf TGLs(FN: aka "Thomas G. Liesner"#) 
  Homepage zu finden#) sehr zu empfehlen.
  Bei Nutzung von OE kann man dann sogar weitgehend RFC-konforme Postings 
  erzeugen.
  
  Bye, Marcus
Als Ergebnis wird sowas wie folgendes herauskommen:
  Um Hamster[1] voll auszureizen, sind die Tools Korrnews[2] und CopyIf[3] 
  sehr zu empfehlen.
  Bei Nutzung von OE kann man dann sogar weitgehend RFC-konforme Postings 
  erzeugen.
  
  Bye, Marcus

  Fußnoten:
  =========
  [1] einen lokalen News/Mailserver für Windows
  [2] http://home.knuut.de/tgl
      (Da gibt's auch den Hamster selber)
  [3] ebenfalls auf TGLs[4] Homepage zu finden
  [4] aka "Thomas G. Liesner"
Einige Fallstricke sind zu beachten: Um einen korrekten Umbruch zu erhalten, empfielt sich ein Leerzeichen nach der Fußnoteneinleitung. Eine Fußnote darf zudem nicht über Absatzgrenzen hinaus gehen, ansonsten würde sie nicht als solche erkannt. Die Absatzerkennung selber dürfte im Normalfall korrekt arbeiten, mit Leerzeilen zwischen den Absätzen kann man Fehlerkennungen noch zuverlässiger verhindern. Außerdem werden Fußnoten nicht in Zitaten ausgeführt.

(Footnote.ini, Abschnitt [Footnotes], Einstellungen "FNTitle", "FNBegin", "FNEnd", "FNWordWrapAfter", "FNPos", "FNUnderline", "FNUnderlineWith", "FNTitleEmptyLine", "FNToCRLF")


3.6. One-Liner & Reformat konfigurieren

Sinn von "Reformat"s:
Diese Funktion ist hauptsächlich für "zerbombte" oder überlange Fremdzitate interessant: Durch Umklammern des gewünschten Absatzes mit einer einstellbaren Einleitung am Anfang und einer einstellbaren Kennung am Ende wird alles in einen langen Satz verpackt und auf die in den Fußnoten eingestellte Zeilenbreite neu umgebrochen. Aus:

 RF:Das ist ein
 Beispiel für einen total kaputten Zeilenumbruch - teilweise viel zu lange Zeilen und
 teilweise
 viel zu kurze.#
wird dann sowas wie:
 Das ist ein Beispiel für einen total kaputten Zeilenumbruch - teilweise 
 viel zu lange Zeilen und teilweise viel zu kurze.
Im Falle eines "reformatierten" Zitates ist noch zu beachten, daß das "RF:" am Zeilenanfang vor dem Zitatzeichen stehen muß und daß Korrnews automatisch alle Zeilen mit der Zitattiefe der ersten Zeile versieht. Beispiel:
 RF:>> Das ist ein Beispiel für einen total kaputten Zeilenumbruch im Zitat - teilweise 
 viel zu 
 >>lange Zeilen und teilweise viel zu kurze.#
wird zu:
 >> Das ist ein Beispiel für einen total kaputten Zeilenumbruch im Zitat
 >> - teilweise viel zu lange Zeilen und teilweise viel zu kurze.

Sinn eines "Oneliner"s:
Diese Funktion hilft z.B., wenn Programme wie XNews auch URLs zwangsumbrechen wollen. Alle Absätze, die mit der eingestellten Kennung beginnen und mit der eingestellten Kennung enden, werden zu einer Zeile vereint. Beispiel:

 OL:http://abc.def.geh/oldtimer/NullAchtFuenfZehn/Treffen_10_10_2010/Gemuesest
 and/Gurkenglas/Inhalt.html#
wird zu:
 http://abc.def.geh/oldtimer/NullAchtFuenfZehn/Treffen_10_10_2010/Gemuesestand/Gurkenglas/Inhalt.html

Die Einstellmöglichkeiten des Dialoges selber dürften selbsterklärend sein. Bei der Wahl der Kennungen sollte man darauf achten, daß diese nicht versehentlich vorkommen können und trotzdem gut merkbar sind.

(Specials.ini, Abschnitt [Oneliner], Einstellungen "Begin" und "End" und Abschnitt [Reformat], Einstellungen "Begin" und "End")


4. Konfiguration / Einzelabschnitt

Wenn ein Einzelabschnitt ausgewählt ist, erscheint rechts ein Karteireiter mit den Optionen des Abschnitts.

Mit dem Button "Neu" oberhalb der Liste erzeugt man einen neuen Abschnitt mit den Defaulteinstellungen, mit "Neue Kopie" dupliziert man die Einstellungen des aktuellen Abschnitts unter einem neuen Namen und mit "Löschen" kann ein Abschnitt wieder gelöscht werden. Neu und Löschen wirken sich jeweils sofort aus, Änderungen an den Einstellungen eines bestehenden Abschnitts werden dagegen erst beim Drücken von "OK" gesichert.

Um die Funktionen auszutesten, empfehlen sich "Trockenübungen": Einfach Korrnews mit Parameter aufrufen und die geänderten msg-Dateien anschauen, das erspart etliche Testpostings.

Der Aufruf von Korrnews selber erzeugt übrigens bis auf ein kurzes Aufblitzen in der Taskleiste keine Reaktion - die Tätigkeit erkennt man somit praktisch nur am Ergebnis, bei Nutzung von Only_KN.exe entfällt sogar dieser Hinweis. Der Beispielheader "X-Korrnews: Used" ist z.B. ein ganz guter Indikator, daß der Aufruf selber geklappt hat. Falls man der Eitelkeit des Autors Genüge tun möchte, kann man gerne in irgendeinem Header einen Verweis auf die Nutzung von Korrnews stehen lassen, dies ist aber natürlich rein freiwillig.


4.1. Grundeinstellungen

MessagePath:
erlaubt es, Korrnews incl. Hilfsdateien (ini-Datei und header.def) in einem beliebigen Verzeichnis ausserhalb des Message-Verzeichnisses zu halten. Sofern ein MessagePath gesetzt ist, werden die Mails oder Newsbeiträge aus diesem Ordner bearbeitet und nicht mehr die im Korrnews-Ordner selber. Im Zusammenhang mit Hamster sind die Abschnitte "Hamsterverzeichnis\Groups\News.out" und "Hamsterverzeichnis\Mails\Mails.out" relevant, diese werden automatisch gesetzt, wenn Korrnews direkt ins Hamsterverzeichnis installiert wird.
(Korrnews.ini: Option "Messagepath", Default: leer)

FilePath:
erlaubt es, die Hilfsdatei(en) für Korrnews (header.def, Signaturdateien ohne Pfadangabe) in einem Verzeichnis ausserhalb des Programm-Verzeichnisses zu halten.
(Korrnews.ini: Option "Filepath", Default: leer)

Header.def:
Falls man in verschiedenen Abschnitten (also z.B. Mail und News) verschiedene Header-Definitionen wünscht, kann man hiermit die Header-Datei je Abschnitt bestimmen. Um die aktuell gewählte Datei zu bearbeiten, reicht ein Klick auf die Schaltfläche "Edit". Der Name "Header.def" ist eher traditionell als sinnvoll und bezieht sich auf die Erstversionen, die über die Header.def wirklich nur das Setzen/Löschen einzelner Header erlaubt haben.
(Korrnews.ini: Option "Header.def", Default: "Header.def")

Dateiendung der Posting/Maildateien:
entscheidet, welche Dateien Korrnews nachbearbeiten soll. Im Falle vom Hamster ist die Endung "msg" relevant, falls stattdessen z.B. MTQ unterstützt werden soll, wäre die Endung "*" passender. Ein leerer Eintrag steht wirklich für Dateien ohne Endung.
(Korrnews.ini: Option "CheckFilesWithExtension", Default: "msg")

Die ersten xx und letzten xx Zeilen ignorieren:
Diese Einstellung ist speziell für Crosspoint integriert worden und sorgt dafür, daß die ersten und/oder letzten Zeilen garantiert unverändert bleiben und Korrnews "nur" den Rest bearbeitet.
(Korrnews.ini: Option "SafeReg1" und "SafeReg2", Default: "0")

Änderungen in Kopien mit folgender Endung speichern:
erlaubt es, mit Korrnews erst mal zu experimentieren. Sofern diese Einstellung gesetzt ist, werden die originalen Dateien nicht mehr mit der korrigierten Version überschrieben, sondern die korrigierte Version wird unter der hier angegebenen Endung gespeichert. Wenn z.B. "neu" angegeben wird, wird aus "00000023.msg" die korrigierte "00000023.neu", ohne daß die alte "00000023.msg" überschrieben/geändert würde.
(Korrnews.ini: Option "DontChangeRenameToExtension", Default: leer)

Backups erstellen:
entscheidet darüber, ob die Originalnachricht als "Bak" gespeichert werden soll.
(Korrnews.ini: Option "MakeBak", Default: "0", wobei "0" für "Nein" und "1" für "Ja" steht)


4.2. Zeichensätze

Hier ist es möglich, die für Header und Body verfügbaren Zeichensätz für spezielle Abschnitte zu ändern, die Grundeinstellungen, welche über die Einstellung "Default" erreicht werden, sind unter Allgemeines konfigurierbar, dort finden sich auch die technischen Hintergrundinformationen zu den Zeichensätzen.

Automatisch minimalen Zeichensatz wählen:
Damit überprüft Korrnews nach allen Änderungen, ob der gewählte Zeichensatz (bzgl. des Bodys) nicht unnötig "groß" ist und nutzt ggf. einen "kleineren" Zeichensatz, dessen Zeichenvorrat für das konkrete Posting bzw. die konkrete Mail ausreicht.
(Korrnews.ini: Option "MinBodyCharset", Default: "0", wobei "0" für "Nein" und "1" für "Ja" steht)


4.3. Kodierungen

4.3.1 Einleitung

Wieder ein kurzer Grundlagentext zum Verständnis für die folgenden Einstellungen:

Wie schon bei den Zeichensätzen erwähnt, ist Usenet und Mail ursprünglich eine 7-Bit-Veranstaltung gewesen. Auch wenn das Usenet als 8-Bit-tauglich gilt und auch die meisten Mailrouter mit 8-Bit keine Probleme mehr haben,

Somit haben die entsprechenden Kodierungen auch heute noch durchaus praktische Bedeutung.

Folgende Kodierungen kennt Korrnews:

Die Spezialität UUEncode-kodiert wird zumindest vorerst von Korrnews nicht behandelt, da maschinell nicht zuverlässig erkennbar und konzeptionell auch schlecht behandelbar.


4.3.2 Konvertierung zwischen 8-Bit, Base64, QP...

Standard-Text-Kodierung ff:
Um eine 4x4-Tabelle zu vermeiden, wurde das Konzept für die automatischen Konvertierungen folgendermaßen realisiert (Sollte dies zu unflexibel erscheinen - per Header.def können die gewünschten Konvertierungen auch dynamisch realisiert werden): Man wählt hier die gewünschte Zielkodierung, die man üblicherweise verwenden möchte und kann in den folgenden drei Einstellungen durch Ankreuzen oder Nicht-Ankreuzen wählen, welche Kodierungen von Korrnews in die Standard-Kodierung überführt werden sollen. Wie die Überschrift schon sagt, beschränkt sich KN automatisch auf die Teile eines Multi-Part-Postings, welche einen Text-Typ aufweisen.
(Korrnews.ini: Optionen "DefaultEncoding", "Convert8Bit", "ConvertQP" und "ConvertBase64")


4.3.3 HTML in Text konvertieren

HTML nach Text konvertieren:
Diese Funktion ist für Benutzer von Newsreadern bzw. Mailreadern gedacht, welche nicht Teil eines Browsers sind. Die Funktion konvertiert den Original-HTML-Code nach purem Text, wobei natürlich im Detail viel weggeschmissen wird (ca. 50%), aber die wesentlichen Inhalte ganz gut lesbar sein sollten. Sinn hat das im Normalfall nur bei eingehenden Mails bzw. in Copyif (ab Version 2.0).
(Korrnews.ini: Option "HTML2Text", Default: "0", also "Nein")

Original speichern unter:
Um trotzdem die volle Schönheit des Originals geniessen zu können, wird hier Pfad und Dateiname angegeben, unter dem die Originalen html-Postings gespeichert werden sollen. In den Namen sollte man ein "*" integrieren, das bewirkt, daß KN automatisch immer einen neuen Dateinamen vergibt d.h. aus Original_*.html werden die Dateien Original_1.html, Original_2.html, Original_3.html, ..., Original_1822.html usw. In die Textvariante wird dabei automatisch eine URL integriert, um das Original bequem aufrufen zu können.
(Korrnews.ini: Option "SaveHTMLAs", Default: "c:\temp\Original_*.html")


4.3.4 Attachments extrahieren

Sofern z.B. der verwendete Mailreader mit Attachments nicht umgehen kann oder man diese gar nicht erst in der lokalen Datenbank haben möchte, erlaubt diese Option das automatische Entfernen und Speichern des Attachments. Sinn hat das im Normalfall nur bei eingehenden Mails bzw. in Copyif (ab Version 2.0). Das Verfahren hat dann Grenzen, wenn die Datei auf mehrere Mails/Postings aufgeteilt wurde, die gespeicherten Bruchstücke müssen dann manuell zusammengesetzt werden.

Attachments extrahieren / Zielpfad / Falls Dateiname existent:
Sofern die erste Option aktiviert ist, werden alle Attachments bei Multi-Part-MIME-Postings automatisch im gewählten Zielpfad abgespeichert, wobei der eingestellte Dateiname verwendet wird. Was passieren soll, wenn eine solche Datei schon existiert, kann ebenfalls noch eingestellt werden.
(Korrnews.ini: Option "SaveAttachments", Werte "0" oder "1", Default "0"; Option "SaveAttachmentsDir", Default "c:\temp"; Option "ActionIfAttExists", Werte "0" für "Nicht speichern" (Default), 1 für "Überschreiben", "2" für "Umbenennen")


4.3.5 Überflüssige Leerzeichen und Leerzeilen

Überflüssige Leerzeichen an Zeilenenden löschen:
Diese Funktion löscht alle Leerzeichen an Zeilenenden, solange diese nicht mit "-- " enden.
(Korrnews.ini: Option "RightTrimLines", Default: "0", also "Ja")

Leerzeilen am Posting/Mail-Ende löschen:
Löscht alle Leerzeilen am Text- und Signaturende, für OE-Nutzer besonders praktisch, da OE bei jeder Nachbearbeitung eines Postings noch zwei Leerzeilen anhängt.
(Korrnews.ini: Option "DeleteEmptyLines", Default: "0", also "Ja")


4.4. Header-Korrekturen (I-III)

Die folgenden Funktionen beziehen sich auf den Header der Postings bzw. Mails, die Defaults sind unproblematisch gewählt, sollten aber trotzdem auf die eigenen Bedürfnisse abgestimmt werden.


4.4.1 Bzgl. aller Headerzeilen

Optimierte ISO-Kodierung der Header-Zeilen:
Diese Funktion hilft vor allem XNews- oder Free Agent-Anwendern, deren Headereinträge üblicherweise falsch (=gar nicht) kodiert sind, aber auch Forte-Agent-Nutzern, da Forte Agent die Kodierung nicht optimal handhabt: Vor allem im Subject stört es, daß Agent alles kodiert incl. des "Re:", so daß schlechtere Newsreader unnötige Probleme beim korrektem Antworten bekommen. Die Besonderheiten des From- bzw. Reply-To-Header werden berücksichtigt.
(Korrnews.ini: Option "CheckMIMEHeaders", Default: "1", also "Ja")


4.4.2 Subject-Header

Diese Funktionen dienen der Nachkorrektur der Subject-Zeile, in manchen Programmen auch als "Betreff" bekannt.

"Re: Hallo (was: Huhu)" => "Re: Hallo":
Kürzen des "was"-Teils: Laut Netiquette sollen Threads nach folgendem Schema umbenannt werden:

  Subject: "Hallo"
  Subject: "Re: Hallo"
  ...
  Subject: "Tschuess (was: Hallo)"
  Subject: "Re: Tschuess"
  ...
Die meisten Win-Newsreader belassen ein einmal gesetztes "was:" bis zur manuellen Entfernung, also in den meisten Fällen nie. Dies kann daher durch Korrnews automatisch erledigt werden. Das "(was:...)" wird genau dann von Korrnews entfernt, wenn die entsprechende Option aktiviert ist (Default), das Subject mit "Re:" beginnt (bzw. durch die vorherigen Funktionen entsprechend geändert wurde) und der hintere Subjectteil aus "(was:...)" besteht.
(Korrnews.ini: Option "CheckSubjectKillWasAfterRe", Default: "1", also "Ja")

"Re: AW: Re: Hallo" => "Re: Hallo" + Dabei folgende Anfänge zu "Re" konvertieren:
Diese Option hat eine Doppelfunktion: Zum einen korrigiert sie Newsreader, welche statt "Re" sowas wie "Antwort" vor eine Antwort setzen (Lotus Notes, die deutsche Gravity-Version, alte MS-Newsreader), zum anderen korrigiert sie die Ergebnisse entsprechender Antwortkaskaden. Dazu werden die in der Liste aufgeführten Kürzel zu "Re" konvertiert und ggf. dadurch entstehende multiple "Re"s am Anfang des Subjects zu einem "Re" zusammengekürzt.
(Korrnews.ini: Option "DelDoubleRe", Default: "1", also "Ja", und Option "ConvertToRe", Default "AW,Antwort,Re^2,Re^3,Re^4")

Umlaute in neuem Subject umschreiben:
Da bekanntlich viele Newsreader Probleme oder Fehler im Zusammenhang mit Umlauten im Header haben (Netscape setzt gerne ein Leerzeichen hinzu, andere Newsreader zeigen die Sachen kodiert an...), ist es durchaus sinnvoll, freiwillig auf Umlaute im Subject zu verzichten. Mit dieser Option korrigiert Korrnews das Subject bei Bedarf entsprechend, aus "Und tschüß, liebe Leute! (Just my 2€)" wird dann "Und tschuess, liebe Leute! (Just my 2 Euro)". Die Ersetzliste ist zur Zeit noch nicht konfigurierbar, aber für die Umlaute reicht es allemal. Die Funktion arbeitet nur, wenn das Subject nicht mit "Re:" anfängt, da Änderungen innerhalb eines laufenden Threads keinen Sinn machen.
(Korrnews.ini: Option "CheckReplaceSubject8Bits", Default: "0", also "Nein")


4.4.3 From- und Reply-To-Header

mail@adr (name) => "Name" :
Für die Formatierung der Adress-Header gibt es verschiedene Alternativen. Die inzwischen gebräuchlichste ist das Format "Name" , wobei die Anführungsstriche nur in bestimmten Fällen (z.B. "." im Name) nötig sind.
Diese Option erlaubt es, ein vom News/Mailreader generiertes "altes" Format automatisch umzusetzen und/oder bei Bedarf benötige Anführungsstriche hinzuzufügen. Letzeres ist z.B. bei Agent-Anwendern nötig, da Agent die Anführungsstriche gerne vergisst.
(Korrnews.ini: Option "CheckFromReplyFormat", Default: "0", also "Nein", "1" steht für "Ja")


4.4.4 Lines-Header

Neu berechnen und automatisch setzen:
*** UNDER CONSTRUCTION ***
(Korrnews.ini: Option "SetLines", Default: "1", also "Ja", "0" steht für "Nein")


4.4.5 Date-Header

Automatisch erstellen:
Diese Option erlaubt es, den Date-Header während des Korrnews-Laufs zu setzen, wenn er noch fehlt oder sogar immer.
(Korrnews.ini: Option "SetDateHeader", Default: "0", also "Niemals", "1" steht für "Nur,wenn fehlend" und "2" für "Immer")

Gewünschtes Format:
Bestimmt das Format des Date-Headers, sofern von Korrnews gesetzt. Entweder "GMT" oder "Local", im zweiten Fall wird die Zeitzone mit angegeben.
(Korrnews.ini: Option "DateHeaderType", Default: "Local", die Gegenoption heisst "GMT")


4.4.6 References-Header

MaxReferencesLength:
Da manche Newsserver mit überlangen References Probleme haben, erlaubt diese Einstellung ein automatisches Kürzen auf eine einstellbare Maximallänge. Dabei bleibt die erste und die letzten drei Message-IDs auf jeden Fall erhalten, gekürzt wird - falls nötig - ansonsten ab der zweiten Message-ID.
(Korrnews.ini: Option "MaxReferencesLength", Default: 512)

"Folding aktivieren":
Erlaubt das sogenannte "Falten" der References d.h. aus

  References: <899he5.3vvht89.0@mm.invalid.de> <38b84ec1/2fae/3e9_tin-rules@metasystox.qad.org> <89bu3v$o0i$1@onlinenews.germany.net> <27-02-00.22-04-57.dcpm.2071@futzelnet.de> <89e4jj.3vvo747.0@hneu.de> <28-02-00.19-25-32.dcpm.2092@futzelnet.de> <89eqe0.3vvpgep.0@hneu.de> <slrn8bqoh3.ok.usenet@PowerPC.hazardous.org> <MTRD80884C70EC@metrodix.de> <slrn8bvvle.nn.usenet@PowerPC.hazardous.org> <MTRD81354C78DB@metrodix.de>
wird dann
  References: <899he5.3vvht89.0@mm.invalid.de>
    <38b84ec1/2fae/3e9_tin-rules@metasystox.qad.org>
    <89bu3v$o0i$1@onlinenews.germany.net>
    <27-02-00.22-04-57.dcpm.2071@futzelnet.de> <89e4jj.3vvo747.0@hneu.de>
    <28-02-00.19-25-32.dcpm.2092@futzelnet.de> <89eqe0.3vvpgep.0@hneu.de>
    <slrn8bqoh3.ok.usenet@PowerPC.hazardous.org>
    <MTRD80884C70EC@metrodix.de>
    <slrn8bvvle.nn.usenet@PowerPC.hazardous.org>
    <MTRD81354C78DB@metrodix.de>
Die Verwendung ist im Endeffekt reine Geschmackssache.
(Korrnews.ini: Option "FoldingReferences", Default: "0", also "Nein")


4.4.7 Header-Reihenfolge

Diese Option erlaubt eine Umsortierung der Header nach eigenen Wünschen und entspricht dem entsprechenden "Do Sort Header"-Befehl innerhalb der header.def. Letzterer wird - sofern vorhanden - übrigens nach der hier eingestellten Option ausgeführt und hat dann somit Priorität.
Achten Sie bei der Eingabe der Header darauf, daß sie mit Kommata voneinander getrennt sind, aber weder am Anfang noch am Ende ein Komma stehenbleibt, da ansonsten ein Laufzeitfehler passieren dürfte.
Zur eigentlichen Funktionalität: Die Option sorgt dafür, daß alle hier aufgeführten Header an den Anfang sortiert werden in der angegebenen Reihenfolge. Nicht vorhandene, aber aufgeführte Header werden ignoriert, mehrfach vorkommende Header werden untereinander einsortiert, alle nicht erwähnten Header landen unterhalb in ihrer originalen Reihenfolge.
Die spezifischen Hamster-Mail-Header haben übrigens trotzdem noch Vorrang, sofern die entsprechende Option aktiv ist.
(Korrnews.ini: Option "SortHeader", Default: "", also "Nein")


4.4.8 X-Headerzeilen setzen/löschen

Diese Option ist funktioniell auch über die Header.def machbar, hierüber allerdings leichter erreichbar. Sie müssen nur die gewünschten X-Header-Einträge machen, je Header eine Zeile. Mit

 
 X-Newsreader: Sag' ich nich'
 X-Newsreader-geheim: Forte Agent incl. Korrnews & Co
 X-Priority
setzen sie einen "X-Newsreader"-Header, der den normalen überschreibt, einen zusätzlichen Header "X-Newsreader-geheim" und löschen einen eventuell existierenden "X-Priority"-Header. Falls Sie auch andere Header (Lines etc) ändern wollen, können Sie dazu die Header.def nutzen.
(Korrnews.ini: Option "DelXHeader=Anzahl" und Optionen "DelXHeader-XX=Headerbez")


4.4.9 Copy-Fups-Korrektur

Message-ID-Anfänge kürzen:
Diese Option ist für Nutzer von meinem "CopyFups.exe" vorgesehen: CopyFups kopiert nicht nur die Follow-Ups, sondern ergänzt deren Message-IDs ggf. noch von vorne um einen frei eingebbaren String. Wenn man dann direkt auf diese Kopien antwortet, sind die References natürlich nicht mehr korrekt. Dies läßt sich von Korrnews wieder reparieren. Sofern CopyFups im selben Verzeichnis ist, übernimmt Korrnews die nötige Angabe direkt aus der CopyFups.ini (Settings / AddToMessageID). Mehrere Löschstrings sind möglich und müssen dann mit Kommata getrennt werden.
Die Nutzer von "CopyIf.exe" brauchen diese Option eigentlich gar nicht, da CopyIf.exe und Korrnews sich die entsprechenden Angaben mittels der win.ini automatisch mitteilen.
(Korrnews.ini: Option "KillMessageIDBegins", Default: leer)


4.4.10 Hamster-Mails

!MAIL FROM und !RCPT TO - Header zuerst:
Diese Option sorgt dafür, daß unabhängig von Umsortierungen der Header oder einer temporären Löschung eines dieser Header die beiden Header immer ganz oben stehen. Ansonsten kann der Hamster beim Verschicken Probleme bekommen. Eine Abschaltung wird daher nicht empfohlen.
(Korrnews.ini: Option "HamsterHeaderFirst", Default: 1 = "an")

RCPT-To-Liste neu generieren (To, CC):
Falls man bei einer Hamstermail die To- oder CC-Einträge nachträglich ändert, werden sie trotzdem nicht korrekt ausgeliefert, da sich die Auslieferung nach den RCPT-To-Headern richtet. Diese können mittels dieser Option automatisch nachgeneriert werden. Bei der Neugenerierung greift Korrnews auf den To- und den CC-Header zurück. Beim Neugenerieren werden alte Einträge nicht gelöscht, da ansonsten BCC-Einträge nicht 'überleben' würden. Um die Liste somit auf To und CC zu beschränken ist zusätzlich die Anweisung "Delete Header RCPT-To" in der Header.def nötig und die Aktivierung der danach erläuterten Option.
(Korrnews.ini: Option "RecreateRCPT_To", Default: 0 = "aus")

Auch, wenn noch keiner vorhanden:
Sicherheitshalber erwartet Korrnews default-mäßig eine bereits existierende Liste, bevor die RCPT-To-Liste neu erzeugt. Diese Sicherheitseinstellung ist hier abstellbar.
(Korrnews.ini: Option "RecreateRCPT_To_Always", Default: 0 = "aus")


4.5. Body-Korrekturen

Diese Optionen beziehen sich auf alles unterhalb des Headers - wobei allerdings die Optionen bzgl. der Zeichenkodierung durchaus auch noch Änderungen am Header miteinschließen.


4.5.1 Body-Header

Korrnews erlaubt es, innerhalb eines Postings zusätzliche Header einzufügen, die dann automatisch in echte Header verwandelt werden und in der Header.def sogar zu Steuerungszwecken verwendet werden können. Eine Beispielanwendung wäre z.B. ein "Supersedes", der vom Agent sonst ohne zusätzlichen Aufwand nicht machbar ist.

Die Anwendung sieht so aus:

Falls die erste Zeile mit "X-" oder "@" anfängt, wird diese in einen echten Header gewandelt, wobei das "@" gebraucht wird, wenn der Header nicht mit X- anfängt, das "@" selber wird natürlich nicht mit in den Header übertragen. Sofern die nächsten Zeilen ebenfall als Pseudo-Header erkannt werden, werden diese ebenfalls übertragen.

Mit

 X-Newsreader: Sag ich nicht
 X-Ironie: Detected
 @Reply-To: ich.habe.auch@diese.Adres.se
 @Organization:
 xyz schrieb:
 > ....

erreicht man z.B., daß der normale X-Newsreader-Eintrag überschrieben wird, ein Pseudo-Eintrag X-Ironie eingefügt wird, das Reply-To korrigiert bzw. neu eingesetzt wird und daß der Organization-Header gelöscht wird (auch wenn der Provider dies dann wohl für eine eigene Angabe nutzen wird).

Statt dem ":" ist auch ein "=" zulässig, dies wird automatisch in ein ":" gewandelt, wenn kein anderes enthalten ist. Das Leerzeichen zwischen dem ":" und dem Rest wird ggf. auch nachgetragen.

Die "@"-Variante ist standardmäßig deaktiviert.

Sowohl bei dauerhaften als auch bei temporären Headern werden die Inhalte automatisch auf Sonderzeichen geprüft und ggf. nach ISO konvertiert.

Temporäre Header haben immer Vorrang vor dauerhaften Headern.

Eine Sonderbedeutung hat der Header "x-check-body: no" - Dieser erlaubt es, die sonst eingestellten Änderungen am Textbody für das aktuelle Posting/die aktuelle Mail abzuschalten.

Manuelle X-Header erlauben:
erlaubt zusätzliche X-Header, die direkt im Textbody definiert werden können,
(Korrnews.ini: Option "AllowXHeader", Default: "1", also "Ja")

Manuelle sonstige Header erlauben:
erlaubt auch das Setzen normaler Header mit "@" davor.
(Korrnews.ini: Option "AllowAnyHeader", Default: "0", also "Nein")


4.5.2 Signatur

In Signatur-Trenner wandeln:
Um auch mit Outlook Express Signaturen verwenden zu können, reicht in Zukunft das Einsetzen eines beliebigen Platzhalters (Am einfachsten "--"), um ihn per Korrnews automatisch durch einen korrekten Signatur-Trenner ("-- ") ersetzen zu lassen.
(Korrnews.ini: Option "ConvertToSigDelimiter", Default: leer)

Random Sig-Datei:
Diese Option erlaubt die Auswahl einer Datei mit Signaturen, welche - sofern noch keine Signatur gesetzt ist - als Quelle für die angehängte Signatur verwendet wird. Jeder Sig hat dabei mit "--" eingeleitet zu werden, bei mehr als einer Sig wird die Sig zufällig ausgewählt.
Um Newsgruppen-spezifische Sigs u.ä. zu verwenden, müssen sie auf die Header.def zurückgreifen.
(Korrnews.ini: Option "SigFile", Default: leer)

Leerzeile vor automatischer Sig:
Sofern die Sig von Korrnews erzeugt wird (egal ob über die vorige Option oder Header.def-Befehle), wird hiermit bestimmt, ob eine Leerzeile zwischen Textende und Sig eingefügt werden soll.
(Korrnews.ini: Option "BlankBeforeSig", Default: "0", also "Nein")


4.5.3 Einrückungen

Diese Optionen sorgen für eine regelmäßige Einrückung im Body. Beachtet werden nur Zeilen, die mit einem Zitierzeichen anfangen.

Aus:

  > >> > Huhu
  > >>Blubb
  > >Hi
  > Like i said

wird:

  >>>> Huhu
  >>> Blubb
  >> Hi
  > Like i said

Es werden alle Zeilen behandelt, welche mit einem Zitatzeichen beginnen. Standardmäßig werden ">" und "|" unterstützt. Falls gewünscht, werden bei gemischtem Aufkommen in einer Zeile jeweils Leerzeichen zwischen die Blöcke gesetzt: Aus ">>|>" wird also ">> | > ". Das Leerzeichen zwischen Zitatzeichen und Text ist ebenfalls optional.

Die Korrekturen können temporär abgeschaltet werden, was im Falle von PGP-Blöcken u.ä. sinnvoll sein dürfte. Auch alles hinter einem Signaturtrenner kann automatisch ignoriert werden.

Unterstreichungen a la

  >> Huhu, da ist ja eine heiße Frau!
                          ^^^^^ 
werden nach Möglichkeit erhalten, Fehler im Algorithmus sind mir zur Zeit nicht bekannt.

Die Optionen im Einzelnen:

Einrückungen optimieren:
entscheidet, ob die Einrückungen überhaupt korrigiert werden sollen.
(Korrnews.ini: Option "CheckQuotes", Default: "1", also "Ja")

Leerzeichen zwischen Zitatzeichen und Text:
entscheidet, ob im Falle von Korrekturen ein Leerzeichen zwischen den Zitatzeichen und dem Text stehen soll.
(Korrnews.ini: Option "CheckQuotes-AddSpaceBetweenQuoteAndText", Default: "1", also "Ja")

Leerzeichen zwischen verschiedenen Zitatzeichen:
entscheidet, ob im Falle von gemischten Zitatzeichen Leerzeichen als Trennung zwischen den unterschiedlichen Zitatzeichen stehen sollen.
(Korrnews.ini: Option "CheckQuotes-AddSpaceBetweenDifferentQuoteChars", Default: "1", also "Ja")

Erlaubte Zitatzeichen:
entscheidet, welche Zeichen als Zitatzeichen gelten sollen.
(Korrnews.ini: Option "CheckQuotes-AllowedQuoteChars", Default: ">|")

Keine Änderungen zwischen:
definiert die Zeilen, mit deren Hilfe die Korrektur für die zwischenliegenden Zeilen abgeschaltet werden soll. Ein "*" am Ende bedeutet, daß der hintere Teil beim Vergleich nicht interessiert, ein "*" am Anfang, daß nur der hintere Teil verglichen wird, ein "*" vorne und hinten, daß der Vergleichsstring irgendwo in der Zeile vorkommen darf.
(Korrnews.ini: Option "CheckQuotes-DoNotChange-Begin", Default: "-----BEGIN PGP*", und Option "CheckQuotes-DoNotChange-End", Default: "-----END PGP*")

Keine Änderungen nach Signaturtrenner:
erlaubt es, die Korrektur der Zitatebenen nur bis zum (ersten) Signaturtrenner durchführen zu lassen.
(Korrnews.ini: Option "CheckQuotes-DoNotChangeAfterSigDelimiter", Default: "1", also "Keine Kontrolle")


4.6. Sonderfunktionen


4.6.1 Fußnoten-Automatik

Erlaubt das Konvertieren von Fußnotenanweisungen in Fußnoten, für Details siehe allgemeine Konfiguration.
(Korrnews.ini: Option "ConvertFootnotes", Default: "0", also "Nein")


4.6.2 manuelle "Reformats" und "Oneliner"

Erlaubt das Neuformatieren ausgewählter Abschnitte bzw. das Erzeugen überlanger Zeilen, für Details siehe allgemeine Konfiguration.
(Korrnews.ini: Option "ConvertReformats", Default: "0", also "Nein" / Option "ConvertOneliners", Default: "0", also "Nein")


4.6.3 Boxquotes

Erlaubt das Konvertieren von Boxquote-Anweisungen in Boxquotes, für Details siehe allgemeine Konfiguration.
(Korrnews.ini: Option "ConvertBoxQuotes", Default: "0", also "Nein")


4.6.4 OE-Kamm-Quoting-Reparatur

Diese Funktion ist speziell für Outlook Express- oder Notes-Nutzer gedacht: Diese sind seit x Versionen nicht in der Lage, zitierten Text vom Zeilenumbruch auszuschliessen. Diese Macke läßt sich hiermit hoffentlich automatisiert beseitigen, sofern die Originalzitate nicht überlang sind oder der eigene Zeilenumbruch so kurz eingestellt ist, daß auch eigentlich sehr kurze Zeilen umgebrochen werden.
Die Reparaturfunktion zieht genau dann Zeilen zusammen, wenn die erste Zeile mit einem ">" beginnt und die zweite Zeile nicht, wenn die Länge der zusammengesetzten Zeile zwischen 60 und 90 Zeichen lang ist und die zweite Zeile unter 15 Zeichen lang ist oder zumindest kein Leerzeichen enthält. Dies sollte sowohl die meisten Fälle reparieren als auch Fehlerkennungen weitgehend vermeiden. Im eigenen Interesse sollte man zwischen Zitaten und eigenem Text immer eine Leerzeile setzen.
(Korrnews.ini: Option "KillOEWordWraps", Default: "0", also "Nein")


4.6.5 Sonstiges

Lösche am Zeilenanfang:
Beim Agent habe zumindest ich das Problem, ab und an mal überlange Zeilen zu brauchen (Quelltexte, Forwards an Netdigest u.a.). Abhilfe ist hiermit möglich. Wenn ich hier "#+#" eintrage und im Agent ein "#" in die Liste der Zitatzeichen setze, bricht Agent mit "#+#" beginnende Blöcke nicht mehr um und Korrnews entfernt sie vor dem Verschicken, so daß ohne weiteren Aufwand beliebig lange Zeilen möglich sind, die völlig normal beim Empfänger ankommen. Die andere Alternative stellen die mit V3.1 hinzugekommenen "Oneliner" dar.
(Korrnews.ini: Option "DelAtBegin", Default: leer)

Leerzeile vor "Lines"-Einschub:
"Set/Append Lines" ist ein Spezialbefehl für die Header.def, um z.B. einen Endgruß zu automatisieren. Hiermit wird bestimmt, ob vor diesen Zeilen eine Leerzeile gewünscht ist.
(Korrnews.ini: Option "BlankBeforeLines", Default: "1", also "Ja")

(Zum Inhaltsverzeichnis)


4.7. Header.def

Diese Datei erlaubt sehr flexible Korrekturen, Details siehe Header.txt. Allerdings sollte man dort wirklich wissen, was man eigentlich tut.

(Zum Inhaltsverzeichnis)


4.8. Reihenfolge der diversen technischen Korrekturen

Für alle übergebenen Korrnews.Ini-Abschnitte wird folgendes durchlaufen:

(Zum Inhaltsverzeichnis)


5. Hinweise zu diversen Newsreadern

5.1. Einleitung

Hier ein kleiner Überblick über die mir bislang bekannten Newsreader und ihre Besonderheiten im Zusammenhang mit Korrnews.


5.2. Forte Agent

Die Option "Re: Hallo (was: Huhu)" => "Re: Hallo" führt - sofern "Threading by Subject" genutzt wird - dazu, daß nicht nur für das umbenannte Subject ein neuer Thread begonnen wird, sondern zusätzlich auch für das um "(was:...)" erleichterte. Ich halte die Option trotzdem für sinnvoll.

Die Option "Optimierte (ISO)-Kodierung der Headerzeilen" unter "Header I" sorgt dafür, daß ein "Re: " am Anfang nicht mitkodiert wird.

Falls der eigene Name Sonderzeichen wie "." aufweist, sollte man die Option bzgl. From/Reply-To aktivieren.


5.3. Forte Free Agent

Die Option "Re: Hallo (was: Huhu)" => "Re: Hallo" führt - sofern "Threading by Subject" genutzt wird - dazu, daß nicht nur für das umbenannte Subject ein neuer Thread begonnen wird, sondern zusätzlich auch für das um "(was:...)" erleichterte. Ich halte die Option trotzdem für sinnvoll. Weitere Besonderheiten sind nicht zu beachten.

Die Option "Optimierte (ISO)-Kodierung der Headerzeilen" unter "Header I" sollte genauso gesetzt werden wie auch "Automatisch minimalen Zeichensatz verwenden" unter "Zeichensätze", da der Free Agent keine MIME-Unterstützung aufweist.

Falls der eigene Name Sonderzeichen wie "." aufweist, sollte man die Option bzgl. From/Reply-To aktivieren.


5.4. Outlook Express & MS News

Die OE-Kamm-Quoting-Korrektur sollte genutzt werden, um Zitate ohne Daueraufwand korrekt hinzukriegen.

Die Option "In Signatur-Trenner wandeln" sollte genutzt werden, falls man auf Sigs Wert legt und sie sogar in OE selber anlegen will.

Die Option "Leerzeilen am Posting/Mail-Ende löschen" ist ebenfalls sehr empfehlenswert.

Die Option "Optimierte (ISO)-Kodierung der Headerzeilen" unter "Header I" sorgt dafür, daß ein "Re: " am Anfang nicht mitkodiert wird.

AFAIK verwendet MS News statt "Re" das Kürzel "AW". Dies läßt sich mit der Option "Subjectanfang nach "Re:" wandeln" korrigieren, dort einfach "AW" eintragen.

Einige unnötige Header-Einträge lassen sich per Header.def oder mit der Option "X-Headerzeilen löschen" zumindest für Usenet-Postings löschen:

 X-Priority:
 X-MSMail-Priority:
 X-MimeOLE:


5.5. Netscapes Mozilla

Die Option "Optimierte ISO-Kodierung der Header-Zeilen" ist bei Mozilla nicht unbedingt nötig, da er schon ziemlich perfekt kodiert, Schaden richtet sie natürlich nicht an, wenn sie trotzdem aktiviert ist. Teilweise ist die primitivere Kodierung von Korrnews sogar sinnvoller, da die Mozilla-Variante bei diversen Newsreadern nicht 100%ig korrekt interpretiert wird.

Mit der Header.def oder "X-Headerzeilen löschen" kann man den Header aufräumen und die in den meisten Fällen fehlerhaft erzeugte Message-ID gleich mit entfernen:

 Message-ID:
 X-Accept-Language:


5.6. Anaware Gravity

In der deutschen Variante verwendet Gravity statt "Re" das Kürzel "AW". Dies läßt sich mit der Option "Subjectanfang nach "Re:" wandeln" korrigieren, einfach "AW" dort eingeben.

Die Option "Optimierte (ISO)-Kodierung der Headerzeilen" unter "Header I" sollte genauso gesetzt werden wie auch "Automatisch minimalen Zeichensatz verwenden" unter "Zeichensätze", da Gravity keine MIME-Unterstützung aufweist.


5.7. XNews

Die Option "Optimierte (ISO)-Kodierung der Headerzeilen" unter "Header I" sollte genauso gesetzt werden wie auch "Automatisch minimalen Zeichensatz verwenden" unter "Zeichensätze", da XNews nur eine halbherzige MIME-Unterstützung aufweist: Beim Empfang dekodiert er zwar (nebenbei teilweise falsch => CopyIf), aber beim Verschicken kodiert er nichts.

Die Header.def sollte in Hinblick auf Mailinglisten noch folgendes enthalten:

 ; X-News-Bug bzgl. Mailantworten
 If Header(In-Reply-To) = "" and Header(To) > ""
   In-Reply-To: %Last(Header(References))%
 endif


5.8. Lotus Notes

Lotus Notes verwendet statt "Re" das 'Kürzel' "Antwort". Dies läßt sich mit der Option "Re: AW:..." zu "Re:" ganz gut abstellen.

Die OE-Kamm-Quoting-Korrektur sollte genutzt werden, um Zitate ohne Daueraufwand korrekt hinzukriegen.

Weitere zu korrigierende Macken sind mir nicht bekannt, was im wesentlichen daran liegen dürfte, daß Notes als Newsreader ziemlich komplett unbrauchbar sein soll und somit im Usenet kaum verwendet wird.


6. Support für Korrnews & Co

Hilfe zu Korrnews, CopyFups, MixGroup und CopyIf finden sie in der de-Hierarchie hauptsächlich in

news:de.comm.software.newsreader news:de.comm.software.newsserver

und in der Hamsterhierarchie in den Gruppen

news:hamster.de.newuser
news:hamster.de.tools

Falls Fehler oder besondere Probleme auftauchen, können Sie sich auch an mich wenden, wobei weder Antworten noch Antwortzeiten garantiert werden. Schreiben Sie dabei bitte nicht an meine gmx-Adresse, sondern je nach Programm an:

hamster-tools@tgl.westfalen.de
korrnews@tgl.westfalen.de
copyif@tgl.westfalen.de
copyfups@tgl.westfalen.de
mixgroups@tgl.westfalen.de


Viel Spass mit Korrnews!

Thomas G. Liesner