mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-13 23:09:31 -06:00
missing syntax functions in Chi and some other languages
This commit is contained in:
@@ -2,7 +2,7 @@ concrete AdverbChi of Adverb = CatChi **
|
||||
open ResChi, Prelude in {
|
||||
|
||||
lin
|
||||
PositAdvAdj a = {s = a.s ; advType = ATManner} ;
|
||||
PositAdvAdj a = {s = a.s ++ "地" ; advType = ATManner} ; ---- for all adjs?
|
||||
|
||||
PrepNP prep np = ss (appPrep prep np.s) ** {advType = prep.advType} ; --- should depend on np too ?
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@ concrete NounChi of Noun = CatChi ** open ResChi, Prelude in {
|
||||
PPartNP np v2 = mkNP ((predV v2 v2.part).verb.s ++ possessive_s ++ np.s) ; ---- ??
|
||||
|
||||
AdvNP np adv = mkNP (adv.s ++ possessiveIf adv.advType ++ np.s) ;
|
||||
ExtAdvNP np adv = mkNP (adv.s ++ possessiveIf adv.advType ++ embedInCommas np.s) ; ---- commas?
|
||||
|
||||
DetQuant quant num = {
|
||||
s = case num.numType of {
|
||||
|
||||
@@ -42,7 +42,7 @@ concrete VerbChi of Verb = CatChi ** open ResChi, Prelude in {
|
||||
insertObj np
|
||||
(insertObj (mkNP (infVP vp)) (predV v v.part)) ** {c2 = vp.c2 ; isPre = vp.isPre} ;
|
||||
|
||||
AdvVP vp adv = case adv.advType of {
|
||||
ExtAdvVP, AdvVP = \vp,adv -> case adv.advType of { ---- ExtAdvVP also ?
|
||||
ATManner => insertObj (ss (deVAdv_s ++ adv.s)) vp ; -- he sleeps *well*
|
||||
ATPlace True => insertAdvPost adv vp ; -- he today *in the house* sleeps
|
||||
ATPlace False => insertAdvPost (ss (zai_V.s ++ adv.s)) vp ; -- he today *here* sleeps
|
||||
|
||||
@@ -39,6 +39,11 @@ concrete NounDut of Noun = CatDut ** open ResDut, Prelude in {
|
||||
a = np.a
|
||||
} ;
|
||||
|
||||
ExtAdvNP np adv = heavyNP {
|
||||
s = \\c => np.s ! c ++ embedInCommas adv.s ;
|
||||
a = np.a
|
||||
} ;
|
||||
|
||||
DetQuantOrd quant num ord =
|
||||
let
|
||||
n = num.n ;
|
||||
|
||||
@@ -46,6 +46,11 @@ concrete NounGer of Noun = CatGer ** open ResGer, MorphoGer, Prelude in {
|
||||
a = np.a
|
||||
} ;
|
||||
|
||||
ExtAdvNP np adv = heavyNP {
|
||||
s = \\c => np.s ! c ++ embedInCommas adv.s ;
|
||||
a = np.a
|
||||
} ;
|
||||
|
||||
DetQuantOrd quant num ord =
|
||||
let
|
||||
n = num.n ;
|
||||
|
||||
@@ -46,6 +46,12 @@ incomplete concrete NounRomance of Noun =
|
||||
hasClit = False
|
||||
} ;
|
||||
|
||||
ExtAdvNP np adv = heavyNPpol np.isNeg {
|
||||
s = \\c => (np.s ! c).ton ++ embedInCommas adv.s ;
|
||||
a = np.a ;
|
||||
hasClit = False
|
||||
} ;
|
||||
|
||||
DetQuantOrd quant num ord = {
|
||||
s,sp = \\g,c => quant.s ! num.isNum ! num.n ! g ! c ++ num.s ! g ++
|
||||
ord.s ! aagr g num.n ;
|
||||
|
||||
@@ -45,6 +45,11 @@ incomplete concrete NounScand of Noun =
|
||||
a = np.a
|
||||
} ;
|
||||
|
||||
ExtAdvNP np adv = {
|
||||
s = \\c => np.s ! c ++ embedInCommas adv.s ;
|
||||
a = np.a
|
||||
} ;
|
||||
|
||||
DetQuantOrd quant num ord = {
|
||||
s = \\b,g => quant.s ! num.n ! b ! True ! g ++
|
||||
num.s ! g ++ ord.s ;
|
||||
|
||||
@@ -51,6 +51,15 @@ lin
|
||||
s = v.s ;
|
||||
c = ge_s ---- ge
|
||||
} ;
|
||||
|
||||
GerundNP vp = {
|
||||
s = infVP vp ; ---- ?
|
||||
} ;
|
||||
|
||||
GerundAdv vp = {
|
||||
s = infVP vp ++ "地" ; ---- ?
|
||||
advType = ATManner ;
|
||||
} ;
|
||||
|
||||
GerundAP v = {
|
||||
s = v.s ++ de_s ; ----
|
||||
|
||||
Reference in New Issue
Block a user