diff options
| author | A Farzat <a@farzat.xyz> | 2026-06-07 17:40:25 +0300 |
|---|---|---|
| committer | A Farzat <a@farzat.xyz> | 2026-06-07 17:40:25 +0300 |
| commit | 8e7af6623d2f77aad77d346498e79fb83594d23e (patch) | |
| tree | 0e3c6b37f8799758a7d6131ad383587adad147ba /src | |
| parent | 697167a1abe9d31f97dc4645183b8142e5cc383d (diff) | |
| download | repo2markdown-8e7af6623d2f77aad77d346498e79fb83594d23e.tar.gz repo2markdown-8e7af6623d2f77aad77d346498e79fb83594d23e.zip | |
Standardize format in Logger and add Verbose level
I kind of want verbose level now as I want to know which files got
included.
Diffstat (limited to 'src')
| -rw-r--r-- | src/logger.rs | 9 | ||||
| -rw-r--r-- | src/main.rs | 2 | ||||
| -rw-r--r-- | src/renderer.rs | 14 | ||||
| -rw-r--r-- | src/run.rs | 2 |
4 files changed, 19 insertions, 8 deletions
diff --git a/src/logger.rs b/src/logger.rs index a1db035..8841bcc 100644 --- a/src/logger.rs +++ b/src/logger.rs @@ -2,6 +2,7 @@ pub enum Verbosity { Quiet, Normal, + Verbose, } #[derive(Copy, Clone, Debug, PartialEq, Eq)] @@ -16,7 +17,13 @@ impl Logger { pub fn warn(&self, message: impl AsRef<str>) { if self.verbosity != Verbosity::Quiet { - eprintln!("{}", message.as_ref()); + eprintln!("Warning: {}", message.as_ref()); + } + } + + pub fn info(&self, message: impl AsRef<str>) { + if self.verbosity == Verbosity::Verbose { + eprintln!("Info: {}", message.as_ref()); } } } diff --git a/src/main.rs b/src/main.rs index d9ba728..b558ae4 100644 --- a/src/main.rs +++ b/src/main.rs @@ -41,7 +41,7 @@ fn main() -> Result<(), Box<dyn std::error::Error>> { let stdin = io::stdin(); let stdout = io::stdout(); - let logger = Logger::new(Verbosity::Normal); + let logger = Logger::new(Verbosity::Verbose); run( stdin.lock(), stdout.lock(), diff --git a/src/renderer.rs b/src/renderer.rs index eb14a7d..8b9d3a5 100644 --- a/src/renderer.rs +++ b/src/renderer.rs @@ -60,6 +60,7 @@ impl<W: Write> Renderer<W> { }; let name = display_path(filename); let fence = outer_backticks(contents); + self.log_file_render(filename); writeln!(self.output)?; writeln!(self.output, "## File: {}", name)?; writeln!(self.output, "{}", fence)?; @@ -83,7 +84,7 @@ impl<W: Write> Renderer<W> { fn warn_about_filesize(&self, filename: &Path, filesize: u64) { self.logger.warn(format!( - "Warning: skipping large file: {} ({} > limit {})", + "skipping large file: {} ({} > limit {})", display_path(filename), human_readable_size(filesize), human_readable_size(self.max_file_size), @@ -91,10 +92,13 @@ impl<W: Write> Renderer<W> { } fn warn_about_binary_file(&self, filename: &Path) { - self.logger.warn(format!( - "Warning: skipping binary file: {}", - display_path(filename) - )) + self.logger + .warn(format!("skipping binary file: {}", display_path(filename))) + } + + fn log_file_render(&self, filename: &Path) { + self.logger + .info(format!("rendering file: {}", display_path(filename))); } } @@ -39,7 +39,7 @@ pub fn run<R: Read, W: Write>( let normalized_path = normalizer.normalize(path)?; if !seen_paths.insert(normalized_path.relative.clone()) { logger.warn(format!( - "Warning: skipping duplicate file: {}", + "skipping duplicate file: {}", display_path(&normalized_path.relative) )); continue; |
