forked from GitHub/gf-core
more verb constructions in Translate (Eng,Swe,Fin): without moving, by moving, in order to move
This commit is contained in:
@@ -54,6 +54,10 @@ fun
|
||||
GerundNP : VP -> NP ; -- publishing the document (by nature definite)
|
||||
GerundAdv : VP -> Adv ; -- publishing the document (prepositionless adverb)
|
||||
|
||||
WithoutVP : VP -> Adv ; -- without publishing the document
|
||||
ByVP : VP -> Adv ; -- by publishing the document
|
||||
InOrderToVP : VP -> Adv ; -- (in order) to publish the document
|
||||
|
||||
PresPartAP : VP -> AP ; -- sleeping (man), (man) sleeping in the car
|
||||
|
||||
PastPartAP : VPSlash -> AP ; -- lost (opportunity) ; (opportunity) lost in space
|
||||
|
||||
@@ -62,7 +62,7 @@ lin
|
||||
} ;
|
||||
|
||||
GerundNP vp =
|
||||
let a = AgP3Sg Neutr
|
||||
let a = AgP3Sg Neutr ---- agr
|
||||
in
|
||||
{s = \\_ => vp.ad ! a ++ vp.prp ++ vp.s2 ! a ++ vp.ext ; a = a} ;
|
||||
|
||||
@@ -71,6 +71,12 @@ lin
|
||||
in
|
||||
{s = vp.ad ! a ++ vp.prp ++ vp.s2 ! a ++ vp.ext} ;
|
||||
|
||||
WithoutVP vp = {s = "without" ++ (GerundAdv (lin VP vp)).s} ;
|
||||
|
||||
InOrderToVP vp = {s = ("in order" | []) ++ infVP VVInf vp Simul CPos (AgP3Sg Neutr)} ;
|
||||
|
||||
ByVP vp = {s = "by" ++ (GerundAdv (lin VP vp)).s} ;
|
||||
|
||||
PresPartAP = E.PartVP ;
|
||||
|
||||
PastPartAP vp = {
|
||||
|
||||
@@ -83,6 +83,12 @@ lin
|
||||
|
||||
GerundAdv vp = {s = (sverb2verbSep vp.s).s ! Inf Inf2Instr ++ vp.s2 ! True ! Pos ! agrP3 Sg ++ vp.adv ! Pos ++ vp.ext} ; -- nukkuen
|
||||
|
||||
WithoutVP vp = {s = (sverb2verbSep vp.s).s ! Inf Inf3Abess ++ vp.s2 ! True ! Pos ! agrP3 Sg ++ vp.adv ! Pos ++ vp.ext} ; -- nukkumatta
|
||||
InOrderToVP vp = {
|
||||
s = (sverb2verbSep vp.s).s ! Inf Inf1Long ++ Predef.BIND ++ "en" ++ vp.s2 ! True ! Pos ! agrP3 Sg ++ vp.adv ! Pos ++ vp.ext
|
||||
} ; -- nukkuakseen --- agr
|
||||
ByVP vp = {s = (sverb2verbSep vp.s).s ! Inf Inf3Adess ++ vp.s2 ! True ! Pos ! agrP3 Sg ++ vp.adv ! Pos ++ vp.ext} ; -- nukkumalla
|
||||
|
||||
-- tänään löydetty
|
||||
PastPartAP vp = {s = \\_,f => vp.s2 ! True ! Pos ! agrP3 Sg ++ vp.adv ! Pos ++ (sverb2verbSep vp.s).s ! PastPartPass (AN f) ++ vp.ext} ;
|
||||
|
||||
|
||||
@@ -58,6 +58,7 @@ lin
|
||||
isPre = False
|
||||
} ;
|
||||
|
||||
-- infVP : VP -> Agr -> Str = \vp,agr ->
|
||||
|
||||
{-
|
||||
GerundN v = {
|
||||
|
||||
@@ -56,6 +56,18 @@ lin
|
||||
s = partVPPlusPost vp (PartPres Sg Indef (Nom|Gen)) {g = Utr ; n = Sg ; p = P3} Pos -- sovande(s) i sängen
|
||||
} ;
|
||||
|
||||
WithoutVP vp = { -- utan att dricka öl, utan att vara glad
|
||||
s = "utan att" ++ infVP vp {g = Utr ; n = Sg ; p = P3}
|
||||
} ;
|
||||
|
||||
InOrderToVP vp = { -- för att dricka öl, för att vara glad
|
||||
s = "för att" ++ infVP vp {g = Utr ; n = Sg ; p = P3}
|
||||
} ;
|
||||
|
||||
ByVP vp = { -- genom att dricka öl, genom att vara glad
|
||||
s = "för att" ++ infVP vp {g = Utr ; n = Sg ; p = P3}
|
||||
} ;
|
||||
|
||||
PresPartAP vp = {
|
||||
s = \\af => partVPPlus vp (PartPres Sg Indef Nom) (aformpos2agr af) Pos ;
|
||||
isPre = True
|
||||
|
||||
@@ -27,6 +27,7 @@ abstract Translate =
|
||||
CompoundN,AdAdV,UttAdV,ApposNP,MkVPI, MkVPS, PredVPS, PassVPSlash, PassAgentVPSlash, CompoundAP,
|
||||
DirectComplVS, DirectComplVQ, FocusObjS
|
||||
, PastPartAP, PastPartAgentAP, PresPartAP, GerundNP, GerundAdv ---- not yet available for all languages
|
||||
, WithoutVP, InOrderToVP, ByVP
|
||||
],
|
||||
Dictionary,
|
||||
Documentation
|
||||
|
||||
@@ -34,9 +34,11 @@ concrete TranslateEng of Translate =
|
||||
DocumentationEng,
|
||||
|
||||
ChunkEng,
|
||||
ExtensionsEng [CompoundN,AdAdV,UttAdV,ApposNP,MkVPI, MkVPS, PredVPS, PassVPSlash, PassAgentVPSlash, CompoundAP,
|
||||
DirectComplVS, DirectComplVQ, FocusObjS
|
||||
ExtensionsEng [
|
||||
CompoundN,AdAdV,UttAdV,ApposNP,MkVPI, MkVPS, PredVPS, PassVPSlash, PassAgentVPSlash, CompoundAP
|
||||
, DirectComplVS, DirectComplVQ, FocusObjS
|
||||
, PastPartAP, PastPartAgentAP, PresPartAP, GerundNP, GerundAdv
|
||||
, WithoutVP, InOrderToVP, ByVP
|
||||
],
|
||||
DictionaryEng **
|
||||
open MorphoEng, ResEng, ParadigmsEng, (G = GrammarEng), (E = ExtraEng), Prelude in {
|
||||
|
||||
@@ -28,9 +28,10 @@ concrete TranslateFin of Translate =
|
||||
|
||||
ChunkFin,
|
||||
ExtensionsFin [
|
||||
CompoundN,AdAdV,UttAdV,ApposNP,MkVPI, MkVPS, PredVPS, PassVPSlash, PassAgentVPSlash, CompoundAP,
|
||||
DirectComplVS, DirectComplVQ, FocusObjS
|
||||
,PastPartAP, PastPartAgentAP, PresPartAP, GerundNP, GerundAdv
|
||||
CompoundN,AdAdV,UttAdV,ApposNP,MkVPI, MkVPS, PredVPS, PassVPSlash, PassAgentVPSlash, CompoundAP,
|
||||
DirectComplVS, DirectComplVQ, FocusObjS
|
||||
, PastPartAP, PastPartAgentAP, PresPartAP, GerundNP, GerundAdv
|
||||
, WithoutVP, InOrderToVP, ByVP
|
||||
],
|
||||
|
||||
DictionaryFin **
|
||||
|
||||
@@ -25,7 +25,11 @@ concrete TranslateIta of Translate =
|
||||
DocumentationIta,
|
||||
|
||||
ChunkIta,
|
||||
ExtensionsIta [CompoundN,AdAdV,UttAdV,ApposNP,MkVPI, MkVPS, PredVPS, PassVPSlash, PassAgentVPSlash, CompoundAP],
|
||||
ExtensionsIta [
|
||||
CompoundN,AdAdV,UttAdV,ApposNP,MkVPI, MkVPS, PredVPS, PassVPSlash, PassAgentVPSlash, CompoundAP
|
||||
, PastPartAP, PastPartAgentAP, PresPartAP, GerundNP, GerundAdv
|
||||
---- , WithoutVP, InOrderToVP, ByVP
|
||||
],
|
||||
|
||||
DictionaryIta **
|
||||
open MorphoIta, ResIta, ParadigmsIta, SyntaxIta, (E = ExtraIta), (G = GrammarIta), Prelude in {
|
||||
|
||||
@@ -23,9 +23,11 @@ concrete TranslateSwe of Translate =
|
||||
DocumentationSwe,
|
||||
|
||||
ChunkSwe,
|
||||
ExtensionsSwe [CompoundN,AdAdV,UttAdV,ApposNP,MkVPI, MkVPS, PredVPS, PassVPSlash, PassAgentVPSlash, CompoundAP,
|
||||
DirectComplVS, DirectComplVQ, FocusObjS
|
||||
,PastPartAP, PastPartAgentAP, PresPartAP, GerundNP, GerundAdv
|
||||
ExtensionsSwe [
|
||||
CompoundN,AdAdV,UttAdV,ApposNP,MkVPI, MkVPS, PredVPS, PassVPSlash, PassAgentVPSlash, CompoundAP
|
||||
, DirectComplVS, DirectComplVQ, FocusObjS
|
||||
, PastPartAP, PastPartAgentAP, PresPartAP, GerundNP, GerundAdv
|
||||
, WithoutVP, InOrderToVP, ByVP
|
||||
],
|
||||
|
||||
DictionarySwe **
|
||||
|
||||
Reference in New Issue
Block a user