PocketKanji Manual

PocketKanji features

What is a kanji?

PocketKanji screenshot

A kanji is a Japanese character. These characters are put together to make up words. PocketKanji is a program to help you look up kanji.

Kanji have multiple readings

Kanji usually have two or more readings. The first is called the ON yomi (yomi means 'reading' in Japanese). The ON yomi is a reading that is somewhat close to the original Chinese reading. The other reading is the KUN yomi. This is the Japanese sound associated with a character. There is also a third reading that is used with people's names. This is called the NANORI reading.

PocketKanji

PocketKanji is a tool to help you find Kanji on your Palm Pilot. You write the character on your screen and you can easily find the kanji definition. PockeKanji is free as in freedom. You can download the source and make your own modification. You are welcome to send me your changes and I will include them in the next version.

Hungry programmer plea

If you find this program useful you can donate me money.

The money will give me the motivation to improve PocketKanji. 10% of the money I receive will be given to the Monash University and help improve the dictionary itself.

Version history

Please take a look at the version history . For more details you can also look at the Changelog.

Download and install PocketKanji on Palm OS

Download

Grab the files in the download section.

Big fat warning

This program has no warranty. I do my best to produce a good product but an oversight on my part could could crash your Palm Pilot. Please backup your data before using this program. Please read the GPL license for more detail.

Installation of PocketKanji

You need to sync the following files to your Palm Pilot:

If you are running a Japanese PalmOS or the J-OS hack you don't need to install shinonome.pdb. This will save about 200k of memory on your palm pilot. You must install shinonome.pdb if your PalmOS doesn't know how to display Japanese characters.

Known issues

PocketKanji does not work with a hack called McPhling. It is a hack that makes it easy to switch between applications. You need to disable the hack in order to see the definition.

It does not work with the Sony Clié. I am planning to fix it sometime

How to use PocketKanji

Kanji input

Input screenshot

Write a kanji in the box. It is important that you use the correct stroke order for it to be recognized. Most kanji are written from the top left to the bottom right.

Kanji conversion

Conversion screenshot

Tap on convert for the kanji to be recognized. The program will display the four kanji that best match your drawing. Tap on the correct kanji to find the definition. If the program does not match your character you will need to tap erase and try again.

Kanji definition

Definition screen

This is the definition of the kanji which is displayed on the upper left. Next to the kanji is the EUC and Shift JIS code. Below the kanji are the ON reading, the KUN reading and the NANORI reading. Each reading is separated by a comma.

There is a dot separating the hiragana kanji reading and the hiragana that often comes after a kanji. For example in ito.shii (love), ito is the kanji and shii is the hiragana. The hyphen means that the reading is preceded or followed by another word.

To copy the character into the clipboard bring up the menu and select copy.

How does it work?

Algorithm

PocketKanji uses an algorithm invented by Todd David Rudick. It starts looking at the number of strokes entered. It then looks at the strokes direction. It adds points for stroke that are entered in the right direction. The highest score is hopefully the character the user has entered.

That is why the program is so picky with stroke order. The slightest mistake when entering the character will probably show the wrong character.

Database

You can take a look at the database. You'll need to download the source file and expand it. It is split up in many files under a directory called stroke.

The files are named unistroke.n, where n is a number between 1 and 23. This number represents the number of stroke. For example unistrok.5 will contain characters having 5 strokes.

Let's take a look at an entry in unistrok.3:
53e3 3382 | 2 b 6

This is the entry for 'kuchi' which means mouth. The Japanese character looks like a square.

The first entry 53e3 is the unicode entry of the character. The next number is not used. The 3 values after the pipe characters represent the stroke direction.

This chart shows the correspondence between the value and the stroke direction.
17:30 clock direction
27:30 clock direction
37:30 clock direction
47:30 clock direction
67:30 clock direction
77:30 clock direction
87:30 clock direction
97:30 clock direction
b7:30 clock direction
c7:30 clock direction
x7:30 clock direction
y7:30 clock direction

Looking at the table above you can see that the sequence 2 b 6 makes up kuchi.

Sometimes there is a pipe after the stroke sequence and they are more values. These are used to differentiate between characters that have identical stroke orders. I will document those values later.

With this information you should hopefully be able to start adding your own character. You can also use stroke order in the dictionary to make up more complicated characters.

I want to complete the dictionary of characters. I will need some help to do that. If you have added characters you can send them to me and I will add them to PocketKanji.

Supported characters

I have generated two lists from the database:

Before adding a character you can check if it's already supported.

To do list

This a list of the features I would like to add to PocketKanji. If you would like to take on one of these items please let me know. I would appreciate the help.

Please e-mail me with your ideas on any feature you would like to see on PocketKanji.

Giving credit where credit is due

Steps to compile PocketKanji

Tools required to compile

This section is for programmers who want make changes to the program.

You need a Unix machine with GNU tools such a binutils and make. You will also need the gcc compiler for pilot and the pilrc tools as well as a program called par to create the kanji dictionary database for PocketKanji.

Download par and compile it on your machine.

You need perl.

My development machine is a linux machine, but you should be able to compile PocketKanji on any GNU environment. If you are running windows you should be able to compile PocketKanji using the PRC-Tools with Cygwin..

Building PocketKanji

All you need to do is type make prod in the top directory.

You may give out copies of PocketKanji and of this manual

PocketKanji is free software, where "free" refers to liberty, not price. As the GNU people like to say, think of "free speech" rather than "free beer". The exact legal distribution terms follow below, but in short, you have the right (freedom) to run and change PocketKanji and distribute it to other people, and even--if you want--charge money for any of these things. The sole restriction is that you have to grant your recipients the same rights.

Please read the GPL license for details

PocketKanji uses KANJIDIC which is licensed under the Monash University School Of Computer Science And Software Engineering Electronic Dictionary Research And Development Group General Dictionary License Statement


© 2002 Ivan Kanis
Last modified: Tue Mar 26 05:09:19 CET 2002