User Guide
ForgetfulNUS is a desktop glossary app for students taking German 1 (LAG1201) and German 2 (LAG2201) in NUS to practise and test their vocabulary. This app is optimised for use via a Command Line Interface (CLI). If you can type fast, ForgetfulNUS can get your German revision done quickly and effectively.
Table of Contents
- Quick Start (Jiyu)
- Commonly used Commands (Jiyu)
-
Features (Jiyu)
-
Modify the Glossary
-
Add a Flashcard :
add
(Jiyu) -
Edit a Flashcard :
edit
(Kenny) -
Delete a Flashcard :
delete
(Kenny) -
Clear All Flashcards :
clear
(Kenny)
-
Add a Flashcard :
-
Quiz Yourself
-
Normal Quiz :
quiz
(Zhizhi) -
Try an Answer :
try
(Zhizhi) -
Skip to Next :
next
(Zhizhi) -
End Quiz :
end
(Zhizhi) -
Random Quiz :
random
(Kenny) -
View Past Scores
scores
(Harshini) -
Reset Scores
reset scores
(Harshini)
-
Normal Quiz :
-
Navigate the Glossary
-
Find a Flashcard
find
(Harshini) -
List All Flashcards
list
(Harshini) -
Sort All Flashcards
sort
(Joe)
-
Find a Flashcard
- Miscellaneous Commands
-
Modify the Glossary
- FAQ (Joe)
- Command Summary (Everyone)
1. Quick Start (Jiyu)
-
Ensure you have Java
11
or above installed in your computer. -
Download the latest
ForgetfulNUS.jar
from here. -
Copy the file to the folder you want to use as the home folder for your ForgetfulNUS.
-
Double-click the file to start the app. When it first starts up, ForgetfulNUS should look similar to the figure below. ForgetfulNUS contains some pre-loaded sample data for you to get started.
-
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.
2. Commonly Used Commands (Jiyu)
Here are some example commands you can try:
-
add
g/Vergesslichkeit e/Forgetfulness
: Adds a flashcard with German phraseVergesslichkeit
with English phraseForgetfulness
to the glossary. -
quiz
: Starts a round of vocabulary testing with all existing flashcards in the glossary. -
try
start
: Attempt “start” as the the answer to a German Phrase while quizzing. -
end
: Ends a round of vocabulary testing. -
exit
: Exits the app.
Refer to the Features below for a full list of commands with additional details.
3. Features (Jiyu)
Notes about the command format:
-
Words in
UPPERCASE
are the parameters to be supplied by the user.
e.g. inadd g/<GERMAN PHRASE> e/<ENGLISH PHRASE>
,GERMAN PHRASE
andENGLISH PHRASE
are parameters which can be used asadd g/Vergesslichkeit e/Forgetfulness
. -
Items with
...
after them can be used zero or more times including zero times. e.g.g/<GERMAN PHRASE> [t/<TAG>]...
can be used as, t/objects, t/objects t/nouns etc. -
Items in square brackets,
[]
, are optional. e.gg/<GERMAN PHRASE> [t/<TAG>]
can be used as g/Vergesslichkeit t/tutorialOne or as g/Vergesslichkeit. -
For add and delete commands, only one of each type of prefixes (e.g.
g/<GERMAN PHRASE>
) are allowed, except fort/<TAG>
. -
Commands are case-insensitive e.g.
Add
orADD
will be accepted asadd
too.
3.1. Modify the Glossary
3.1.1. Add a Flashcard: add
(Jiyu)
Adds a flashcard to the glossary. You can use this to expand your glossary.
Format: add g/<GERMAN PHRASE> e/<ENGLISH PHRASE> [d/<DIFFICULTY>] [s/<GENDER>] [t/<TAG>]...}
Notes about add command:
-
Difficulty has only three states, EASY, MEDIUM and HARD. If left blank, by default it will be MEDIUM.
-
Gender has only four states, M (Masculine), F (Feminine), NEUTRAL or NONE. If left blank, by default it will be NONE.
-
Tags that are not predefined should be alphanumeric and not contain spaces.
Example:
-
add g/Vergesslichkeit e/forgetfulness d/hard s/f t/extra
adds a new flashcard with German phrase “Vergesslichkeit”, English phrase “forgetfulness”, difficulty “HARD”, gender “F” and tag “extra”.
After entering this command, your app should look like this:
3.1.2. Edit a Flashcard: edit
(Kenny)
Edits a flashcard in the glossary at the specified INDEX
. You can use this to modify any of the flashcard’s fields. For example, if a certain phrase has gotten easier for you to remember over time, you can change its difficulty. You can also correct the typing errors you made when adding the flashcard.
Format: edit INDEX [g/<GERMAN PHRASE>] [e/<ENGLISH PHRASE>] [d/<DIFFICULTY>] [s/<GENDER>] [t/<TAG>]...
- Edits the flashcard at the specified
INDEX
. The index refers to the index number shown in the displayed flashcard list. 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 flashcard will be removed.
- You can remove all the flashcard’s tags by typing
t/
without specifying any tags after it.
Example:
-
edit 2 d/easy t/chapter3
edits the second flashcard in the glossary to have theDifficulty
EASY and theTag
“chapter3”.
After entering this command, your app should look like this:
3.1.3. Delete a Flashcard : delete
(Kenny)
Deletes the specified flashcard from the glossary permanently. You can use this command to delete flashcards you consider outdated or not relevant to your learning.
Format: delete <INDEX>
- Deletes the flashcard at the specified
INDEX
. - The index refers to the index number shown in the displayed glossary.
- The index must be a positive integer 1, 2, 3, …
Example:
-
delete 2
deletes the second flashcard in the glossary.
After entering this command, your app should look like this:
3.1.4. Clear all Flashcards : clear
(Kenny)
Deletes all flashcards from the glossary permanently. This can be useful if you want to remove all default flashcards and start from scratch.
Format: clear
After entering this command, your app should look like this:
3.2. Quiz Yourself
3.2.1. Normal Quiz : quiz
(Zhizhi)
Starts a round of vocabulary testing with all the flashcards that are currently in the glossary. The English translations for every flashcard will be hidden. You can use this command to test if you remember the English translation corresponding to the German phrase on the flashcards. You can start a quiz on any list that is displayed in the app i.e. lists that are the results of find
or sort
commands.
Format: quiz
After entering this command, your app should look like this:
3.2.2. Try an Answer: try
(Zhizhi)
Compares your attempt with the English translation of the current flashcard. You can use this command when the app asks you to enter the English translation of a flashcard. If the attempt is correct, the quiz will move on to the next flashcard. If the attempt is not correct, you will be prompted to try again or skip this card.
Format: try <ATTEMPT>
Example: try start
will compare “start” with the English translation of the current phrase you are being tested on.
After entering this command, your app should look like this:
3.2.3. Skip to Next : next
(Zhizhi)
Skips the current flashcard and move on to the next card in quiz mode. You can use this command if you cannot get the correct answer but wish to continue with the quiz. The current flashcard will be considered incorrectly answered.
Format: next
After entering this command, your app should look like this:
3.2.4. End Quiz : end
(Zhizhi)
Ends the round of vocabulary testing. You can use this anytime during the quiz and the quiz score will be the number of correct attempts up to that point.
Format: end
After entering this command, your app should look like this:
3.2.5. Random Quiz : random
(Kenny)
Starts a round of vocabulary testing like the previous quiz command but with the specified number of flashcards randomly selected from the existing glossary. You can use this command when you want a quick, randomised quiz where you can decide the number of questions.
Format: random <NUMBER>
-
<NUMBER>
must be a positive integer and not more than the number of flashcards currently in the glossary.
Example:
-
random 4
starts a randomised quiz with 4 randomly selected flashcards.
After entering this command, your app should look like this:
Note that the screenshot might not look exactly the same on your end as flashcards are randomised.
3.2.6. View Past Scores : scores
(Harshini)
Displays a history of scores from past quizzes. Along with each score, the German phrases tested in the corresponding round are also listed. This way, you can identify groups of German phrases you struggle with, and track your progress.
Format: scores
Notes about saving scores:
- For each unique list of flashcards, only the most recent score is saved. If you decide to test yourself on the same list again, your previous score will be overwritten.
- Scores are automatically saved after a quizzing round ends, and no further action on your part is needed.
Notes about viewing scores:
- For easy reference, scores are listed starting from the most recently added score. In the case of re-testing yourself on the same list, the score is considered to be overwritten and not added, so the original score list position is retained.
After entering this command, your app should look like this:
3.2.7. Reset Scores : reset scores
(Harshini)
You can use this command if you want to clear the records of previous quiz attempts.
Format: reset scores
After entering this command, your app should look like this:
3.3. Navigate the Glossary
These commands allow you to manipulate the glossary so you can find certain phrases more easily.
3.3.1. Find a Flashcard : find
(Harshini)
Finds certain flashcard(s) according to the German phrase entered. You can enter more German phrases after the first phrase to search for more flashcards corresponding to your search parameters. The full German phrase must be entered for each parameter. To view the full Glossary again, see List all Flashcards below.
Format: find <GERMAN PHRASE> <OPTIONAL GERMAN PHRASE 1> <OPTIONAL GERMAN PHRASE 2>...
Examples:
-
find lernen buchstabieren
finds the flashcards with the German Phrases ‘lernen’ and ‘buchstabieren’.
After entering this command, your app should look like this:
3.3.2. List All Flashcards : list
(Harshini)
Displays all flashcards in the glossary. You can use this command to return to the full glossary after a find operation.
Format: list
After entering this command, your app should look like this:
3.3.3. Sort All Flashcards : sort
(Joe)
Sorts the all flashcards according to the way you choose. You may find this helpful for browsing the flashcards or changing the order for quizzing.
Format: sort <PARAMETER>
-
<PARAMETER>
refers to how you want to sort the flashcards by. - Possible parameters:
-
german
: sorts by the alphabetical order of German phrases. -
english
: sorts by the alphabetical order of English phrases. -
reversegerman
: sorts by the reverse alphabetical order of German phrases. -
reverseenglish
: sorts by the reverse alphabetical order of English phrases. -
easytohard
: sorts by difficulty of flashcards, from easy to hard. -
hardtoeasy
: sorts by difficulty of flashcards, from hard to easy. -
earliest
: sorts by chronological order, from the earliest flashcard added to the latest. This is also the initial sort order. -
latest
: sorts by chronological order, from the latest flashcard added to the earliest.
-
Notes about adding a flashcard:
- Upon adding a new flashcard, it will automatically be added to the bottom of the glossary regardless of the current sorted order. You will have to sort the glossary again to update the position of the new flashcard.
Examples:
-
sort hardtoeasy
sorts the flashcards by their respective difficulty tags from HARD to EASY.
After entering this command, your app should look like this:
3.4. Miscellaneous Commands
3.4.1. Help : help
(Joe)
Opens a small window containing a link to this User Guide. You can use this command to quickly access the User Guide, such as when you need to refer to the command formats or how to run the app. This requires an Internet connection.
Format: help
3.4.2 Exit the program : exit
(Joe)
Saves and exits the program. If this command is used during a quizzing round, the score up to that point will be saved.
Format: exit
4. FAQ (Joe)
Q: Do I need to save my data manually?
A: ForgetfulNUS glossary and scores data is automatically saved in the hard disk upon exiting. There is no need to save manually.
Q: How do I transfer my data to another Computer?
A:
- Install the app in your other computer.
- Locate the
data
folder in your previous ForgetfulNUS home folder, and find theglossary.JSON
andscores.JSON
files inside. - Transfer the
glossary.JSON
andscores.JSON
files to your new computer - Place the
glossary.JSON
andscores.JSON
files in thedata
folder of the ForgetfulNUS home folder in your other computer.
5. Command Summary (Everyone)
Action | Format, Examples |
---|---|
Add a Flashcard |
add g/<GERMAN PHRASE> e/<ENGLISH PHRASE> [d/<DIFFICULTY>] [s/<GENDER>] [t/<TAGS>...] e.g. add g/Vergesslichkeit e/forgetfulness d/hard
|
Edit a Flashcard |
edit INDEX [g/<GERMAN PHRASE>] [e/<ENGLISH PHRASE>] [d/<DIFFICULTY>] [s/<GENDER>] [t/<TAG>]... e.g. edit 2 d/easy t/chapter3
|
Delete a Flashcard |
delete INDEX e.g. delete 3
|
Clear All Flashcards | clear |
Start Normal Quiz | quiz |
Try an Answer |
try <ATTEMPT> e.g. try Tuesday
|
Skip to Next | next |
End Quiz | end |
Start Random Quiz |
random <NUMBER> e.g. random 5
|
View Past Scores | scores |
Reset Scores | reset scores |
Find a Flashcard |
find <GERMAN PHRASE> <OPTIONAL GERMAN PHRASE 1> <OPTIONAL GERMAN PHRASE 2>... e.g. find Vergesslichkeit
|
List All Flashcards | list |
Sort All Flashcards |
sort <PARAMETER> e.g. sort english
|
Help | help |
Exit | exit |