simple to-do manager for power users
opus
can be installed via the provided binary files in the release section,
here.
Select the latest release, add the opus
executable to a directory which is registered in the path variable and you're
good to go.
git clone https://github.com/xnacly/opusCli
cargo build --release
./target/release/opus
Cargo will now build opus
for the target you're currently using as a operating system. The resulting executable can be
found in the target
directory: target/release/opus
- title is the only required value
- opus replaces
@tomorrow
and@today
with the corresponding dates inYYYY-mm-DD
notation
# add a new task with the following properties:
# title: review and merge pr 5
# due: @tomorrow
# tag: #github
# priority: 3
opus add "review and merge pr 5 @tomorrow #github .3"
# add a new task with the given title
opus a "review and merge pr 5"
- this command hides finished tasks from the
opus ls
command
# list all tasks
opus list
# list all task + finished tasks
opus list --finished
# list all task with the tag #work
opus list "#work"
# list all tasks with the priority 3
opus list .3
# list the task with the id 1
opus list 1
opus ls 1
opus l 1
# sort list output by task property
opus list --sort-by=id
opus list --sort-by=due
opus list --sort-by=finished
opus list --sort-by=title
opus list --sort-by=priority
opus list --sort-by=tag
# sort desc and asc (default sort is asc)
opus list --sort-by=id --sort-order=desc
# [2]: 'read c how to' (2022-10-17)
# [1]: 'notion aufsetzen' (2022-10-18) #uni .1
# --
# 2 tasks found matching query: 'list'
- opus hides finished tasks from the
opus ls
command - contrary to
opus ls
,opus fin
does only accept a tasks id as the argument
# mark the task with id=1 as finished
opus finish 1
opus fin 1
opus f 1
# this clears the whole database
opus clear
- opus exports all tasks to a specified file
# exports all tasks in the data.json file
opus export --format="json" --output="data.json"
# export all tasks in the data.csv file
opus export --format="csv" --output="data.csv"
# export all tasks in the data.tsv file
opus export --format="tsv" --output="data.csv"
- just like
opus finish
,opus delete
only accepts a tasks id as the argument
# delete the task with id=1
opus delete 1
opus del 1
opus d 1
By default opus
decides where to store its database based on your operating system. Currently opus supports
automatically figuring out where to store the database on windows, linux and macos.
- Linux and Macos:
$HOME/opus/opus.db
or$XDG_CONFIG_HOME/opus/opus.db
- Windows:
%LOCALAPPDATA%/opus/opus.db
For use cases which force the use of a different location, opus honors the OPUS_PATH
environment variable. Set this
variable and override the above paths.:
- Linux: add to .bashrc (or your shells config file)
set OPUS_PATH=~/.config # opus will create and use ~/.config/opus/opus.db
- Windows: Add to your system environment variables guide.
Opus will create the
opus/opus.db
file and directory in the directory specified in theOPUS_PATH
variable