@@ -30,6 +30,8 @@ import qualified Elm.Project as Project
30import qualified Elm.Package as Pkg
30import qualified Elm.Package as Pkg
31import qualified Elm.PerUserCache as PerUserCache
31import qualified Elm.PerUserCache as PerUserCache
32import qualified Parse.Repl as Elm
32import qualified Parse.Repl as Elm
33+import Reporting.Doc ((<+>))
34+import qualified Reporting.Doc as D
33import qualified Reporting.Task as Task
35import qualified Reporting.Task as Task
34import qualified Reporting.Progress.Repl as Repl
36import qualified Reporting.Progress.Repl as Repl
@@ -48,7 +50,7 @@ run :: () -> Flags -> IO ()
48run () (Flags maybeAlternateInterpreter) =
50run () (Flags maybeAlternateInterpreter) =
49 do interpreter <- getInterpreter maybeAlternateInterpreter
51 do interpreter <- getInterpreter maybeAlternateInterpreter
50 _ <- Project.getRootWithReplFallback
52 _ <- Project.getRootWithReplFallback
51− putStrLn welcomeMessage
53+ printWelcomeMessage
52 settings <- initSettings
54 settings <- initSettings
53 let manager = Repl.runInputT settings (Repl.withInterrupt loop)
55 let manager = Repl.runInputT settings (Repl.withInterrupt loop)
54 (exitCode,_,_) <- RWS.runRWST manager interpreter initalState
56 (exitCode,_,_) <- RWS.runRWST manager interpreter initalState
@@ -308,15 +310,19 @@ addMatch string isFinished name _ completions =
308-- WELCOME
310-- WELCOME
311−welcomeMessage :: String
313+printWelcomeMessage :: IO ()
312−welcomeMessage =
314+printWelcomeMessage =
315− "---- Elm " ++ elmVersion ++ " "
316+ title = "Elm" <+> D.fromString elmVersion
317+ dashes = replicate (70 - length elmVersion) '-'
317− starter ++ replicate (80 - length starter) '-' ++ "\n"
319+ D.toAnsi IO.stdout $
321+ [ D.black "----" <+> D.dullcyan title <+> D.black (D.fromString dashes)
318− ++ " :help for help, :exit to exit, more at <https://github.com/elm-lang/elm-repl>\n"
322+ , D.black " :help for help, :exit to exit, more at <https://github.com/elm-lang/elm-repl>"
319− ++ "--------------------------------------------------------------------------------"
323+ , D.black "--------------------------------------------------------------------------------"
322elmVersion :: String
328elmVersion :: String