From bf635078e2e50fb5a11e0ff1937007f1fec3beda Mon Sep 17 00:00:00 2001 From: Sergey Poznyakoff Date: Sun, 3 Jul 2011 13:06:12 +0300 Subject: Add conjugations samples. --- data/dbverb.struct | 4 +- data/irregular-verbs.xml | 85 ++++++++- src/cgi-bin/conj.scm4 | 2 +- src/ellinika/conjugator.scm | 354 +++++++++++++++++++----------------- src/ellinika/tests/conj-test | 39 ++++ src/ellinika/tests/conj/anoigv.scm | 1 + src/ellinika/tests/conj/bastav.scm | 3 + src/ellinika/tests/conj/lev.scm | 10 + src/ellinika/tests/conj/milav.scm | 5 + src/ellinika/tests/conj/ntynv.scm | 1 + src/ellinika/tests/conj/pav.scm | 7 + src/ellinika/tests/samples/aggelv | 28 +++ src/ellinika/tests/samples/agv | 28 +++ src/ellinika/tests/samples/anebainv | 28 +++ src/ellinika/tests/samples/anoigv | 28 +++ src/ellinika/tests/samples/apomenv | 28 +++ src/ellinika/tests/samples/aresv | 28 +++ src/ellinika/tests/samples/ballv | 28 +++ src/ellinika/tests/samples/bastav | 49 +++++ src/ellinika/tests/samples/bastv | 49 +++++ src/ellinika/tests/samples/bgainv | 28 +++ src/ellinika/tests/samples/blepv | 28 +++ src/ellinika/tests/samples/briskv | 28 +++ src/ellinika/tests/samples/denv | 28 +++ src/ellinika/tests/samples/diabazv | 28 +++ src/ellinika/tests/samples/eimai | 28 +++ src/ellinika/tests/samples/erxomai | 37 ++++ src/ellinika/tests/samples/exv | 28 +++ src/ellinika/tests/samples/kauomai | 28 +++ src/ellinika/tests/samples/kremav | 32 ++++ src/ellinika/tests/samples/lev | 36 ++++ src/ellinika/tests/samples/milav | 32 ++++ src/ellinika/tests/samples/nikav | 32 ++++ src/ellinika/tests/samples/nikv | 32 ++++ src/ellinika/tests/samples/ntynv | 28 +++ src/ellinika/tests/samples/pav | 2 + src/ellinika/tests/samples/phgainv | 28 +++ src/ellinika/tests/samples/pinv | 28 +++ src/ellinika/tests/samples/trabav | 49 +++++ src/ellinika/tests/samples/uelv | 28 +++ xml/pl/rhmata.xml | 2 +- xml/ru/rhmata.xml | 2 +- 42 files changed, 1223 insertions(+), 174 deletions(-) create mode 100755 src/ellinika/tests/conj-test create mode 100644 src/ellinika/tests/conj/bastav.scm create mode 100644 src/ellinika/tests/conj/lev.scm create mode 100644 src/ellinika/tests/conj/milav.scm create mode 100644 src/ellinika/tests/conj/pav.scm create mode 100644 src/ellinika/tests/samples/aggelv create mode 100644 src/ellinika/tests/samples/agv create mode 100644 src/ellinika/tests/samples/anebainv create mode 100644 src/ellinika/tests/samples/anoigv create mode 100644 src/ellinika/tests/samples/apomenv create mode 100644 src/ellinika/tests/samples/aresv create mode 100644 src/ellinika/tests/samples/ballv create mode 100644 src/ellinika/tests/samples/bastav create mode 100644 src/ellinika/tests/samples/bastv create mode 100644 src/ellinika/tests/samples/bgainv create mode 100644 src/ellinika/tests/samples/blepv create mode 100644 src/ellinika/tests/samples/briskv create mode 100644 src/ellinika/tests/samples/denv create mode 100644 src/ellinika/tests/samples/diabazv create mode 100644 src/ellinika/tests/samples/eimai create mode 100644 src/ellinika/tests/samples/erxomai create mode 100644 src/ellinika/tests/samples/exv create mode 100644 src/ellinika/tests/samples/kauomai create mode 100644 src/ellinika/tests/samples/kremav create mode 100644 src/ellinika/tests/samples/lev create mode 100644 src/ellinika/tests/samples/milav create mode 100644 src/ellinika/tests/samples/nikav create mode 100644 src/ellinika/tests/samples/nikv create mode 100644 src/ellinika/tests/samples/ntynv create mode 100644 src/ellinika/tests/samples/pav create mode 100644 src/ellinika/tests/samples/phgainv create mode 100644 src/ellinika/tests/samples/pinv create mode 100644 src/ellinika/tests/samples/trabav create mode 100644 src/ellinika/tests/samples/uelv diff --git a/data/dbverb.struct b/data/dbverb.struct index ce19fd3..718e348 100644 --- a/data/dbverb.struct +++ b/data/dbverb.struct @@ -76,7 +76,7 @@ INSERT INTO verbflect VALUES (25, NULL, "α", NULL, NULL, "άτε", NULL), (28, "ιέμαι", "ιέσαι", "ιέται", "ιόμαστε", "ιέστε", "ιούνται"), (29, "ιόμουν", "ιόσουν", "ιόταν", "ιόμαστε", "ιόσαστε", "ιόνταν"), -(30, NULL, "ιέσαι", NULL, NULL, "ιέσται", NULL), +(30, NULL, "ιέσαι", NULL, NULL, "ιέστε", NULL), (31, NULL, "ου", NULL, NULL, NULL, NULL), (32, NULL, NULL, NULL, NULL, "είτε", NULL), -- Συζυγία Β΄ - β΄ τάξη @@ -145,7 +145,7 @@ INSERT INTO conjugation VALUES ("B1", "act", "sub", "Αόριστος", 'aor', "ήσ", 1, "ssssss", "να", NULL, NULL, NULL), ("B1", "act", "sub", "Παρακείμενος", 'synt', NULL, 0, NULL, "να", "έχω", "Ενεστώτας", NULL), -- Προστακτική -("B1", "act", "imp", "Ενεστώτας", 'pres', NULL, 25, "-0--2-", NULL, NULL, NULL, NULL), +("B1", "act", "imp", "Ενεστώτας", 'pres', NULL, 25, "-2--2-", NULL, NULL, NULL, NULL), ("B1", "act", "imp", "Αόριστος", 'aor', "ησ", 9, "-3--2-", NULL, NULL, NULL, NULL), ("B1", "act", "imp", "Παρακείμενος", 'synt', NULL, 0, "-0--0-", "να", "έχω", "Ενεστώτας", NULL), -- Μεσοπαθητική φωνή diff --git a/data/irregular-verbs.xml b/data/irregular-verbs.xml index 312987e..89587f8 100644 --- a/data/irregular-verbs.xml +++ b/data/irregular-verbs.xml @@ -180,6 +180,35 @@ αρεσ + + @@ -188,6 +217,9 @@ βαλ + + βληθ + @@ -216,11 +248,31 @@ βγαίνω A - 000000 βγήκ βγ + + + 000000 + + +

βγείτε

+
+
+ + +

βγείτε

+
+
+ + +

βγες

+ +

βγείτε

+
+
+
@@ -391,7 +443,7 @@

κάθισε

-

κάθιστε

+

καθίστε

@@ -546,19 +598,44 @@ + + A + πά +

πάω

+

πας

+

πάει

+

πάμε

+

πάτε

+

πάνε,παν

+
- πήγαιν + πηγαίν A πά - A +

πάω

+

πας

+

πάει

+

πάμε

+

πάτε

+

πάνε,παν

πηγ + + + A + πήγαιν + + +

πήγαινε

+

πάτε,πηγαίνετε,πηγαίντε

