From 096b4cfceea03007ae1ac7d46080c2a5f8e99688 Mon Sep 17 00:00:00 2001 From: hallgren Date: Thu, 9 Jun 2016 13:12:14 +0000 Subject: PGF service & minibar: only show dependency diagrams if the labels are known + The PGF service now reads and caches dependency label configuration files. + The grammar info returned by command=grammar has a new boolean field 'hasDependencyLabels' to indicate if dependency labels were found for the grammar. Also, command=deptree will now fail if no labels are present. + The minibar only shows word dependency trees if labels are present. + Also changed the type of getDepLabels from [String] -> Labels to String -> Labels, since all uses were in the form "getDepLabels . lines". --- src/compiler/GF/Command/Commands.hs | 4 ++-- src/compiler/GF/Server.hs | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) (limited to 'src/compiler') diff --git a/src/compiler/GF/Command/Commands.hs b/src/compiler/GF/Command/Commands.hs index cf1262f35..ea62ba69a 100644 --- a/src/compiler/GF/Command/Commands.hs +++ b/src/compiler/GF/Command/Commands.hs @@ -551,7 +551,7 @@ pgfCommands = Map.fromList [ let outp = valStrOpts "output" "dot" opts mlab <- case file of "" -> return Nothing - _ -> (Just . getDepLabels . lines) `fmap` restricted (readFile file) + _ -> (Just . getDepLabels) `fmap` restricted (readFile file) let lang = optLang pgf opts let grphs = map (graphvizDependencyTree outp debug mlab Nothing pgf lang) es if isOpt "conll2latex" opts @@ -616,7 +616,7 @@ pgfCommands = Map.fromList [ let depfile = valStrOpts "file" "" opts mlab <- case depfile of "" -> return Nothing - _ -> (Just . getDepLabels . lines) `fmap` restricted (readFile depfile) + _ -> (Just . getDepLabels) `fmap` restricted (readFile depfile) let grphs = map (graphvizParseTreeDep mlab pgf lang gvOptions) es if isFlag "view" opts || isFlag "format" opts then do diff --git a/src/compiler/GF/Server.hs b/src/compiler/GF/Server.hs index 3a193cc33..d5c84b87c 100644 --- a/src/compiler/GF/Server.hs +++ b/src/compiler/GF/Server.hs @@ -174,7 +174,7 @@ handle logLn documentroot state0 cache execute1 stateVar (_ ,_ ,".pgf") -> do --debug $ "PGF service: "++path wrapCGI $ PS.cgiMain' cache path (dir,"grammars.cgi",_ ) -> grammarList dir (decoded qs) - (dir ,"exb.fcgi" ,_ ) -> wrapCGI $ ES.cgiMain' root dir (fst cache) + (dir ,"exb.fcgi" ,_ ) -> wrapCGI $ ES.cgiMain' root dir (PS.pgfCache cache) _ -> serveStaticFile rpath path where path = translatePath rpath _ -> return $ resp400 upath -- cgit v1.2.3