made reset optional

This commit is contained in:
MasterGordon 2024-08-22 21:02:19 +02:00
parent a63d404c26
commit fccf28bcc9
2 changed files with 29 additions and 16 deletions

37
Cargo.lock generated
View File

@ -19,12 +19,13 @@ checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de"
[[package]] [[package]]
name = "cc" name = "cc"
version = "1.1.8" version = "1.1.13"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "504bdec147f2cc13c8b57ed9401fd8a147cc66b67ad5cb241394244f2c947549" checksum = "72db2f7947ecee9b03b510377e8bb9077afa27176fdbff55c51027e976fdcc48"
dependencies = [ dependencies = [
"jobserver", "jobserver",
"libc", "libc",
"shlex",
] ]
[[package]] [[package]]
@ -95,9 +96,9 @@ dependencies = [
[[package]] [[package]]
name = "libc" name = "libc"
version = "0.2.155" version = "0.2.158"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" checksum = "d8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439"
[[package]] [[package]]
name = "libgit2-sys" name = "libgit2-sys"
@ -129,9 +130,9 @@ dependencies = [
[[package]] [[package]]
name = "libz-sys" name = "libz-sys"
version = "1.1.18" version = "1.1.19"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c15da26e5af7e25c90b37a2d75cdbf940cf4a55316de9d84c679c9b8bfabf82e" checksum = "fdc53a7799a7496ebc9fd29f31f7df80e83c9bda5299768af5f9e59eeea74647"
dependencies = [ dependencies = [
"cc", "cc",
"libc", "libc",
@ -260,18 +261,18 @@ dependencies = [
[[package]] [[package]]
name = "serde" name = "serde"
version = "1.0.205" version = "1.0.208"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e33aedb1a7135da52b7c21791455563facbbcc43d0f0f66165b42c21b3dfb150" checksum = "cff085d2cb684faa248efb494c39b68e522822ac0de72ccf08109abde717cfb2"
dependencies = [ dependencies = [
"serde_derive", "serde_derive",
] ]
[[package]] [[package]]
name = "serde_derive" name = "serde_derive"
version = "1.0.205" version = "1.0.208"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "692d6f5ac90220161d6774db30c662202721e64aed9058d2c394f451261420c1" checksum = "24008e81ff7613ed8e5ba0cfaf24e2c2f1e5b8a0495711e44fcd4882fca62bcf"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
@ -291,9 +292,9 @@ dependencies = [
[[package]] [[package]]
name = "serde_json" name = "serde_json"
version = "1.0.122" version = "1.0.125"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "784b6203951c57ff748476b126ccb5e8e2959a5c19e5c617ab1956be3dbc68da" checksum = "83c8e735a073ccf5be70aa8066aa984eaf2fa000db6c8d0100ae605b366d31ed"
dependencies = [ dependencies = [
"itoa", "itoa",
"memchr", "memchr",
@ -302,10 +303,16 @@ dependencies = [
] ]
[[package]] [[package]]
name = "syn" name = "shlex"
version = "2.0.72" version = "1.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dc4b9b9bf2add8093d3f2c0204471e951b2285580335de42f9d2534f3ae7a8af" checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
[[package]]
name = "syn"
version = "2.0.75"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f6af063034fc1935ede7be0122941bafa9bacb949334d090b77ca98b5817c7d9"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",

View File

@ -36,6 +36,7 @@ struct Config {
schema: Option<String>, schema: Option<String>,
#[serde(rename = "version-do-not-modify")] #[serde(rename = "version-do-not-modify")]
version: Option<String>, version: Option<String>,
reset: Option<bool>,
base_color: Option<Color>, base_color: Option<Color>,
prompt: Vec<PromptPart>, prompt: Vec<PromptPart>,
} }
@ -80,6 +81,7 @@ fn setup() {
version: Some(VERSION.to_string()), version: Some(VERSION.to_string()),
schema: Some(format!("{}/schema.json", config_dir)), schema: Some(format!("{}/schema.json", config_dir)),
base_color: None, base_color: None,
reset: Some(true),
prompt: vec![], prompt: vec![],
}; };
write_config(config); write_config(config);
@ -134,11 +136,15 @@ fn main() {
} }
} }
prompt = prompt.drain(..).filter(|s| !s.is_empty()).collect(); prompt = prompt.drain(..).filter(|s| !s.is_empty()).collect();
let reset = match config.reset.unwrap_or(true) {
true => color(Some(Color::Reset)),
false => "".to_string(),
};
print!( print!(
"{}{}{}", "{}{}{}",
color(config.base_color), color(config.base_color),
prompt.join(format!("{} ", color(config.base_color)).as_str()), prompt.join(format!("{} ", color(config.base_color)).as_str()),
color(Some(Color::Reset)) reset
); );
} }