Duck is a portable lightweight task manager. You can manage your tasks in Duck using only a command line, without any need for complex GUI interfaces.
Interacting with Duke is just like interacting with one of your friends on social media. To issue a command, simply type it in the command bar and press ‘Enter’ (or click the ‘Send’ button).
Duck isn’t limited to a single type of task. Duck can manage to-dos, deadlines and events all at the same time!
Duck saves your task list automatically to data/cache/duck-cache.txt
after each update.
If you don’t like the location, don’t worry! Type set cachePath [new-path]
in the command line, then restart Duck.
The next time it runs, it will use a file at your new location.
Note: Ensure that there is no file already at the specified location. Otherwise, Duck will not be able to use the file.
If you hate to see a cluttered list, Duck can archive specific tasks by deleting them from your tasks list
and saving them to an archive file. This archive file is by default at data/archive/duck-archive.txt
, but you can
change this using a set archivePath [new-path]
command.
Adds a new task to your task list.
Command format
todo [description]
deadline [description] /by [time]
event [description] /at [time]
Usage examples
todo wash dishes
Adds a new to-do with description wash dishes
.
deadline math homework /by 10-10-2019
Adds a new deadline with description math homework
by time 10-10-2019
.
event team meeting /at 13-10-2019
Adds a new event with description team meeting
at time 13-10-2019
.
Lists all tasks currently in your list.
Command format
list
Marks a task in your list as done.
Command format
done [index]
Usage example
done 1
Deletes a task in your list.
Warning: Deleted tasks will not be saved and are lost forever.
Command format
delete [index]
Usage example
delete 1
Finds all tasks in your list whose description contains a search string.
Command format
find [search-string]
Usage example
find project
project
, and displays them in a list.Archives some tasks in your list. These tasks are deleted from your task list and saved in the archive file.
Command format
archive add [index1] [index2] ...
archive add *
archive add all
Duck also accepts
insert
as a command word instead ofadd
.
Usage examples
archive add 1 3 4
Archives the 1st, 3rd and 4th task in your list.
archive add *
or archive add all
Archives all the tasks in your list. In other words, it transfers your task list to the archive file.
Un-archives some tasks in your list. These tasks are deleted from your archive and re-added to the back of the task list.
Command format
archive remove [index1] [index2] ...
archive remove *
archive remove all
Duck also accepts
pull
,retrieve
andunarchive
as command words instead ofadd
.
Usage examples
archive remove 1 3 4
Un-archives the 1st, 3rd and 4th task in your archive.
archive remove *
or archive remove all
Adds the whole archive back to the task list, and clears the archive.
Lists all the tasks in the archive file.
Command format
archive list
Duck also accepts
archive view
for the same command.
Changes Duck’s configuration settings.
Command format
set cachePath [new-cache-path]
set archivePath [new-archive-path]
Usage examples
set cachePath new-cache-file.txt
Sets the cache location to new-cache-file.txt
.
set archivePath new-archive-file.txt
Sets the archive location to new-archive-file.txt
.
Note: Paths are given relative to the root directory, i.e. the directory where the JAR file is placed.
Exits the Duck interface.
Command format
bye