By: Team SE-EDU Since: Jun 2016 Licence: MIT

1. Quick Start

  1. Ensure you have Java version 1.8.0_60 or later installed in your Computer.

    Having any Java 8 version is not enough.
    This app will not work with earlier versions of Java 8.
  2. Download the latest addressbook.jar here.

  3. Copy the file to the folder you want to use as the home folder for your Address Book.

  4. Double-click the file to start the app. The GUI should appear in a few seconds.

    Ui
  5. Type the command in the command box and press Enter to execute it.
    e.g. typing help and pressing Enter will open the help window.

  6. Some example commands you can try:

    • list : lists all contacts

    • add n/John Doe p/98765432 e/johnd@example.com a/311, Clementi Ave 2, #02-25 b/21/12/1993 pt/JohnDoe.jpg : adds a contact named John Doe to the Address Book.

    • delete3 : deletes the 3rd contact shown in the current list

    • exit : exits the app

  7. Refer to the Features section below for details of each command.

2. Features

Command Format

  • Words in UPPER_CASE are the parameters to be supplied by the user e.g. in add n/NAME, NAME is a parameter which can be used as add n/John Doe.

  • Items in square brackets are optional e.g n/NAME [t/TAG] can be used as n/John Doe t/friend or as n/John Doe.

  • Items with ​ after them can be used multiple times including zero times e.g. [t/TAG]…​ can be used as   (i.e. 0 times), t/friend, t/friend t/family etc.

  • Parameters can be in any order e.g. if the command specifies n/NAME p/PHONE_NUMBER, p/PHONE_NUMBER n/NAME is also acceptable.

2.2. Adding a person: add

Adds a person to the address book
Format: add n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS b/BIRTHDAY [pt/PHOTO] [t/TAG]…​

A person can have any number of tags (including 0). A person also doesn’t have to have a photo. If no photo is defined, the application uses automatically a default photo that can be updated with edit command.

Examples:

  • add n/John Doe p/98765432 e/johnd@example.com a/John street, block 123, #01-01 b/13/02/1998 pt/JohnDoe.jpg

  • add n/Betsy Crowe t/friend e/betsycrowe@example.com a/Newgate Prison p/1234567 b/08/08/2008 pt/BetsyC.png t/criminal

  • add n/Test Name t/colleague e/testname@example.com a/Test road p/323234 b/12/09/2010

2.3. Listing persons : list

Shows a list of all persons in the address book.
If tags are supplied, then shows the list of all persons with that tag in the address book. The tags are case-sensitive.
Format: list [t/TAG]

Examples:

  • list
    Shows the list of all persons in the address book

  • list t/friends
    Shows the list of only those persons in the address book that are tagged as friends

2.4. Sorting all persons : sort

Sorts all persons in the address book.
Format: sort

2.5. Editing a person : edit

