@@ -675,12 +675,14 @@ pWhereblock n syn
675 return (concat ds, map (\x -> (x, decoration syn x)) dns)
675 return (concat ds, map (\x -> (x, decoration syn x)) dns)
677pDirective :: IParser [PDecl]
677pDirective :: IParser [PDecl]
678−pDirective = do lchar '%'; reserved "lib"; lib <- strlit;
678+pDirective = try (do lchar '%'; reserved "lib"; lib <- strlit;
679− return [PDirective (addLib lib)]
679+ return [PDirective (addLib lib)])
680− <|> do lchar '%'; reserved "link"; obj <- strlit;
680+ <|> try (do lchar '%'; reserved "link"; obj <- strlit;
681− return [PDirective (do datadir <- lift $ getDataDir
681+ return [PDirective (do datadir <- lift $ getDataDir
682− o <- lift $ findInPath [".", datadir] obj
682+ o <- lift $ findInPath [".", datadir] obj
683− addObjectFile o)]
683+ addObjectFile o)])
684+ <|> do lchar '%'; reserved "logging"; i <- natural;
685+ return [PDirective (setLogLevel (fromInteger i))]
685pTactic :: SyntaxInfo -> IParser PTactic
687pTactic :: SyntaxInfo -> IParser PTactic
686pTactic syn = do reserved "intro"; ns <- sepBy pName (lchar ',')
688pTactic syn = do reserved "intro"; ns <- sepBy pName (lchar ',')