From e494274c076609b061d7fb251919a8b4a18aeb99 Mon Sep 17 00:00:00 2001 From: bjorn Date: Tue, 19 Feb 2008 22:09:56 +0000 Subject: [PATCH] Treat pre tokens as variants in SimpleToFCFG. This should allow us to parse sentences with e.g. "an". --- src/GF/Conversion/SimpleToFCFG.hs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/GF/Conversion/SimpleToFCFG.hs b/src/GF/Conversion/SimpleToFCFG.hs index a964dfcd8..e6bc5a059 100644 --- a/src/GF/Conversion/SimpleToFCFG.hs +++ b/src/GF/Conversion/SimpleToFCFG.hs @@ -194,9 +194,10 @@ convertTerm cnc_defs selector (S ts) ((lbl_path,lin) : lins) = do projectH convertTerm cnc_defs selector (K (KS str)) ((lbl_path,lin) : lins) = do projectHead lbl_path return ((lbl_path,Tok str : lin) : lins) -convertTerm cnc_defs selector (K (KP (str:_)_))((lbl_path,lin) : lins) = +convertTerm cnc_defs selector (K (KP strs vars))((lbl_path,lin) : lins) = do projectHead lbl_path - return ((lbl_path,Tok str : lin) : lins) + toks <- member (strs:[strs' | Var strs' _ <- vars]) + return ((lbl_path, map Tok toks ++ lin) : lins) convertTerm cnc_defs selector (RP _ term) lins = convertTerm cnc_defs selector term lins convertTerm cnc_defs selector (F id) lins = do term <- Map.lookup id cnc_defs convertTerm cnc_defs selector term lins