  README file for kdrill  v5.5 Jan 18th, 1998
     (by Philip Brown)

KDRILL REQUIRES the X Windowing System to run. Specifically, X11-R5 !! 
(or better).

kdrill quizzes you on kanji/kana phrase/english translations.
For a more detailed summary, skip to "KDRILL SUMMARY", below
It can also do dictionary lookups.

If you really care about ALL the most recent changes, please take a look at
the bottom of the "PATCHLIST" file. I recommend "tail -22 PATCHLIST"

Note1:
  KEY CHANGE from v5.4 or previous:
  We now support CUT-N-PASTE LOOKUP! See manpage, "SEARCH" section,
  for details.

Note 2: 
  KEY CHANGE from v5.0;
  You can actualy type in romaji, in the window next to the
 "kana search" button on the search popup! It will get converted to
  hiragana automatically, but you need to be aware of the following
  conventions:

    Type "-" for small-tsu.
    Type "n " (n,space) for a trailing n.
    Press <return> to search.
 

If you wish to drill yourself on just single hiragana or katakana letters,
check out the new 'makedic' directory. Previously, this was in the
separate release, "kdrill-kana-suppliment.tar.gz" 


Note 3:
  Kdrill supports an additional (and rather large!) dictionary: "edict".
  Given the memory usage, the edict dictionary is optional.
  If you do not choose to install it, kdrill will still work fine.
   


 ************************************************************


             KDRILL SUMMARY
            ----------------

  Kdrill is a program to quiz folks on
{ english }       { english }
{ kanji   }  <->  { kanji   }
{ kana    }       { kana    }


 on either English-to-kanji, or
kanji-to-English. It will quiz you on either the whole dictionary [around
6000 kanji?]  OR specific kanji, if you give the JIS-number in the
"usefile".
You can also restrict what you are quizzed on by various factors.


KDRILL REQUIRES the X Windowing System to run. Specifically, X11 R5 !! 
(or better).

This is because MIT X11R4's Athena Widgets do not handle 16-bit fonts
properly. If you happen to have a 16-bit capable libXaw, (or maybe if you
just grab and compile the R5 or R6 Xaw lib) you should be okay anyway.

It ALSO requires that you have a sane and proper kanji24 & kanji16 font.
Some strange sites have goofed up fonts in the distribution, where the
font index of a character is NOT the JIS reference.
IF this is the case, I suggest you get a new distribution of your
windowing system, and send a nasty note to your vendor.
If this is not within your power, then look in "readfile.c" for the
BROKENFONTS definition, and play with the number until things align.
(Untested by me, but methinks it should work)


ALSO NEEDED:

  I use the PD kanjidic file from monu6.cc.monash.edu.au: I do not include
it, as it is 700K. There is also a mirror at ftp.uwtc.washington.edu.
(look in either pub/nihongo, or pub/Japanese/JimBreen)


For specific character drilling, create a usefile.
"usefile" format is one number per line, in hex, at the beginning of the
line. Anything after will be treated as a comment, so you can notate the
meaning of each kanji. A nifty useful usefile is included for beginners
(like me!)

DICTIONARY FORMAT:

The approximate format of any kanjidic file used should be:

kk 3333 .... Fxxx Gxxx Hxxx Nxxx Uxxx.... nnnn  nnnn  nn {english} {english}

Where kk is the 16-bit kanji value seen as two 8-bit vals.(MSB,LSB)
'....' is any char any number of times, except for things starting with
"F" or "G"

Fxxx is a frequency of use rating.
Gxxx is a grade level rating.

H, N, and U entries may or may not be present.

nn is 16-bit kana interpretation with spaces between different ones.
(annoyingly, there are a bunch of other strange 8-bit formatting issues I
 had to deal with, but if you care, you'll have to get the docs that come
 with the dictionary.)

There may be any number of {english} segments, also.
Note that the braces {} MUST be included there.

Unfortunately, "kanjidic" does not have english translations for some
entries, and does not have kana for others. Unless the program is in 
 -notallT mode, entries will be skiped if they do not have the required
information to display. 

TO CHANGE FONTS, startup files, etc, you can either edit the 'fallback'
resources in "init.c", or make up a resource file "KDrill", and stick it
in your local app-defaults file. (Or load them with xrdb)
Sample KDrill file included in the archive.


Adding new entries to the usefile is fairly simple. search through the
dictionary for potential entries, then use "xfd -fn kanji24" to check out
what the characters actually look like, to make sure.
OR... use the nifty new "search" feature!!! :-)
OR... play in order, and note down ones you need
OR... play in "logfile" mode, which will automatically output ones you
      missed to a logfile. This logfile will automatically be read in
      the next time you start play!



  I hope this program can be used as an example of a well-written
Xwindows program. I now have just about everything a good program should
have. I hope. If you think of any possible improvements, whether they are
to do with coding, or just minor layout improvements, please let me know.

 Philip Brown
 phil@bolthole.com
 ^^^^^^^^^^^^^^^^^^^
     (New and permanent address... My own domain!)



Thanks to kgre@ftp.lle.rochester.edu, for being the first to respond after
the 5.1 release, and for giving me a really detailed list of what needed to
be fixed :-)
And to many others, for feedback and morale support.

Bug reports, and comments, are always welcome.