Edits an existing person in the address book.
Format: edit INDEX [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [b/BIRTHDAY] [pt/PHOTO] [t/TAG]…​

  • Edits the person at the specified INDEX. The index refers to the index number shown in the last person listing. The index must be a positive integer 1, 2, 3, …​

  • At least one of the optional fields must be provided.

  • Existing values will be updated to the input values.

  • When editing tags, the existing tags of the person will be removed i.e adding of tags is not cumulative.

  • You can remove all the person’s tags by typing t/ without specifying any tags after it.

Examples:

  • edit 1 p/91234567 e/johndoe@example.com
    Edits the phone number and email address of the 1st person to be 91234567 and johndoe@example.com respectively.

  • edit 2 n/Betsy Crower t/
    Edits the name of the 2nd person to be Betsy Crower and clears all existing tags.

2.6. Locating persons by name: find

Finds persons whose names contain any of the given keywords.
Format: find KEYWORD [MORE_KEYWORDS]

  • The search is case insensitive. e.g hans will match Hans

  • The order of the keywords does not matter. e.g. Hans Bo will match Bo Hans

  • Only the name is searched.

  • Only full words will be matched e.g. Han will not match Hans

  • Persons matching at least one keyword will be returned (i.e. OR search). e.g. Hans Bo will return Hans Gruber, Bo Yang

Examples:

  • find John
    Returns john and John Doe

  • find Betsy Tim John
    Returns any person having names Betsy, Tim, or John

Coming in v2.0
The program will execute the search concurrently as the user is typing the name of the person.

2.7. Deleting a person : delete

Deletes the specified person from the address book.
Format: delete INDEX

  • Deletes the person at the specified INDEX.

  • The index refers to the index number shown in the most recent listing.

  • The index must be a positive integer 1, 2, 3, …​

Examples:

  • list
    delete 2
    Deletes the 2nd person in the address book.

  • find Betsy
    delete 1
    Deletes the 1st person in the results of the find command.

2.8. Locating a person : locate

Locates the person identified by the index number used in the last person listing.
Format: locate INDEX

  • Locates the person and loads the Google map page the person at the specified INDEX.

  • The index refers to the index number shown in the most recent listing.

  • The index must be a positive integer 1, 2, 3, …​

Examples:

  • list
    locate 2
    Locates the 2nd person in the address book.

  • find Betsy
    locate 1
    Locates the 1st person in the results of the find command.

2.9. Listing entered commands : history

Lists all the commands that you have entered in reverse chronological order.
Format: history

Pressing the and arrows will display the previous and next input respectively in the command box.

2.10. Undoing previous command : undo

Restores the address book to the state before the previous undoable command was executed.
Format: undo

Undoable commands: those commands that modify the address book’s content (add, delete, edit and clear).

Examples:

  • delete 1
    list
    undo (reverses the delete 1 command)

  • select 1
    list
    undo
    The undo command fails as there are no undoable commands executed previously.

  • delete 1
    clear
    undo (reverses the clear command)
    undo (reverses the delete 1 command)

2.11. Redoing the previously undone command : redo

Reverses the most recent undo command.
Format: redo

Examples:

  • delete 1
    undo (reverses the delete 1 command)
    redo (reapplies the delete 1 command)

  • delete 1
    redo
    The redo command fails as there are no undo commands executed previously.

  • delete 1
    clear
    undo (reverses the clear command)
    undo (reverses the delete 1 command)
    redo (reapplies the delete 1 command)
    redo (reapplies the clear command)

2.12. Loading pre-existing address book : load

Loads pre-existing address book to current address book. The pre-existing
address book has to be in xml-format and it has to be in the folder called "data"
unless defined differently in the user preferences. The file also has to have
a different name than the current address book.

Format: load FILENAME

Example:

  • load addressbook2.xml

2.13. Informing about the birthdays

Coming in v2.0
When the application is started, it opens a pop-up window to show the
persons that are having a birthday on that day. Also, when adding a new
contact or loading new contacts from a pre-existing address book,
the user would be informed if some of the new contacts were having a birthday.

2.14. Setting password for the address book: password

Coming in v2.0
Sets password for the address book. After setting the password
you will be prompted the password when initializing the address book.

Format : password

Example :

  • password
    mypassword (sets the password to mypassword)
    mypassword (you are also asked to confirm the password)

2.15. Cleaner UI

Coming in v2.0
Give the user a better experience through a much cleaner UI. The person’s details will not be on the card, but on a
seperate panel on the side which makes the details much easier to look. The images are also shaped in the form a
circle so that it looks much elegant.

2.16. Clearing all entries : clear

Clears all entries from the address book.
Format: clear

2.17. Exiting the program : exit

Exits the program.
Format: exit

2.18. Saving the data

Address book data are saved in the hard disk automatically after any command that changes the data.
There is no need to save manually.

3. 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 Address Book folder.

4. Command Summary

  • Add add n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS b/BIRTHDAY [pt/PHOTO] [t/TAG]…​
    e.g. add n/James Ho p/22224444 e/jamesho@example.com a/123, Clementi Rd, 1234665 b/13/12/1980 t/friend t/colleague

  • Clear : clear

  • Delete : delete INDEX
    e.g. delete 3

  • Edit : edit INDEX [n/NAME] [p/PHONE_NUMBER] [e/EMAIL] [a/ADDRESS] [b/BIRTHDAY] [t/TAG]…​
    e.g. edit 2 n/James Lee e/jameslee@example.com

  • Find : find KEYWORD [MORE_KEYWORDS]
    e.g. find James Jake

  • List : list

  • Sort : sort

  • Help : help

  • Select : select INDEX
    e.g.select 2

  • History : history

  • Undo : undo

  • Redo : redo

  • image : image p/NAME i/IMAGE

  • Load : load FILENAME

  • password : password