ISPELLAFF2MYSPELL(1)
๐ bestie alert: you have wandered into ISPELLAFF2MYSPELL(1), straight out of the User Contributed Perl Documentation corner of your manual ๐
โจ NAME โจ
ispellaff2myspell โ a whole program whose entire personality is converting ispell affix tables into myspell format ๐
๐ SYNOPSIS ๐
ispellaff2myspell [options] <affixfile> --myheader your_header
Options, in all their glory:
--affixfile=s Affix file
--bylocale Use current locale setup for upper/lowercase
conversion
--charset=s Use specified charset for upper/lowercase
conversion (defaults to latin1)
--debug Print debugging info
--extraflags=s Allow some non alphabetic flags
--lowercase=s Lowercase string
--myheader=s Header file
--printcomments Print commented lines in output
--replacements=s Replacements file
--split=i Split flags with more that i entries
--uppercase=s Uppercase string
๐ฆ DESCRIPTION ๐ฆ
ispellaff2myspell is a script that converts ispell affix tables into myspell format in a more or less successful way ๐ (yes, "more or less" โ she's honest about her range, we respect it).
Heads up though: this script does not create the dict file. Not her job, not her problem ๐ซถ Something like
( echo `cat mydict.words+ | wc -l`; cat mydict.words+ ) > mydict.dict
should do the work, with mydict.words+ being the munched wordlist ๐
๐ธ OPTIONS ๐ธ
--affixfile=sโ the affix file. You can put it directly in the command line, no shame in it.--bylocaleโ use the current locale setup for upper/lowercase conversion. โ ๏ธ Make sure the locale you picked actually matches the dictionary one, or you might get into trouble. fr fr, check it.--charset=sโ use the specified charset for upper/lowercase conversion (defaults tolatin1). Currently allowed values for charset are:latin0,latin1,latin2,latin3.--debugโ print some debugging info. Spill the tea, queen.--extraflags:sโ allows some non alphabetic flags.
When invoked with no value, the supported flags are currently those corresponding to chars represented with the escape char \ as first char. That \ will be stripped โ๏ธ
When given with the flag prefix, it will allow that flag and strip the given prefix. โ ๏ธ Be careful when giving the prefix to properly escape chars, e.g. you will need -e "\\\\" or -e '\\' for flags like \[ to be stripped to [. Otherwise you might even get errors. Use -e "^" to allow all flags and pass them unmodified.
You will need a call to -e for each flag type, e.g., -e "\\\\" -e "~\\\\" (or -e '\\' -e '~\\').
When a prefix is explicitly set, the default value (anything starting by \) is disabled and you need to enable it explicitly, as in the previous example. ๐ซถ
--lowercase=sโ lowercase string. Manually set the string of lowercase chars. This requires--uppercasehaving exactly that string but uppercase. They're a matched set, a duo, a ship ๐ข--myheader=sโ header file. The myspell aff header. You need to write it manually. This can contain everything you want to be before the affix table.--printcommentsโ print commented lines in output.--replacements=fileโ add a pre-defined replacements table taken fromfileto the.afffile. Will skip lines not beginning withREP, and set the replacements number appropriately.--split=iโ split flags with more thatientries. This can be of interest for flags having a lot of entries. Will split the flag in chunks containingientries.--uppercase=sโ uppercase string. Manually set the string of uppercase chars. This requires--lowercasehaving exactly that string but lowercase. Same ship, other direction ๐
If your encoding is currently unsupported ๐ญ you can send me a separate file with the two strings of lower and uppercase chars. Note that they must match exactly but case changed. It will look something like
$lowercase='a-zร รกรขรฃรครฅรฆรงรจรฉรชรซรฌรญรฎรฏรฐรฑรฒรณรดรตรถรธรนรบรปรผรฝรพ';
$uppercase='A-Zรรรรรร
รรรรรรรรรรรรรรรรรรรรรรรร';
A safer alternative against accidental recoding is to use octal codes for non 7bit chars. Above strings would then look like
$lowercase='a-z\340\341\342\343\344\345\346\347\350\351\352\353\354\355\356\357\360\361\362\363\364\365\366\370\371\372\373\374\375\376';
$uppercase='A-Z\300\301\302\303\304\305\306\307\310\311\312\313\314\315\316\317\320\321\322\323\324\325\326\330\331\332\333\334\335\336';
๐ฅ SEE ALSO ๐ฅ
- The OpenOffice.org Lingucomponent Project home page
<http://lingucomponent.openoffice.org/index.html>
- and the document
<http://lingucomponent.openoffice.org/affix.readme>
which provides information about the basics of the myspell affix file format ๐
You can also take a look at
/usr/share/doc/libmyspell-dev/affix.readme.gz
/usr/share/doc/libmyspell-dev/README.compoundwords
/usr/share/doc/libmyspell-dev/README.replacetable
in your Debian system ๐ (go read them, bestie, they're right there)
๐ AUTHORS ๐
Agustin Martin <agustin.martin@hispalinux.es>
and that's the whole page, no cap ๐
this was ISPELLAFF2MYSPELL(1) from perl v5.40.1, dated 2026-05-23 โ slay, and good luck with your affix tables ๐โจ
๐ฆ where this page comes from
- ubuntu stonking: hunspell-tools 1.7.3+really1.7.3-5
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms