From b5a7748802c9e23185f13aa00274f02ea9f65988 Mon Sep 17 00:00:00 2001 From: pvincent Date: Mon, 27 Jul 2026 20:53:30 +0400 Subject: [PATCH] error box ok --- poc | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/poc b/poc index 19c8416..66c63ad 100755 --- a/poc +++ b/poc @@ -85,6 +85,7 @@ function on_pipe { # miaou_debug on_pipe: "${failure_code}" exit "$failure_code" } + function dump_stderr { miaou_debug --stderr-- mapfile -t tmp_error <"$MIAOU_BASH_ERROR" @@ -95,31 +96,48 @@ function dump_stderr { } function dump_failure { + local i miaou_debug --tty error box-- tty_ansi 95 - echo -n "$failure_type" + length_box=$((${#failure_type} + ${#failure_code} + (2 * 2) + 1)) + echo -n '╔' + for i in $(seq 1 $length_box); do echo -n '═'; done + echo '╗' + echo -n "║ $failure_type" if [[ -v failure_payload ]]; then tty_ansi 94 echo -n " $failure_payload" fi tty_ansi 33 printf "%5s" " $failure_code " + tty_ansi 95 + echo "║" + echo -n '╚' + for i in $(seq 1 4); do echo -n '═'; done + echo -n '╦' + for i in $(seq $((i + 2)) $length_box); do echo -n '═'; done + echo '╝' + echo " ║" tty_ansi 0 - echo miaou_debug --end of tty error box-- } function dump_stacktrace { miaou_debug --stacktrace ${#error_source[@]}-- - tty_ansi 94 local i source lineno funcname for i in "${!error_source[@]}"; do + tty_ansi 95 + echo -n " ╟─⟶" + [[ $i -gt 0 ]] && tty_ansi 90 + tty_ansi 3 source="${error_source[$i]}" lineno="${error_lineno[$i]}" funcname="${error_funcname[$i]}" - printf "%40s:%.4s \t%s\n" "$source" "$lineno" "$funcname" + printf "%40s:%.4s" "$source" "$lineno" + tty_ansi 0 + printf " \t%s" "$funcname" + echo done - tty_ansi 0 miaou_debug --end of stacktrace-- }