on master help sign in
Added a --nobanner flag to supress the banner.
commit386753d38be8322107ac36d82ad72a41fcd0e2d8 authorcswords <cswords@umail.iu.edu> dateTue 26 Nov 2013, 15:32 (13 years ago) parentb3bf956
3 files changed+17−1
src/Idris/AbsSyntax.hs+11 src/Idris/AbsSyntaxTree.hs+3 src/Idris/REPL.hs+3−1
src/Idris/AbsSyntax.hs+11
@@ -421,6 +421,17 @@ setREPL t = do i <- getIState
421421 let opt' = opts { opt_repl = t }
422422 putIState $ i { idris_options = opt' }
423423
424+setNoBanner :: Bool -> Idris ()
425+setNoBanner n = do i <- getIState
426+ let opts = idris_options i
427+ let opt' = opts {opt_nobanner = n}
428+ putIState $ i { idris_options = opt' }
429+
430+getNoBanner :: Idris Bool
431+getNoBanner = do i <- getIState
432+ let opts = idris_options i
433+ return (opt_nobanner opts)
434+
424435setQuiet :: Bool -> Idris ()
425436setQuiet q = do i <- getIState
426437 let opts = idris_options i
src/Idris/AbsSyntaxTree.hs+3
@@ -37,6 +37,7 @@ data IOption = IOption { opt_logLevel :: Int,
3737 opt_errContext :: Bool,
3838 opt_repl :: Bool,
3939 opt_verbose :: Bool,
40+ opt_nobanner :: Bool,
4041 opt_quiet :: Bool,
4142 opt_codegen :: Codegen,
4243 opt_outputTy :: OutputType,
@@ -57,6 +58,7 @@ defaultOpts = IOption { opt_logLevel = 0
5758 , opt_errContext = False
5859 , opt_repl = True
5960 , opt_verbose = True
61+ , opt_nobanner = False
6062 , opt_quiet = False
6163 , opt_codegen = ViaC
6264 , opt_outputTy = Executable
@@ -256,6 +258,7 @@ data Opt = Filename String
256258 | Ver
257259 | Usage
258260 | Quiet
261+ | NoBanner
259262 | ColourREPL Bool
260263 | Ideslave
261264 | ShowLibs
src/Idris/REPL.hs+3−1
@@ -937,6 +937,7 @@ parseCodegen _ = error "unknown codegen" -- FIXME: partial function
937937
938938parseArgs :: [String] -> [Opt]
939939parseArgs [] = []
940+parseArgs ("--nobanner":ns) = NoBanner : (parseArgs ns)
940941parseArgs ("--quiet":ns) = Quiet : (parseArgs ns)
941942parseArgs ("--ideslave":ns) = Ideslave : (parseArgs ns)
942943parseArgs ("--client":ns) = [Client (showSep " " ns)]
@@ -1078,6 +1079,7 @@ idrisMain :: [Opt] -> Idris ()
10781079idrisMain opts =
10791080 do let inputs = opt getFile opts
10801081 let quiet = Quiet `elem` opts
1082+ let nobanner = NoBanner `elem` opts
10811083 let idesl = Ideslave `elem` opts
10821084 let runrepl = not (NoREPL `elem` opts)
10831085 let output = opt getOutput opts
@@ -1139,7 +1141,7 @@ idrisMain opts =
11391141 return ()
11401142 when (not (NoPrelude `elem` opts)) $ do x <- loadModule stdout "Prelude"
11411143 return ()
1142− when (runrepl && not quiet && not idesl && not (isJust script)) $ iputStrLn banner
1144+ when (runrepl && not quiet && not idesl && not (isJust script) && not nobanner) $ iputStrLn banner
11431145 ist <- getIState
11441146
11451147 loadInputs stdout inputs