From 3f9014d8c753918a8798f46ba22147685a7f58d9 Mon Sep 17 00:00:00 2001 From: "andy.boot" Date: Thu, 9 Nov 2023 22:01:01 +0000 Subject: [PATCH] feat: No progress bars if stdout redirected Progress bars pollute the output if it has been redirected to a file. If stdout is redirected do not print progress bars --- src/config.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/config.rs b/src/config.rs index 9a77f52..17cb244 100644 --- a/src/config.rs +++ b/src/config.rs @@ -1,6 +1,7 @@ use clap::ArgMatches; use config_file::FromConfigFile; use serde::Deserialize; +use std::io::IsTerminal; use std::path::Path; use std::path::PathBuf; @@ -31,7 +32,9 @@ impl Config { Some(true) == self.no_colors || options.is_present("no_colors") } pub fn get_disable_progress(&self, options: &ArgMatches) -> bool { - Some(true) == self.disable_progress || options.is_present("disable_progress") + Some(true) == self.disable_progress + || options.is_present("disable_progress") + || !std::io::stdout().is_terminal() } pub fn get_apparent_size(&self, options: &ArgMatches) -> bool { Some(true) == self.display_apparent_size || options.is_present("display_apparent_size")