4 Extra rule for -nisse ending added 11 Dec 2009
18 groupings ( v s_ending st_ending )
22 /* special characters */
24 stringdef a" '{U+00E4}'
25 stringdef o" '{U+00F6}'
26 stringdef u" '{U+00FC}'
27 stringdef ss '{U+00DF}'
29 define v 'aeiouy{a"}{o"}{u"}'
31 define s_ending 'bdfghklmnrt'
32 define st_ending s_ending - 'r'
48 define mark_regions as (
55 gopast v gopast non-v setmark p1
56 try($p1 < x $p1 = x) // at least 3
57 gopast v gopast non-v setmark p2
61 define postlude as repeat (
76 define R1 as $p1 <= cursor
77 define R2 as $p2 <= cursor
79 define standard_suffix as (
87 try (['s'] 'nis' delete)
100 ( st_ending hop 3 delete
105 [substring] R2 among(
108 try (['ig'] not 'e' R2 delete)
116 ['er' or 'en'] R1 delete
122 [substring] R2 among(