on master help sign in
Make the REPL header colorful
commit93332f891f720f329d3706fd4ac9f8f1b0a91095 authorEvan Czaplicki <evancz@users.noreply.github.com> dateMon 9 Apr 2018, 12:39 (9 years ago) parentbf2e5eb
1 file changed+14−8
ui/terminal/src/Repl.hs+14−8
ui/terminal/src/Repl.hs+14−8
@@ -30,6 +30,8 @@ import qualified Elm.Project as Project
3030import qualified Elm.Package as Pkg
3131import qualified Elm.PerUserCache as PerUserCache
3232import qualified Parse.Repl as Elm
33+import Reporting.Doc ((<+>))
34+import qualified Reporting.Doc as D
3335import qualified Reporting.Task as Task
3436import qualified Reporting.Progress.Repl as Repl
3537
@@ -48,7 +50,7 @@ run :: () -> Flags -> IO ()
4850run () (Flags maybeAlternateInterpreter) =
4951 do interpreter <- getInterpreter maybeAlternateInterpreter
5052 _ <- Project.getRootWithReplFallback
51− putStrLn welcomeMessage
53+ printWelcomeMessage
5254 settings <- initSettings
5355 let manager = Repl.runInputT settings (Repl.withInterrupt loop)
5456 (exitCode,_,_) <- RWS.runRWST manager interpreter initalState
@@ -308,15 +310,19 @@ addMatch string isFinished name _ completions =
308310-- WELCOME
309311
310312
311−welcomeMessage :: String
312−welcomeMessage =
313+printWelcomeMessage :: IO ()
314+printWelcomeMessage =
313315 let
314− starter =
315− "---- Elm " ++ elmVersion ++ " "
316+ title = "Elm" <+> D.fromString elmVersion
317+ dashes = replicate (70 - length elmVersion) '-'
316318 in
317− starter ++ replicate (80 - length starter) '-' ++ "\n"
318− ++ " :help for help, :exit to exit, more at <https://github.com/elm-lang/elm-repl>\n"
319− ++ "--------------------------------------------------------------------------------"
319+ D.toAnsi IO.stdout $
320+ D.vcat
321+ [ D.black "----" <+> D.dullcyan title <+> D.black (D.fromString dashes)
322+ , D.black " :help for help, :exit to exit, more at <https://github.com/elm-lang/elm-repl>"
323+ , D.black "--------------------------------------------------------------------------------"
324+ , D.empty
325+ ]
320326
321327
322328elmVersion :: String