From c4028bb213237ebf28791878a9bd27e974092fa2 Mon Sep 17 00:00:00 2001 From: Armin Widegreen Date: Wed, 29 May 2019 23:01:38 +0200 Subject: [PATCH] Consider color when printing squeeze indicator When color option has been set to never, the squeeze indicator character asterisk '*' should not be printed in color. Fixes #63 --- src/main.rs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/main.rs b/src/main.rs index 99a3d0a..ecfa444 100644 --- a/src/main.rs +++ b/src/main.rs @@ -16,8 +16,8 @@ use clap::{App, AppSettings, Arg}; use ansi_term::Color; use ansi_term::Color::Fixed; -use atty::Stream; use crate::squeezer::{SqueezeAction, Squeezer}; +use atty::Stream; const BUFFER_SIZE: usize = 256; @@ -369,10 +369,15 @@ impl<'a> Printer<'a> { SqueezeAction::Print => { self.buffer_line.clear(); let style = COLOR_OFFSET.normal(); + let asterisk = if self.show_color { + format!("{}", style.paint("*")) + } else { + String::from("*") + }; let _ = writeln!( &mut self.buffer_line, "{5}{0}{1:2$}{5}{1:3$}{6}{1:3$}{5}{1:4$}{6}{1:4$}{5}", - style.paint("*"), + asterisk, "", 7, 25,