Add paid pomodoro breaks
Some jobs pay for breaks, so a pomodoro break shouldn't take time off the workday. By default (new setting `paid_breaks`, in [reminders]), b on the Tracker, zb anywhere or :break starts a pomodoro break WITHOUT pausing the shift: the break stays in your worked time and the data file isn't touched. b (or s) brings you back to focus. With the setting off, b pauses the shift like p. p and e always stop the clock. For the rhythm, a paid break still counts as a break: reminders::PaidBreaks keeps them in memory and pomodoro() cuts them out of the focus stretches, the same way as a pause. Stopping the shift ends a paid break, and closing the work day forgets them. The Tracker shows "on a paid break" and the paid break's progress, and the nudges name the right key (b or p/s). Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
1 parent
fe5e2d9a7f
commit
49e14b820a
8 files changed
+233
-21
No files matched your search
@@ -35,6 +35,7 @@ pub const COMMANDS: &[(&str, &str)] = &[
|
||||
(":set name :set noname", "turn an on/off setting on or off (name! flips it)"),
|
||||
(":undo :redo", "undo / redo"),
|
||||
(":snooze", "snooze the break reminder"),
|
||||
(":break", "take a pomodoro break / back from it"),
|
||||
(":tracker :days :insights :settings", "go to a screen"),
|
||||
(":help", "all keys"),
|
||||
(":q", "quit"),
|
||||
@@ -125,6 +126,7 @@ pub fn parse(text: &str, ctx: &Context) -> Result<Action, String> {
|
||||
"undo" | "u" => Ok(Action::Undo),
|
||||
"redo" => Ok(Action::Redo),
|
||||
"snooze" => Ok(Action::Snooze),
|
||||
"break" => Ok(Action::TakeBreak),
|
||||
"tracker" => Ok(Action::GoTo(Tab::Tracker)),
|
||||
"days" => Ok(Action::GoTo(Tab::Days)),
|
||||
"insights" => Ok(Action::GoTo(Tab::Insights)),
|
||||
|
||||
Reference in new issue
Block a user