SourceForge.net Logo

Welcome to WaJEi

version 0.9

To download WaJEi, visit the sourceforge summary page and select "Files".

What is it?
Installing it
    Zip file
    Ipkg file
    Building from the latest source in CVS
Using it (screenshots)
    Start it up
    English to Japanese lookups
    Japanese to English lookups - phonetically (by kana)
    Japanese to English lookups - by kanji
    Setting the Edict file
Who wrote it?
Copyright stuff
Version information


WaJEi is a Japanese-English / English-Japanese dictionary program, written in Java, that allows:

WaJEi contains its own fonts, and does not rely on a Japanese font being installed on your system.

WaJEi uses Jim Breen's edict and kanjidict dictionary files. Both are available at the Monash Nihongo ftp archive.
WaJEi includes versions of kanjidic, but you must get edict from the above site (see INSTALLING IT below). Also please take a look at the kanjidic.doc file (included with WaJEi or available here), as it contains important licensing information.

WaJEi has been (and is being) designed to be used on the Sharp Zaurus SL-5500, but should be runnable with any Java 1.1 or higher JVM. The focus on the Zaurus has some implications, however, and makes WaJEi behave differently than other software designed for a desktop PC:

WaJEi uses and is based on classes from John Howard Palevich's JJReader. JJReader is currently not available for download at his site. His JJDict program, which uses the same dictionary classes (but not the display classes) is available at the Monash Nihongo FTP archive here. Included with this code are font files used, among other places, in Jim Breen's DOS-based JDIC program. Zip files with some of these fonts are also avilable at the Monash ftp site. Please take a look at the fontfile.doc file distributed with WaJEi for a history of these files.

WaJEi also has elements based on code from Todd David Rudick's JavaDict program. In particular, I adapted his code for translating roman character input into kana. I also use and adapted his sorted kanjidic file.


Zip file

