Header description

This commit is contained in:
2025-01-09 13:55:28 +01:00
parent 4b36904f3a
commit af6f1682c5
7 changed files with 110 additions and 20 deletions

View File

@ -7,6 +7,7 @@ pub fn helper_table_print<T: TableGet>(
table: &T,
) -> std::fmt::Result {
let width = table.get_width();
let left_offset = " ".repeat(table.get_left_offset());
if let Some(header) = table.get_header() {
let middle_padding_amount = (width - header.len()) / 2;
@ -14,7 +15,8 @@ pub fn helper_table_print<T: TableGet>(
let middle_padding = " ".repeat(middle_padding_amount);
writeln!(
f,
"{}{}{}",
"{}{}{}{}",
&left_offset,
middle_padding,
header.bold().cyan(),
middle_padding
@ -27,19 +29,27 @@ pub fn helper_table_print<T: TableGet>(
let right_padding = " ".repeat(right_padding_amount);
writeln!(
f,
"{}{}{}",
"{}{}{}{}",
&left_offset,
column_left.bold().yellow(),
right_padding,
column_right.bold().yellow()
)?;
writeln!(f, "{}", "-".repeat(width))?;
writeln!(f, "{}{}", &left_offset, "-".repeat(width))?;
for (left, right) in table.get_rows().iter() {
let left_str = left.as_ref();
let right_str = right.to_string();
let padding_amount = width.saturating_sub(left_str.len() + right_str.len());
let padding = " ".repeat(padding_amount);
writeln!(f, "{}{}{}", left_str.bold().green(), padding, right_str)?;
writeln!(
f,
"{}{}{}{}",
&left_offset,
left_str.bold().green(),
padding,
right_str
)?;
}
Ok(())