Das Programm HashMaker macht es möglich, aus iSpell-Wörterbüchern die Wortlisten und Affix-Dateien zu extrahieren, sowie Wortlisten zu erweitern, zu kombinieren und wiederum in iSpell-Wörterbücher zu integrieren. Aus eigenen Wortlisten, die als simple Text-Datei abgelegt sind, können nun ganz einfach entsprechende iSpell-Wörterbücher erzeugt werden.
HASHMAKER Version xxx ——————————————————————————————————————————————————————— Hash-Datei (ein) : Affix-Datei (ein) : List-Datei (ein) : Codepage-Gruppe : ISO_8859_ : Hash-Datei (aus) : Affix-Datei (aus) : List-Datei (aus) : ———————————————————————————————————————————————————————
Hash-Datei (ein) :
Affix-Datei (ein) :
List-Datei (ein) :
Codepage-Gruppe :
SO_8859_ :
Hash-Datei (aus) :
Affix-Datei (aus) :
List-Datei (aus) :HASHMAKER Version xxx ——————————————————————————————————————————————————————— Hash-Datei (ein) : Affix-Datei (ein) : mydict.aff List-Datei (ein) : mydict.list Codepage-Gruppe : ISO ISO_8859_ : 1 Hash-Datei (aus) : newdict.hash Affix-Datei (aus) : newdict.aff List-Datei (aus) : newdict.list ———————————————————————————————————————————————————————
Affix-Datei (ein) : mydict.aff
List-Datei (ein) : mydict.list
Codepage-Gruppe : ISO
ISO_8859_ : 1
Hash-Datei (aus) : newdict.hash
Affix-Datei (aus) : newdict.aff
List-Datei (aus) : newdict.list
HASHMAKER Version xxx ——————————————————————————————————————————————————————— Hash-Datei (ein) : anydict.hash Affix-Datei (ein) : List-Datei (ein) : Codepage-Gruppe : ISO ISO_8859_ : 1 Hash-Datei (aus) : Affix-Datei (aus) : anydict.aff List-Datei (aus) : anydict.list ———————————————————————————————————————————————————————
Hash-Datei (ein) : anydict.hash
Codepage-Gruppe : ISO
ISO_8859_ : 1
Affix-Datei (aus) : anydict.aff
List-Datei (aus) : anydict.list
HASHMAKER Version xxx ——————————————————————————————————————————————————————— Hash-Datei (ein) : anydict.hash Affix-Datei (ein) : List-Datei (ein) : addwords.list Codepage-Gruppe : ISO ISO_8859_ : 1 Hash-Datei (aus) : newdict.hash Affix-Datei (aus) : newdict.aff List-Datei (aus) : newdict.list ———————————————————————————————————————————————————————
Hash-Datei (ein) : anydict.hash
List-Datei (ein) : addwords.list
Codepage-Gruppe : ISO
ISO_8859_ : 1Hash-Datei (aus) : newdict.hash
Affix-Datei (aus) : newdict.aff
List-Datei (aus) : newdict.list
HASHMAKER Version xxx ——————————————————————————————————————————————————————— Hash-Datei (ein) : anydict.hash Affix-Datei (ein) : mydict.aff List-Datei (ein) : mydict.list Codepage-Gruppe : ISO ISO_8859_ : 1 Hash-Datei (aus) : newdict.hash Affix-Datei (aus) : newdict.aff List-Datei (aus) : newdict.list ———————————————————————————————————————————————————————
Hash-Datei (ein) : anydict.hash
Affix-Datei (ein) : mydict.aff
List-Datei (ein) : mydict.list
Codepage-Gruppe : ISO
ISO_8859_ : 1
Hash-Datei (aus) : newdict.hash
Affix-Datei (aus) : newdict.aff
List-Datei (aus) : newdict.list
Die KADMOS ReSpell-Funktionen arbeiten mit iSpell-Wörterbüchern, sofern diese eine Codepage-Information enthalten. Üblicherweise ist diese Information im HashHeader ab strtypestart abgelegt. Dort wird dann nach einem der folgenden Namen gesucht: latin1 bis latin8, cyrillic, greek und hebrew für ISO-Codepages, dos437 bis dos866 für DOS-Codepages, win1252 bis win1257 für Windows-Codepages. Sofern keine stringtypes im HashHeader spezifiziert sind (nstrchartype==0), wird der (ansonsten sinnlose) Wert von HashHeader.strtypestart als Codepage interpretiert (CODE_PAGE_437 bis CODE_ISO_8859_15 oder CODE_ASCII).
Folgende Übersicht beschreibt die Zuordnung der Codepage-Namen von iSpell-Wörterbüchern und den KADMOS Codepages:
dos437 CODE_PAGE_437 ... ... dos866 CODE_PAGE_866 win1250 CODE_PAGE_1250 ... ... win1257 CODE_PAGE_1257 latin1 CODE_ISO_8859_1 latin2 CODE_ISO_8859_2 latin4 CODE_ISO_8859_4 cyrillic CODE_ISO_8859_5 greek CODE_ISO_8859_7 hebrew CODE_ISO_8859_8 latin5 CODE_ISO_8859_9 latin6 CODE_ISO_8859_10 latin7 CODE_ISO_8859_13 latin8 CODE_ISO_8859_15 ascii CODE_ASCII
Falls ein iSpell-Wörterbuch keine Codepage-Information enthält, kann man sich mit dem HashMaker wie folgt ein gleichwertiges Wörterbuch mit Codepage-Information erzeugen:
Extraktion von Affix- und List-Datei aus dem Wörterbuch.
Edieren eines der entsprechenden Abschnitte mit defstringtype ...
oder altstringtype...
,
indem als Name latin1 oder ähnliches eingetragen wird. Natürlich müssen die entsprechenden Einträge
unter wordchar, stringchar oder altstringchar dieser Codepage entsprechen.
Die erzeugte List-Datei muss nötigenfalles ebenso in die gewünschte Codepage umgesetzt werden.
Generieren eines neuen iSpell-Wörterbuches aus geänderter Affix- und List-Datei.
Sofern ein iSpell-Wörterbuch keine Stringtypes enthält (nstrchartype==0
), so kann mit dem HashMaker
aus dieser Datei sofort ein neues Wörterbuch erzeugt werden, da in diesem Falle nur der Codepage-Eintrag
unter strtypestart erfolgen muss.