xref: /plan9/sys/src/cmd/spell/code.h (revision 219b2ee8daee37f4aad58d63f21287faa8e4ffdc)
1 
2 /*
3  * affix codes
4  */
5 
6 #define	ED		(1<<0)	/* +ed, +ing */
7 #define	ADJ		(1<<1)	/* (nce)-t_ce, +ize,+al, +ness, -t+cy, +ity, +ly */
8 #define	NOUN		(1<<2)	/* +s (+es), +make, +hood, +ship +less  */
9 #define PROP_COLLECT	(1<<3)	/* +'s,  +an, +ship(for -manship) +less */
10 #define ACTOR		(1<<4)	/* +er  */
11 #define	EST		(1<<5)
12 #define COMP		(EST|ACTOR)	/* +er,+est */
13 #define	DONT_TOUCH	(1<<6)
14 #define	ION		(1<<7)	/* +ion, +or */
15 #define	N_AFFIX		(1<<8) 	/* +ic, +ive, +ize, +like, +al, +ful, +ism, +ist, -t+cy, +c (maniac) */
16 #define	V_AFFIX		(1<<9)	/* +able, +ive, +ity((bility), +ment */
17 #define	V_IRREG		(1<<10)	/* +ing +es +s*/
18 #define	VERB		(V_IRREG|ED)
19 #define MAN		(1<<11)	/* +man, +men, +women, +woman */
20 #define	ADV		(1<<12)	/* +hood, +ness */
21 #define STOP		(1<<14)	/* stop list */
22 #define	NOPREF		(1<<13)	/* no prefix */
23 
24 #define MONO		(1<<15)	/* double final consonant as in fib->fibbing */
25 #define IN		(1<<16) /* in- im- ir, not un- */
26 #define _Y		(1<<17)	/* +y */
27 
28 #define ALL		(~(NOPREF|STOP|DONT_TOUCH|MONO|IN))    /*anything goes (no stop or nopref)*/
29