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.affList-Datei (ein) : mydict.listCodepage-Gruppe : ISOISO_8859_ : 1Hash-Datei (aus) : newdict.hashAffix-Datei (aus) : newdict.affList-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.hashCodepage-Gruppe : ISOISO_8859_ : 1Affix-Datei (aus) : anydict.affList-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.hashList-Datei (ein) : addwords.listCodepage-Gruppe : ISOISO_8859_ : 1Hash-Datei (aus) : newdict.hashAffix-Datei (aus) : newdict.affList-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.hashAffix-Datei (ein) : mydict.affList-Datei (ein) : mydict.listCodepage-Gruppe : ISOISO_8859_ : 1Hash-Datei (aus) : newdict.hashAffix-Datei (aus) : newdict.affList-Datei (aus) : newdict.listDie 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.