summaryrefslogtreecommitdiff
path: root/Omni/Log/Concurrent.hs
diff options
context:
space:
mode:
Diffstat (limited to 'Omni/Log/Concurrent.hs')
-rw-r--r--Omni/Log/Concurrent.hs7
1 files changed, 6 insertions, 1 deletions
diff --git a/Omni/Log/Concurrent.hs b/Omni/Log/Concurrent.hs
index 4ed8f42..391fcff 100644
--- a/Omni/Log/Concurrent.hs
+++ b/Omni/Log/Concurrent.hs
@@ -71,6 +71,7 @@ withLineManager maxLines action = do
writeIORef namespaceLines Map.empty
pure result
else do
+ IO.hPutStrLn IO.stderr ""
replicateM_ maxLines (IO.hPutStrLn IO.stderr "")
ANSI.hCursorUp IO.stderr maxLines
@@ -88,7 +89,11 @@ withLineManager maxLines action = do
result <- action mgr
- ANSI.hCursorDown IO.stderr maxLines
+ forM_ [0 .. maxLines - 1] <| \_ -> do
+ ANSI.hCursorDown IO.stderr 1
+ ANSI.hSetCursorColumn IO.stderr 0
+ ANSI.hClearLine IO.stderr
+
writeIORef currentLineManager Nothing
writeIORef namespaceLines Map.empty
pure result