User Guide
Yang Jiaqi
Zhuang Mengjin
Xu Che
Wu Nan
Wan Shi Jie Brendan
Introduction
NUSchedule is a straightforward yet sophisticated application that helps you manage your events. It allows you to keep track of not only your school events or activities (eg. lectures, tutorials, assignments), but also your personal activities. It utilises a command line interface (CLI), which accepts user input in the form of text. This gives the application both simplicity and speed, setting it apart from other apps such as NUSMods and Luminus.
- Quick Start
- Features
- View available commands
- Add an event
- Edit an event
- Sort events
- Find a location
- List all locations
- List all events
- Clear events
- Mark event as done
- Reminder of deadlines
- Repeat of events
- Delete an event
- Find a keyword
- Find a date
- Find locations exist in a certain group
- Keep track on the study time
- Make the app know you
- Exit the app
- FAQs
- Command Summary
Quick Start
- Ensure that you have Java 11 or above installed in your Computer.
- Download the latest
nuschedule.jar
from here. - Copy the file into a new folder, which will serve as the home folder for NuSchedule.
- Copy the latest
location.txt
andbus_stops.txt
files into a directory nameddata
in the home folder. - Open the command prompt and navigate to the home folder.
- Run
nuschedule.jar
using the following command:java -jar nuschedule.jar
Features
Tips:
In the following description, DATE
refers to the date in the format yyyy-MM-dd. e.g. 2020-10-31
TIME
refers to the time in the format HH:mm. e.g. 10:00
/t
refers to the starting time for PersonalEvent and Class, and deadline for Assignment
/e
refers to the ending time for PersonalEvent and Class
View available commands - Wu Nan
Shows list of commands and provides a link to the user guide for more details.
Format: help
Add an event - Brendan
Adds events/tasks to the schedule. Can support various types of tasks:
-
PersonalEvent
Format:
personalEvent EVENTNAME /t DATE TIME /e DATE TIME /l LOCATION
for offline events.
OR
personalEvent EVENTNAME /t DATE TIME /e DATE TIME /o MEETING_LINK /p MEETING_PASSWORD
for online events.Note that
/e DATE TIME
is optional. You may input a personal event without an ending time.
In/e DATE TIME
,DATE
is optional. If you enter/e TIME
, the default date will be the same as the date that the event starts.
For online events,/p MEETING_PASSWORD
is optional, since not all online events require a password. -
Assignment
Format:
assignment EVENTNAME /t DATE TIME /l LOCATION
OR
assignment EVENTNAME /t DATE TIME /o SUBMISSION_LINK
-
Class
Format:
class CLASSNAME /t DATE TIME /e DATE TIME /l LOCATION
OR
class CLASSNAME /t DATE TIME /e DATE TIME /o MEETING_LINK /p MEETING_PASSWORD
Similar to personal events, in
/e DATE TIME
,DATE
is optional. For online events,/p MEETING_PASSWORD
is optional.
However,/e DATE TIME
or/e TIME
is required, since all classes should have an ending time. -
SelfStudy Format:
selfStudy EVENTNAME /t DATE TIME /e DATE TIME /l LOCATION
for offline events.
OR
selfStudy EVENTNAME /t DATE TIME /e DATE TIME /o MEETING_LINK /p MEETING_PASSWORD
for online events.Note that
/e DATE TIME
is optional. You may input a personal event without an ending time.
In/e DATE TIME
,DATE
is optional. If you enter/e TIME
, the default date will be the same as the date that the event starts.
For online events,/p MEETING_PASSWORD
is optional, since not all online events require a password.
Examples of usage:
class CS2113 Lecture /t 2020-09-23 10:00 /e 12:00 /l LT27
personalEvent Mom’s Birthday /t 2020-10-26 19:00 /l home
assignment CS1010 Assignment /t 2020-01-04 23:59 /o Luminus
selfStudy Prepare for exam /t 2020-11-26 15:00 /l home
Adding a class:
Adding a personal event:
Adding an assignment:
Adding a self study event:
Adding an event with a timing clash:
Edit an event - Xu Che
The edit
command allows you to edit the event type, description, start/end date and location for an existing
event. You can start using this command by entering edit INDEX
, where INDEX is the number of the task you want to
edit.
Format: edit INDEX
Example:
Let's say you have one event stored in NuSchedule currently:
Suppose you entered the timing incorrectly and would like to edit it to the correct timing. Enter the following command to edit the event:
Next, you will be prompted to enter the new values for the 5 fields which are type, description, location start and end
date respectively. Enter your desired changes and press the ENTER
key to go through the fields. You can leave a field
blank and simply press enter if you do not want to make any changes.
Expected Outcome:
Sort events - Xu Che
With this command, you can sort all events by either their end time, location or their description. When sorting by time, events will be sorted in a chronological order. Events with an earlier end date will be sorted on top of events with later end dates. This way, you can prioritize the events that are due soon.
When sorting by description, the events will be sorted in alphabetical order according to their descriptions. Events with descriptions starting with 'a' will be sorted on top of events with descriptions starting with 'z' for example.
When sorting by location, the events will be sorted in alphabetical order according to their location. Events with offline locations will be sorted on top of locations with online locations.
Format: sort SORT_CRITERIA
Example: sort description
Before sorting:
After sorting:
Sort by time:
Sort by location:
Find a location - Yang Jiaqi
With this command, you can find out about locations around NUS. Depending on the type of location, different additional information will be shown together with the location (e.g. nearest building, nearest bus stops).
Format: locate LOCATIONNAME
or locate EVENTINDEX
Example: locate lt1
Find lecture theatres using location name:
Find buildings using location name:
Find locations using event index:
List all locations - Yang Jiaqi
Displays a list of all locations within NUS
Format: locations
Expected output: (list given here is incomplete)
List all events - Brendan
Shows you a list of all events.
Format: list
Example Output:
Clear events - Wu Nan
Delete events existing in the list, you can choose to delete all, auto delete or delete events before a certain date:
-
Clear all events Format:
clear
-
Switch the autoClear function on so that events happened one month ago will be automatically cleared. Format:
autoClear on
Note that this function will clear all events which happened one month ago no matter they are done or not. -
Switch the autoClear function off
Format:autoClear off
-
Clear events happened before a certain date Format:
clearBefore CLEAR_DATE
Example:
clearBefore 2020-03-10
Example Output:
Mark event as done - Wu Nan
Mark an event that has been completed with DONE
.
Note that the events which are not assignments, cannot be done before its ending time.
Format: done INDEX
Example: done 2
Example Output:
Reminder of deadlines - Brendan
Shows a list of all events for today's date.
Format: reminder
Example Output:
Repeat of events - Zhuang Mengjin
Repeat the selected event for several weeks, or repeat all classes this week for several weeks.
Format: repeat INDEX NUMBER_OF_WEEKS
OR repeat all NUMBER_OF_WEEKS
Example: repeat 3 1
, repeat all 2
Example Output:
Delete an event - Zhuang Mengjin
Delete the selected event from the list.
Format: delete INDEX
Example: delete 1
Example Output:
Find a keyword - Zhuang Mengjin
Find the events with given keyword. Note that it's case-sensitive.
Format: find KEYWORD
Example: find CS
Example Output:
Find a date - Zhuang Mengjin
Find the events happen on the given date.
Format: date yyyy-MM-dd
Example date 2020-11-10
Example Output:
Find locations exist in a certain group - Zhuang Mengjin
Find the locations in NUS that belongs to certain faculty or the hostels.
Format: FOS
OR FOE
OR SOC
OR BIZ
OR HOSTEL
OR SDE
OR FASS
Example Output:
Keep track on the study time - Zhuang Mengjin
Find the amount of time you spent on study on a certain date.
Format: studyTime DATE
Example Output:
Make the app know you - Zhuang Mengjin
Tell the app your name, and whether you are a professor or a student. Whether you indicate yourself as a professor, or a student, will make a difference in another function, which will come in a later version.
Format: student NAME
OR professor NAME
Example Output:
Exit the app - Zhuang Mengjin
Exit.
Format: bye
Example Output:
FAQ
Q: How do I transfer my data to another computer?
A: Install the app in the other computer and overwrite the empty data file it creates with the file that contains the data of your previous AddressBook home folder.
Q: What if I cannot run the application, or the application suddenly stops running unexpectedly?
A: If you cannot run the application at the beginning, please refer back to the Quick Start section and check whether the jar file is in the correct folder. If you cannot find what is wrong, please take a screenshot of your computer and report it as an issue to this link.
Q: What should I do if I cannot get the input format for adding events correctly?
A: For all wrong input format, there will be an error message to tell you what exactly you have input wrongly. If the error message is not helpful, please refer back to relevant sections in Features. We recommend you to follow the instructions provided closely as the current version of NUSchedule has a relatively high requirement in terms of input accuracy. If you really cannot find what is wrong, please report it as an issue to this link.
Command Summary - Brendan
Action | Command | Example |
---|---|---|
add | EVENTTYPE EVENTNAME /t DATE TIME /e DATE TIME (optional personal event and self study, compulsory for class, must not have for assignment) /l LOCATION OR /o LINK /p PASSWORD (optional) |
personalEvent Mom’s Birthday /t 2020-10-26 19:00 /l home |
clear | clear OR autoClear STATUS OR clearBefore CLEAR_DATE |
clearBefore 2020-10-22 |
delete | delete INDEX |
delete 1 |
done | done INDEX |
done 1 |
edit | edit , then fill in each fields when prompted and press ENTER to move on to the next field |
edit 1 ENTER class ENTER cs2113t ENTER \l school ENTER 2020-10-26 19:00 ENTER 2020-10-26 20:00 |
help | help |
|
list | list |
|
locate | locate LOCATION_NAME OR locate EVENT_INDEX |
locate LT1 |
sort | sort SORT_CRITERIA |
sort description |
reminder | reminder |
reminder |
repeat | repeat INDEX NUMBER_OF_WEEKS OR repeat all NUMBER_OF_WEEKS |
repeat all 1 |
find (keyword) | find KEYWORD |
find book |
find (date) | date |
date 2020-11-08 |
calculate study time | studyTime DATE |
studyTime 2020-11-08 |
find locations belongs to a certain group | FACULTY or HOSTEL |
FOE ,FOS |
UserInfo | student NAME OR professor NAME |
student LeeJuntong |
exit | bye |
bye |