From 82230e5a1fe111c3619d91f054b04df6c324b143 Mon Sep 17 00:00:00 2001 From: Simon Michael Date: Wed, 29 May 2024 11:52:53 -1000 Subject: [PATCH] imp: cli: end help output with a blank line --- hledger-ui/Hledger/UI/Main.hs | 2 +- hledger-web/Hledger/Web/Main.hs | 4 ++-- hledger/Hledger/Cli.hs | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/hledger-ui/Hledger/UI/Main.hs b/hledger-ui/Hledger/UI/Main.hs index 6ae0edb01..a338cbc26 100644 --- a/hledger-ui/Hledger/UI/Main.hs +++ b/hledger-ui/Hledger/UI/Main.hs @@ -75,7 +75,7 @@ hledgerUiMain = withGhcDebug' $ withProgName "hledger-ui.log" $ do -- force Hle let copts' = copts{inputopts_=iopts{forecast_=forecast_ iopts <|> Just nulldatespan}} case True of - _ | boolopt "help" rawopts -> pager (showModeUsage uimode) + _ | boolopt "help" rawopts -> pager $ showModeUsage uimode ++ "\n" _ | boolopt "info" rawopts -> runInfoForTopic "hledger-ui" Nothing _ | boolopt "man" rawopts -> runManForTopic "hledger-ui" Nothing _ | boolopt "version" rawopts -> putStrLn prognameandversion diff --git a/hledger-web/Hledger/Web/Main.hs b/hledger-web/Hledger/Web/Main.hs index 9f8df2548..3353b2cf7 100644 --- a/hledger-web/Hledger/Web/Main.hs +++ b/hledger-web/Hledger/Web/Main.hs @@ -55,10 +55,10 @@ hledgerWebMain = withGhcDebug' $ do wopts@WebOpts{cliopts_=copts@CliOpts{debug_, rawopts_}} <- getHledgerWebOpts when (debug_ > 0) $ printf "%s\n" prognameandversion >> printf "opts: %s\n" (show wopts) if - | boolopt "help" rawopts_ -> pager (showModeUsage webmode) >> exitSuccess + | boolopt "help" rawopts_ -> pager $ showModeUsage webmode ++ "\n" | boolopt "info" rawopts_ -> runInfoForTopic "hledger-web" Nothing | boolopt "man" rawopts_ -> runManForTopic "hledger-web" Nothing - | boolopt "version" rawopts_ -> putStrLn prognameandversion >> exitSuccess + | boolopt "version" rawopts_ -> putStrLn prognameandversion -- boolopt "binary-filename" rawopts_ -> putStrLn (binaryfilename progname) | boolopt "test" rawopts_ -> do -- remove --test and --, leaving other args for hspec diff --git a/hledger/Hledger/Cli.hs b/hledger/Hledger/Cli.hs index ebe2671b4..f3fc264fc 100644 --- a/hledger/Hledger/Cli.hs +++ b/hledger/Hledger/Cli.hs @@ -195,13 +195,13 @@ main = withGhcDebug' $ do isExternalCommand = not (null cmd) && cmd `elem` addons -- probably isBadCommand = not (null rawcmd) && null cmd hasVersion = ("--version" `elem`) - printUsage = pager $ showModeUsage $ mainmode addons + printUsage = pager $ showModeUsage (mainmode addons) ++ "\n" badCommandError = error' ("command "++rawcmd++" is not recognized, run with no command to see a list") >> exitFailure -- PARTIAL: hasHelpFlag args1 = any (`elem` args1) ["-h","--help"] hasManFlag args1 = (`elem` args1) "--man" hasInfoFlag args1 = (`elem` args1) "--info" f `orShowHelp` mode1 - | hasHelpFlag args = pager $ showModeUsage mode1 + | hasHelpFlag args = pager $ showModeUsage mode1 ++ "\n" | hasInfoFlag args = runInfoForTopic "hledger" (headMay $ modeNames mode1) | hasManFlag args = runManForTopic "hledger" (headMay $ modeNames mode1) | otherwise = f