diff --git a/docs/config/README.md b/docs/config/README.md index b67b21df..5fc98c76 100644 --- a/docs/config/README.md +++ b/docs/config/README.md @@ -2498,12 +2498,12 @@ The module will be shown if any of the following conditions are met: ### Options -| Option | Default | Description | -| ---------- | ---------------------------------- | ----------------------------------------------------- | -| `symbol` | `"↯ "` | The symbol used before displaying the version of Zig. | -| `style` | `"bold yellow"` | The style for the module. | -| `format` | `"via [$symbol$version]($style) "` | The format for the module. | -| `disabled` | `false` | Disables the `zig` module. | +| Option | Default | Description | +| ---------- | ------------------------------------ | ----------------------------------------------------- | +| `symbol` | `"↯ "` | The symbol used before displaying the version of Zig. | +| `style` | `"bold yellow"` | The style for the module. | +| `format` | `"via [$symbol($version )]($style)"` | The format for the module. | +| `disabled` | `false` | Disables the `zig` module. | ### Variables diff --git a/src/configs/zig.rs b/src/configs/zig.rs index 7dacca0a..b8cafc4a 100644 --- a/src/configs/zig.rs +++ b/src/configs/zig.rs @@ -13,7 +13,7 @@ pub struct ZigConfig<'a> { impl<'a> RootModuleConfig<'a> for ZigConfig<'a> { fn new() -> Self { ZigConfig { - format: "via [$symbol$version]($style) ", + format: "via [$symbol($version )]($style)", symbol: "↯ ", style: "bold yellow", disabled: false, diff --git a/src/modules/zig.rs b/src/modules/zig.rs index b4f711f9..b8b3eac3 100644 --- a/src/modules/zig.rs +++ b/src/modules/zig.rs @@ -18,12 +18,6 @@ pub fn module<'a>(context: &'a Context) -> Option> { return None; } - let zig_version_output = utils::exec_cmd("zig", &["version"])? - .stdout - .trim() - .to_string(); - let zig_version = format!("v{}", zig_version_output); - let mut module = context.new_module("zig"); let config = ZigConfig::try_load(module.config); @@ -38,7 +32,11 @@ pub fn module<'a>(context: &'a Context) -> Option> { _ => None, }) .map(|variable| match variable { - "version" => Some(Ok(zig_version.clone())), + "version" => { + let zig_version_output = utils::exec_cmd("zig", &["version"])?.stdout; + let zig_version = format!("v{}", zig_version_output.trim()); + Some(Ok(zig_version)) + } _ => None, }) .parse(None) @@ -77,7 +75,7 @@ mod tests { let dir = tempfile::tempdir()?; File::create(dir.path().join("main.zig"))?.sync_all()?; let actual = ModuleRenderer::new("zig").path(dir.path()).collect(); - let expected = Some(format!("via {} ", Color::Yellow.bold().paint("↯ v0.6.0"))); + let expected = Some(format!("via {}", Color::Yellow.bold().paint("↯ v0.6.0 "))); assert_eq!(expected, actual); dir.close() }