Unzip wajei.zip into your favorite directory. Obtain the dictionary file "edict" and the index file "edict.jdx" from the EDICT Project at the Monash Nihongo FTP archive:
or (ftp://ftp.cc.monash.edu.au/pub/nihongo/)

The EDICT Project Home Page is at:

To make things more convenient, you can put the edict files in the directory to which you unzipped the archive - the same directory that contains the wajei.jar file. Otherwise, you will be asked to find them by the program.

Ipkg file

The ipkg file format is a package format used by the Zaurus to install software packages. You can install the wajei ipkg file (with the filename ending in ".ipk") on your Zaurus in the same way you would install any other software package. Once again, obtain the edict and edict.jdx files and upload them to your Zaurus. If you like, you can find the directory where the wajei.jar file was installed and put the "edict" and "edict.jdx" files there. For example, if you installed it on a compact flash card (like I do), you would put the edict files in the folder "/mnt/cf/QtPalmtop/java/". Otherwise, you can find the edict files from within the WaJEi program.
You can explore the Zaurus file system and move files around with Sharp's File Manager program, available here.

Building from the latest source in CVS

Install Ant. Download this build file. Put it into an empty directory. Go to that directory and type "ant".

This uses a shell script "ipkg-build.sh" to build an ipkg file, so you'll need to run it in a Unix-like environment. If you're on Windows and need a Unix-like environment, try Knoppix. Or, if you don't care about building an ipkg file, type "ant noipkg" to skip that step.
The ipkg-build.sh script was written by Carl Worth . Ant should grab it from CVS during the build, but it is also available here at www.zauruszone.com


Start it up

Fire up your Java 1.1 or better JVM and run WaJEi, using wajei.jar as your classpath:

	java -cp wajei.jar WaJEi

When I'm running it on my desktop, I usually pass in parameters to make a window 400 pixels wide and 600 pixels tall. It gives a smiliar look to the way it runs in the Zaurus, but withmore room:

	java -cp wajei.jar WaJEi 400 600

Or of course, if you've installed it on your Zaurus, simply select the lovely WaJEi logo in your Jeode tab.

Here is the opening screen. You can return to this screen at any time by choosing "Help -> About" from the menu. If you did not put the edict files in the same directory as the jar, or you have not set the edict file yet, you will see seomthing different. Please refer to the edict file section below.

At the top you can see three menus in the menu bar. First is the "Lookup Method" menu, which allows you to switch between four different screens. "Phonetic" is the screen you see at first. It's where you perform English to Japanese and Japanese to English phonetic lookups.Selecting "By Kanji" will take you to the kanji lookup screen. The "Flash Card" screen allows you to drill yourself on randomly selected words from the edict dictionary file.
The "Debug" screen is something I added to let me play around with indexes so I could figure out how the "jdx" file worked with the edict file. One of my "TODO"s is to build a utility to tune the index file so that it's optimized for reverse lookups. right now it's optimized for someone typing in part of a word, including multiple kanji. It's not tuned for selecting words based on the position of a single kanji.
Next is the Options menu. The first item allows you to set the edict file (again, see the edict file section below.) Next you can choose whether you want an exact match search or a search for any word starting with what you've typed in. so you can shorten the results for a search on "asp" to only include those about the snake, or you can include entries with the word "asphalt". Last is an option that allows you to search the results of a previous search. If your lookup of "beach" returned too many results, and you want to narrow it down to entries containing both "beach" and "house", turn this option on. Remember to turn it off when you no longer want it!
Finally is the Help menu, which allows you to return to this startup screen.
Underneath the menu bar, and taking up most of the real estate, is the results view. Click or tap on this to give it focus, then you can scroll through it using the arrow keys or directional pad. Underneath this is a drop-down list on the left, which allows you to switch between entering roman characers, or Romaji, and Japanese phonetic characters or kana, either Hiragana or Katakana. To the right of the drop down are two arrow buttons. These are used for scrolling through search results. WaJEi will only display 10 dictionary entries at a time. The right-pointing button will take you to the next ten results, and the left pointing arrow will take you to the previous ten results. On the bottom left is the text entry box. Click or tap here and start typing to enter a search string. To the right of that is the search display. Here is where the program will display its interpretation of what you've typed, depending on whether you had Romaji, Hiragana, or Katakana selected in the drop down box.

English to Japanese lookups

From the menubar at the top, select "Lookup Method", then "Phonetic" to get to this screen. Select "Romaji" from the drop down list at the bottom of the screen, and type into the entry box on the bottom left. Your search string will appear in the box on the bottom right. Note that you can combine Romaji and Kana in the same search (which is sometimes useful).

Hit Enter and this is what you get. You can scroll through the results with the arrow keys or directional pad.

Japanese to English lookups - phonetically (by kana)

From the menu bar at the top, select "Lookup Method" and then "Phonetic". Choose Hiragana from the drop down. Actually, the Katakana option is superfluous, since the program will treat Hiragana and Katakana the same in its search. Type in the entry box on the bottom left, and kana will appear in the box on the bottom right.

Here we'll look up "rekisei".
After we hit Enter this is what we see. The default method for phonetic Japanese to English search is to matches any words that begin with the search string. Therefore, searching for a short word may give more results thatn you need. This was a problem in earlier versions, because the program would wait until it had compiled the complete list results before displaying it. But starting with version 0.9, the program only displays ten results at a time. If you are looking for an exact match, it will probably show up near the beginning of the results. But, if you want to be sure, you can turn on the 'exact match' option in the "Options" drop-down menu.

Japanese to English lookups - by kanji

From the menubar at the top, select "Lookup Method", then "By Kanji", and this is what you'll see. The screen is divided into four elements: at the top is a list of radicals. The numerals indicate the number of strokes. You can see that the radicals are sorted by stroke count. Below this is the kanji display area. Select a radical by clicking on or tapping it, and all kanji for that radical will appear where you see the words "kanji list here". Again, they will be sorted by stroke count. At the bottom of the screen, where it says "kanji result here", is where information will appear for a selected kanji, and from which you can search for words containing that kanji.
Read on, and I think it will become clear.

Touch a blank space or a number in the top third of the screen to give it focus. You can now scroll through the list of radicals using the arrow keys or the directional pad. Note again that the radicals are sorted by stroke count.

Click on (or tap) a radical and a list of all kanji for that radical will appear in the middle third of the screen. Here we have clicked on the last radical in the list of radicals with six strokes. The kanji list begins with the number of the radical, preceded by "B" (for "bushu", or "radical"). We have chosen radical number 146. Then all kanji for that radical are listed, sorted again by stroke count. You can see that there are two kanji with six strokes, one kanji with nine strokes, etc. Since the kanji list has focus, indicated by the box around it, you can scroll through it with the arrow keys or directional pad to find the kanji you want.

Click on or tap the kanji you want to use for your search. Here we have clicked on the only nine-stroke kanji for radical number 146. At the bottom of the screen is displayed first the kanji itself, then its ON and KUN readings, and its meanings. If the kanji has any nanori, or redings used only in proper names, those are displayed next.

Now scroll down a little in the kanji result view at the bottom, and you'll see a line with a list of numbers 1 through 9. These are for searching for words with this kanji in a certain position. To search for words with this kanji in the third position, tap or click on the number "3".
And this is what we get. Notice that at the top of the screen the program tells us what we searched for.

Setting the Edict file

If you did not place the edict dictionary file and edict.jdx index file in the same directory as the sagsu.jar file, then this is what you'll see when the program starts - an error message telling telling you that the program cannot find the edict files. You will also see this if you try to do a phonetic lookup and no edict file has been set.
To set the edict file, choose "Options -> Set Edict" from the menu. A file dialog will appear.
Navigate through the file system and fing the edict file with the file dialog. Note that the edict.jdx file must be in the same directory.
If you do not choose an edict file, or you choose an edict file with no edict.jdx file in the same directory, you will see this error message. The edict file has nont been set, and you will still see an error message if you try any lookups.
If everything went well you will a message like this. The edict file has been set, and it has been stored in a properties file. You can now perform lookups, and you do not need to set the edict file again, even if you exit and retart the program.
However, please note that WaJEi first checks the execution directory before referring to the properties file for the location of the edict files. So if you have edict files in the same directory as wajei.jar, and you want to update your edict files, or use different edict files, make sure that you either replace the edict files in the wajei.jar directory with the new files, or delete the old files before setting the new files from within the WaJEi program.


Of course, this program wouldn't work without the dictionary files created by Jim Breen.

As stated above in the what is it section, most of the hard work in the code was done by John Howard Palevich and Todd David Rudick. If you find this useful, most of the credit belongs to them.

The new stuff was written by Richard Dunham. If you find bugs or problems, contact him. He can be reached at:
d u n h a m r c @ y a h o o . c o m
(email address slightly obfuscated to confound spam web crawlers)


Jack Palevich's JJReader and it's classes are Copyright (c) 1996 Palevich-Chen Industries, Inc. All Rights Reserved. see copyright notice at head of file Edict.java.

Todd David Rudick's JavaDict program is Copyright (C) 1997 Todd David Rudick under the GPL.

Please see kanjidic.doc for license information on the kanjidic file.

Please see fontfiles.doc for information on the font files distributed with this program.

This program is copyright (c) 2002 Richard Dunham under the GPL.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.



As you would expect from a period of several months since the last release, this has a lot of changes. In addition to new features, I made some changes to improve both actual and perceived speed. Not only do the searches seem to go faster to the user because of the 10-at-atime paging, but code optimizations have improved the actual startup time.



v 0.7

v 0.6

v 0.5

v 0.4

v 0.3

v 0.2

v 0.1