+
+
diff --git a/src/cgi-bin/conj.scm4 b/src/cgi-bin/conj.scm4 index a8d84f1..83fb846 100644 --- a/src/cgi-bin/conj.scm4 +++ b/src/cgi-bin/conj.scm4 @@ -384,7 +384,7 @@ ifelse(IFACE,[CGI],(cgi:init)) ((class) (print-footnote "class-na" "*" "Conjugation class of this verb is not attested")) - ((root) + ((stem) (print-footnote "stem-na" "?" (_ "Το θέμα αυτού του χρόνου δεν επιβεβαιώνεται από τη βάση δεδοµένων"))))) unattested) diff --git a/src/ellinika/conjugator.scm b/src/ellinika/conjugator.scm index bffc6be..eae4ad0 100644 --- a/src/ellinika/conjugator.scm +++ b/src/ellinika/conjugator.scm @@ -37,7 +37,7 @@ ;; properties - associative list of properties ;; attested -(define (verb-set! verb key value) +(define (vinfo-set! verb key value) ; (format #t "VERB ~A KEY ~A VALUE ~A~%" verb key value) (case key ((#:conj) @@ -60,7 +60,7 @@ (cons key value))))))))) -(define (verb-get verb key) +(define (vinfo-get verb key) (case key ((#:conj) (list-ref verb 0)) @@ -103,8 +103,8 @@ (let ((verbprop (ellinika:sql-query "SELECT property,value FROM verbtense WHERE \ verb=\"~A\" AND voice=\"~A\" AND mood=\"~A\" AND tense=\"~A\"" - (verb-get vinfo #:verb) voice mood tense))) - (verb-set! + (vinfo-get vinfo #:verb) voice mood tense))) + (vinfo-set! vinfo #:proplist (let loop ((inlist (if (null? verbprop) '() @@ -194,6 +194,11 @@ verb=\"~A\" AND voice=\"~A\" AND mood=\"~A\" AND tense=\"~A\"" (else (elstr-append stem "ηθ"))))) +(define (thema-aoristou-prostaktikhs stem) + (if (elstr-suffix? stem "β" "γ" "θ" "ν") + (elstr-append stem "ε") + stem)) + (define (lookup-verb-info verb voice thema) (ellinika:sql-query "SELECT stem FROM irregular_stem \ @@ -210,6 +215,7 @@ WHERE verb=\"~A\" AND voice=\"~A\" AND thema=\"~A\"" (throw 'conjugator-error 'conjugator-error-input "cannot handle ~A" (list (force-string verb)))))) +;; FIXME: Use vinfo #:verb instead of the verb argument. (define (complement-verb-info vinfo verb voice thema) ; (format #t "COMPLEMENT ~A~%" vinfo) (let ((elverb (string->elstr verb)) @@ -217,53 +223,58 @@ WHERE verb=\"~A\" AND voice=\"~A\" AND thema=\"~A\"" (if (and (null? tmpres) (string=? thema "sub")) (lookup-verb-info verb voice "aor") tmpres)))) - (verb-set! vinfo #:stem + (vinfo-set! vinfo #:stem (cond ((not (null? result)) - (verb-set! vinfo #:attested 'stem) + (vinfo-set! vinfo #:attested 'stem) (map car result)) - ((string=? (verb-get vinfo #:conj) "A") + ((string=? (vinfo-get vinfo #:conj) "A") (let ((stem (verb-A-stem elverb))) (cond ((string=? thema "pres") - (verb-set! vinfo #:attested 'stem) + (vinfo-set! vinfo #:attested 'stem) stem) ((or (string=? thema "aor") (string=? thema "sub")) - (if (string=? voice "act") - (elstr-thema-aoristoy stem) - (thema-aoristoy-mesapathitikis-A stem))) + (cond + ((string=? voice "act") + (elstr-thema-aoristoy stem)) + ((string=? voice "pas") + (thema-aoristoy-mesapathitikis-A stem)) + (else + (throw 'conjugator-error 'conjugator-error-db + "invalid voice ~A" (list voice))))) (else #f)))) - ((string=? (verb-get vinfo #:conj) "A-depon") + ((string=? (vinfo-get vinfo #:conj) "A-depon") (let ((stem (verb-A-stem elverb))) (cond ((string=? thema "pres") - (verb-set! vinfo #:attested 'stem) + (vinfo-set! vinfo #:attested 'stem) stem) ((or (string=? thema "aor") (string=? thema "sub")) #f) ; FIXME (else #f)))) - ((string=? (verb-get vinfo #:conj) "B1") + ((string=? (vinfo-get vinfo #:conj) "B1") (let ((stem (if (elstr-suffix? elverb "άω") (elstr-trim elverb -2) (elstr-trim elverb -1)))) (cond ((or (string=? voice "act") (string=? thema "pres")) - (verb-set! vinfo #:attested 'stem) + (vinfo-set! vinfo #:attested 'stem) stem) ((or (string=? thema "aor") (string=? thema "sub")) (map (lambda (aor) (thema-aoristoy-mesapathitikis-B stem aor)) - (conjugate verb "act" "ind" "Αόριστος"))) + (conjugate vinfo "act" "ind" "Αόριστος"))) (else #f)))) - ((string=? (verb-get vinfo #:conj) "B2") + ((string=? (vinfo-get vinfo #:conj) "B2") (let ((stem (elstr-trim elverb -1))) (cond ((or (string=? voice "act") (string=? thema "pres")) - (verb-set! vinfo #:attested 'stem) + (vinfo-set! vinfo #:attested 'stem) stem) ((or (string=? thema "aor") (string=? thema "sub")) (elstr-append stem "ηθ")) ;; FIXME: guesswork @@ -343,7 +354,7 @@ AND c.tense=\"~A\" AND c.flect = f.ident ORDER by fold" (+ (- len syl) 1)))) ;; (define (get-property conj vinfo key default) -;; (if ((override (verb-get vinfo +;; (if ((override (vinfo-get vinfo ;; (symbol->keyword ;; (string->symbol ;; (string-append @@ -352,37 +363,37 @@ AND c.tense=\"~A\" AND c.flect = f.ident ORDER by fold" ;; (if override ;; (let ((t (conj-info key conj))) ;; (if t -;; (or (verb-get vinfo key) +;; (or (vinfo-get vinfo key) ;; t) -;; (or (verb-get vinfo key) +;; (or (vinfo-get vinfo key) ;; (conj-info key conj) ;; default)))))) (define (get-suffix conj vinfo) - (let ((ret (let ((override (verb-get vinfo #:override))) + (let ((ret (let ((override (vinfo-get vinfo #:override))) (if (and override (member "suffix" override)) (let ((t (conj-info #:suffix conj))) (if t - (or (verb-get vinfo #:suffix) + (or (vinfo-get vinfo #:suffix) t) "")) - (or (verb-get vinfo #:suffix) + (or (vinfo-get vinfo #:suffix) (conj-info #:suffix conj) ""))))) (if (list? ret) ret (list ret)))) (define (get-accmap conj vinfo) - (let ((override (verb-get vinfo #:override))) + (let ((override (vinfo-get vinfo #:override))) (if (and override (member "accmap" override)) (let ((t (conj-info #:accmap conj))) (if t - (or (verb-get vinfo #:accmap) + (or (vinfo-get vinfo #:accmap) t))) - (or (verb-get vinfo #:accmap) + (or (vinfo-get vinfo #:accmap) (conj-info #:accmap conj) "000000")))) @@ -394,13 +405,13 @@ AND c.tense=\"~A\" AND c.flect = f.ident ORDER by fold" (cond ((> (length accmap) 6) (set! accmap (list-head accmap 6)) - (set! augment (or (verb-get vinfo #:augment) "ε")))) -; (format #t "AUGMENT ~A ~A~%" vinfo (verb-get vinfo #:augment)) + (set! augment (or (vinfo-get vinfo #:augment) "ε")))) +; (format #t "AUGMENT ~A ~A~%" vinfo (vinfo-get vinfo #:augment)) (let ((forms (map (lambda (flect acc person) (cond - ((verb-get vinfo (symbol->keyword + ((vinfo-get vinfo (symbol->keyword (string->symbol (number->string person)))) => (lambda (personal-form) @@ -468,18 +479,22 @@ AND c.tense=\"~A\" AND c.flect = f.ident ORDER by fold" forms) (map force-string forms))))) -(define (individual-verb verb voice mood tense) +(define (individual-verb vinfo voice mood tense) (let ((res (ellinika:sql-query "SELECT f.sing1,f.sing2,f.sing3,f.plur1,f.plur2,f.plur3\ FROM individual_verb i,verbflect f\ WHERE i.verb=\"~A\" AND i.voice=\"~A\" AND i.mood=\"~A\"\ AND i.tense=\"~A\" AND i.ident=f.ident" - verb voice mood tense))) - (if (not (null? res)) - (append (car res) - (list "I" - '(class stem))) - #f))) + (vinfo-get vinfo #:verb) voice mood tense))) + (if (null? res) + #f + (map + (lambda (elt) + (append + elt + (list "I" + '(class stem)))) + res)))) (define (merge-conjugated-forms lista listb) (map @@ -487,141 +502,150 @@ AND c.tense=\"~A\" AND c.flect = f.ident ORDER by fold" (or a b)) lista listb)) -(define (conjugate verb voice mood tense . rest) +(define (conjugate vinfo voice mood tense . rest) (cond - ((individual-verb verb voice mood tense) => + ((individual-verb vinfo voice mood tense) => (lambda (res) - (list res))) + res)) (else - (let* ((vinfo (load-verb-info verb voice mood tense)) - (conj-list (get-conj-info (or - (verb-get vinfo #:class) - (verb-get vinfo #:conj)) - voice mood tense)) - (verb (force-string (verb-get vinfo #:verb)))) - (format #t "VINFO ~A~%" vinfo) - (if (not conj-list) - (list (list #f #f #f #f #f #f #f #f)) - (map car - (fold - (lambda (elt prev) -; (format #t "ELT ~A~%" elt) - (if (null? prev) - (list elt) - (let ((top (car prev))) - (if (let ((a (cdr elt)) - (b (cdr top))) - (and (string? a) (string? b) (string=? a b))) - (cons (cons - (merge-conjugated-forms (car top) (car elt)) - (cdr top)) - (cdr prev)) - (cons elt prev))))) - '() - (fold - (lambda (conj prev) + (let ((vinfo (copy-tree vinfo))) + (if (not (member #:noload rest)) + (load-proplist vinfo voice mood tense)) +; (format #t "VINFO ~A~%" vinfo) + (let ((conj-list (get-conj-info (or + (vinfo-get vinfo #:class) + (vinfo-get vinfo #:conj)) + voice mood tense)) + (verb (force-string (vinfo-get vinfo #:verb)))) +; (format #t "VINFO ~A~%" vinfo) + (if (not conj-list) + (list (list #f #f #f #f #f #f #f #f)) + (map car + (fold + (lambda (elt prev) +; (format #t "ELT ~A~%" elt) + (if (null? prev) + (list elt) + (let ((top (car prev))) + (if (let ((a (cdr elt)) + (b (cdr top))) + (and (string? a) (string? b) (string=? a b))) + (cons (cons + (merge-conjugated-forms (car top) (car elt)) + (cdr top)) + (cdr prev)) + (cons elt prev))))) + '() + (fold + (lambda (conj prev) ; (format #t "CONJ ~A~%" conj) - (if (member #:nopart rest) - (conj-info-set! #:particle conj #f)) - (cond - ((and (string=? (conj-info #:thema conj) "synt") - (conj-info #:aux conj)) - (let ((aparemfato-list - (map - (lambda (x) - (let ((t (conjugation:table x))) - (if t + (if (member #:nopart rest) + (conj-info-set! #:particle conj #f)) + (cond + ((and (string=? (conj-info #:thema conj) "synt") + (conj-info #:aux conj)) + (let ((aparemfato-list + (map + (lambda (x) + (let ((t (conjugation:table x))) + (if t + (cons + (list-ref t 2) + (conjugation:attested x)) + #f))) + (conjugate vinfo voice "sub" "Αόριστος" + #:nopart))) + (part (conj-info #:particle conj)) + (fold-id (conj-info #:fold conj))) + (fold + (lambda (param prev) + (if (not param) + prev + (let ((aparemfato (car param)) + (attested (cdr param))) + (cons (cons - (list-ref t 2) - (conjugation:attested x)) - #f))) - (conjugate verb voice "sub" "Αόριστος" - #:nopart))) - (part (conj-info #:particle conj)) - (fold-id (conj-info #:fold conj))) - (fold - (lambda (param prev) - (if (not param) - prev - (let ((aparemfato (car param)) - (attested (cdr param))) - (cons - (cons - (append - (map - (lambda (aux flag) - (if (char=? flag #\-) - #f - (elstr->string - (if part - (elstr-append part " " aux " " - aparemfato) - (elstr-append aux " " aparemfato))))) - (conjugation:table - (car (conjugate (conj-info #:aux conj) - "act" "ind" - (conj-info #:auxtense conj)))) - (string->list (or (verb-get vinfo #:accmap) - (conj-info #:accmap conj) - "000000"))) - (list (verb-get vinfo #:conj) - attested)) - fold-id) - prev)))) - prev - aparemfato-list))) - ((and (string=? (conj-info #:thema conj) "synt") - (conj-info #:auxtense conj)) - (let ((part (conj-info #:particle conj))) - (fold-right - (lambda (tenses prev) - (cons - (cons - (append - (map - (lambda (t) - (elstr->string (elstr-append part " " t))) - (list-head tenses 6)) - (list-tail tenses 6)) - (conj-info #:fold conj)) - prev)) - prev - (conjugate verb voice "ind" - (conj-info #:auxtense conj))))) - (else - (let ((vinfo (copy-tree vinfo))) - (if (verb-get vinfo #:stem) - (verb-set! vinfo #:attested 'stem) - (let ((thema (string-split (conj-info #:thema conj) #\:))) -; (format #t "THEMA ~A~%" thema) - (complement-verb-info vinfo verb - (if (null? (cdr thema)) - voice - (car (cdr thema))) - (car thema)))) - - (fold - (lambda (suffix prev) - (append - (fold - (lambda (stem prev) - (cons - (cons - (append (apply-flect conj vinfo verb stem suffix) - (list (verb-get vinfo #:conj) - (verb-get vinfo #:attested))) - (conj-info #:fold conj)) - prev)) - '() - (verb-get vinfo #:stem)) - prev)) - prev - (get-suffix conj vinfo)))))) - '() - conj-list)))))))) + (append + (map + (lambda (aux flag) + (if (char=? flag #\-) + #f + (elstr->string + (if part + (elstr-append part " " aux " " + aparemfato) + (elstr-append aux " " aparemfato))))) + (conjugation:table + (car (conjugate + (conjugator:open-verb + (conj-info #:aux conj)) + "act" "ind" + (conj-info #:auxtense conj)))) + (string->list (or (vinfo-get vinfo #:accmap) + (conj-info #:accmap conj) + "000000"))) + (list (vinfo-get vinfo #:conj) + attested)) + fold-id) + prev)))) + prev + aparemfato-list))) + ((and (string=? (conj-info #:thema conj) "synt") + (conj-info #:auxtense conj)) + (let ((part (conj-info #:particle conj))) + (fold-right + (lambda (tenses prev) + (cons + (cons + (append + (map + (lambda (t) + (elstr->string (elstr-append part " " t))) + (list-head tenses 6)) + (list-tail tenses 6)) + (conj-info #:fold conj)) + prev)) + prev + (conjugate vinfo voice "ind" + (conj-info #:auxtense conj) #:noload)))) + (else + (let ((vinfo (copy-tree vinfo))) + (if (vinfo-get vinfo #:stem) + (vinfo-set! vinfo #:attested 'stem) + (let ((thema (string-split + (conj-info #:thema conj) #\:))) +; (format #t "THEMA ~A~%" thema) + (complement-verb-info vinfo verb + (if (null? (cdr thema)) + voice + (car (cdr thema))) + (car thema)))) + + (fold + (lambda (suffix prev) + (append + (fold + (lambda (stem prev) + (cons + (cons + (append (apply-flect conj vinfo verb stem suffix) + (list (vinfo-get vinfo #:conj) + (vinfo-get vinfo #:attested))) + (conj-info #:fold conj)) + prev)) + '() + (vinfo-get vinfo #:stem)) + prev)) + prev + (get-suffix conj vinfo)))))) + '() + conj-list))))))))) + +(define-public (conjugator:open-verb verb) + (create-basic-verb-info verb)) (define-public (conjugator verb voice mood tense) - (conjugate verb voice mood tense)) + (conjugate (conjugator:open-verb verb) voice mood tense)) (define-public (conjugation:table conj) (cond diff --git a/src/ellinika/tests/conj-test b/src/ellinika/tests/conj-test new file mode 100755 index 0000000..fbacae1 --- /dev/null +++ b/src/ellinika/tests/conj-test @@ -0,0 +1,39 @@ +#! /bin/sh + +testdir=conj.dir +failures=0 + +testcon() { + if guile -s conj/$1.scm | diff -pu samples/$1 - > $testdir/$1.diff + then + status=PASS + rm $testdir/$1.diff + else + status=FAIL + failures=1 + fi + echo "$1: $status" +} + +if ! test -d $testdir; then + mkdir $testdir || exit 2 +fi + +if test $# -gt 0; then + for verb in $* + do + testcon $verb + done +else + find samples -type f -printf '%f\n' | + while read verb + do + testcon $verb + done +fi + +if test $failures -eq 0; then + rmdir $testdir +fi + +exit $failures diff --git a/src/ellinika/tests/conj/anoigv.scm b/src/ellinika/tests/conj/anoigv.scm index 4ba6e12..cb42dba 100644 --- a/src/ellinika/tests/conj/anoigv.scm +++ b/src/ellinika/tests/conj/anoigv.scm @@ -1,3 +1,4 @@ (use-modules ((ellinika test-conjugation))) (test-conjugation:verb "ανοίγω") +;(test-conjugation:tense "ανοίγω" "pas" "imp" "Αόριστος") diff --git a/src/ellinika/tests/conj/bastav.scm b/src/ellinika/tests/conj/bastav.scm new file mode 100644 index 0000000..bdf5a5d --- /dev/null +++ b/src/ellinika/tests/conj/bastav.scm @@ -0,0 +1,3 @@ +(use-modules ((ellinika test-conjugation))) + +(test-conjugation:verb "βαστάω") diff --git a/src/ellinika/tests/conj/lev.scm b/src/ellinika/tests/conj/lev.scm new file mode 100644 index 0000000..c42ad93 --- /dev/null +++ b/src/ellinika/tests/conj/lev.scm @@ -0,0 +1,10 @@ +(use-modules ((ellinika test-conjugation))) + +(test-conjugation:verb "λέω") +;(test-conjugation:tense "λέω" "pas" "ind" "Αόριστος") +;(test-conjugation:tense "λέω" "act" "ind" "Ενεστώτας") +;(test-conjugation:tense "λέω" "act" "ind" "Παρακείμενος") +;(test-conjugation:tense "λέω" "act" "ind" "Μέλλοντας διαρκείας") +;(test-conjugation:tense "λέω" "act" "ind" "Παρατατικός") +;(test-conjugation:tense "λέω" "pas" "ind" "Μέλλοντας στιγμιαίος") +;(test-conjugation:tense "λέω" "pas" "imp" "Αόριστος") \ No newline at end of file diff --git a/src/ellinika/tests/conj/milav.scm b/src/ellinika/tests/conj/milav.scm new file mode 100644 index 0000000..413dd72 --- /dev/null +++ b/src/ellinika/tests/conj/milav.scm @@ -0,0 +1,5 @@ +(use-modules ((ellinika test-conjugation))) + +(test-conjugation:verb "μιλάω") +;(test-conjugation:tense "μιλάω" "act" "ind" "Μέλλοντας διαρκείας") +;(test-conjugation:tense "μιλάω" "act" "ind" "Ενεστώτας") diff --git a/src/ellinika/tests/conj/ntynv.scm b/src/ellinika/tests/conj/ntynv.scm index 1fd1545..42ba15b 100644 --- a/src/ellinika/tests/conj/ntynv.scm +++ b/src/ellinika/tests/conj/ntynv.scm @@ -1,3 +1,4 @@ (use-modules (ellinika test-conjugation)) (test-conjugation:verb "ντύνω") +;(test-conjugation:tense "ντύνω" "act" "imp" "Αόριστος") \ No newline at end of file diff --git a/src/ellinika/tests/conj/pav.scm b/src/ellinika/tests/conj/pav.scm new file mode 100644 index 0000000..d438e56 --- /dev/null +++ b/src/ellinika/tests/conj/pav.scm @@ -0,0 +1,7 @@ +(use-modules ((ellinika test-conjugation))) + +;(test-conjugation:verb "πάω") +(test-conjugation:tense "πάω" "act" "ind" "Ενεστώτας") +;(test-conjugation:tense "πάω" "act" "ind" "Μέλλοντας στιγμιαίος") +;(test-conjugation:tense "πάω" "act" "sub" "Ενεστώτας") +;(test-conjugation:tense "πάω" "act" "sub" "Αόριστος") diff --git a/src/ellinika/tests/samples/aggelv b/src/ellinika/tests/samples/aggelv new file mode 100644 index 0000000..348ac81 --- /dev/null +++ b/src/ellinika/tests/samples/aggelv @@ -0,0 +1,28 @@ +αγγέλω Ενεργητηκή φωνή/Οριστική/Ενεστώτας: (αγγέλω αγγέλεις αγγέλει αγγέλουμε αγγέλετε αγγέλουν(ε)) +αγγέλω Ενεργητηκή φωνή/Οριστική/Παρατατικός: (άγγελα άγγελες άγγελε αγγέλαμε αγγέλατε άγγελαν) +αγγέλω Ενεργητηκή φωνή/Οριστική/Μέλλοντας διαρκείας: (θα αγγέλω θα αγγέλεις θα αγγέλει θα αγγέλουμε θα αγγέλετε θα αγγέλουν(ε)) +αγγέλω Ενεργητηκή φωνή/Οριστική/Αόριστος: (άγγειλα άγγειλες άγγειλε αγγείλαμε αγγείλατε άγγειλαν) +αγγέλω Ενεργητηκή φωνή/Οριστική/Παρακείμενος: (έχω αγγείλει έχεις αγγείλει έχει αγγείλει έχουμε αγγείλει έχετε αγγείλει έχουν(ε) αγγείλει) +αγγέλω Ενεργητηκή φωνή/Οριστική/Υπερσυντέλικος: (είχα αγγείλει είχες αγγείλει είχα αγγείλει είχαμε αγγείλει είχατε αγγείλει είχαν αγγείλει) +αγγέλω Ενεργητηκή φωνή/Οριστική/Συντελεσμένος μέλλοντας: (θα έχω αγγείλει θα έχεις αγγείλει θα έχει αγγείλει θα έχουμε αγγείλει θα έχετε αγγείλει θα έχουν(ε) αγγείλει) +αγγέλω Ενεργητηκή φωνή/Οριστική/Μέλλοντας στιγμιαίος: (θα αγγείλω θα αγγείλεις θα αγγείλει θα αγγείλουμε θα αγγείλετε θα αγγείλουν(ε)) +αγγέλω Ενεργητηκή φωνή/Υποτακτική/Ενεστώτας: (να αγγέλω να αγγέλεις να αγγέλει να αγγέλουμε να αγγέλετε να αγγέλουν(ε)) +αγγέλω Ενεργητηκή φωνή/Υποτακτική/Αόριστος: (να αγγείλω να αγγείλεις να αγγείλει να αγγείλουμε να αγγείλετε να αγγείλουν(ε)) +αγγέλω Ενεργητηκή φωνή/Υποτακτική/Παρακείμενος: (να έχω αγγείλει να έχεις αγγείλει να έχει αγγείλει να έχουμε αγγείλει να έχετε αγγείλει να έχουν(ε) αγγείλει) +αγγέλω Ενεργητηκή φωνή/Προστακτική/Ενεστώτας: (#f άγγελε #f #f αγγέλετε #f) +αγγέλω Ενεργητηκή φωνή/Προστακτική/Αόριστος: (#f άγγειλε #f #f αγγείλτε #f) +αγγέλω Ενεργητηκή φωνή/Προστακτική/Παρακείμενος: (#f να έχεις αγγείλει #f #f να έχετε αγγείλει #f) +αγγέλω Μεσοπαθητική φωνή/Οριστική/Ενεστώτας: (αγγέλομαι αγγέλεσαι αγγέλεται αγγελόμαστε αγγέλεστε αγγέλονται) +αγγέλω Μεσοπαθητική φωνή/Οριστική/Παρατατικός: (αγγελομούν αγγελοσούν αγγελόταν αγγελόμαστε αγγελόσαστε αγγέλονταν) +αγγέλω Μεσοπαθητική φωνή/Οριστική/Μέλλοντας διαρκείας: (θα αγγέλομαι θα αγγέλεσαι θα αγγέλεται θα αγγελόμαστε θα αγγέλεστε θα αγγέλονται) +αγγέλω Μεσοπαθητική φωνή/Οριστική/Αόριστος: !(αγγέλθηκα αγγέλθηκες αγγέλθηκε αγγελθήκαμε αγγελθήκατε αγγέλθηκαν) +αγγέλω Μεσοπαθητική φωνή/Οριστική/Παρακείμενος: !(έχω αγγελθεί έχεις αγγελθεί έχει αγγελθεί έχουμε αγγελθεί έχετε αγγελθεί έχουν(ε) αγγελθεί) +αγγέλω Μεσοπαθητική φωνή/Οριστική/Υπερσυντέλικος: !(είχα αγγελθεί είχες αγγελθεί είχα αγγελθεί είχαμε αγγελθεί είχατε αγγελθεί είχαν αγγελθεί) +αγγέλω Μεσοπαθητική φωνή/Οριστική/Συντελεσμένος μέλλοντας: !(θα έχω αγγελθεί θα έχεις αγγελθεί θα έχει αγγελθεί θα έχουμε αγγελθεί θα έχετε αγγελθεί θα έχουν(ε) αγγελθεί) +αγγέλω Μεσοπαθητική φωνή/Οριστική/Μέλλοντας στιγμιαίος: !(θα αγγελθώ θα αγγελθείς θα αγγελθεί θα αγγελθούμε θα αγγελθείτε θα αγγελθούν(ε)) +αγγέλω Μεσοπαθητική φωνή/Υποτακτική/Ενεστώτας: (να αγγέλομαι να αγγέλεσαι να αγγέλεται να αγγελόμαστε να αγγέλεστε να αγγέλονται) +αγγέλω Μεσοπαθητική φωνή/Υποτακτική/Αόριστος: !(να αγγελθώ να αγγελθείς να αγγελθεί να αγγελθούμε να αγγελθείτε να αγγελθούν(ε)) +αγγέλω Μεσοπαθητική φωνή/Υποτακτική/Παρακείμενος: !(να έχω αγγελθεί να έχεις αγγελθεί να έχει αγγελθεί να έχουμε αγγελθεί να έχετε αγγελθεί να έχουν(ε) αγγελθεί) +αγγέλω Μεσοπαθητική φωνή/Προστακτική/Ενεστώτας: (#f να αγγέλεσαι #f #f να αγγέλεστε #f) +αγγέλω Μεσοπαθητική φωνή/Προστακτική/Αόριστος: !(#f αγγείλου #f #f αγγελθείτε #f) +αγγέλω Μεσοπαθητική φωνή/Προστακτική/Παρακείμενος: !(#f να έχεις αγγελθεί #f #f να έχετε αγγελθεί #f) diff --git a/src/ellinika/tests/samples/agv b/src/ellinika/tests/samples/agv new file mode 100644 index 0000000..0fd9fa1 --- /dev/null +++ b/src/ellinika/tests/samples/agv @@ -0,0 +1,28 @@ +άγω Ενεργητηκή φωνή/Οριστική/Ενεστώτας: (άγω άγεις άγει άγουμε άγετε άγουν(ε)) +άγω Ενεργητηκή φωνή/Οριστική/Παρατατικός: (έαγα έαγες έαγε άγαμε άγατε έαγαν) +άγω Ενεργητηκή φωνή/Οριστική/Μέλλοντας διαρκείας: (θα άγω θα άγεις θα άγει θα άγουμε θα άγετε θα άγουν(ε)) +άγω Ενεργητηκή φωνή/Οριστική/Αόριστος: (ήγαγα ήγαγες ήγαγε ηγάγαμε ηγάγατε ήγαγαν) +άγω Ενεργητηκή φωνή/Οριστική/Παρακείμενος: (έχω αγάγει έχεις αγάγει έχει αγάγει έχουμε αγάγει έχετε αγάγει έχουν(ε) αγάγει) +άγω Ενεργητηκή φωνή/Οριστική/Υπερσυντέλικος: (είχα αγάγει είχες αγάγει είχα αγάγει είχαμε αγάγει είχατε αγάγει είχαν αγάγει) +άγω Ενεργητηκή φωνή/Οριστική/Συντελεσμένος μέλλοντας: (θα έχω αγάγει θα έχεις αγάγει θα έχει αγάγει θα έχουμε αγάγει θα έχετε αγάγει θα έχουν(ε) αγάγει) +άγω Ενεργητηκή φωνή/Οριστική/Μέλλοντας στιγμιαίος: (θα αγάγω θα αγάγεις θα αγάγει θα αγάγουμε θα αγάγετε θα αγάγουν(ε)) +άγω Ενεργητηκή φωνή/Υποτακτική/Ενεστώτας: (να άγω να άγεις να άγει να άγουμε να άγετε να άγουν(ε)) +άγω Ενεργητηκή φωνή/Υποτακτική/Αόριστος: (να αγάγω να αγάγεις να αγάγει να αγάγουμε να αγάγετε να αγάγουν(ε)) +άγω Ενεργητηκή φωνή/Υποτακτική/Παρακείμενος: (να έχω αγάγει να έχεις αγάγει να έχει αγάγει να έχουμε αγάγει να έχετε αγάγει να έχουν(ε) αγάγει) +άγω Ενεργητηκή φωνή/Προστακτική/Ενεστώτας: (#f άγε #f #f άγετε #f) +άγω Ενεργητηκή φωνή/Προστακτική/Αόριστος: (#f άγαγε #f #f αγάγτε #f) +άγω Ενεργητηκή φωνή/Προστακτική/Παρακείμενος: (#f να έχεις αγάγει #f #f να έχετε αγάγει #f) +άγω Μεσοπαθητική φωνή/Οριστική/Ενεστώτας: (άγομαι άγεσαι άγεται αγόμαστε άγεστε άγονται) +άγω Μεσοπαθητική φωνή/Οριστική/Παρατατικός: (αγομούν αγοσούν αγόταν αγόμαστε αγόσαστε άγονταν) +άγω Μεσοπαθητική φωνή/Οριστική/Μέλλοντας διαρκείας: (θα άγομαι θα άγεσαι θα άγεται θα αγόμαστε θα άγεστε θα άγονται) +άγω Μεσοπαθητική φωνή/Οριστική/Αόριστος: (άχθηκα άχθηκες άχθηκε αχθήκαμε αχθήκατε άχθηκαν) +άγω Μεσοπαθητική φωνή/Οριστική/Παρακείμενος: (έχω αχθεί έχεις αχθεί έχει αχθεί έχουμε αχθεί έχετε αχθεί έχουν(ε) αχθεί) +άγω Μεσοπαθητική φωνή/Οριστική/Υπερσυντέλικος: (είχα αχθεί είχες αχθεί είχα αχθεί είχαμε αχθεί είχατε αχθεί είχαν αχθεί) +άγω Μεσοπαθητική φωνή/Οριστική/Συντελεσμένος μέλλοντας: (θα έχω αχθεί θα έχεις αχθεί θα έχει αχθεί θα έχουμε αχθεί θα έχετε αχθεί θα έχουν(ε) αχθεί) +άγω Μεσοπαθητική φωνή/Οριστική/Μέλλοντας στιγμιαίος: (θα αχθώ θα αχθείς θα αχθεί θα αχθούμε θα αχθείτε θα αχθούν(ε)) +άγω Μεσοπαθητική φωνή/Υποτακτική/Ενεστώτας: (να άγομαι να άγεσαι να άγεται να αγόμαστε να άγεστε να άγονται) +άγω Μεσοπαθητική φωνή/Υποτακτική/Αόριστος: (να αχθώ να αχθείς να αχθεί να αχθούμε να αχθείτε να αχθούν(ε)) +άγω Μεσοπαθητική φωνή/Υποτακτική/Παρακείμενος: (να έχω αχθεί να έχεις αχθεί να έχει αχθεί να έχουμε αχθεί να έχετε αχθεί να έχουν(ε) αχθεί) +άγω Μεσοπαθητική φωνή/Προστακτική/Ενεστώτας: (#f να άγεσαι #f #f να άγεστε #f) +άγω Μεσοπαθητική φωνή/Προστακτική/Αόριστος: (#f ήγαγου #f #f αχθείτε #f) +άγω Μεσοπαθητική φωνή/Προστακτική/Παρακείμενος: (#f να έχεις αχθεί #f #f να έχετε αχθεί #f) diff --git a/src/ellinika/tests/samples/anebainv b/src/ellinika/tests/samples/anebainv new file mode 100644 index 0000000..31a325d --- /dev/null +++ b/src/ellinika/tests/samples/anebainv @@ -0,0 +1,28 @@ +ανεβαίνω Ενεργητηκή φωνή/Οριστική/Ενεστώτας: (ανεβαίνω ανεβαίνεις ανεβαίνει ανεβαίνουμε ανεβαίνετε ανεβαίνουν(ε)) +ανεβαίνω Ενεργητηκή φωνή/Οριστική/Παρατατικός: (ανέβαινα ανέβαινες ανέβαινε ανεβαίναμε ανεβαίνατε ανέβαιναν) +ανεβαίνω Ενεργητηκή φωνή/Οριστική/Μέλλοντας διαρκείας: (θα ανεβαίνω θα ανεβαίνεις θα ανεβαίνει θα ανεβαίνουμε θα ανεβαίνετε θα ανεβαίνουν(ε)) +ανεβαίνω Ενεργητηκή φωνή/Οριστική/Αόριστος: (ανέβηκα ανέβηκες ανέβηκε ανεβήκαμε ανεβήκατε ανέβηκαν) +ανεβαίνω Ενεργητηκή φωνή/Οριστική/Παρακείμενος: (έχω ανέβει έχεις ανέβει έχει ανέβει έχουμε ανέβει έχετε ανέβει έχουν(ε) ανέβει) +ανεβαίνω Ενεργητηκή φωνή/Οριστική/Υπερσυντέλικος: (είχα ανέβει είχες ανέβει είχα ανέβει είχαμε ανέβει είχατε ανέβει είχαν ανέβει) +ανεβαίνω Ενεργητηκή φωνή/Οριστική/Συντελεσμένος μέλλοντας: (θα έχω ανέβει θα έχεις ανέβει θα έχει ανέβει θα έχουμε ανέβει θα έχετε ανέβει θα έχουν(ε) ανέβει) +ανεβαίνω Ενεργητηκή φωνή/Οριστική/Μέλλοντας στιγμιαίος: (θα ανέβω θα ανέβεις θα ανέβει θα ανέβουμε θα ανέβετε θα ανέβουν(ε)) +ανεβαίνω Ενεργητηκή φωνή/Υποτακτική/Ενεστώτας: (να ανεβαίνω να ανεβαίνεις να ανεβαίνει να ανεβαίνουμε να ανεβαίνετε να ανεβαίνουν(ε)) +ανεβαίνω Ενεργητηκή φωνή/Υποτακτική/Αόριστος: (να ανέβω να ανέβεις να ανέβει να ανέβουμε να ανέβετε να ανέβουν(ε)) +ανεβαίνω Ενεργητηκή φωνή/Υποτακτική/Παρακείμενος: (να έχω ανέβει να έχεις ανέβει να έχει ανέβει να έχουμε ανέβει να έχετε ανέβει να έχουν(ε) ανέβει) +ανεβαίνω Ενεργητηκή φωνή/Προστακτική/Ενεστώτας: (#f ανέβαινε #f #f ανεβαίνετε #f) +ανεβαίνω Ενεργητηκή φωνή/Προστακτική/Αόριστος: (#f ανέβε #f #f ανεβείτε #f) +ανεβαίνω Ενεργητηκή φωνή/Προστακτική/Παρακείμενος: (#f να έχεις ανέβει #f #f να έχετε ανέβει #f) +ανεβαίνω Μεσοπαθητική φωνή/Οριστική/Ενεστώτας: #f +ανεβαίνω Μεσοπαθητική φωνή/Οριστική/Παρατατικός: #f +ανεβαίνω Μεσοπαθητική φωνή/Οριστική/Μέλλοντας διαρκείας: #f +ανεβαίνω Μεσοπαθητική φωνή/Οριστική/Αόριστος: #f +ανεβαίνω Μεσοπαθητική φωνή/Οριστική/Παρακείμενος: #f +ανεβαίνω Μεσοπαθητική φωνή/Οριστική/Υπερσυντέλικος: #f +ανεβαίνω Μεσοπαθητική φωνή/Οριστική/Συντελεσμένος μέλλοντας: #f +ανεβαίνω Μεσοπαθητική φωνή/Οριστική/Μέλλοντας στιγμιαίος: #f +ανεβαίνω Μεσοπαθητική φωνή/Υποτακτική/Ενεστώτας: #f +ανεβαίνω Μεσοπαθητική φωνή/Υποτακτική/Αόριστος: #f +ανεβαίνω Μεσοπαθητική φωνή/Υποτακτική/Παρακείμενος: #f +ανεβαίνω Μεσοπαθητική φωνή/Προστακτική/Ενεστώτας: #f +ανεβαίνω Μεσοπαθητική φωνή/Προστακτική/Αόριστος: #f +ανεβαίνω Μεσοπαθητική φωνή/Προστακτική/Παρακείμενος: #f diff --git a/src/ellinika/tests/samples/anoigv b/src/ellinika/tests/samples/anoigv new file mode 100644 index 0000000..1060c9a --- /dev/null +++ b/src/ellinika/tests/samples/anoigv @@ -0,0 +1,28 @@ +ανοίγω Ενεργητηκή φωνή/Οριστική/Ενεστώτας: *(ανοίγω ανοίγεις ανοίγει ανοίγουμε ανοίγετε ανοίγουν(ε)) +ανοίγω Ενεργητηκή φωνή/Οριστική/Παρατατικός: *(άνοιγα άνοιγες άνοιγε ανοίγαμε ανοίγατε άνοιγαν) +ανοίγω Ενεργητηκή φωνή/Οριστική/Μέλλοντας διαρκείας: *(θα ανοίγω θα ανοίγεις θα ανοίγει θα ανοίγουμε θα ανοίγετε θα ανοίγουν(ε)) +ανοίγω Ενεργητηκή φωνή/Οριστική/Αόριστος: *!(άνοιξα άνοιξες άνοιξε ανοίξαμε ανοίξατε άνοιξαν) +ανοίγω Ενεργητηκή φωνή/Οριστική/Παρακείμενος: *!(έχω ανοίξει έχεις ανοίξει έχει ανοίξει έχουμε ανοίξει έχετε ανοίξει έχουν(ε) ανοίξει) +ανοίγω Ενεργητηκή φωνή/Οριστική/Υπερσυντέλικος: *!(είχα ανοίξει είχες ανοίξει είχα ανοίξει είχαμε ανοίξει είχατε ανοίξει είχαν ανοίξει) +ανοίγω Ενεργητηκή φωνή/Οριστική/Συντελεσμένος μέλλοντας: *!(θα έχω ανοίξει θα έχεις ανοίξει θα έχει ανοίξει θα έχουμε ανοίξει θα έχετε ανοίξει θα έχουν(ε) ανοίξει) +ανοίγω Ενεργητηκή φωνή/Οριστική/Μέλλοντας στιγμιαίος: *!(θα ανοίξω θα ανοίξεις θα ανοίξει θα ανοίξουμε θα ανοίξετε θα ανοίξουν(ε)) +ανοίγω Ενεργητηκή φωνή/Υποτακτική/Ενεστώτας: *(να ανοίγω να ανοίγεις να ανοίγει να ανοίγουμε να ανοίγετε να ανοίγουν(ε)) +ανοίγω Ενεργητηκή φωνή/Υποτακτική/Αόριστος: *!(να ανοίξω να ανοίξεις να ανοίξει να ανοίξουμε να ανοίξετε να ανοίξουν(ε)) +ανοίγω Ενεργητηκή φωνή/Υποτακτική/Παρακείμενος: *!(να έχω ανοίξει να έχεις ανοίξει να έχει ανοίξει να έχουμε ανοίξει να έχετε ανοίξει να έχουν(ε) ανοίξει) +ανοίγω Ενεργητηκή φωνή/Προστακτική/Ενεστώτας: *(#f άνοιγε #f #f ανοίγετε #f) +ανοίγω Ενεργητηκή φωνή/Προστακτική/Αόριστος: *!(#f άνοιξε #f #f ανοίξτε #f) +ανοίγω Ενεργητηκή φωνή/Προστακτική/Παρακείμενος: *!(#f να έχεις ανοίξει #f #f να έχετε ανοίξει #f) +ανοίγω Μεσοπαθητική φωνή/Οριστική/Ενεστώτας: *(ανοίγομαι ανοίγεσαι ανοίγεται ανοιγόμαστε ανοίγεστε ανοίγονται) +ανοίγω Μεσοπαθητική φωνή/Οριστική/Παρατατικός: *(ανοιγόμουν ανοιγόσουν ανοιγόταν ανοιγόμαστε ανοιγόσαστε ανοίγονταν) +ανοίγω Μεσοπαθητική φωνή/Οριστική/Μέλλοντας διαρκείας: *(θα ανοίγομαι θα ανοίγεσαι θα ανοίγεται θα ανοιγόμαστε θα ανοίγεστε θα ανοίγονται) +ανοίγω Μεσοπαθητική φωνή/Οριστική/Αόριστος: *!(ανοίχτηκα ανοίχτηκες ανοίχτηκε ανοιχτήκαμε ανοιχτήκατε ανοίχτηκαν) +ανοίγω Μεσοπαθητική φωνή/Οριστική/Παρακείμενος: *!(έχω ανοιχτεί έχεις ανοιχτεί έχει ανοιχτεί έχουμε ανοιχτεί έχετε ανοιχτεί έχουν(ε) ανοιχτεί) +ανοίγω Μεσοπαθητική φωνή/Οριστική/Υπερσυντέλικος: *!(είχα ανοιχτεί είχες ανοιχτεί είχα ανοιχτεί είχαμε ανοιχτεί είχατε ανοιχτεί είχαν ανοιχτεί) +ανοίγω Μεσοπαθητική φωνή/Οριστική/Συντελεσμένος μέλλοντας: *!(θα έχω ανοιχτεί θα έχεις ανοιχτεί θα έχει ανοιχτεί θα έχουμε ανοιχτεί θα έχετε ανοιχτεί θα έχουν(ε) ανοιχτεί) +ανοίγω Μεσοπαθητική φωνή/Οριστική/Μέλλοντας στιγμιαίος: *!(θα ανοιχτώ θα ανοιχτείς θα ανοιχτεί θα ανοιχτούμε θα ανοιχτείτε θα ανοιχτούν(ε)) +ανοίγω Μεσοπαθητική φωνή/Υποτακτική/Ενεστώτας: *(να ανοίγομαι να ανοίγεσαι να ανοίγεται να ανοιγόμαστε να ανοίγεστε να ανοίγονται) +ανοίγω Μεσοπαθητική φωνή/Υποτακτική/Αόριστος: *!(να ανοιχτώ να ανοιχτείς να ανοιχτεί να ανοιχτούμε να ανοιχτείτε να ανοιχτούν(ε)) +ανοίγω Μεσοπαθητική φωνή/Υποτακτική/Παρακείμενος: *!(να έχω ανοιχτεί να έχεις ανοιχτεί να έχει ανοιχτεί να έχουμε ανοιχτεί να έχετε ανοιχτεί να έχουν(ε) ανοιχτεί) +ανοίγω Μεσοπαθητική φωνή/Προστακτική/Ενεστώτας: *(#f να ανοίγεσαι #f #f να ανοίγεστε #f) +ανοίγω Μεσοπαθητική φωνή/Προστακτική/Αόριστος: *!(#f ανοίξου #f #f ανοιχτείτε #f) +ανοίγω Μεσοπαθητική φωνή/Προστακτική/Παρακείμενος: *!(#f να έχεις ανοιχτεί #f #f να έχετε ανοιχτεί #f) diff --git a/src/ellinika/tests/samples/apomenv b/src/ellinika/tests/samples/apomenv new file mode 100644 index 0000000..25747a3 --- /dev/null +++ b/src/ellinika/tests/samples/apomenv @@ -0,0 +1,28 @@ +απομένω Ενεργητηκή φωνή/Οριστική/Ενεστώτας: *(απομένω απομένεις απομένει απομένουμε απομένετε απομένουν(ε)) +απομένω Ενεργητηκή φωνή/Οριστική/Παρατατικός: *(απόμενα απόμενες απόμενε απομέναμε απομένατε απόμεναν) +απομένω Ενεργητηκή φωνή/Οριστική/Μέλλοντας διαρκείας: *(θα απομένω θα απομένεις θα απομένει θα απομένουμε θα απομένετε θα απομένουν(ε)) +απομένω Ενεργητηκή φωνή/Οριστική/Αόριστος: *!(απόμεσα απόμεσες απόμεσε απομέσαμε απομέσατε απόμεσαν) +απομένω Ενεργητηκή φωνή/Οριστική/Παρακείμενος: *!(έχω απομέσει έχεις απομέσει έχει απομέσει έχουμε απομέσει έχετε απομέσει έχουν(ε) απομέσει) +απομένω Ενεργητηκή φωνή/Οριστική/Υπερσυντέλικος: *!(είχα απομέσει είχες απομέσει είχα απομέσει είχαμε απομέσει είχατε απομέσει είχαν απομέσει) +απομένω Ενεργητηκή φωνή/Οριστική/Συντελεσμένος μέλλοντας: *!(θα έχω απομέσει θα έχεις απομέσει θα έχει απομέσει θα έχουμε απομέσει θα έχετε απομέσει θα έχουν(ε) απομέσει) +απομένω Ενεργητηκή φωνή/Οριστική/Μέλλοντας στιγμιαίος: *!(θα απομέσω θα απομέσεις θα απομέσει θα απομέσουμε θα απομέσετε θα απομέσουν(ε)) +απομένω Ενεργητηκή φωνή/Υποτακτική/Ενεστώτας: *(να απομένω να απομένεις να απομένει να απομένουμε να απομένετε να απομένουν(ε)) +απομένω Ενεργητηκή φωνή/Υποτακτική/Αόριστος: *!(να απομέσω να απομέσεις να απομέσει να απομέσουμε να απομέσετε να απομέσουν(ε)) +απομένω Ενεργητηκή φωνή/Υποτακτική/Παρακείμενος: *!(να έχω απομέσει να έχεις απομέσει να έχει απομέσει να έχουμε απομέσει να έχετε απομέσει να έχουν(ε) απομέσει) +απομένω Ενεργητηκή φωνή/Προστακτική/Ενεστώτας: *(#f απόμενε #f #f απομένετε #f) +απομένω Ενεργητηκή φωνή/Προστακτική/Αόριστος: *!(#f απόμεσε #f #f απομέστε #f) +απομένω Ενεργητηκή φωνή/Προστακτική/Παρακείμενος: *!(#f να έχεις απομέσει #f #f να έχετε απομέσει #f) +απομένω Μεσοπαθητική φωνή/Οριστική/Ενεστώτας: *(απομένομαι απομένεσαι απομένεται απομενόμαστε απομένεστε απομένονται) +απομένω Μεσοπαθητική φωνή/Οριστική/Παρατατικός: *(απομενομούν απομενοσούν απομενόταν απομενόμαστε απομενόσαστε απομένονταν) +απομένω Μεσοπαθητική φωνή/Οριστική/Μέλλοντας διαρκείας: *(θα απομένομαι θα απομένεσαι θα απομένεται θα απομενόμαστε θα απομένεστε θα απομένονται) +απομένω Μεσοπαθητική φωνή/Οριστική/Αόριστος: *!(απομέθηκα απομέθηκες απομέθηκε απομεθήκαμε απομεθήκατε απομέθηκαν) +απομένω Μεσοπαθητική φωνή/Οριστική/Παρακείμενος: *!(έχω απομεθεί έχεις απομεθεί έχει απομεθεί έχουμε απομεθεί έχετε απομεθεί έχουν(ε) απομεθεί) +απομένω Μεσοπαθητική φωνή/Οριστική/Υπερσυντέλικος: *!(είχα απομεθεί είχες απομεθεί είχα απομεθεί είχαμε απομεθεί είχατε απομεθεί είχαν απομεθεί) +απομένω Μεσοπαθητική φωνή/Οριστική/Συντελεσμένος μέλλοντας: *!(θα έχω απομεθεί θα έχεις απομεθεί θα έχει απομεθεί θα έχουμε απομεθεί θα έχετε απομεθεί θα έχουν(ε) απομεθεί) +απομένω Μεσοπαθητική φωνή/Οριστική/Μέλλοντας στιγμιαίος: *!(θα απομεθώ θα απομεθείς θα απομεθεί θα απομεθούμε θα απομεθείτε θα απομεθούν(ε)) +απομένω Μεσοπαθητική φωνή/Υποτακτική/Ενεστώτας: *(να απομένομαι να απομένεσαι να απομένεται να απομενόμαστε να απομένεστε να απομένονται) +απομένω Μεσοπαθητική φωνή/Υποτακτική/Αόριστος: *!(να απομεθώ να απομεθείς να απομεθεί να απομεθούμε να απομεθείτε να απομεθούν(ε)) +απομένω Μεσοπαθητική φωνή/Υποτακτική/Παρακείμενος: *!(να έχω απομεθεί να έχεις απομεθεί να έχει απομεθεί να έχουμε απομεθεί να έχετε απομεθεί να έχουν(ε) απομεθεί) +απομένω Μεσοπαθητική φωνή/Προστακτική/Ενεστώτας: *(#f να απομένεσαι #f #f να απομένεστε #f) +απομένω Μεσοπαθητική φωνή/Προστακτική/Αόριστος: *!(#f απομέσου #f #f απομεθείτε #f) +απομένω Μεσοπαθητική φωνή/Προστακτική/Παρακείμενος: *!(#f να έχεις απομεθεί #f #f να έχετε απομεθεί #f) diff --git a/src/ellinika/tests/samples/aresv b/src/ellinika/tests/samples/aresv new file mode 100644 index 0000000..a83dc7b --- /dev/null +++ b/src/ellinika/tests/samples/aresv @@ -0,0 +1,28 @@ +αρέσω Ενεργητηκή φωνή/Οριστική/Ενεστώτας: (αρέσω αρέσεις αρέσει αρέσουμε αρέσετε αρέσουν(ε)) +αρέσω Ενεργητηκή φωνή/Οριστική/Παρατατικός: (άρεσα άρεσες άρεσε αρέσαμε αρέσατε άρεσαν) +αρέσω Ενεργητηκή φωνή/Οριστική/Μέλλοντας διαρκείας: (θα αρέσω θα αρέσεις θα αρέσει θα αρέσουμε θα αρέσετε θα αρέσουν(ε)) +αρέσω Ενεργητηκή φωνή/Οριστική/Αόριστος: (άρεσα άρεσες άρεσε αρέσαμε αρέσατε άρεσαν) +αρέσω Ενεργητηκή φωνή/Οριστική/Παρακείμενος: (έχω αρέσει έχεις αρέσει έχει αρέσει έχουμε αρέσει έχετε αρέσει έχουν(ε) αρέσει) +αρέσω Ενεργητηκή φωνή/Οριστική/Υπερσυντέλικος: (είχα αρέσει είχες αρέσει είχα αρέσει είχαμε αρέσει είχατε αρέσει είχαν αρέσει) +αρέσω Ενεργητηκή φωνή/Οριστική/Συντελεσμένος μέλλοντας: (θα έχω αρέσει θα έχεις αρέσει θα έχει αρέσει θα έχουμε αρέσει θα έχετε αρέσει θα έχουν(ε) αρέσει) +αρέσω Ενεργητηκή φωνή/Οριστική/Μέλλοντας στιγμιαίος: (θα αρέσω θα αρέσεις θα αρέσει θα αρέσουμε θα αρέσετε θα αρέσουν(ε)) +αρέσω Ενεργητηκή φωνή/Υποτακτική/Ενεστώτας: (να αρέσω να αρέσεις να αρέσει να αρέσουμε να αρέσετε να αρέσουν(ε)) +αρέσω Ενεργητηκή φωνή/Υποτακτική/Αόριστος: (να αρέσω να αρέσεις να αρέσει να αρέσουμε να αρέσετε να αρέσουν(ε)) +αρέσω Ενεργητηκή φωνή/Υποτακτική/Παρακείμενος: (να έχω αρέσει να έχεις αρέσει να έχει αρέσει να έχουμε αρέσει να έχετε αρέσει να έχουν(ε) αρέσει) +αρέσω Ενεργητηκή φωνή/Προστακτική/Ενεστώτας: (#f άρεσε #f #f αρέσετε #f) +αρέσω Ενεργητηκή φωνή/Προστακτική/Αόριστος: (#f άρεσε #f #f αρέστε #f) +αρέσω Ενεργητηκή φωνή/Προστακτική/Παρακείμενος: (#f να έχεις αρέσει #f #f να έχετε αρέσει #f) +αρέσω Μεσοπαθητική φωνή/Οριστική/Ενεστώτας: #f +αρέσω Μεσοπαθητική φωνή/Οριστική/Παρατατικός: #f +αρέσω Μεσοπαθητική φωνή/Οριστική/Μέλλοντας διαρκείας: #f +αρέσω Μεσοπαθητική φωνή/Οριστική/Αόριστος: #f +αρέσω Μεσοπαθητική φωνή/Οριστική/Παρακείμενος: #f +αρέσω Μεσοπαθητική φωνή/Οριστική/Υπερσυντέλικος: #f +αρέσω Μεσοπαθητική φωνή/Οριστική/Συντελεσμένος μέλλοντας: #f +αρέσω Μεσοπαθητική φωνή/Οριστική/Μέλλοντας στιγμιαίος: #f +αρέσω Μεσοπαθητική φωνή/Υποτακτική/Ενεστώτας: #f +αρέσω Μεσοπαθητική φωνή/Υποτακτική/Αόριστος: #f +αρέσω Μεσοπαθητική φωνή/Υποτακτική/Παρακείμενος: #f +αρέσω Μεσοπαθητική φωνή/Προστακτική/Ενεστώτας: #f +αρέσω Μεσοπαθητική φωνή/Προστακτική/Αόριστος: #f +αρέσω Μεσοπαθητική φωνή/Προστακτική/Παρακείμενος: #f diff --git a/src/ellinika/tests/samples/ballv b/src/ellinika/tests/samples/ballv new file mode 100644 index 0000000..1e17539 --- /dev/null +++ b/src/ellinika/tests/samples/ballv @@ -0,0 +1,28 @@ +βάλλω Ενεργητηκή φωνή/Οριστική/Ενεστώτας: (βάλλω βάλλεις βάλλει βάλλουμε βάλλετε βάλλουν(ε)) +βάλλω Ενεργητηκή φωνή/Οριστική/Παρατατικός: (έβαλλα έβαλλες έβαλλε βάλλαμε βάλλατε έβαλλαν) +βάλλω Ενεργητηκή φωνή/Οριστική/Μέλλοντας διαρκείας: (θα βάλλω θα βάλλεις θα βάλλει θα βάλλουμε θα βάλλετε θα βάλλουν(ε)) +βάλλω Ενεργητηκή φωνή/Οριστική/Αόριστος: (έβαλα έβαλες έβαλε βάλαμε βάλατε έβαλαν) +βάλλω Εν