improve --help display for commands

This commit is contained in:
Joey Hess 2015-07-08 18:31:05 -04:00
parent 60806dd191
commit 3332df2c52
2 changed files with 3 additions and 22 deletions

View file

@ -75,13 +75,10 @@ dispatch fuzzyok allargs allcmds commonoptions fields header getgitrepo = do
parseCmd :: CmdParams -> [Command] -> (Command -> O.Parser v) -> O.ParserResult (Command, v)
parseCmd allargs allcmds getparser = O.execParserPure (O.prefs O.idm) pinfo allargs
where
pinfo = O.info (O.subparser $ mconcat $ map mkcommand allcmds)
( O.fullDesc
<> O.progDesc "hiya"
<> O.header "ook - aaa"
)
pinfo = O.info (O.helper <*> subcmds) O.fullDesc
subcmds = O.subparser $ mconcat $ map mkcommand allcmds
mkcommand c = O.command (cmdname c) $ O.info (mkparser c)
(O.fullDesc <> O.progDesc (cmddesc c))
(O.fullDesc <> O.header (cmddesc c))
mkparser c = (,)
<$> pure c
<*> getparser c

View file

@ -10,8 +10,6 @@ module CmdLine.Usage where
import Common.Annex
import Types.Command
import System.Console.GetOpt
usageMessage :: String -> String
usageMessage s = "Usage: " ++ s
@ -41,20 +39,6 @@ usage header cmds = unlines $ usageMessage header : concatMap go [minBound..]
longest f = foldl max 0 $ map (length . f) cmds
scmds = sort cmds
{- Usage message for a single command. -}
commandUsage :: Command -> String
commandUsage cmd = unlines
[ usageInfo header (cmdoptions cmd)
, "To see additional options common to all commands, run: git annex help options"
]
where
header = usageMessage $ unwords
[ "git-annex"
, cmdname cmd
, cmdparamdesc cmd
, "[option ...]"
]
{- Descriptions of params used in usage messages. -}
paramPaths :: String
paramPaths = paramRepeating paramPath -- most often used