From 608ec0304707aa420931aee71e14f11b4281a84c Mon Sep 17 00:00:00 2001 From: LGUG2Z Date: Sun, 25 Feb 2024 09:31:54 -0800 Subject: [PATCH] feat(cli): add config command This commit adds the "komorebic config" command as a helper to print the path to komorebi.json, while respecting the KOMOREBI_CONFIG_HOME environment variable if it exists. This is particularly useful for users who wish to edit this file on the command line, as they can now run commands like: "lvim $(komorebic config)" --- komorebic/src/main.rs | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/komorebic/src/main.rs b/komorebic/src/main.rs index 0e8586de..93af72f0 100644 --- a/komorebic/src/main.rs +++ b/komorebic/src/main.rs @@ -805,8 +805,10 @@ enum SubCommand { Start(Start), /// Stop the komorebi.exe process and restore all hidden windows Stop(Stop), - /// Output various important komorebi-related environment values + /// Check komorebi configuration and related files for common errors Check, + /// Show the path to komorebi.json + Config, /// Show a JSON representation of the current window manager state State, /// Show a JSON representation of visible windows @@ -1414,6 +1416,14 @@ fn main() -> Result<()> { println!("If running 'komorebic start --await-configuration', you will manually have to call the following command to begin tiling: komorebic complete-configuration\n"); } } + SubCommand::Config => { + let static_config = HOME_DIR.join("komorebi.json"); + + if static_config.exists() { + println!("{}", static_config.display()); + } + } + SubCommand::AhkLibrary => { let library = HOME_DIR.join("komorebic.lib.ahk"); let mut file = OpenOptions::new()