From e26d589dc129faa3018546239fb2ac4675f5753c Mon Sep 17 00:00:00 2001 From: A Farzat Date: Sat, 6 Jun 2026 03:22:07 +0300 Subject: Move render_filename to utils as display_path --- src/lib.rs | 1 + src/renderer.rs | 23 ++++++----------------- src/util/mod.rs | 1 + src/util/path_display.rs | 9 +++++++++ 4 files changed, 17 insertions(+), 17 deletions(-) create mode 100644 src/util/mod.rs create mode 100644 src/util/path_display.rs diff --git a/src/lib.rs b/src/lib.rs index db4162d..c9d1a45 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,2 +1,3 @@ pub mod normalizer; pub mod renderer; +mod util; diff --git a/src/renderer.rs b/src/renderer.rs index 4eec8a6..bb21100 100644 --- a/src/renderer.rs +++ b/src/renderer.rs @@ -4,7 +4,7 @@ use std::{ path::Path, }; -use crate::normalizer::NormalizedPath; +use crate::{normalizer::NormalizedPath, util::path_display::display_path}; const DEFAULT_MAX_FILE_SIZE: u64 = 1_000_000; @@ -51,7 +51,7 @@ impl Renderer { self.warn_about_binary_file(filename); return self.render_binary_file(filename); }; - let name = render_filename(filename); + let name = display_path(filename); let fence = outer_backticks(contents); writeln!(self.output)?; writeln!(self.output, "## File: {}", name)?; @@ -61,14 +61,14 @@ impl Renderer { } fn render_large_file(&mut self, filename: &Path) -> std::io::Result<()> { - let name = render_filename(filename); + let name = display_path(filename); writeln!(self.output)?; writeln!(self.output, "## File: {}", name)?; writeln!(self.output, "[FILE TOO LARGE]") } fn render_binary_file(&mut self, filename: &Path) -> std::io::Result<()> { - let name = render_filename(filename); + let name = display_path(filename); writeln!(self.output)?; writeln!(self.output, "## File: {}", name)?; writeln!(self.output, "[BINARY FILE]") @@ -77,17 +77,14 @@ impl Renderer { fn warn_about_filesize(&self, filename: &Path, filesize: u64) { eprintln!( "Warning: skipping large file: {} ({} > limit {})", - render_filename(filename), + display_path(filename), human_readable_size(filesize), human_readable_size(self.max_file_size), ) } fn warn_about_binary_file(&self, filename: &Path) { - eprintln!( - "Warning: skipping binary file: {}", - render_filename(filename), - ) + eprintln!("Warning: skipping binary file: {}", display_path(filename)) } } @@ -108,14 +105,6 @@ fn outer_backticks(contents: &str) -> String { "`".repeat(fence_len) } -fn render_filename(path: &Path) -> String { - let s = format!("{:?}", path); - s.strip_prefix('"') - .and_then(|s| s.strip_suffix('"')) - .unwrap_or(&s) - .to_string() -} - fn human_readable_size(bytes: u64) -> String { const UNITS: [&str; 5] = ["B", "KiB", "MiB", "GiB", "TiB"]; diff --git a/src/util/mod.rs b/src/util/mod.rs new file mode 100644 index 0000000..1ba817e --- /dev/null +++ b/src/util/mod.rs @@ -0,0 +1 @@ +pub mod path_display; diff --git a/src/util/path_display.rs b/src/util/path_display.rs new file mode 100644 index 0000000..e9dca4b --- /dev/null +++ b/src/util/path_display.rs @@ -0,0 +1,9 @@ +use std::path::Path; + +pub fn display_path(path: &Path) -> String { + let s = format!("{:?}", path); + s.strip_prefix('"') + .and_then(|s| s.strip_suffix('"')) + .unwrap_or(&s) + .to_string() +} -- cgit v1.3.1