c shaff.cct Convert sh.aff file to a lexicon Alan B 4-16-96 define(le) > '\aff ' c Record marker define(m) > '\u ' c Morpheme break marker group(main) '\pre ' > do(le) set(hyp) use(eatsp) c Prefix get hyphen after '\suf ' > do(le) '-' use(eatsp) c Suffix gets hyphen before '\inf ' > do(le) '-' set(hyp) use(eatsp) c Infix gets both hyphens '\dup ' > store(dup) use(dup) ' ' nl > nl back(1) c Remove trailing spaces ' ' > ' ' back(1) c Clean up extra spaces ' ' > if(hyp) c At the space between parts, output hyphen and marker '-' clear(hyp) endif nl do(m) use(eatsp) nl > nl nl c Put blank line between records '®' > '(' c Change chevrons to parends for forced gloss '¯' > ')' group(dup) c Handle dup \dup [V][C] CVDUP '®' > '[' c Change chevrons to brackets for dup '¯' > ']' ' ' > store(dup2) use(dup2) group(dup2) c Handle dup ' ' > '' c Eat any extra spaces nl > endstore do(le) out(dup) '-' nl c At end of line, output dup entry do(m) out(dup2) '-' nl nl use(main) group(eatsp) c Eat any extra spaces ' ' > '' '' > use(main)