The Todo List / Task Manager for Geeks in command line
:technologist: Developer / DevOps / Sysadmin? A command line hero?
:computer: Live with the dark terminal?
:memo: Think in Markdown?
Finally! A full featured task manager for YOU!
yyyy-mm-dd) with shortcut
It's just a single binary file, no external dependencies.
Just download the appropriate version of executable from latest release for your OS.
Then rename and give it permission to execute.
bash mv geek-life_linux-amd64 geek-life sudo chmod +x geek-life ./geek-life
I recommend installing it globally (to run from any directory of your system). It's easy, just put it in your systems $PATH directory.
bash sudo mv geek-life /usr/local/bin/geek-life geek-life
Done! Manage your tasks your way!
Shortcut key for a pane/element will be marked with underline.
Some shortcuts are global, some are contextual.
Contextual shortcuts will be applied according to focused pane/element.
You'll see a currently focused pane bordered with double line.
In case writing in a text input (e,g, new project/task, due date), you have to
| Context | Shortcut | Action | | --- | :---: | --- | | Global |
p| Go to Project list | | Global |
t| Go to Task list | | Projects |
n| New Project | | Projects |
Shift+Tab| Go up in project list | | Projects |
Tab| Go down in project list | | Tasks |
n| New Task | | Tasks |
h| Go back to Projects Pane | | Tasks |
Shift+Tab| Go up in task list | | Tasks |
Tab| Go down in task list | | Tasks |
c| Clear completed tasks | | Tasks |
d| Delete Project | | Task Detail |
h| Go back to Tasks Pane | | Task Detail |
Space| Toggle task as done/pending | | Task Detail |
d| Set Due date | | Task Detail |
o| Set Due date to today | | Task Detail |
+| Due date plus 1 | | Task Detail |
-| Due date minus 1 | | Task Detail |
↑| Scroll Up/Down the note editor | | Task Detail |
e| Activate note editor for modification | | Task Detail |
v| Edit task details in external editor (default
vim) | | Task Detail |
r| Rename Task Title | | Task Detail |
x| Export Task to clipboard | | Active Note Editor |
Esc| Deactivate note editor and save content |
Tips about using shortcuts efficiently:
The interface has 3 primary panels 1. [P]rojects/Task lists 2. [T]asks of selected project or Tasklist 3. [D]etails/actions of selected Project or Task
The following diagram shows navigation shortcuts between the panels.
+------+----------------------+-----------------------+ | P | T | D | | | | | | Entr=> ↓ ↑ Entr=> | | | / / | | | <=Esc j k <=Esc | | | | | +------+----------------------+-----------------------+
So, what it's trying to visualize is - - Selecting an item with
Enterwill move you to right panel. That means - - Selecting a Project will load it's tasks and move to Tasks panel - Selecting a Task will load task detail and move to Detail panel - Use
Escto move back to left panel. From Details to Tasks to Projects. - To navigate a list (Project list or Task list), - Use
Tabto go down - Use
Shift+Tabto go up
Some More hints: - If you are a vim user, think like -
kfor up/down list and
hfor go left - Think
Escas a "step back" - to previous pane in most cases. - When you're in a list (Projects or Tasks),
Enterwill load currently selected item. - After creating new Project, focus will automatically move to Tasks. Start adding tasks immediately by pressing
Escwhen you're done creating tasks.
If you fix a bug or want to add/improve a feature, and it's aligned with the focus (merging with ease) of this app, I will be glad to accept your PR. :)
By default, it will try to create a db file in you home directory.
But as a geek, you may try to put it different location (e,g, in your dropbox for syncing). In that case, just mention
DB_FILEas an environment variable.
Just post an issue describing your desired feature/enhancement and select
Also, incomplete features in the current roadmap will be found in issue list. You may :thumbsup: issues if you want to increase priority of a feature.
"This is the Book about which there is no doubt, a guidance for those conscious of Allah" - Al-Quran