From 88114871da1714295f9c668e499238caec0d40e9 Mon Sep 17 00:00:00 2001 From: Fredrik Ekre Date: Mon, 10 Oct 2022 00:34:50 +0200 Subject: [PATCH] [julia] Improve automatic loading of Debugger. --- .julia/config/startup.jl | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.julia/config/startup.jl b/.julia/config/startup.jl index baec927..2cbf6a5 100644 --- a/.julia/config/startup.jl +++ b/.julia/config/startup.jl @@ -11,8 +11,10 @@ if Base.isinteractive() && # Automatically load Debugger.jl when encountering @enter pushfirst!(REPL.repl_ast_transforms, function(ast::Union{Expr,Nothing}) - if Meta.isexpr(ast, :toplevel, 2) && Meta.isexpr(ast.args[2], :macrocall) && - ast.args[2].args[1] === Symbol("@enter") && !isdefined(Main, Symbol("@enter")) + contains_enter(x) = false + contains_enter(x::Expr) = (Meta.isexpr(x, :macrocall) && x.args[1] === Symbol("@enter")) || + any(contains_enter, x.args) + if Meta.isexpr(ast, :toplevel, 2) && contains_enter(ast) && !isdefined(Main, Symbol("@enter")) @info "Loading Debugger..." Core.eval(Main, :(using Debugger)) end