A todo.txt manager, time tracker, timer, stopwatch, pomodoro, and alarms gnome-shell extension.
-
You can install this extension from the gnome-shell extensions site.
NOTE:
Since it takes some time for the extension to be reviewed, the version on this site might be out of date and contain bugs that have already been fixed. Consider using the github version. -
You can install it manually by cloning/downloading this repo into your
~/.local/share/gnome-shell/extensions
dir and renaming the downloaded dir totimepp@zagortenay333
.
After that, restart gnome-shell (Alt+F2 then typer
) and enable the extension via gnome-tweaks tool.
The latest version of this extension is on the master branch, and it supports
gnome-shell version 3.24
and 3.26
.
If you want to help out with translations, check out the instructions in the po_files dir.
Alarms, stopwatch and other timers won't work when the screen is locked.
Each section (timer, stopwatch, alarms..) can open as a separate menu when it's icon is clicked, or it can appear together with other sections in one menu.
Individual sections can be disabled.
Right-clicking on the panel icons will open a context section with some useful links.
This extension has a fullscreen interface, which can be used to control a corresponding section as well as replace regular notifications.
The interface has multi-monitor support, and it can be opened (and brought into focus) via a keyboard shortcut.
When in fullscreen, some keyboard shortcuts are available:
All | |
---|---|
Tab | navigate forward |
Ctrl + Tab | navigate backward |
Esc | close fullscreen |
Timer | |
---|---|
space | stop/start timer |
r or Backspace | start timer at the last manually set time |
1 ... 9 and 0 | start timer at the time specified by a num key. 1=1min, 2=2min, ..., 0=10min |
Stopwatch | |
---|---|
space | stop/start timer |
l or Enter | lap |
r or Backspace | reset |
Pomodoro | |
---|---|
space | stop/start timer |
Stats View | |
---|---|
f or / | start searching history |
Some of the features of the todo.txt manager are:
- Fuzzy task searching.
- Filtering by context, project, priority, custom fuzzy filters...
- Toggling a filter on/off by clicking on a priority, context, or proj in a task.
- Support for multiple todo files and corresponding done files and csv dirs.
- Compound sorting by priority, due date, completion date, creation date, etc...
- Fuzzy autocompletion for contexts and projects when inline editing a task.
- Autoupdating when the todo.txt file changes.
- Deleting all completed tasks and optionally storing them into a done.txt file.
- Switching between different views via keyboard shortcuts.
The todo.txt manager also has support for urls and file paths:
(A) @asdf https://www.google.com
(A) @asdf www.google.com
(A) @asdf /home/user/Documents
(A) @asdf ~/Documents
(A) @asdf ~/Documents/img.png
(A) @asdf ~/Documents/file\ with\ spaces.png
Supported todo.txt extensions are:
tracker_id:string |
Used to identify a task when starting/stopping
the time-tracker via the command-line. Multiple tasks can have the same tracker_id. |
pri:A-Z |
Used to restore the priority of a completed task when it gets reopend. |
h:1 |
Hides a task. This extension disables all other extensions. Among other things, can be used to populate the todo manager with context/project keywords for autocompletion. |
(t|defer):yyyy-mm-dd |
Defers opening a task until specified date. |
due|DUE:yyyy-mm-dd |
Sets a due date on a task. Timepp will also show how many days until/since the due date as well as provide the ability to sort tasks by due date. |
rec:recurrence_string |
Used to automatically reopen a task after a given amount of
time. This extension is incompatible with the due and defer extensions. Each time a task recurs, it's creation date is updated. If a task is already open on the date of the recursion, it's creation date will be updated anyway. The recurrence_string can be in one of 3 diff forms: (n=natural number, d=days, w=weeks, m=months)
|
The time tracker is built into the todo.txt manager and allows you to track the time spent on a particular task as well as the time spent on a particular project.
This extension features a fullscreen stats view for browsing your time-tracker data
- The stats view has a cool looking vbars graph for displaying data
- It supports viewing time spent on tasks/projects on any recorded day
- You can see a detailed view for a particular task/project
- You can fuzzy search your history
- You can view the most worked on tasks/projects in a particular time interval
When pressing the play button to track a task, all projects associated with that task will also be tracked.
At the start of each year, the current yearly csv file will be archived and a new file will be started.
There is also a daily csv file which gets appended to the yearly file at the start of each day.
NOTE:
When editing a task that has been time-tracked, only the corresponding entry in the daily csv file will be updated. The yearly csv file will not be changed.
The csv file has the form:
date, time spent (hh:mm), type ('++' = project, '()' = task), task or project
2017-02-04, 08:03, ++, "+my_project"
2017-02-04, 23:59, ++, "+protect_gotham"
2017-02-04, 02:03, ++, "+protect_gotham"
2017-02-04, 02:03, (), "(A) Watch the world burn."
2017-02-04, 02:03, (), "(A) Catch Joker."
2017-02-04, 02:03, (), "(Z) Take the trash out."
2017-02-05, 08:03, ++, "+my_project"
2017-02-05, 23:59, ++, "+protect_gotham"
2017-02-05, 02:03, ++, "+protect_gotham"
2017-02-05, 02:03, (), "(A) Watch the world burn."
2017-02-05, 02:03, (), "x 2017-02-05 Catch Joker."
2017-02-05, 02:03, (), "(Z) Take the trash out."
HINT:
There is an option to pause the time tracker when the pomodoro stops!
This extension comes with a dbus api. Check out the dbus dir for info on what you can do.
There are also some example scripts that might come in handy. 😄
This extension supports custom themes. In order to style it, place a
timepp.css
file into your theme's root directory (the dir where the
gnome-shell.css
file is).
You must use the !important
directive in order to override a property from the
extensions' stylesheet.
The todo.txt manager, timer and alarm support pango markup.
NOTE:
The pango markup will appear in thetodo.txt
file as well if used in the todo.txt manager.
Notifications will only show the<b>
,<i>
,<u>
tags and links.