Zur Prüfung von Rechtschreibfehlern steht unter LinuX das Programm ``ispell'' zur Verfügung. Die meisten Distributionen bieten dieses zur Installation an, das zugehörige deutsche Wortliste liegt seltener bei.
Einen recht brauchbaren Grundstock für eine eigene Wortliste enthält das Packet `` hk-deutsch'' von H. Knutzen. Es umfaßt 22 Dateien, die individuell zu einer eigenen Wortliste zusammengefaßt werden können. Die dazu notwendigen Schritte werden in dem beiliegendem README genau erklärt.
Durch die individuelle Zusammenstellung werden die Wortlisten kleiner und somit die Rechtschreibprüfung beschleunigt.
Es soll aber nicht verschwiegen werden, daß man diesen Listen noch eine Menge eigener Wörter hinzufügen muß (dies ist mit ``ispell'' automatisch möglich).
Da ``ispell'' nicht jedes Textformat automatisch erkennt, muß man zur Überprüfung von Texten mit ``echten'' Umlauten (ISO-LATIN1) die Optionen
-T latin1
und
-w ``äöüÄÖÜß''verwenden. Die gültigen Paramter für die ``-T''-Option findet man in den Dateien
``deutsch.aff'' oder
``german.aff''
(hier hilft nur suchen unter ``/usr/dict'',
``/usr/lib'' oder ``/usr/local/lib'').
Kommen weitere nicht-ascii Zeichen im Text vor, so sollte man diese ebenfalls mit der ``-w''-Option zulassen.
Das deutsche Wörterbuch wird mit
-d deutsch
oder
-d german
ausgewählt (suchen).
Eine komplette Befehlszeile würde also lauten:
ispell -d deutsch -T latin1 -w ``äöüÄÖÜß'' German-HOWTO.txtRuft man ``ispell'' aus dem Editor ``emacs'' heraus auf, so kann man obige Parameter automatisch übergeben, indem man folgenden Eintrag in der Konfigurationsdatei des emacs (s.o.) vornimmt:
-----8<----- hier schneiden -----8<-----
(setq ispell-extra-args '(''-Tlatin1''
``-d'' ``/usr/lib/deutsch''
``-w'' ``XXXXXXX''))
-----8<----- hier schneiden -----8<-----
Sollte das ``ispell'' der eigenen Distribution nicht 8-bit clean sein, so muß man es selbst compilieren, wobei vorher in der Datei ``local.h'' zwei Einträge wie folgt zu definieren sind:
-----8<----- hier schneiden -----8<-----
#undef NO8BIT /* ISO characters */
#define USG /* Define this on System V */
-----8<----- hier schneiden -----8<-----