From e9679e57afc99305caf0369b0da0564d7b94d2fc Mon Sep 17 00:00:00 2001 From: aarne Date: Wed, 17 Nov 2010 08:30:02 +0000 Subject: [PATCH] fixed some bugs in translation quiz --- src/compiler/GF/Command/Commands.hs | 11 +++++++---- src/compiler/GF/Quiz.hs | 4 +++- src/runtime/javascript/minibar/minibar.js | 4 +++- 3 files changed, 13 insertions(+), 6 deletions(-) diff --git a/src/compiler/GF/Command/Commands.hs b/src/compiler/GF/Command/Commands.hs index 7989078c2..faaa9e3ab 100644 --- a/src/compiler/GF/Command/Commands.hs +++ b/src/compiler/GF/Command/Commands.hs @@ -686,8 +686,8 @@ allCommands env@(pgf, mos) = Map.fromList [ syntax = "tq -from=LANG -to=LANG (-cat=CAT)? (-probs=FILE)? TREE?", synopsis = "start a translation quiz", exec = \opts xs -> do - let from = valCIdOpts "from" (optLang opts) opts - let to = valCIdOpts "to" (optLang opts) opts + let from = optLangFlag "from" opts + let to = optLangFlag "to" opts let typ = optType opts let mt = mexp xs pgf <- optProbs opts pgf @@ -990,7 +990,10 @@ allCommands env@(pgf, mos) = Map.fromList [ optRestricted opts = restrictPGF (\f -> and [hasLin pgf la f | la <- optLangs opts]) pgf - optLangs opts = case valStrOpts "lang" "" opts of + optLang = optLangFlag "lang" + optLangs = optLangsFlag "lang" + + optLangsFlag f opts = case valStrOpts f "" opts of "" -> languages pgf lang -> map completeLang (chunks ',' lang) completeLang la = let cla = (mkCId la) in @@ -998,7 +1001,7 @@ allCommands env@(pgf, mos) = Map.fromList [ then cla else (mkCId (showCId (abstractName pgf) ++ la)) - optLang opts = head $ optLangs opts ++ [wildCId] + optLangFlag f opts = head $ optLangsFlag f opts ++ [wildCId] optOpenTypes opts = case valStrOpts "openclass" "" opts of "" -> [] diff --git a/src/compiler/GF/Quiz.hs b/src/compiler/GF/Quiz.hs index 0b37660c8..aaeae34a8 100644 --- a/src/compiler/GF/Quiz.hs +++ b/src/compiler/GF/Quiz.hs @@ -46,8 +46,10 @@ translationList mex pgf ig og typ number = do Nothing -> generateRandom gen pgf typ return $ map mkOne $ ts where - mkOne t = (norml (linearize pgf ig t), map (norml . linearize pgf og) (homonyms t)) + mkOne t = (norml (linearize pgf ig t), + map norml (concatMap lins (homonyms t))) homonyms = parse pgf ig typ . linearize pgf ig + lins = nub . concatMap (map snd) . tabularLinearizes pgf og morphologyList :: Maybe Expr -> PGF -> Language -> Type -> Int -> IO [(String,[String])] diff --git a/src/runtime/javascript/minibar/minibar.js b/src/runtime/javascript/minibar/minibar.js index 79f18f3d2..11485723b 100644 --- a/src/runtime/javascript/minibar/minibar.js +++ b/src/runtime/javascript/minibar/minibar.js @@ -1,6 +1,8 @@ // minibar.js, assumes that support.js has also been loaded -var default_server="http://www.grammaticalframework.org:41296" +//var default_server="http://www.grammaticalframework.org:41296" +var default_server="http://localhost:41296" + var tree_icon=default_server+"/translate/se.chalmers.cs.gf.gwt.TranslateApp/tree-btn.png"; /*