refactor hledgerCommandMode

This commit is contained in:
Simon Michael 2019-01-26 20:57:00 -08:00
parent 6947f29f17
commit 157ec857d4

View File

@ -239,9 +239,9 @@ addonCommandMode name = (defCommandMode [name]) {
-- from a help template and flag/argument specifications. -- from a help template and flag/argument specifications.
-- Reduces boilerplate a little, though the complicated cmdargs -- Reduces boilerplate a little, though the complicated cmdargs
-- flag and argument specs are still required. -- flag and argument specs are still required.
hledgerCommandMode :: HelpTemplate -> [Flag RawOpts] -> [(Help, [Flag RawOpts])] hledgerCommandMode :: HelpTemplate -> [Flag RawOpts] -> [(String, [Flag RawOpts])]
-> [Flag RawOpts] -> ([Arg RawOpts], Maybe (Arg RawOpts)) -> Mode RawOpts -> [Flag RawOpts] -> ([Arg RawOpts], Maybe (Arg RawOpts)) -> Mode RawOpts
hledgerCommandMode tmpl ungroupedflags groupedflags hiddenflags args = hledgerCommandMode tmpl unnamedflaggroup namedflaggroups hiddenflaggroup argsdescr =
case parseHelpTemplate tmpl of case parseHelpTemplate tmpl of
Nothing -> error' $ "Could not parse help template:\n"++tmpl++"\n" Nothing -> error' $ "Could not parse help template:\n"++tmpl++"\n"
Just (names, shorthelp, longhelplines) -> Just (names, shorthelp, longhelplines) ->
@ -249,11 +249,11 @@ hledgerCommandMode tmpl ungroupedflags groupedflags hiddenflags args =
modeHelp = shorthelp modeHelp = shorthelp
,modeHelpSuffix = longhelplines ,modeHelpSuffix = longhelplines
,modeGroupFlags = Group { ,modeGroupFlags = Group {
groupUnnamed = ungroupedflags groupUnnamed = unnamedflaggroup
,groupNamed = groupedflags ,groupNamed = namedflaggroups
,groupHidden = hiddenflags ,groupHidden = hiddenflaggroup
} }
,modeArgs = args ,modeArgs = argsdescr
} }
-- | A command's documentation. Used both as part of CLI help, and as -- | A command's documentation. Used both as part of CLI help, and as