diff --git a/src/main.rs b/src/main.rs index 53ed57d..0b53bcf 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,4 +1,4 @@ -use std::process::exit; +use std::{io::ErrorKind, process::exit}; use anyhow::anyhow; @@ -25,21 +25,16 @@ fn become_wm(conn: &C, screen: &Screen) -> anyhow::Result<()> { res.map_err(|e| anyhow!(e)) } -fn handle_args() { +fn main() -> anyhow::Result<()> { let mut args = std::env::args().skip(1); if let Some(arg) = args.next() { if arg != "-v" { - eprintln!("usage: rswm [-v]"); - exit(1); + return Err(anyhow!("usage: rswm [-v]")); } else { - println!("rswm-{}", env!("CARGO_PKG_VERSION")); - exit(0); + println!(env!("CARGO_PKG_VERSION")); // TODO: test this + return Ok(()); } } -} - -fn main() -> anyhow::Result<()> { - handle_args(); // TODO: Investigate LC_CTYPE and Locale stuff from dwm