fix:repl: also catch IO errors like run nosuchfile

And print exceptions consistently, with a single newline.
This commit is contained in:
Simon Michael 2025-03-06 13:05:45 -10:00
parent 9ecc3a56d0
commit a1a6aad873

View File

@ -180,9 +180,10 @@ runREPL defaultJournalOverride findBuiltinCommand = do
Just input -> do Just input -> do
liftIO $ (runCommand defaultJournalOverride findBuiltinCommand $ argsAddDoubleDash $ parseCommand input) liftIO $ (runCommand defaultJournalOverride findBuiltinCommand $ argsAddDoubleDash $ parseCommand input)
`catches` `catches`
[Handler (\(e::ErrorCall) -> putStr $ show e) [Handler (\(e::ErrorCall) -> putStrLn $ rstrip $ show e)
,Handler (\(_::ExitCode) -> return ()) ,Handler (\(e::IOError) -> putStrLn $ rstrip $ show e)
,Handler (\UserInterrupt -> return ()) ,Handler (\(_::ExitCode) -> return ())
,Handler (\UserInterrupt -> return ())
] ]
loop prompt loop prompt