From a1a6aad8732282e8c962c8ce52366056de46f0d3 Mon Sep 17 00:00:00 2001 From: Simon Michael Date: Thu, 6 Mar 2025 13:05:45 -1000 Subject: [PATCH] fix:repl: also catch IO errors like `run nosuchfile` And print exceptions consistently, with a single newline. --- hledger/Hledger/Cli/Commands/Run.hs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/hledger/Hledger/Cli/Commands/Run.hs b/hledger/Hledger/Cli/Commands/Run.hs index c29a7ef93..801952f76 100644 --- a/hledger/Hledger/Cli/Commands/Run.hs +++ b/hledger/Hledger/Cli/Commands/Run.hs @@ -180,9 +180,10 @@ runREPL defaultJournalOverride findBuiltinCommand = do Just input -> do liftIO $ (runCommand defaultJournalOverride findBuiltinCommand $ argsAddDoubleDash $ parseCommand input) `catches` - [Handler (\(e::ErrorCall) -> putStr $ show e) - ,Handler (\(_::ExitCode) -> return ()) - ,Handler (\UserInterrupt -> return ()) + [Handler (\(e::ErrorCall) -> putStrLn $ rstrip $ show e) + ,Handler (\(e::IOError) -> putStrLn $ rstrip $ show e) + ,Handler (\(_::ExitCode) -> return ()) + ,Handler (\UserInterrupt -> return ()) ] loop prompt