Skip to content

Proposal: break tracking, monthly statistics, and localization improvements #1

Description

@bbrudastyy

Hi! I've been using the plugin for my own time tracking and ended up extending it with a few features I personally needed. I realize not all of them may be useful to everyone, so I'm filing this issue first to check which of these you'd be interested in upstreaming before I open a PR.

  1. Timer pause / break tracking — a Pause/Resume button, command, and ⏸ status bar indicator. Paused time accumulates as break time, is excluded from billable hours, and survives an Obsidian restart. The daily log table gets a new Break column.
  2. Calendar-month statistics — a Statistics section in the panel with month navigation, a total row, and a per-project breakdown (work, breaks, billable, session count), computed directly from the daily log tables. The current five-column format stays supported when reading history.
  3. Russian localization — full UI translation (panel, dialogs, commands, settings, notices), following Obsidian's language setting via the official getLanguage() API. The file format stays English-only so parsing is locale-independent.
  4. Year/month folder structure — daily logs move from a flat Daily/ folder to Daily/YYYY/MM/YYYY-MM-DD.md, with legacy flat files still readable and migrated automatically (links preserved) on the next session for that day.
  5. Last-used project pre-selection — the project field and the "Start timer" command pre-select the most recently used project, so plain Enter restarts it.

Since the changes share the same data model and file format, I'd prefer to submit everything as a single PR — ideally as one commit, but I can split it into separate commits per feature if that makes review easier. And if some of these don't fit the plugin's direction, I'm happy to leave them out.

Would you be open to a PR along these lines?

Image Image

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions