J-Flash V1.11 alpha
JapFlash was renamed to J-Flash. I was told, the term
"Jap" is considered a racist term which I was not aware of. I am sorry,
and would like to apologise to anybody offended by the naming of this
program. It is, after all, intended to help to study Japanese and
thereby improve intercultural contacts.
Introduction
Loading Lessons
Studying Vocabulary
Lesson Files
Options
Bigger Fonts
How to Get Lesson Files
Introduction
J-Flash is a simple tool for studying japanese vocabulary and kanji.
V1.1 is still alpha. . J-Flash runs under Personal Java 1.2. The
program uses built in bitmap font rendering algorithms to display
japanese characters (taken from Marshall Ramseys KanjiFlash). If
japanese TTF support is available on your System you can edit the
options file such that the program uses true type fonts.
Loading Lessons
To get to the load lesson screen, simply press the load button. If you
set the options such that the file you reviewed last ist not
automatically reloaded, or you did not save the file when you quit the
program, the load lesson screen appears automatically on startup.
The upper part of the load lesson screen shows a summary of the
information for the lesson selected in the window below, or "Never
Opened" if it has never been opened by J-Flash.
Choose the lesson you want to open in the list in the center of the
screen. This list shows all files ending with utf, ut8,jis
or sjs in the directory specified in the text field on the bottom
of the screen. On the Z, you can only open files encoded in 8 bit
unicode ( utf, ut8) because jis and shift jis decoders are not
shipped with Jeodes Java classes. You can enter any directory in the
directory-textfield, or you can choose one of the predefined directories
in the drop down list above. Those entries can be edited in the options
file.
Studying Vocabulary
J-Flash leaves it to you to decide wheter you know a kanji or not. It
just shows the flash cards, uncovering the information step by step and
asks if you got it right or not when the full information was revealed.
There are 5 piles of cards on the screen. When you first open a lesson,
all cards are put on the rightmost pile, which is where the cards you
know least lie. If you answer a card correctly two times in a row, it is
put on the pile to its left. If you got it wrong, it is put on the pile
on its right.
There are five review modes, and a browse mode. You can select the
review-modes in the "Test Mode" menue. Browse mode is selected in
the Strategy menue. (I guess I should consider changing the names of the
menues.) If you are studying Kanji Cards you can choose to view
the compounds in an extra screen by selecting "Compounds extra".
To lift a card from a certain pile just tap (or click) on it. If you
want to lift a card from a random pile, tap anywhere on the screen (but
on a pile). Depending on the test mode one of the fields K/R/M
(Kanji/Reading/Meaning) is uncovered. To uncover the next field, tap on
the cards area. Every time you tap on the card, another field is
uncovered until all information has been revealed. Then the cards bottom
flashes red and green. This signalises that all information has been
revealed and you should tell the program if had it right or wrong. Tap
on the left half of the card in case your answer was right. If you
got it wrong, tap on the right half of the card. The program then puts
the card back to either the pile the card was lifted from or to the left
or right neighbour. The answer is stored in the right-wrong history
which is displayed in the bottom part of each card.
When you tap on a pile while a card is lifted the card is put on this
pile without adding to its right-wrong history. If you tap on the
background, the card is pushed pack to the pile it was lifted from.
In browse mode, you can browse quickly through a pile. Select "Browse
Mode" in the "Strategy" menue, click on the pile you want to open, and
the first card is shown. Browse through the pile by tapping on the cards
area. You can use this mode to move cards to other piles. As in review
mode, when a card is shown and you click on a pile, it will be put on
this pile.
You can use the keyboard instead of the stylus/mouse. When using the
keyboard the active pile is drawn with a black rectangle round it.
| Cursor-Up |
When no card is beeing shown, the computer randomly selects a
pile and lifts a card. In case a card is lifted, the next field is
uncovered. If all fields are uncovered and the computer expects an
answer, this key has no effect. |
| Cursor-Down |
Lifts a card from the selected pile, or pushes it back to the
selected pile. |
| Cursor-Left |
Moves the selection left unless the card flashed red and
green. In this case pressing the cursor-left key signalises a correct
answer. |
| Cursor-Right |
Moves the selection right unless the card flashed red and
green. In this case pressing the cursor-right key signalises a wrong
answer. |
Lesson Files
A lesson file consists of a header and a body. The header contains
general information about the lesson (last viewed,
description...). The body contains the card definitions lines and
lines which indicate the start of a new pile. Header and pile
separators are optional.
A card is defined by one line in the lesson file. Its error history,
last viewed information and other information is stored in the
additional information field. The additional information field starts
with an #. It comes after the cards definiton.
There are two types of cards: kanji cards and vocabulary cards. Kanji
cards may also have information about compounds using this character.
Therefore they are slightly more complex than vocabulary cards.
A vocabulary card definition requires the fields KANJI and MEANING. The
READING-field and it´s enclosing brackets are optional.
A kanji card definition starts with an upper case K as first character of the line.
The the KANJI, the MEANING and the READING field follow. Up to this
point the card definition syntax is the same as for vocabulary cards
(apart from the K at the beginning of the line). Afther the reading
field there is a string enclosed in curly brackets. This string defines
the compounds used with this character. Each compond is defined just
like a vocabulary card. Two compounds are separted by a vertical bar.
J-Flash´s card layout works like a table. The slash, does
not delimit a line, but separates row of readings and meanings.
The first reading appears in the same row as the first meaning.
This allows to specify the meaning for each reading separtely. If a
reading has two meanings, use a komma to separate the readings. (I guess
an example will make that clearer.. see the example file below).
When saving a lesson the lesson file is completely rewritten.
If the description line was empty it is set to the lessons file name
without extension.
J-Flash can read KingKanji
and KanjiFlash
files, since their syntax is identical to the minimal requirments
for a J-Flash lesson file.
A typical file looks like this:
# Description: simple.utf
# Last Opened: 1039762487721
# Correct Cards:1
# Cards: 2
# Pile 2
Kau [KAI,E/a(u)] /Meeting,Society,Club/to meet/ {kaisha [kaisha] /Company/|taikai [taikai] /Conference/}#W-1039762503614
# Pile 3
itoguchi [itoguchi] /thread end,beginning/ #RRW-1039762503614
This file defines the kanjis au and the vocab itoguchi. The red
character should be kanji,
the green hirgana or katakana and the blue ones romaji.
KANJI and READING have to consist of
japanese characters in case bitmap fonts are used.
MEANING must consist of
roman characters when bitmap fonts are used.
Use ascii (romaji) separators!
When you write your own lesson files you do not need to enter
anything after the hash # including the hash itself. The string after
"#Description:_" appears in the preview pane. Apart from the description
all information after the hash is internal to J-Flash.
For those interested, the header format is (exactly one space after
the colon is required):
# Description: Description of the lesson. It can
be modified by the user.
# Last Opened: Time in milliseconds UTC when the a flash card in
this lesson was last reviewed.
# Corect Cards: number of cards which were recognised correctly the
last two times.
# Cards: Number of cards in the file
The piles are separated by:
# Pile: 3
Options
You can pass the name of the options file as parameter in the command
line when you start J-Flash. On my desktop-system the parameter for the
virtual machine looks like this:
"-DIniFile=E:\javaProj\j-flash\japFlash.txt". This generates a system
property called IniFile set to the specified path. JapFlash uses the
information in this file to initialise the program. On the Z this
file resides in the directory QtPalmtop/j-flash,
it is called j-flashini.txt .
For ease of programming the entries in the ini file use the name
of the corresponding variables in the source code, in fact they are a
copy of those variables.
There are four types of entries:
- boolean variables: can be "true" or "false"
- color definitions: A color definition consists of the red, the
green and the blue content ranging from 0 to 255, separated by a comma
e.g. "255,0,0" is pure red.
- strings: something like "E:\J-Flash\....."
- integer numbers: someting like "233421"
- floating point numbers: something like "1.5"
Due to my lazyness the order of the entries is none.
The ini file of my desktop installation looks like this:
#J-Flash by insaneLX
#Sun Dec 22 13:21:43 PST 2002
smallRomajiFontName=Dialog #name
of the romaji font (system font)
bigKanjiFontName=k16x16.gz
#name of the big kanji
font (system font or k16x16.gz/ or k32x32.gz k64x64.gz if those fonts
are installed)
testMode=K-R-M #last used
test mode
defaultScreenWidth=314 #lastscreen
width
directoryList=SL#/home/root/Documents/application/octet-stream|CF#/mnt/cf/Documents/application/octet-stream|
lastViewedDirectory=/mnt/cf/Documents/application/octet-stream #List of the directories, the part
before the hash appears in the dropdown list, the part after the hash is
the path, two entries are separated by a vertical bar
stackBackgroundEndColor=255,229,229 #Background color of the rightmost
pile
defaultScreenHeight=292 # last
screen height
liftProbabilityFactor=1.5 #
factor by which the probability of a card beeing lifted from a certain
pile increases from one pile to the next one on the right.
backgroundColor=229,244,255 #background
color
smallKanjiFontName=k16x16.gz #name
of the small kanji font (system font or k16x16.gz/ or k32x32.gz k64x64.gz if those fonts
are installed)
loadLastFileAtStartup=true #load
last file at startup
cardType=1 #1 = compounds
extra
stackBackgroundStartColor=229,255,229 #background color of the leftmost pile
bigFontSize=32 #size of the big
kanji font
stackStartColor=76,255,76 #color
of the leftmost pile
testStrategy=Review #chosen
strategy
smallFontSize=16 #size of the
small kanji font
fileName= #Name of the last
opened lesson
defaultScreenY=269 #last y
position of the main frame
stackEndColor=255,76,76 #color
of the righttmost pile
defaultScreenX=395 #last x
position of the main frame
Bigger Fonts
You can simply change the font size in the options file. In case of
true type fonts this is the best option. One such unicode font which
includes kanji is bundeled with Norbert Siepenkoetters great program
KnajiNirvana. If you use Bitmap fonts they will get granular. The actual
font size should be a multiple of the original font size to reduce
alaiasing effects. Alternatively you can download the font-installers
k24x24 or k32x32 and set the font file names and sizes accordingly,
e.g. bigKanjiFontName = k24x24.gz, bigFontSize = 24.
How to Get Lesson Files
Write them! Well, you could use KingKanji
and KanjiFlash
lesson files. Actually it would be nice if someone decided to
write a converter for Kanjidic
files.
Contact
If you still got questions: insaneLX@gmx.at.