|
From: <fri...@us...> - 2008-12-30 13:07:31
|
Revision: 9656
http://zaf.svn.sourceforge.net/zaf/?rev=9656&view=rev
Author: friedelwolff
Date: 2008-12-30 13:07:26 +0000 (Tue, 30 Dec 2008)
Log Message:
-----------
Add support for remote past indicative (positive). This automatically supports aspectual morphemes and object morphemes
Modified Paths:
--------------
trunk/dict/zu/hunspell/zu_aff.py
Modified: trunk/dict/zu/hunspell/zu_aff.py
===================================================================
--- trunk/dict/zu/hunspell/zu_aff.py 2008-12-30 11:04:17 UTC (rev 9655)
+++ trunk/dict/zu/hunspell/zu_aff.py 2008-12-30 13:07:26 UTC (rev 9656)
@@ -42,6 +42,7 @@
import re
subject_morphemes = ["ngi", "u", "si", "ni", "u", "ba", "i", "li", "a", "si", "zi", "lu", "bu", "ku"]
+remote_past_subject_morphemes = ["nga", "wa", "sa", "na", "wa", "ba", "ya", "la", "a", "sa", "za", "lwa", "ba", "kwa"]
relative_prefixes = ["engi", "esi", "eni", "o", "aba", "e", "eli", "a", "esi", "ezi", "olu", "obu", "oku"]
situative_prefixes = ["e", "be"]
concords = subject_morphemes + relative_prefixes + situative_prefixes
@@ -275,7 +276,7 @@
# a_rules.extend(verb_rules(add_semivowels("a"+ i) +"yuku")) #XXX:DONE
#Remote past tense:
- a_rules.extend(verb_rules(contract(i+"a")))
+# a_rules.extend(verb_rules(contract(i+"a"))) #XXX:DONE
for j in object_morphemes:
if illegal_reflexive(i, j):
@@ -294,7 +295,7 @@
#TODO: be- and se- forms
#Remote past tense:
- a_rules.extend(verb_rules(contract(i+"a")+j))
+# a_rules.extend(verb_rules(contract(i+"a")+j)) #XXX:DONE
a_rules.extend(verb_rules("loku"))
@@ -305,7 +306,7 @@
#Lines below indicated with two hashes will probably be better handled
#lexically (by just adding their stems to the dictionary)
V_rules.append(['a', 'ela', 'a'])
-V_rules.append(['a', 'elani', 'a'])
+V_rules.append(['a', 'elani', 'a']) #XXX:DONE
V_rules.append(['a', 'elaphi', 'a']) #
V_rules.append(['a', 'eka', 'a']) ##
V_rules.append(['a', 'ekana', 'a'])
@@ -316,8 +317,8 @@
V_rules.append(['a', 'isani', 'a'])
V_rules.append(['a', 'isaphi', 'a']) #
V_rules.append(['0', 'na', 'a'])
-V_rules.append(['0', 'ni', 'a'])
-V_rules.append(['0', 'phi', 'a']) #
+V_rules.append(['0', 'ni', 'a']) #XXX:DONE
+V_rules.append(['0', 'phi', 'a']) #XXX:DONE #
V_rules.append(['a', 'wa', '[^w]a']) ##?
#The above can create problems with monosyllabic verbs
V_rules.append(['a', 'wani', '[^w]a'])
@@ -395,13 +396,18 @@
simple_subjects.add_rule(affix=morpheme)
# Indicative, present, negative with subject morpheme only
verb_rules(main_subjects, affix=add_semivowels("a"+morpheme), needaffix=True, circumfix=True, continuation_classes=[negative_i, negative_anga])
- #Negative future tenses:
+ #Negative future tenses
verb_rules(simple_subjects_neg, affix=(add_semivowels("a" + morpheme)))
+
# We handle class 1 negative separately:
verb_rules(main_subjects, affix="aka", needaffix=True, circumfix=True, continuation_classes=[negative_i, negative_anga])
simple_subjects_neg.add_rule(affix=add_semivowels("aka"))
+ #Remote past tense
+ for morpheme in remote_past_subject_morphemes:
+ verb_rules(main_subjects, affix=morpheme, morphology="REMOTE_PAST_IND", continuation_classes=[question])
+
#indicative long form, present, positive
verb_rules(infixes, affix="ya", needaffix=True, morphology="PRESENT_IND_LONG", continuation_classes=[simple_subjects])
#progressive aspectual morpheme
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|