From 7d90764cbde99d4a3ca8ab24a3a99cf92a8bd497 Mon Sep 17 00:00:00 2001 From: Campbell Alden Date: Wed, 26 Jul 2023 15:01:12 +0900 Subject: [PATCH] Close unpaired spans on CTRL+D in live mode --- Cargo.lock | 2 +- Cargo.toml | 2 +- src/main.rs | 7 ++++++- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 8d53a30..37ccdeb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -354,7 +354,7 @@ dependencies = [ [[package]] name = "time-track" -version = "0.3.0" +version = "0.3.1" dependencies = [ "atty", "chrono", diff --git a/Cargo.toml b/Cargo.toml index 11a9b46..077c2e7 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "time-track" -version = "0.3.0" +version = "0.3.1" edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/src/main.rs b/src/main.rs index d07eb86..28fc149 100644 --- a/src/main.rs +++ b/src/main.rs @@ -71,7 +71,12 @@ fn live_spans() -> Vec { } } if let Some(unpaired) = seen { - println!("Ended with an open span from {unpaired}... Ignoring"); + println!("Closing unpaired span now"); + let mut now = Local::now().naive_local().time(); + if now < unpaired { + now = now + Duration::hours(12); + } + durations.push(now - unpaired); } return durations; }