Doron Behar / taskwarrior-fzf · GitLab
source link: https://gitlab.com/doronbehar/taskwarrior-fzf
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Taskwarrior fzf interface
An fzf based UI for
taskwarrior, implemented as a /bin/sh
script.
Install
-
Link / Copy / Move the file
taskfzf
from this repo to your$PATH
. -
Make sure you have fzf 0.19.0 or newer installed.
Usage
Command Line Arguments
Launching taskfzf
, will present you an fzf
interface where every
task is a line you can filter out using fzf
’s magical search.
Without arguments, you’ll see the list of tasks task
would list if
given no arguments.
You can supply a report
argument (e.g ls
, list
, next
..) to
taskfzf
as you’d supply task
.
Besides that, taskfzf
also accepts modifications to your config using
rc.
arguments given right before the optional report argument.
Key Bindings
taskfzf
uses fzf
’s
bindings to perform actions over the highlighted task or to change the
list of tasks presented. Since tasks are usually written in lower case
letters, and in order to mitigate key bindings clashes with a parent
program taskfzf
may run inside (e.g tmux, Neovim’s :term
etc.), I
decided to bind every upper case letter to an action.
Pressing ?
prints a summary of all key bindings and their actions but
the lists here explain a bit more.
Perform an action over the selected tasks
-
D
marks the tasks as done (task do
). -
X
Deletes the tasks (task del
). -
U
undo the last action performed (task undo
). -
E
edits the task in your editor (task edit
). -
A
appends a text to the tasks using a shell input (task append
). -
N
annotates a text to a task using a shell input (task annotate
). -
M
modifies a task using a shell input (task modify
). -
S
starts the tasks (task start
). -
P
stops the tasks (task stop
).
The script expects all reports to put in their 1st column the task’s number. You will get a warning when trying to perform actions upon a certain task if that’s not the case. Adjust your reports accordingly! |
Change / Reload the current list of tasks
Each of the following key bindings changes the list of tasks you can
perform an actions upon. taskfzf
does so by reprinting the list of
tasks with a different context (rc.context
) or with a different
``report''.
Choosing a different context/report is also performed by fzf
.
task reports
or task contexts
supply the list of candidates.
In the tasks view, you can prompt for a different report / context using:
-
R
changes the current`report'' (`task reports
). -
C
changes the current context (task contexts
). -
CTRL-R
reloads the current report, useful when another instance oftask
changes your tasks.
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK