diff options
| author | Eskil Queseth <eskilq@kth.se> | 2020-10-15 21:21:55 +0200 |
|---|---|---|
| committer | Eskil Queseth <eskilq@kth.se> | 2020-10-15 21:21:55 +0200 |
| commit | 01b3c75420ec5bf9083dbcf643d3c6087d4f2ce7 (patch) | |
| tree | 4a6dd760ad39974fc8684fe76400b5dee8967c37 /mumlib/src/lib.rs | |
| parent | 680c46e6866071ae987d9978316ce2952347fe35 (diff) | |
| parent | 47d3834a6e5b82e287b975fbf55939c6fd44ca02 (diff) | |
| download | mum-01b3c75420ec5bf9083dbcf643d3c6087d4f2ce7.tar.gz | |
Merge remote-tracking branch 'origin/cli' into error-handling
Diffstat (limited to 'mumlib/src/lib.rs')
| -rw-r--r-- | mumlib/src/lib.rs | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/mumlib/src/lib.rs b/mumlib/src/lib.rs new file mode 100644 index 0000000..ebf2019 --- /dev/null +++ b/mumlib/src/lib.rs @@ -0,0 +1,35 @@ +pub mod command; +pub mod state; + +use colored::*; +use log::*; + +pub fn setup_logger() { + fern::Dispatch::new() + .format(|out, message, record| { + let message = message.to_string(); + out.finish(format_args!( + "{} {}:{}{}{}", + //TODO runtime flag that disables color + match record.level() { + Level::Error => "ERROR".red(), + Level::Warn => "WARN ".yellow(), + Level::Info => "INFO ".normal(), + Level::Debug => "DEBUG".green(), + Level::Trace => "TRACE".normal(), + }, + record.file().unwrap(), + record.line().unwrap(), + if message.chars().any(|e| e == '\n') { + "\n" + } else { + " " + }, + message + )) + }) + .level(log::LevelFilter::Debug) + .chain(std::io::stderr()) + .apply() + .unwrap(); +} |
