From 147d49c66c619d02b22ef12c772c70b290f04c72 Mon Sep 17 00:00:00 2001 From: Simon Michael Date: Tue, 9 May 2023 10:02:24 -1000 Subject: [PATCH] dev: cln: drop Hledger.Data.RawOptions.inRawOpts --- hledger-lib/Hledger/Data/RawOptions.hs | 8 ++------ hledger-ui/Hledger/UI/Main.hs | 10 +++++----- hledger-web/Hledger/Web/Main.hs | 12 ++++++------ hledger/Hledger/Cli/CliOptions.hs | 4 ++-- hledger/Hledger/Cli/Main.hs | 2 +- 5 files changed, 16 insertions(+), 20 deletions(-) diff --git a/hledger-lib/Hledger/Data/RawOptions.hs b/hledger-lib/Hledger/Data/RawOptions.hs index d85ae92d7..a498c7813 100644 --- a/hledger-lib/Hledger/Data/RawOptions.hs +++ b/hledger-lib/Hledger/Data/RawOptions.hs @@ -13,7 +13,6 @@ module Hledger.Data.RawOptions ( setboolopt, unsetboolopt, appendopts, - inRawOpts, boolopt, choiceopt, collectopts, @@ -56,12 +55,9 @@ unsetboolopt name = overRawOpts (filter ((/=name).fst)) appendopts :: [(String,String)] -> RawOpts -> RawOpts appendopts new = overRawOpts (++new) --- | Is the named option present ? -inRawOpts :: String -> RawOpts -> Bool -inRawOpts name = isJust . lookup name . unRawOpts - +-- | Is the named flag present ? boolopt :: String -> RawOpts -> Bool -boolopt = inRawOpts +boolopt name = isJust . lookup name . unRawOpts -- | From a list of RawOpts, get the last one (ie the right-most on the command line) -- for which the given predicate returns a Just value. diff --git a/hledger-ui/Hledger/UI/Main.hs b/hledger-ui/Hledger/UI/Main.hs index 821fe1d3f..6e3a7692b 100644 --- a/hledger-ui/Hledger/UI/Main.hs +++ b/hledger-ui/Hledger/UI/Main.hs @@ -72,11 +72,11 @@ main = withProgName "hledger-ui.log" $ do -- force Hledger.Utils.Debug.* to log let copts' = copts{inputopts_=iopts{forecast_=forecast_ iopts <|> Just nulldatespan}} case True of - _ | "help" `inRawOpts` rawopts -> pager (showModeUsage uimode) - _ | "info" `inRawOpts` rawopts -> runInfoForTopic "hledger-ui" Nothing - _ | "man" `inRawOpts` rawopts -> runManForTopic "hledger-ui" Nothing - _ | "version" `inRawOpts` rawopts -> putStrLn prognameandversion - -- _ | "binary-filename" `inRawOpts` rawopts -> putStrLn (binaryfilename progname) + _ | boolopt "help" rawopts -> pager (showModeUsage uimode) + _ | boolopt "info" rawopts -> runInfoForTopic "hledger-ui" Nothing + _ | boolopt "man" rawopts -> runManForTopic "hledger-ui" Nothing + _ | boolopt "version" rawopts -> putStrLn prognameandversion + -- _ | boolopt "binary-filename" rawopts -> putStrLn (binaryfilename progname) _ -> withJournalDo copts' (runBrickUi opts) runBrickUi :: UIOpts -> Journal -> IO () diff --git a/hledger-web/Hledger/Web/Main.hs b/hledger-web/Hledger/Web/Main.hs index 585adaa23..f826f525a 100644 --- a/hledger-web/Hledger/Web/Main.hs +++ b/hledger-web/Hledger/Web/Main.hs @@ -54,12 +54,12 @@ hledgerWebMain = do wopts@WebOpts{cliopts_=copts@CliOpts{debug_, rawopts_}} <- getHledgerWebOpts when (debug_ > 0) $ printf "%s\n" prognameandversion >> printf "opts: %s\n" (show wopts) if - | "help" `inRawOpts` rawopts_ -> pager (showModeUsage webmode) >> exitSuccess - | "info" `inRawOpts` rawopts_ -> runInfoForTopic "hledger-web" Nothing - | "man" `inRawOpts` rawopts_ -> runManForTopic "hledger-web" Nothing - | "version" `inRawOpts` rawopts_ -> putStrLn prognameandversion >> exitSuccess - -- "binary-filename" `inRawOpts` rawopts_ -> putStrLn (binaryfilename progname) - | "test" `inRawOpts` rawopts_ -> do + | boolopt "help" rawopts_ -> pager (showModeUsage webmode) >> exitSuccess + | boolopt "info" rawopts_ -> runInfoForTopic "hledger-web" Nothing + | boolopt "man" rawopts_ -> runManForTopic "hledger-web" Nothing + | boolopt "version" rawopts_ -> putStrLn prognameandversion >> exitSuccess + -- boolopt "binary-filename" rawopts_ -> putStrLn (binaryfilename progname) + | boolopt "test" rawopts_ -> do -- remove --test and --, leaving other args for hspec (`withArgs` hledgerWebTest) . filter (`notElem` ["--test","--"]) =<< getArgs | otherwise -> withJournalDo copts (web wopts) diff --git a/hledger/Hledger/Cli/CliOptions.hs b/hledger/Hledger/Cli/CliOptions.hs index 16688ede7..69dae5863 100644 --- a/hledger/Hledger/Cli/CliOptions.hs +++ b/hledger/Hledger/Cli/CliOptions.hs @@ -575,8 +575,8 @@ getHledgerCliOpts' mode' args0 = do let rawopts = either usageError id $ process mode' args0 opts <- rawOptsToCliOpts rawopts debugArgs args0 opts - when ("help" `inRawOpts` rawopts_ opts) $ putStr shorthelp >> exitSuccess - -- when ("help" `inRawOpts` rawopts_ opts) $ putStr longhelp >> exitSuccess + when (boolopt "help" $ rawopts_ opts) $ putStr shorthelp >> exitSuccess + -- when (boolopt "help" $ rawopts_ opts) $ putStr longhelp >> exitSuccess return opts where longhelp = showModeUsage mode' diff --git a/hledger/Hledger/Cli/Main.hs b/hledger/Hledger/Cli/Main.hs index 2c7b06fbc..7e154dd6e 100644 --- a/hledger/Hledger/Cli/Main.hs +++ b/hledger/Hledger/Cli/Main.hs @@ -174,7 +174,7 @@ main = do | not (isExternalCommand || hasHelpFlag args || hasInfoFlag args || hasManFlag args) && (hasVersion args) -- || (hasVersion argsaftercmd && isInternalCommand)) = putStrLn prognameandversion - -- \| (null externalcmd) && "binary-filename" `inRawOpts` rawopts = putStrLn $ binaryfilename progname + -- \| (null externalcmd) && boolopt "binary-filename" rawopts = putStrLn $ binaryfilename progname -- \| "--browse-args" `elem` args = System.Console.CmdArgs.Helper.execute "cmdargs-browser" mainmode' args >>= (putStr . show) | isNullCommand = dbgIO "" "no command, showing commands list" >> printCommandsList prognameandversion addons | isBadCommand = badCommandError