Duke is a personal assistant chatbot that helps a person to keep track of tasks. It is optimized for those who prefer to work with a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI).
< a > means a can be replaced by user input. < > should be removed from user input.
[ a ] means a can be replaced by user input but with exactly the same format. [ ] should be removed from user input.
( a ) means a is optional. ( ) should be removed from user input.
a ^ b means user input can be either a or b but not both.
Unexpected text format in duke.txt may cause exceptions and hence failure to start the application. To ensure normal
functioning of Duke, please delete your duke.txt
file (if any) before you launch Duke for the first time. You do not
need to delete duke.txt
from next launching onwards. To prevent unexpected encoding, please do not modify duke.txt
with any external editor. You can only modify duke.txt
within the application.
todo
Adds a general task to the task list.
Format: todo <task>
Example of usage:
todo read book 1
Expected outcome:
Got it. I've added this task:
[T][N] read book 1
Now you have 1 tasks in the list.
Adds a task with deadline to the task list.
Format: deadline <task> /by [dd/MM/yyyy] ([HHmm])
Example of usage:
deadline return book 1 /by 20/09/2019 1500
Expected outcome:
Got it. I've added this task:
[D][N] return book 1 by: 20 September 2019 15:00
Now you have 2 tasks in the list.
Adds an event happening at particular time (or time period) to the task list.
Format: event <task> /at [dd/MM/yyyy] ([HHmm] ^ [HHmm HHmm])
Example of usage:
event project meeting /at 21/09/2019 1500 1600
Expected outcome:
Got it. I've added this task:
[E][N] project meeting at: 21 September 2019 15:00 to 16:00
Now you have 3 tasks in the list.
Lists all tasks, sorted according to the sequence of being added, with the first added task shown first.
Format: list
Example of usage:
list
Expected outcome:
Here are the tasks in your list:
1.[T][N] read book 1
2.[D][N] return book 1 by: 20 September 2019 15:00
3.[E][N] project meeting at: 21 September 2019 15:00 to 16:00
Marks a task as done.
Format: done <index>
Example of usage:
done 1
Expected outcome:
Nice! I've marked this task as done:
[T][Y] read book 1
Removes a task from the task list.
Format: delete <index>
Example of usage:
delete 3
Expected outcome:
Noted! I've removed this task:
[E][N] project meeting at: 21 September 2019 15:00 to 16:00
Now you have 3 tasks in the list.
Searches for a text in the task list. Returns all tasks with the specified text.
Format: find <text>
Example of usage:
find return
Expected outcome:
Here are the matching tasks in your list:
1.[D][N] return book 1 by: 20 September 2019 15:00
Revokes last command.
Format: undo
Example of usage:
After mark task 2 as done, type:
undo
Expected outcome:
Undo last command: done 2
And status of task 2 should be [ N ]
Exits the program.
Format: bye