hunspell(5) File Formats Manual hunspell(5) (NAME) hunspell - (DESCRIPTION) Hunspell(1) : . . (Dictionary file) (*.dic) . ( ) ( ). ("/") ( ) . : "\/" . "alot" "inspite" ( "REP" "ph:" ): 3 word a lot in spite (Personal dictionary file) . . . foo Foo/Simpson *bar "foo" "Foo" Foo Simpson ( Foo's ) bar . (Short example) : 3 hello try/B work/AB B A . : SET UTF-8 TRY esianrtolcdugmphbyfvkwzESIANRTOLCDUGMPHBYFVKWZ' REP 2 REP f ph REP ph f PFX A Y 1 PFX A 0 re . SFX B Y 2 SFX B 0 ed [^y] SFX B y ied y A B . A `re-' . B `ed-' . B `y' . `y' . : "hello" "try" "tried" "work" "worked" "rework" "reworked". (AFFIX FILE GENERAL OPTIONS) . SET encoding . : UTF-8 ISO8859-1 ISO8859-10 ISO8859-13 ISO8859-15 KOI8-R KOI8-U cp1251 ISCII-DEVANAGARI. SET UTF-8 FLAG value . (ASCII ) . `UTF-8' UTF-8 . `long' ASCII `num' . . FLAG long COMPLEXPREFIXES ( ) . LANG langcode . (LANG az) (LANG tr) (LANG crh) (LANG hu) . IGNORE characters . (harakat) (niqqud) ( tests/ignore.* ). AF number_of_flag_vector_aliases AF flag_vector ( makealias ). : 3 hello try/1 work/2 AF : AF 2 AF A AF AB dic : 3 hello try/A work/AB tests/alias* . : FLAG AF . : makealias aff dic . AM number_of_morphological_aliases AM morphological_fields ( ). tests/alias* . (AFFIX FILE OPTIONS FOR SUGGESTION) n-gram ( ) . REP REP . PHONE . :ph ( ) . KEY characters_separated_by_vertical_line_optionally KEY . KEY . KEY QWERTY Dvorak: KEY qwertyuiop|asdfghjkl|zxcvbnm KEY pyfgcrl|aeouidhtns|qjkxbmwvz QWERTY "nude" "node" "*nide" . : KEY qwertzuop|yxcvbnm|qaw|say|wse|dsx|sy|edr|fdc|dx|rft|gfv|fc|tgz|hgb|gv|zhu|jhn|hb|uji|kjm|jn|iko|lkm TRY characters TRY . TRY . NOSUGGEST flag NOSUGGEST ( ). ( SUBSTANDARD ). MAXCPDSUGS num . MAXNGRAMSUGS num n-gram . 0 n-gram ( MAXDIFF ). MAXDIFF [0-10] n-gram (5 = 0 = n-gram 10 = MAXNGRAMSUGS). ONLYMAXDIFF n-gram ( MAXDIFF ). NOSPLITSUGS . SUGSWITHDOTS ( LibreOffice ). REP number_of_replacement_definitions REP what replacement . REP REP . ( ":ph" ). (^ $) . : REP 5 REP f ph REP ph f REP tion$ shun REP ^cooccurr co-occurr REP ^alot$ a_lot : : REP TRY ( REP ). : : REP 1 REP onetwothree one_two_three : CHECKCOMPOUNDREP . MAP number_of_map_definitions MAP string_of_related_chars_or_parenthesized_character_sequences ( ) (.aff) map . . u u Fruhstuck u . MAP 1 MAP uu ( ): MAP 3 MAP ss(ss) (character sequence) MAP fi(fi) ("fi" compatibility characters for Unicode fi ligature) MAP (o)o (composed Unicode character: o with bottom dot) PHONE number_of_phone_definitions PHONE what replacement PHONE Aspell . . . http://aspell.net/man- html/Phonetic-Code.html . : UTF-8 . UTF-8. WARN flag r- FORBIDWARN . FORBIDWARN WARN . (OPTIONS FOR COMPOUNDING) BREAK number_of_break_definitions BREAK character_or_character_sequence . ^ $ . : ( ) . . BREAK : BREAK 2 BREAK - BREAK -- # n-dash foo-bar bar-foo foo-foo--bar-bar . : BREAK : BREAK 3 BREAK - BREAK ^- BREAK -$ BREAK "-word" "word-" : BREAK 1 BREAK - : BREAK 0 : COMPOUNDRULE . COMPOUNDRULE BREAK ( COMPOUNDRULE ). : WORDCHARS : WORDCHARS --- ( tests/break.* ). COMPOUNDRULE number_of_compound_definitions COMPOUNDRULE compound_pattern (regex) . COMPOUNDRULE COMPOUNDRULE . `*' `?' . `*' . `?' . tests/compound*.* . : en_US OpenOffice.org COMPOUNDRULE (1st 2nd 11th 12th 22nd ) . : : (1500)*(2000)? : COMPOUNDRULE COMPOUNDFLAG COMPOUNDBEGIN ( ). COMPOUNDMIN num . . MAXCPDSUGS num . 0 . . COMPOUNDFLAG flag COMPOUNDFLAG ( COMPOUNDMIN ). COMPOUNDFLAG . COMPOUNDBEGIN flag COMPOUNDBEGIN ( ) . COMPOUNDLAST flag COMPOUNDLAST ( ) . COMPOUNDMIDDLE flag COMPOUNDMIDDLE ( ) . ONLYINCOMPOUND flag ONLYINCOMPOUND ( Fuge ). ONLYINCOMPOUND (tests/onlyincompound.* ). : . COMPOUNDPERMITFLAG flag . COMPOUNDPERMITFLAG . COMPOUNDFORBIDFLAG flag . COMPOUNDPERMITFLAG . COMPOUNDMORESUFFIXES . COMPOUNDROOT flag COMPOUNDROOT ( ). COMPOUNDWORDMAX number ( ). CHECKCOMPOUNDDUP ( foofoo). CHECKCOMPOUNDREP ( ) REP . . CHECKCOMPOUNDCASE . CHECKCOMPOUNDTRIPLE ( foo|ox xo|oof). SIMPLIFIEDTRIPLE CHECKCOMPOUNDTRIPLE . (Schiff|fahrt -> Schiffahrt). CHECKCOMPOUNDPATTERN number_of_checkcompoundpattern_definitions CHECKCOMPOUNDPATTERN endchars[/flag] beginchars[/flag] [replacement] endchars beginchars ( ) . replacement . "endchars" 0 () : CHECKCOMPOUNDPATTERN 0/x /y : COMPOUNDMIN COMPOUNDMIN . FORCEUCASE flag FORCEUCASE . COMPOUNDSYLLABLE max_syllable vowels . COMPOUNDWORDMAX . ( ). SYLLABLENUM flags . (AFFIX FILE OPTIONS FOR AFFIX CREATION) PFX flag cross_product number PFX flag stripping prefix [condition [morphological_fields...]] SFX flag cross_product number SFX flag stripping suffix [condition [morphological_fields...]] . . . . : () (PFX SFX) () ( ) () ( ). : Y () N () () . : () () () ( ) ( ) () ( ) () . 0 . . ( (^) ). () . (AFFIX FILE OTHER OPTIONS) CIRCUMFIX flag CIRCUMFIX CIRCUMFIX ( circumfix.* ). FORBIDDENWORD flag . . : . FULLSTRIP FULLSTRIP ( ) ( fullstrip.* ). KEEPCASE flag KEEPCASE . ( ) . ICONV number_of_ICONV_definitions ICONV pattern pattern2 . '_' . 200D> FFF0> : ICONV <200D>_ : () . OCONV number_of_OCONV_definitions OCONV pattern pattern2 . LEMMA_PRESENT flag . LEMMA_PRESENT "st:" . NEEDAFFIX flag : ( ). NEEDAFFIX + (tests/needaffix5.* ). PSEUDOROOT flag ( NEEDAFFIX). SUBSTANDARD flag SUBSTANDARD () . NOSUGGEST . WORDCHARS characters WORDCHARS . . CHECKSHARPS SS ss . CHECKSHARPS . (Morphological analysis) ( ) : word/flags po:noun is:nom : (:ds) (:po) : : SFX X Y 1 SFX X 0 able . ds:able : drink/X po:verb : drink drinkable : $ analyze test.aff test.dic test.txt > drink analyze(drink) = po:verb stem(drink) = po:verb > drinkable analyze(drinkable) = po:verb ds:able stem(drinkable) = drinkable . (Optional data fields) ( ): ph: . :ph ( ) . : Wednesday ph:wendsay ph:wensday Marseille ph:maarsayl :ph REP . REP : REP 6 REP wendsay Wednesday REP Wendsay Wednesday REP wensday Wednesday REP Wensday Wednesday REP maarsayl Marseille REP Maarsayl Marseille :ph REP : pretty ph:prity* REP : REP 1 REP prit prett : *prity -> pretty *pritier -> prettier *pritiest -> prettiest :ph : do not know ph:dunno don't know ph:dunno : *dunno -> do not know, don't know : :ph n-gram . "<-" :ph REP : happy/B ph:hepy ph:hepi->happi : *hepy -> happy *hepiest -> happiest st: (Stem). : . ( NEEDAFFIX) . feet st:foot is:plural mice st:mouse is:plural teeth st:tooth is:plural : lay po:verb st:lie is:past_2 lay po:verb is:present lay po:noun al: () (Allomorphs). . . sing al:sang al:sung sang st:sing sung st:sing po: (Part of speech). ds: () . . . : SFX Y Y 1 SFX Y 0 ly . ds:ly_adj : ably st:able ds:ly_adj able al:ably is: () . . . feet st:foot is:plural ts: () . () "" . . work/D ts:present SFX D Y 2 SFX D 0 ed . is:past_1 SFX D 0 ed . is:past_2 . sp: . . tests/morph.* . pa: . . dp: : . ip: : . tp: : . (Twofold suffix stripping) Ispell . ( COMPLEXPREFIXES) . . 's' ( Y) 'able' : SFX Y Y 1 SFX Y 0 s . SFX X Y 1 SFX X 0 able/Y . : drink/X : drink drinkable drinkables : $ hunspell -m -d test . . (Extended affix classes) . . FLAG long : FLAG long SFX Y1 Y 1 SFX Y1 0 s 1 Y1 Z3 F?: foo/Y1Z3F? FLAG num : FLAG num SFX 65000 Y 1 SFX 65000 0 s 1 : foo/65000,12,2756 . / (Homonyms) : work/A po:verb work/B po:noun : SFX A Y 1 SFX A 0 s . sf:sg3 SFX B Y 1 SFX B 0 s . is:plur : works : $ hunspell -d test -m / . - (Prefix--suffix dependencies) . leg- -bb . . un- drink -able . . R '' ( P) : PFX P Y 1 PFX P 0 un . [prefix_un]+ SFX S Y 1 SFX S 0 s . +PL SFX Q Y 1 SFX Q 0 s . +3SGV SFX R Y 1 SFX R 0 able/PS . +DER_V_ADJ_ABLE : 2 drink/RQ [verb] drink/S [noun] : > drink drink[verb] drink[noun] > drinks drink[verb]+3SGV drink[noun]+PL > drinkable drink[verb]+DER_V_ADJ_ABLE > drinkables drink[verb]+DER_V_ADJ_ABLE+PL > undrinkable [prefix_un]+drink[verb]+DER_V_ADJ_ABLE > undrinkables [prefix_un]+drink[verb]+DER_V_ADJ_ABLE+PL > undrink Unknown word. > undrinks Unknown word. (Circumfix) . CIRCUMFIX . # circumfixes: ~ obligate prefix/suffix combinations # superlative in Hungarian: leg- (prefix) AND -bb (suffix) # nagy, nagyobb, legnagyobb, legeslegnagyobb # (great, greater, greatest, most greatest) CIRCUMFIX X PFX A Y 1 PFX A 0 leg/X . PFX B Y 1 PFX B 0 legesleg/X . SFX C Y 3 SFX C 0 obb . +COMPARATIVE SFX C 0 obb/AX . +SUPERLATIVE SFX C 0 obb/BX . +SUPERSUPERLATIVE : 1 nagy/C [MN] : > nagy nagy[MN] > nagyobb nagy[MN]+COMPARATIVE > legnagyobb nagy[MN]+SUPERLATIVE > legeslegnagyobb nagy[MN]+SUPERSUPERLATIVE (Compounds) . Ispell . : # affix file COMPOUNDFLAG X 2 foo/X bar/X foobar barfoo . . . Hunspell . Hunspell . COMPOUNDWORDMAX COMPOUNDSYLLABLE COMPOUNDROOT SYLLABLENUM '3-6' . . (COMPOUNDPERMITFLAG COMPOUNDFORBIDFLAG) . : # German compounding # set language to handle special casing of German sharp s LANG de_DE # compound flags COMPOUNDBEGIN U COMPOUNDMIDDLE V COMPOUNDEND W # Prefixes are allowed at the beginning of compounds, # suffixes are allowed at the end of compounds by default: # (prefix)?(root)+(affix)? # Affixes with COMPOUNDPERMITFLAG may be inside of compounds. COMPOUNDPERMITFLAG P # for German fogemorphemes (Fuge-element) # Hint: ONLYINCOMPOUND is not required everywhere, but the # checking will be a little faster with it. ONLYINCOMPOUND X # forbid uppercase characters at compound word bounds CHECKCOMPOUNDCASE # for handling Fuge-elements with dashes (Arbeits-) # dash will be a special word COMPOUNDMIN 1 WORDCHARS - # compound settings and fogemorpheme for `Arbeit' SFX A Y 3 SFX A 0 s/UPX . SFX A 0 s/VPDX . SFX A 0 0/WXD . SFX B Y 2 SFX B 0 0/UPX . SFX B 0 0/VWXDP . # a suffix for `Computer' SFX C Y 1 SFX C 0 n/WD . # for forbid exceptions (*Arbeitsnehmer) FORBIDDENWORD Z # dash prefix for compounds with dash (Arbeits-Computer) PFX - Y 1 PFX - 0 -/P . # decapitalizing prefix # circumfix for positioning in compounds PFX D Y 29 PFX D A a/PX A PFX D A a/PX A . . PFX D Y y/PX Y PFX D Z z/PX Z : 4 Arbeit/A- Computer/BC- -/W Arbeitsnehmer/Z : Computer Computern Arbeit Arbeits- Computerarbeit Computerarbeits- Arbeitscomputer Arbeitscomputern Computerarbeitscomputer Computerarbeitscomputern Arbeitscomputerarbeit Computerarbeits-Computer Computerarbeits-Computern : computer arbeit Arbeits arbeits ComputerArbeit ComputerArbeits Arbeitcomputer ArbeitsComputer Computerarbeitcomputer ComputerArbeitcomputer ComputerArbeitscomputer Arbeitscomputerarbeits Computerarbeits-computer Arbeitsnehmer . (Unicode character encoding) Ispell Myspell . (ISO 8859-2) . '--' ( n-dash) . MySpell . . . . UTF-8 . UTF-8 UTF-8 UTF-8 UTF-16 . (-) . aspell (Conversion of aspell dictionaries) Aspell . : (xx.cwl -> xx.wl): preunzip xx.cwl wc -l < xx.wl > xx.dic cat xx.wl >> xx.dic : cp xx_affix.dat xx.aff (xx.dat ): echo "SET ISO8859-x" > xx.aff echo "SET UTF-8" > xx.aff TRY : echo "TRY qwertzuiopasdfghjklyxcvbnmQWERTZUIOPASDFGHJKLYXCVBNM" >>xx.aff (SEE ALSO) hunspell (1), ispell (1), ispell (4) 2026-04-30 hunspell(5)