summaryrefslogtreecommitdiff
path: root/src/server
diff options
context:
space:
mode:
Diffstat (limited to 'src/server')
-rw-r--r--src/server/PGFService.hs8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/server/PGFService.hs b/src/server/PGFService.hs
index b03741f31..0ee7391e2 100644
--- a/src/server/PGFService.hs
+++ b/src/server/PGFService.hs
@@ -157,9 +157,13 @@ doTranslateGroup pgf input mcat mfrom mto =
disamb lg from t =
if lg < 2
then []
- else [("tree", "-- " ++ doText (doBind (PGF.linearize pgf (disambLang from) t)))]
+ else [("tree", "-- " ++ doText (doBind (disambLang from t)))]
+
+ disambLang f t = let disf = PGF.mkCId ("Disamb" ++ PGF.showLanguage f) in
+ if elem disf (PGF.languages pgf)
+ then PGF.linearize pgf disf t
+ else PGF.showExpr [] t
- disambLang f = maybe f id $ PGF.readLanguage $ "Disamb" ++ PGF.showLanguage f
notDisamb = (/="Disamb") . take 6 . PGF.showLanguage
doParse :: PGF -> String -> Maybe PGF.Type -> Maybe PGF.Language -> JSValue