summaryrefslogtreecommitdiffstats
path: root/src/utils/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/utils/mod.rs')
-rw-r--r--src/utils/mod.rs11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/utils/mod.rs b/src/utils/mod.rs
index 6f89fbe..d9d6617 100644
--- a/src/utils/mod.rs
+++ b/src/utils/mod.rs
@@ -121,6 +121,17 @@ pub fn fuzzy_match(text: &str, pattern: &str) -> bool {
pattern_index == pattern_chars.len()
}
+pub fn pretty_error(err: &anyhow::Error) -> String {
+ let mut output = vec![];
+ output.push(err.to_string());
+ output.push("Caused by:".to_string());
+ for (i, cause) in err.chain().skip(1).enumerate() {
+ output.push(format!(" {i}: {cause}"));
+ }
+ output.push(String::new());
+ output.join("\n")
+}
+
pub fn error_text(input: &str) -> String {
nu_ansi_term::Style::new()
.fg(nu_ansi_term::Color::Red)