From e6bf74a97702f36bfd7655abc395b749a229a646 Mon Sep 17 00:00:00 2001 From: cheahzk Date: Tue, 2 Apr 2019 16:19:55 +0800 Subject: [PATCH 1/2] UserGuide: Updated the guide structure --- docs/UserGuide.adoc | 174 +++++++++++++++++++++++++++----------------- 1 file changed, 106 insertions(+), 68 deletions(-) diff --git a/docs/UserGuide.adoc b/docs/UserGuide.adoc index c1b465b1e85b..d2ee2fa22381 100644 --- a/docs/UserGuide.adoc +++ b/docs/UserGuide.adoc @@ -18,8 +18,12 @@ By: `T09-2` Since: `Feb 2019` Licence: `MIT` == Introduction -Tasketch is for those who need to manage their time by allocating time for each daily task. More importantly, Tasketch is optimized for those who prefer to use a desktop app and work with a Command Line Interface* (CLI) while still having the benefits of a Graphical User Interface (GUI). + -This user guide is introducing the features of Tasketch and show to the users how to use all the command lines. Interested? Jump to the <> to get started. Enjoy! +Tasketch is an application that helps those who need to manage their time by managing time for each daily task. + + +Besides, it also helps you to be awared of all the tasks dateline too. + + +This user guide is introducing the features of Tasketch and show to the users how to use all the command lines. + +Interested? Jump to the <> to get started. Enjoy! == Quick Start @@ -42,7 +46,7 @@ e.g. typing *`help`* and pressing kbd:[Enter] will open the help window. . Refer to <> for details of each command. [[Features]] -== Features +== Things to Take Note ==== *Command Format* @@ -62,40 +66,66 @@ type either `clear` or `c`. *** c - Co-Curicullar Activity (CCA) *** r - Errands *** o - Others -** Any inputs other than above will be invalid. -** The length of time has to be in hour unit only. (e.g. 1 for 1 hour, 2 for 1 hour 30 minutes after round-up) -** To modify the time limit, just use back the same command and it will update the old to the new time limit. +** Any inputs other than the above will be invalid. +** The length of time is in hours and minutes unit. (e.g. 1.0 for 1 hour, 1.15 for 1 hour 15 minutes) **** ==== -=== Viewing help : `help` +== Daily Time Planner -Format: `help` +This feature will help you to monitor your time spent on different tasks in a day. By looking at the time spent on +different tasks, it aims to help you to plan your time better so that you will not spend most time on specific type +of a task. === Adding a task: `add`/`a` -Adds a task to the Tasketch +To get started, you will need to add a task into Tasketch. The format is as below. + + +When you are adding a task, the app will ensure that there will be no duplicate names added. This is to ensure that +there is no confusion in the task names. + +Adding a task with the same start date and end date means that it is a daily task, will be monitored by the Daily Time +Planner. Different dates means it is a long period task, thus will not be considered as daily task. + +The app will not able to verify the correctness for the number of days in different months, so you have to ensure that +the date exists in that particular month. However, the app will able to differentiate the maximum number of days and months. +This means that you will never be able to enter more than 31 days and more than 12 months in the start date and end date. + +Should you enter different start date and end date, the app will ensure that your end date is after the start date. + +As for start time and end time, the app is smart enough to inform you when you are entered invalid time, such as 24.00, +as this is incorrect. You will not able to enter hours beyond 23 and minutes beyond 59. The app will also ensure +that the end time is after start time too. This to ensure the time spent/duration calculation (end time - start time) +will result correct values. -Format: `add n/TASK_NAME sd/START_DATE st/START_TIME ed/END_DATE et/END_TIME d/DESCRIPTION [c/CATEGORIES] [t/TAG]...` +You will also need to specify the type of category of the task that you are adding for the Daily Time Planner to monitor +your time effectively. + +If any of the above is violated, the app will alert you that it is an invalid command with the corrected format shown to +you. **** -* There are only 5 valid categories and can be excluded in the command. (The details about it can be found in <>.) -* Excluding category in the command will only mean that the task will not be included into the time management. +* There are only 5 valid categories. (The details about it can be found in <>.) **** [TIP] A task can have any number of tags (including 0) +Format: `add n/TASK_NAME sd/START_DATE st/START_TIME ed/END_DATE et/END_TIME d/DESCRIPTION c/CATEGORIES [t/TAG]...` + Examples: * `add n/CS2113 task sd/13-03-19 st/12.00 ed/13-03-19 et/14.00 d/Talk about version control` + Adds a task named CS2113 task in the app. It starts at 12:00 on March 13rd, 2019 and it ends at 14:00 on the same day. The description for this task is to talk about version control. -* `add n/MA1101R tutorial sd/14-03-19 st/12.00 ed/14-03-19 et/14.00 d/Tutorial 8 c/a` +* `add n/MA1101R tutorial sd/14-03-19 st/12.00 ed/14-03-19 et/14.00 d/Tutorial 8 c/a` + Adds a task named MA1101R tutorial. It starts at 12:00 on March 14th, 2019 and ends at 14:00 on the same day. Its description is tutorial and it category is academic. -* `add n/CS3235 lecture sd/13-03-19 st/08.00 ed/13-03-19 et/10.00 d/Talk about network security t/important` +* `add n/CS3235 lecture sd/13-03-19 st/08.00 ed/13-03-19 et/10.00 d/Talk about network security t/important` + Adds a task named CS3235 lecture. It starts at 8:00 in March 3rd, 2019 and ends at 10:00. Its description is to talk about network security. The tag for it is 'important'. +Result: + +You should see the task added into the list on the left of the app. The time spent on that task will be calculated in +the back + === Listing all tasks : `list`/`l` Shows a list of tasks in Tasketch. @@ -119,7 +149,20 @@ Lists all the tasks in the storage === Editing a task : `edit`/`e` -Edits an existing task in Tasketch. +Sometimes, you might added a task information wrongly or wish to change its information. This command will allow you to +edit all existing tasks in Tasketch. + +Since the Daily Time Planner only includes tasks that start and end on the same date. Editing the start date and end date +of a task will also lead to some changes. + +1. Changing from same start and end date to different dates will remove the task from Daily Time Planner, its corresponding +time will also be deducted. + +2. Changing from different start and end date to same dates will make it a daily task, thus to be included into the Daily +Time Planner, its corresponding time will also be added. + +3. Maintaining the same start and end dates but changed the start or end time of a task. Its time changes will also be +updated in the Daily Time Planner. Format: `edit TASK_ID [n/NAME] [st/START_TIME] [et/END_TIME] [d/DESCRIPTION]` @@ -246,6 +289,22 @@ Examples: `redo` (reapplies the `delete 1` command) + `redo` (reapplies the `clear` command) +=== Showing time spent on all task categories : `showTime` + +To help you to plan and make full use of your daily time better, simply use this command to see all the time spent on +all 5 categories for every day. + +Format: `showTime` + +Result: You should see a list of days with all the category times. + +If you want to see only one specific day, simply add the date that you wish to see behind the command. + +Format: `showTime DATE` + +Result: You should see a day of your choice with all the category times, if the date exists. + +== Reminder === Reminding the users of the nearest task : `remind` @@ -275,6 +334,8 @@ Examples: * `remind e start` + Shows a list of nearest start tasks of "entertainment" category. +== View calender + === Set the calendar to desired month : `month` Shows the desired month to the user. + @@ -285,41 +346,49 @@ Format: Changes the current calendar to next month. + * `month -` + -Changes the current calendar to previous month. + - - - -=== Setting time limit to a task category : `set` +Changes the current calendar to previous month. -Sets weekly time limit for a task category. + -Upon adding a task to a category and leads to time limit, you will not able to add it into that category for that week. +== Getting wrong command suggestions +There so many commands in the app, so to help you to use the app easier, it will tell you what you have typed wrongly automatically, +by giving a list of closest approximations of word through the message box after pressing `enter`. + -Format: `set CATEGORY TIME_LENGTH` - -Example: +**** +* The input is not case sensitive, hence it would increase the chance of getting a closer approximation of the correct command! +* This feature tolerates a maximum of two wrong alphabets. +* This feature allows user to type in a command which has the same alphabets with one of the correct command word but in different order. The system can give suggestion even if the user type in the reverse command word. +**** -* `set a 40` + -Sets the time limit to 40 hours for the academic category. +Examples: -=== Removing time limit of a task category : `unset` +* If you want to type `clear` but typed `clarr` instead, the system will tell you that it is an unknown command, and would suggest the command `clear` instead. +* If you want to type `exit` but typed `ecot` instead, the system will tell you that it is an unknown command, and would suggest the command `exit` and `edit` instead. +* If you want to type `history` but typed `hsitryo` instead, the system will tell you that it is an unknown command, and would suggest the command `history` instead. -Removes weekly time limit of a task category. After removing the time limit, you will be able to add more tasks into that category as usual. +== Automatically complete input command for user +If you type something wrongly, the app will automatically correct type error and fulfill their incomplete typed command in command line. -Format: `unset CATEGORY` +**** +* The input is not case sensitive. +* If you type a string that is a substring of one of the commands, then command line will fulfill the string with this command. +* If you type a string that is not a substring of any of the commands, then command line will show the most similar command compared this string. +* if you type a string can not match any command, then command line will show `No command matched`. +**** -Example: +Examples: -* `unset a` +* If you want to type `list`, you can type `li` instead, and press `tap` on keyboard. The system will automatically fulfill the command in command line with `list`. +* If you want to type `histoy`, but you type `histoy` instead, and press `tap` on keyboard. The system will automatically fulfill the command line with `history`. +* If you want to type `add`, but you type `aefw` instead, and press `tap` on keyboard. The system will automatically fulfill the command line with `No command matched`. -=== Showing remaining time to the limit of all task categories : `show` +== Viewing help : `help` -Shows all the remaining time before reaching the limit for all the task category +In case you are clueless, you can always use this command get help on all the commands available and their functions. -Format: `show` +Format: `help` -=== Exiting the program : `exit` +== Exiting the program : `exit` -Exits the program. + +If you are done using the app, you just use this command to exit and close the app. Format: `exit` @@ -328,37 +397,6 @@ Format: `exit` Tasketch data is saved in the hard disk automatically after any command that changes the data. + There is no need to save manually. -=== Getting wrong command suggestions -Suggests to users what they have typed wrongly automatically, by giving a list of closest approximations of word through the message box after pressing enter. + - -**** -* The input is not case sensitive, hence it would increase the chance of getting a closer approximation of the correct command! -* This feature tolerates a maximum of two wrong alphabets. -* This feature allows user to type in a command which has the same alphabets with one of the correct command word but in different order. The system can give suggestion even if the user type in the reverse command word. -**** - -Examples: - -* If the user wanted to type `clear` but he typed `clarr` instead, the system will tell the user that it is an unknown command, and would suggest the command `clear` instead. -* If the user wanted to type `exit` but he typed `ecot` instead, the system will tell the user that it is an unknown command, and would suggest the command `exit` and `edit` instead. -* If the user wanted to type `history` but he typed `hsitryo` instead, the system will tell the user that it is an unknown command, and would suggest the command `history` instead. - -=== Automatically complete input command for user -Help users automatically correct type error and fulfill their incomplete typed command in command line.+ - -**** -* The input is not case sensitive. -* If user type a string that is a substring of one of the commands, then command line will fulfill the string with this command. -* If user type a string that is not a substring of any of the commands, then command line will show the most similar command compared this string. -* if user type a string can not match any command, then command line will show `No command matched`. -**** - -Examples: - -* If the user wanted to type `list`, he can type `li` instead, and press `tap` on keyboard. The system will automatically fulfill the command in command line with `list`. -* If the user wanted to type `histoy`, but he type `histoy` instead, and press `tap` on keyboard. The system will automatically fulfill the command line with `history`. -* If the user wanted to type `add`, but he type `aefw` instead, and press `tap` on keyboard. The system will automatically fulfill the command line with `No command matched`. - == FAQ *Q*: How do I transfer my data to another Computer? + From f2bbacd91afdc54b043f0d103dc02beb329677c0 Mon Sep 17 00:00:00 2001 From: cheahzk Date: Tue, 2 Apr 2019 17:39:41 +0800 Subject: [PATCH 2/2] UserGuide: Updated according to the project progress. --- docs/UserGuide.adoc | 100 +++++++++++++++++++++++++------------------- 1 file changed, 56 insertions(+), 44 deletions(-) diff --git a/docs/UserGuide.adoc b/docs/UserGuide.adoc index d2ee2fa22381..81ef21047b44 100644 --- a/docs/UserGuide.adoc +++ b/docs/UserGuide.adoc @@ -18,35 +18,20 @@ By: `T09-2` Since: `Feb 2019` Licence: `MIT` == Introduction -Tasketch is an application that helps those who need to manage their time by managing time for each daily task. + +Tasketch is an application that helps you to manage your everyday time by giving you an overview of all the time planned +for all the tasks in a daily manner. It also helps you to be aware of all the tasks dateline too. + -Besides, it also helps you to be awared of all the tasks dateline too. + +This application is designed for the busy NUS students who have many tasks, assignments and datelines everyday. + -This user guide is introducing the features of Tasketch and show to the users how to use all the command lines. + -Interested? Jump to the <> to get started. Enjoy! - -== Quick Start - -. Ensure you have Java version `9` or later installed in your Computer. -. Download the latest `tasketch.jar` link:{repoURL}/releases[here]*(the link needs to be changed)*. -. Copy the file to the folder you want to use as the home folder for your Tasketch. -. Double-click the file to start the app. The GUI should appear in a few seconds. -+ -image::Ui.png[width="790"] -+ -. Type the command in the command box and press kbd:[Enter] to execute it. + -e.g. typing *`help`* and pressing kbd:[Enter] will open the help window. -. Some examples you can try: +Tasketch uses minimal (GUI) elements, instead opting for a faster Command Line Interface (CLI) while maintaining the +benefits of the GUI. So, if you are used to the command line, Tasketch is sure to help manage your time effectively. + -* *`list`* : lists all the tasks you have added -* **`add`**`n/Do CS2113 sd/17-03-19 sd/10.00 ed/17-03-19 et/12.00 d/Do User Guide` : adds a new task to Tasketch. -* **`delete`**`3` : deletes the task with index 3 in Tasketch. -* *`exit`* : exits the app - -. Refer to <> for details of each command. +This user guide will introduce the features of Tasketch and show you how to use all the command lines. + +Interested? Jump to the <> to get started. Enjoy! -[[Features]] -== Things to Take Note +== How to use this guide +There are several terms which we use throughout the guide. To make your understanding clearer, you can read the following +section to ensure that you are able to use this user guide to the fullest. ==== *Command Format* @@ -67,10 +52,28 @@ type either `clear` or `c`. *** r - Errands *** o - Others ** Any inputs other than the above will be invalid. -** The length of time is in hours and minutes unit. (e.g. 1.0 for 1 hour, 1.15 for 1 hour 15 minutes) +** The time duration displayed for each category is in hours and minutes unit. (e.g. 1.0 for 1 hour, 1.15 for 1 hour 15 minutes) **** ==== +== Quick Start + +. Ensure you have Java version `9` or later installed in your Computer. +. Download the latest `tasketch.jar` link:{repoURL}/releases[here]*(the link needs to be changed)*. +. Copy the file to the folder you want to use as the home folder for your Tasketch. +. Double-click the file to start the app. The GUI should appear in a few seconds. ++ +image::Ui.png[width="790"] ++ +. Type the command in the command box and press kbd:[Enter] to execute it. + +e.g. typing *`help`* and pressing kbd:[Enter] will open the help window. +. Some examples you can try: + +* *`list`* : lists all the tasks you have added +* **`add`**`n/Do CS2113 sd/17-03-19 sd/10.00 ed/17-03-19 et/12.00 d/Do User Guide` : adds a new task to Tasketch. +* **`delete`**`3` : deletes the task with index 3 in Tasketch. +* *`exit`* : exits the app + == Daily Time Planner This feature will help you to monitor your time spent on different tasks in a day. By looking at the time spent on @@ -92,7 +95,7 @@ the date exists in that particular month. However, the app will able to differen This means that you will never be able to enter more than 31 days and more than 12 months in the start date and end date. + Should you enter different start date and end date, the app will ensure that your end date is after the start date. -As for start time and end time, the app is smart enough to inform you when you are entered invalid time, such as 24.00, +As for start time and end time, the app is smart enough to inform you when you have entered invalid time, such as 24.00, as this is incorrect. You will not able to enter hours beyond 23 and minutes beyond 59. The app will also ensure that the end time is after start time too. This to ensure the time spent/duration calculation (end time - start time) will result correct values. @@ -123,8 +126,9 @@ Adds a task named MA1101R tutorial. It starts at 12:00 on March 14th, 2019 and e Adds a task named CS3235 lecture. It starts at 8:00 in March 3rd, 2019 and ends at 10:00. Its description is to talk about network security. The tag for it is 'important'. Result: + -You should see the task added into the list on the left of the app. The time spent on that task will be calculated in -the back +You should see the task added into the task list on the left of the app. + +The time duration on that task will be calculated in the back and the time should be reflected in the day list on the right +of the app (UI in development) === Listing all tasks : `list`/`l` @@ -149,20 +153,20 @@ Lists all the tasks in the storage === Editing a task : `edit`/`e` -Sometimes, you might added a task information wrongly or wish to change its information. This command will allow you to +Sometimes, you might have added a task information wrongly or wish to change its information. This command will allow you to edit all existing tasks in Tasketch. Since the Daily Time Planner only includes tasks that start and end on the same date. Editing the start date and end date of a task will also lead to some changes. 1. Changing from same start and end date to different dates will remove the task from Daily Time Planner, its corresponding -time will also be deducted. +time duration will also be deducted. 2. Changing from different start and end date to same dates will make it a daily task, thus to be included into the Daily -Time Planner, its corresponding time will also be added. +Time Planner, its corresponding time duration will also be added. -3. Maintaining the same start and end dates but changed the start or end time of a task. Its time changes will also be -updated in the Daily Time Planner. +3. Maintaining the same start and end dates but changed the start or end time of a task. Its time duration changes will +also be updated in the Daily Time Planner. Format: `edit TASK_ID [n/NAME] [st/START_TIME] [et/END_TIME] [d/DESCRIPTION]` @@ -223,7 +227,7 @@ Deletes the task with index number 1 in task list. === Clearing all tasks : `clear`/`c` -Clears all tasks of the specified date from Tasketch. +If you have done with the tasks, simply clear them from the Tasketch, so that they will not disrupt your time planning. Format: @@ -244,6 +248,9 @@ Clears all the tasks which finished before today. * `clear` + Clears all the tasks in the storage. +Result: + +The tasks of your date choice should be cleared from the task list on the left of the app. + +The correspond time duration for those tasks will be deducted from the Daily Time Planner. === Listing entered commands : `history`/`h` @@ -290,19 +297,26 @@ Examples: `redo` (reapplies the `clear` command) === Showing time spent on all task categories : `showTime` +(UI in development) -To help you to plan and make full use of your daily time better, simply use this command to see all the time spent on +To help you to plan and make full use of your daily time better, simply use this command to see all the time planned on all 5 categories for every day. +==== Showing all the days +If you want to the time planned for everyday, just use this command. + Format: `showTime` -Result: You should see a list of days with all the category times. +Result: + +You should see a list of days with all the category times on the right side of the app. +==== Showing a particular day If you want to see only one specific day, simply add the date that you wish to see behind the command. Format: `showTime DATE` -Result: You should see a day of your choice with all the category times, if the date exists. +Result: + +You should see a day of your choice with all the category times on the right side of the app, if the date exists. == Reminder @@ -348,6 +362,7 @@ Changes the current calendar to next month. + * `month -` + Changes the current calendar to previous month. + == Getting wrong command suggestions There so many commands in the app, so to help you to use the app easier, it will tell you what you have typed wrongly automatically, by giving a list of closest approximations of word through the message box after pressing `enter`. + @@ -405,7 +420,7 @@ There is no need to save manually. == Command Summary * *Add* : `add n/TASK_NAME sd/START_DATE st/START_TIME ed/END_DATE et/END_TIME d/DESCRIPTION [c/CATEGORY] [t/TAG]...` + -e.g. `add n/CS2113 sd/13-03-19 st/12.00 ed/13-03-19 et/14.00 d/Talk about version control` +e.g. `add n/CS2113 sd/13-03-19 st/12.00 ed/13-03-19 et/14.00 d/Talk about version control c/a` * *Clear* : `clear [DATE]` + e.g. `clear 21-02-2019` * *Delete* : `delete INDEX_NUMBER` + @@ -416,11 +431,8 @@ e.g. `edit 1 s/12.00 e/14.00 t/GET1018 tut` e.g. `search CS2113T` * *List* : `list [DATE]` + e.g. `list 02-2019` -* *Set* : `set CATEGORY TIME_LENGTH + -e.g. `set a 50` -* *Unset* : `unset CATEGORY` + -e.g. `unset a` -* *Show* : `show` +* *Showtime* : `showtime [DATE]` +e.g. `showtime 13-02-2019` * *History* : `history` * *Undo* : `undo` * *Redo* : `redo`