Index: languages/apertium-eng/apertium-eng.eng.rlx
===================================================================
--- languages/apertium-eng/apertium-eng.eng.rlx (revision 81972)
+++ languages/apertium-eng/apertium-eng.eng.rlx (revision 81975)
@@ -28,12 +28,12 @@
LIST Vbdo = vbdo ;
LIST Vbaux = vaux ;
LIST Vbmod = vbmod ;
-List Imp = imp ;
LIST Gen = gen ;
LIST Apos = apos ;
-List Not = ("not") ;
+LIST Not = "not" ;
+LIST Please = ("please" adv) ;
SET Do = ("do") ;
-SET VbdoImp = Do + (vblex imp) ;
+SET Imp = (vblex imp) | (vbser imp) | (vbdo imp) ;
SET Inf = (vblex inf) | (vbmod inf) | (vaux inf) | (vbser inf) | (vbhaver inf) | (vbdo inf) ;
SET Pp = (vblex pp) | (vbmod pp) | (vaux pp) | (vbser pp) | (vbhaver pp) | (vbdo pp) ;
@@ -63,30 +63,33 @@
REMOVE (preadv) IF (1 (cm)) ;
-#Lemmas that are N or V: N if DET/ADJ/V/PR precedes it or V follows
-
+#Lemmas that are N or V: N if DET/ADJ/PR precedes it
SELECT N IF (0 N) (0 V) (-1 Pr) ;
-SELECT N IF (0 N) (0 V) (-1 V) ;
SELECT N IF (0 N) (0 V) (-1 Det) ;
SELECT N IF (0 N) (0 V) (-1 Adj) ;
-SELECT N IF (0 N) (0 V) (1 V) ;
#Lemmas that are N or V: V if ADV precedes it or ADV/N/PRN follows
-
SELECT V IF (0 N) (0 V) (-2 N) (-1 Adv) ;
-SELECT V IF (0 N) (0 V) (-2 Det) (1 N) ;
+SELECT V IF (0 N) (0 V) (-2 Det) (-1 N) ;
SELECT V IF (0 N) (0 V) (-1 Prn) ;
+SELECT V IF (0 N) (0 V) (-1 Vbmod | Vbaux) ;
+SELECT V IF (0 N) (0 V) (-1 Vbdo) ;
+SELECT V IF (0 N) (0 V) (-2 Vbdo) (-1 Adv) ;
+SELECT V IF (0 N) (0 V) (-3 Vbdo) (-2 Adv) (-1 Adv) ;
+#Lemmas that are N or V: will/can/may
+SELECT Vbmod IF (0 Vbmod) (0 N) (1 Inf) ;
+SELECT Vbmod IF (0 Vbmod) (0 N) (1 Adv) (2 Inf) ;
+SELECT Vbmod IF (0 Vbmod) (0 N) (1 Adv) (2 Adv) (3 Inf) ;
+
#Otherwise, select N
SELECT N IF (0 N) (0 V) ;
#Lemmas that are N or ADJ: N if ADJ precedes it or V follows
-
SELECT N IF (0 N) (0 Adj) (-1 Adj) ;
SELECT N IF (0 N) (0 Adj) (1 V) ;
#Lemmas that are N or ADJ: ADJ if N follows it
-
SELECT Adj IF (0 N) (0 Adj) (1 N) ;
#(by wth)
@@ -116,6 +119,9 @@
SELECT Predet IF (1C The) ;
+# Please (adv) and please (vblex)
+SELECT Adv IF (0 Adv) (0 Vblex) (1 V) ;
+
# Saxon genitive ('s)
REMOVE Gen IF (NOT -1 N | Np) ;
REMOVE Gen IF (0 Gen) (0 Apos) (NOT -1 ("<.*s>"r)) ;
@@ -126,11 +132,17 @@
REMOVE Vblex IF (0 Vblex) (0 Vbhaver) (1 Adv) (2 Pp) ;
REMOVE Vblex IF (0 Vblex) (0 Vbhaver) (1 Adv) (2 Adv) (3 Pp) ;
-#Vbmod (will, can, may)
-SELECT Vbmod IF (0 Vbmod) (0 N) (1 Inf) ;
-SELECT Vbmod IF (0 Vbmod) (0 N) (1 Adv) (2 Inf) ;
-
+# Verbs preceded by to
REMOVE Fin IF (-1C To) ;
-# negated imperatives (do not go there!) (we may want to move this to the tagger)
-SELECT VbdoImp IF (-1 BOS) (0 VbdoImp) (1 Not) (2 Inf) ;
+# Do (vbdo) and do (vblex)
+SELECT Vbdo IF (1 Inf) ;
+SELECT Vbdo IF (1 Adv) (2 Inf) ;
+SELECT Vbdo IF (1 Adv) (2 Adv) (3 Inf) ;
+REMOVE Vbdo ;
+
+# Remove imperatives unless preceded by "please" or placed at BOS
+SELECT Imp IF (-1 BOS) ;
+SELECT Imp IF (-2 BOS) (-1 Please);
+REMOVE Imp ;
+
Index: languages/apertium-eng/apertium-eng.eng.dix
===================================================================
--- languages/apertium-eng/apertium-eng.eng.dix (revision 81972)
+++ languages/apertium-eng/apertium-eng.eng.dix (revision 81975)
@@ -57918,6 +57918,7 @@
didn't donot
doesn't donot
don't donot
+ don't donot
hadn't havenot
hasn't havenot
haven't havenot