option cc -list added

This commit is contained in:
aarne
2010-12-14 17:42:42 +00:00
parent 505e34aea7
commit 4a5d8d9f55
3 changed files with 10 additions and 6 deletions

View File

@@ -216,6 +216,7 @@ allCommands env@(pgf, mos) = Map.fromList [
], ],
options = [ options = [
("all","pick all strings (forms and variants) from records and tables"), ("all","pick all strings (forms and variants) from records and tables"),
("list","all strings, comma-separated on one line"),
("one","pick the first strings, if there is any, from records and tables"), ("one","pick the first strings, if there is any, from records and tables"),
("table","show all strings labelled by parameters"), ("table","show all strings labelled by parameters"),
("unqual","hide qualifying module names") ("unqual","hide qualifying module names")

View File

@@ -9,12 +9,13 @@ import Text.PrettyPrint
import Data.List (intersperse) import Data.List (intersperse)
showTerm :: SourceGrammar -> TermPrintStyle -> TermPrintQual -> Term -> String showTerm :: SourceGrammar -> TermPrintStyle -> TermPrintQual -> Term -> String
showTerm gr style q t = render $ showTerm gr sty q t = case sty of
case style of TermPrintTable -> render $ vcat [p <+> s | (p,s) <- ppTermTabular gr q t]
TermPrintTable -> vcat [p <+> s | (p,s) <- ppTermTabular gr q t] TermPrintAll -> render $ vcat [ s | (p,s) <- ppTermTabular gr q t]
TermPrintAll -> vcat [ s | (p,s) <- ppTermTabular gr q t] TermPrintList -> renderStyle (style{mode = OneLineMode}) $
TermPrintOne -> vcat [ s | (p,s) <- take 1 (ppTermTabular gr q t)] vcat (punctuate comma [s | (p,s) <- ppTermTabular gr q t])
TermPrintDefault -> ppTerm q 0 t TermPrintOne -> render $ vcat [ s | (p,s) <- take 1 (ppTermTabular gr q t)]
TermPrintDefault -> render $ ppTerm q 0 t
ppTermTabular :: SourceGrammar -> TermPrintQual -> Term -> [(Doc,Doc)] ppTermTabular :: SourceGrammar -> TermPrintQual -> Term -> [(Doc,Doc)]
ppTermTabular gr q = pr where ppTermTabular gr q = pr where
@@ -38,5 +39,6 @@ ppTermTabular gr q = pr where
data TermPrintStyle data TermPrintStyle
= TermPrintTable = TermPrintTable
| TermPrintAll | TermPrintAll
| TermPrintList
| TermPrintOne | TermPrintOne
| TermPrintDefault | TermPrintDefault

View File

@@ -111,6 +111,7 @@ loop opts gfenv0 = do
let let
pOpts style q ("-table" :ws) = pOpts TermPrintTable q ws pOpts style q ("-table" :ws) = pOpts TermPrintTable q ws
pOpts style q ("-all" :ws) = pOpts TermPrintAll q ws pOpts style q ("-all" :ws) = pOpts TermPrintAll q ws
pOpts style q ("-list" :ws) = pOpts TermPrintList q ws
pOpts style q ("-one" :ws) = pOpts TermPrintOne q ws pOpts style q ("-one" :ws) = pOpts TermPrintOne q ws
pOpts style q ("-default":ws) = pOpts TermPrintDefault q ws pOpts style q ("-default":ws) = pOpts TermPrintDefault q ws
pOpts style q ("-unqual" :ws) = pOpts style Unqualified ws pOpts style q ("-unqual" :ws) = pOpts style Unqualified ws