kdheepak / Taskwarrior Tui
Programming Languages
Projects that are alternatives of or similar to Taskwarrior Tui
taskwarrior-tui
A Terminal User Interface for Taskwarrior.
Installation
Unless otherwise specified, you will need to install taskwarrior
first. See https://taskwarrior.org/download/ for more information.
- Download the tar.gz file for your OS from the latest release.
- Unzip the tar.gz file
- Run with
./taskwarrior-tui
.
git clone https://github.com/kdheepak/taskwarrior-tui.git
cd taskwarrior-tui
cargo build --release
Using brew
This installs task
from homebrew
as well.
brew install taskwarrior-tui
Use pacman to install it from the community repository:
pacman -S taskwarrior-tui
Or use your favorite AUR helper to download the git package maintained by @loki7990. For example:
yay -S taskwarrior-tui-git # build from source master
Using snap
snap install taskwarrior-tui
Using zdharma/zinit
Add the following to your ~/.zshrc
:
zinit ice wait:2 lucid extract"" from"gh-r" as"command" mv"taskwarrior-tui* -> tt"
zinit load kdheepak/taskwarrior-tui
Usage
Tip: Alias tt
to taskwarrior-tui
.
Add the following to your dotfiles (e.g. ~/.bashrc
, ~/.zshrc
):
alias tt="taskwarrior-tui"
See it in action:
Easy to use interface:
Context switcher:
readline
-like functionality:
Click to expand!
-
<Ctrl-a>
: Go to beginning of the line -
<Ctrl-e>
: Go to end of the line -
<Ctrl-u>
: Delete from beginning of the line -
<Ctrl-k>
: Delete to end of the line -
<Ctrl-w>
: Delete previous word
Calendar view
Click to expand!
taskwarrior-tui
supports a Calendar view, which you can get to by hitting the ]
key:
This highlights the days for your due tasks in a calendar view.
You can configure the number of months in a row by changing the uda.taskwarrior-tui.calendar.months-per-row
attribute in your taskrc
file.
See the next section for more information.
You can switch back to the task view by hitting the [
key.
taskwarrior-tui
using ~/.taskrc
:
Configure Click to expand!
taskwarrior-tui
reads values from your taskwarrior
's taskrc
file (default: ~/.taskrc
).
For example, color.active
is used to style the active task.
If you would like to try it, open your taskrc
file and change color.active=white on blue
.
So color.active
will take precedence over color.overdue
. You can see what color.active
is by running task show color.active
in your favorite shell prompt.
The following color attributes are supported:
color.deleted
color.completed
color.active
color.overdue
color.scheduled
color.due.today
color.due
color.blocked
color.blocking
color.recurring
color.tagged
Other taskwarrior-tui
configuration options are possible using the user defined attribute feature of taskwarrior
.
All taskwarrior-tui
specific configuration options will begin with uda.taskwarrior-tui.
.
The following is a full list of all the options available and their default values implemented by taskwarrior-tui
if not defined in your taskrc
file.
uda.taskwarrior-tui.selection.indicator=ā¢
uda.taskwarrior-tui.selection.bold=yes
uda.taskwarrior-tui.selection.italic=no
uda.taskwarrior-tui.selection.dim=no
uda.taskwarrior-tui.selection.blink=no
uda.taskwarrior-tui.calendar.months-per-row=4
uda.taskwarrior-tui.task-report.show-info=true
uda.taskwarrior-tui.task-report.looping=true
uda.taskwarrior-tui.style.context.active=black on rgb444
uda.taskwarrior-tui.style.calendar.title=black on rgb444
And here are the default key bindings:
uda.taskwarrior-tui.keyconfig.quit=q
uda.taskwarrior-tui.keyconfig.refresh=r
uda.taskwarrior-tui.keyconfig.go-to-bottom=G
uda.taskwarrior-tui.keyconfig.go-to-top=g
uda.taskwarrior-tui.keyconfig.down=j
uda.taskwarrior-tui.keyconfig.up=k
uda.taskwarrior-tui.keyconfig.page-down=J
uda.taskwarrior-tui.keyconfig.page-up=K
uda.taskwarrior-tui.keyconfig.delete=x
uda.taskwarrior-tui.keyconfig.done=d
uda.taskwarrior-tui.keyconfig.start-stop=s
uda.taskwarrior-tui.keyconfig.undo=u
uda.taskwarrior-tui.keyconfig.edit=e
uda.taskwarrior-tui.keyconfig.modify=m
uda.taskwarrior-tui.keyconfig.shell=!
uda.taskwarrior-tui.keyconfig.log=l
uda.taskwarrior-tui.keyconfig.add=a
uda.taskwarrior-tui.keyconfig.annotate=A
uda.taskwarrior-tui.keyconfig.filter=/
uda.taskwarrior-tui.keyconfig.zoom=z
uda.taskwarrior-tui.keyconfig.context-menu=c
uda.taskwarrior-tui.keyconfig.next-tab=]
uda.taskwarrior-tui.keyconfig.previous-tab=[
Configure user defined shortcuts:
Click to expand!
You can configure shortcuts to execute custom commands from your taskwarrior
's taskrc
file (default: ~/.taskrc
). You have to map a shortcut to an executable file :
uda.taskwarrior-tui.shortcuts.1=~/.config/taskwarrior-tui/shortcut-scripts/toggle-next-tag.sh
uda.taskwarrior-tui.shortcuts.2=~/.config/taskwarrior-tui/shortcut-scripts/sync.sh
...
PS1 : file can have any name in any location, but MUST be executable. PS2 : 0 iz reserved for future use, see https://github.com/kdheepak/taskwarrior-tui/pull/142
When you hit the shortcut, the script will be executed with the selected task uuid
as a parameter :
~/.config/taskwarrior-tui/shortcut-scripts/toggle-next-tag.sh $selected_task_uuid
For exemple, you can add the next
tag to the currently selected task with the following script in ~/.config/taskwarrior-tui/shortcut-scripts/toggle-next-tag.sh
:
task $1 mod +next
By default, shortcuts are linked to the 1-9
number row keys. They can be customized as any other keys through uda.taskwarrior-tui.keyconfig.shortcut0=<key>
. For exemple :
uda.taskwarrior-tui.keyconfig.shortcut0=n
Related
For a similar effort, check out vit
: