From 53e6772b46efafbe2689cb4835a5ef1ed24b3b68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Belmant?= Date: Wed, 14 May 2025 05:49:59 +0000 Subject: [PATCH] Define default terminal ourselves --- src/CthulhuBase.jl | 6 +++++- test/test_terminal.jl | 4 +--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/CthulhuBase.jl b/src/CthulhuBase.jl index 1eb9d5e2..44c663d6 100644 --- a/src/CthulhuBase.jl +++ b/src/CthulhuBase.jl @@ -142,7 +142,11 @@ function __descend_with_error_handling(args...; terminal=default_terminal(), kwa return nothing end -default_terminal() = REPL.LineEdit.terminal(Base.active_repl) +function default_terminal() + term_env = get(ENV, "TERM", @static Sys.iswindows() ? "" : "dumb") + term = REPL.Terminals.TTYTerminal(term_env, stdin, stdout, stderr) + return term +end descend_impl(@nospecialize(args...); kwargs...) = _descend_with_error_handling(args...; iswarn=true, kwargs...) diff --git a/test/test_terminal.jl b/test/test_terminal.jl index 954e041a..39100d3b 100644 --- a/test/test_terminal.jl +++ b/test/test_terminal.jl @@ -40,9 +40,7 @@ macro with_try_stderr(out, expr) end @testset "Terminal" begin - if isdefined(Base, :active_repl) - @test Cthulhu.default_terminal() isa REPL.Terminals.TTYTerminal - end + @test Cthulhu.default_terminal() isa REPL.Terminals.TTYTerminal colorize(use_color::Bool, c::Char) = Cthulhu.stringify() do io use_color ? printstyled(io, c; color=:cyan) : print(io, c) end