Developer's Daily | Unix by Example |
main | java | perl | unix | dev directory | web log |
english ? flag format for English ispell dictionaries |
English dictionaries for ispell(1) supports 3 prefix and 14 suffix flags. For a detailed description of how ispell handles flags and capitalization, see ispell(5). This manual page only describes flags usable in dictionaries built using the english.aff affix file. In the following discussion of the flags, let # and @ be "variables" that can stand for any letter. Upper case letters are constants. "..." stands for any string of zero or more letters, but note that no word may exist in the dictionary which is not at least 2 letters long, so, for example, "fly" may not be produced by placing the "Y" flag on "f". Also, no flag is effective unless the word that it creates is at least 4 letters long, so, for example, "wed" may not be produced by placing the "D" flag on "we". In the following list, an asterisk indicates that a flag participates in cross-product formation (see ispell(5)). The meaning of the prefix flags is as follows: |
*A |
|
|||||
*I |
|
|||||
*U |
|
The meaning of the suffix flags is as follows: |
V |
|
if # .ne. e, ...# --> ...#ive as in prevent --> preventive |
*N |
|
...y --> ...ication as in multiply --> multiplication |
if # .ne. e or y, ...# --> ...#en as in fall --> fallen |
*X |
|
...y --> ...ications as in multiply --> multiplications |
if # .ne. e or y, ...# --> ...#ens as in weak --> weakens |
H |
|
if # .ne. y, ...# --> ...#th as in hundred --> hundredth |
*Y |
|
|||||
*G |
|
if # .ne. e, ...# --> ...#ing as in cross --> crossing |
*J |
|
if # .ne. e, ...# --> ...#ings as in cross --> crossings |
*D |
|
if @ .ne. a, e, i, o, or u, ...@y --> ...@ied as in imply --> implied |
if # .ne. e or y, or (# = y and @ = a, e, i, o, or u) ...@# --> ...@#ed as in cross --> crossed or convey --> conveyed |
T |
|
if @ .ne. a, e, i, o, or u, ...@y --> ...@iest as in dirty --> dirtiest |
if # .ne. e or y, or (# = y and @ = a, e, i, o, or u) ...@# --> ...@#est as in small --> smallest or gray --> grayest |
*R |
|
if @ .ne. a, e, i, o, or u, ...@y --> ...@ier as in multiply --> multiplier |
if # .ne. e or y, or (# = y and @ = a, e, i, o, or u) ...@# --> ...@#er as in build --> builder or convey --> conveyer |
*Z |
|
if @ .ne. a, e, i, o, or u, ...@y --> ...@iers as in multiply --> multipliers |
if # .ne. e or y, or (# = y and @ = a, e, i, o, or u) ...@# --> ...@#ers as in build --> builders or slay --> slayers |
*S |
|
if # .eq. s, x, z, or h, ...# --> ...#es as in fix --> fixes |
if # .ne. s, x, z, h, or y, or (# = y and @ = a, e, i, o, or u) ...@# --> ...@#s as in bat --> bats or convey --> conveys |
if @ .ne. a, e, i, o, or u, ...@y --> ...@iness as in cloudy --> cloudiness |
if # .ne. y, or @ = a, e, i, o, or u, ...@# --> ...@#ness as in late --> lateness or gray --> grayness |
*M |
|
To summarize more briefly: Prefixes: |
*A ? re *I ? in *U ? un |
Suffixes: |
V ? ive *N ? ion, tion, en *X ? ions, ications, ens H ? th, ieth *Y ? ly *G ? ing *J ? ings *D ? ed T ? est *R ? er *Z ? ers *S ? s, es, ies *P ? ness, iness *M ? ’s |
ispell(1), ispell(5) |