summaryrefslogtreecommitdiff
path: root/src/GF/Shell.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/GF/Shell.hs')
-rw-r--r--src/GF/Shell.hs4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/GF/Shell.hs b/src/GF/Shell.hs
index d713bcc42..062946649 100644
--- a/src/GF/Shell.hs
+++ b/src/GF/Shell.hs
@@ -319,6 +319,8 @@ execC co@(comm, opts0) sa@(sh@(st,(h,_,_,_)),a) = checkOptions st co >> case com
returnArg (AString $ unlines $ lookupTreebank tb s) sa
_ | oElem (iOpt "assocs") opts -> do
returnArg (AString $ unlines $ map printAssoc $ assocsTreebank tb) sa
+ _ | oElem (iOpt "trees") opts -> do
+ returnArg (ATrms $ str2trees $ concatMap snd $ assocsTreebank tb) sa
_ -> do
let tes = map (string2treeErr gro) $ lookupTreebank tb s
terms = [t | Ok t <- tes]
@@ -442,6 +444,8 @@ execC co@(comm, opts0) sa@(sh@(st,(h,_,_,_)),a) = checkOptions st co >> case com
AString s -> err AError (ATrms . return) $ string2treeErr gro s
_ -> a
+ str2trees ts = [t | Ok t <- map (string2treeErr gro) ts]
+
strees a = case a of
ATrms ts -> ts
_ -> []