KDRILL(1x)
๐ kdrill โ the kanji drill bestie (manual section 1x) ๐
ok so this is the 1x manual page for kdrill, and bestie, she's a whole icon. Let's get into it.
๐ NAME ๐
kdrill โ drill program for kanji chars under Xwindows (X11R5 or better is required to run) kdrill also does dictionary lookup
Yikesโฆ this man-page is getting huge. But I am a great believer in having proper documentation. Hopefully, this new format will help instead of hinder. ๐ซถ
At some future point in time, I shall convert this huge beast to HTML. But that point is not now. [Although actually, you CAN go to http://www.bolthole.com/kdrill/ for some help ๐
]
TIP:"/WORD"usually takes you to the next occurrence of"WORD", if you are viewing this using a"man"-like program. ๐
๐๏ธ SECTIONS (of this man page) ๐๏ธ
RUNTIME OPTIONSRESOURCESDESCRIPTIONPLAYINGPLAYING OPTIONSLEARNING NEW CHARSUSEFILESSEARCHKEYBOARD ACCELERATORSCONFIGURATION DETAILSLOGFILES AND MISSED KANJIKANJIDIC and EDICT
โจ RUNTIME OPTIONS โจ
[Note: most of these options are now somewhat redundant. Kdrill now auto-saves its options. But just in case you want to know about these commandline optionsโฆ] ๐ซ
-usefileNewUsefileName โ change the name of the usefile, which is the thing that lets you drill on specific characters. ๐ฏ-nousefileโ still read in the usefile if it exists, but ignore it at startup. Like, we see it, we just don't care. ๐-kdictfileOtherKanjidicFile โ use a different dictionary file name. You may have"hira.dic"or"kata.dic"installed, as well as"kanjidic", for example. ๐ง-edictfileOtherKanjidicFile โ use a different edict-style-dictionary file name."none"for no edict. ๐ซ-englishfontFontName โ changes only english display of english-guess buttons. ๐ค-kanjifontKanjiFontName โ change the large kanji font. ๐ถ-smallkanjiKanjiFontName โ change the small kanji/kana font for kana-guess buttons. ๐ธ-noBellโ turns off the beep on a wrong answer. (bestie, silence is golden ๐๏ธ)-guessmodeโ say whether you want the guess choices to be in"english","kanji", or"kana".-questionmodeโ say whether you want the 'question' to be in"english","kanji", or"kana".-showinorderโ start in ordered mode. Go through the desired kanji in order of#. ๐ข-gradelevel<level #s> โ start with different grade levels enabled. A string with one or more of[123456+].-showkanaโ start with kana meanings instead of english. ๐-lowfrequency #,-highfrequency #โ set the lowest and/or highest frequency kanji you want to see.-logfilefilename โ change the filename to log current errors to (with the"Log"button). ๐-notallTโ don't insist that all dictionary entries have kana AND English.
WARNING! Normal operation is to ignore incomplete entries, and thereby enable switching from kana to english without changing the quiz kanji. Using this option will make kdrill move to another kanji if you switch kana to English or vica versa. [ default behaviour currently loses 300 kanji, with the kanjidic file I have currently. All characters with Frequency ratings have full translations. ]
๐จ RESOURCES ๐จ
Kdrill now saves config options in $HOME/.kdrill, in X-resource format. The latest configuration will automatically be saved when you quit kdrill normally. ๐ซถ
If you want to change kdrill's settings, and you dont see a way to do it in the options popup, you can probably change it in the global "KDrill" resource file, or in your personal "$HOME/.kdrill" file. See the sample "KDrill" file for more detail, which is often installed in /usr/lib/X11/app-defaults/KDrill, or someplace similar.
Values in $HOME/.kdrill will override the global settings. periodt. ๐
๐ Colors ๐
You may change the background of the windows using a resource file, as mentioned above. โจ
๐ DESCRIPTION ๐
kdrill is a program to drill users on meanings of kanji characters. Various formats of drills are available:
kanji --\ /--- kanji
kana --*-- kana
english --/ \-- english
๐ฎ PLAYING ๐ฎ
kdrill will present you with a kanji (or kana or english phrase) and five possible meanings for it. Your goal is to guess which one matches the kanji at the top. Initially, it will choose randomly from the entire dictionary, so you will probably want to narrow the range, via the OPTIONS section, below. ๐ฏ
Any grade level or frequency rating the current kanji has will be displayed in the top right hand side of the window, next to the "G:" and "F:" letters. The kanji index number will be displayed after the "#:" sign. ๐
Click with your primary mouse button (usually the left one) on one of the multiple-choice answered to see how well you know the lone kanji or meaning. You may also use the number keys to make your choice. [1,2,3,4,5] ๐ฑ๏ธ
If you guess correctly, you will move on to another character. If you guess incorrectly, you will have to guess again. Furthermore, kdrill will make a note that you didn't know either the character displayed, or the character for the incorrect meaning you clicked on. ๐ญ
If you are playing in random order, kdrill will randomly repeat the ones you have missed. You will have to get a missed character right twice for kdrill to think you know it. If you miss a character more than once, you will have to repeat the character two times the number of times you missed it. If you are playing in order, kdrill will keep to the order, and not go back. It will still remember ones you have missed, however, and will go back to them if you later switch to random order. ๐
There are two ways of "cheating", if you are learning new characters, and don't want to have an incorrect guess recorded. One way is to press the "cheat" button, and the correct answer will be highlighted. The other way is to make a guess with button 2 on your mouse. The character of the one you clicked on will appear in the search window. If the search window was not already open, it will appear when you do this. ๐
โ๏ธ PLAYING OPTIONS โ๏ธ
If you want to change the way the game works while playing, you can bring up the options window by pressing the options button. If you know how you want the game to play before starting it, you can most likely do what you want with a command-line option, described at the top of this man-page. If you want to permanently change an option, see the "RESOURCES" header, above. ๐ ๏ธ
The following options are to help narrow down the range of kanji you get quizzed on. ๐ฏ
๐ Grades ๐
You may specify which grade levels you wish to study, by clicking on the buttons labeled: "1", "2", "3", "4", "5", "6", "+", or "All", in the "Grade Select" window. You may also select/unselect a grade by holding down shift, followed by "1", "2", "3", "4", "5", "6", "+", or "a", in the main window. ๐ข
The "All" feature will select all grades. but it will not unselect them. ๐
The default is to have all the grades enabled. โจ
๐ Frequency ๐
Some kanji have frequency ratings. That means that, in real life, some kanji are used more frequently than others. Frequency rating 1 means that this is the most frequently used character. The frequency of the true answer you are guessing will be displayed in the top right of the main window, next to the "F:" sign, if a frequency rating exists. ๐ฅ
The frequency range area in the options window allows you to limit the kanji you see based on their frequency rating. The frequency range area consists of two smaller input areas; "High", and "Low". High means a kanji that is high frequency. That is to say, something that is used often. According to the definitions of the dictionary, "1" means the kanji that is used the most often. A frequency rating of "2" means that the character has a lower frequency than "1". The most frequently used kanji is the character for "day", which is "F: 1". ๐
Setting a number in the "High" window limits high frequency kanji. If there is a number in the "High" window, that means that you will see no kanji that is of higher frequency than that number. Similarly, setting a number in the "Low" window means that you will see no kanji of frequency lower than that number. 2000 is a "Low" frequency kanji. If you put 2000 in the "Low" area, you would see nothing of lower frequency than the character rated at 2000 (which happens to be "hazy") that you would see nothing. ๐
A blank in the "High" or "Low" fields indicates no limit in the field. If you try to set either window to "0", it will automatically set itself blank for you. ๐ซถ
๐ข Order ๐ข
It is possible to be drilled on kanji in order, without repetition, until "all" kanji have been covered. Any restrictions on grade level or frequency will still apply. To enable or disable ordering, click on the "Showing randomly" (or "Showing in order") button in the options window. ๐
Note that "in order" does not mean in order of frequency. It means in the order represented by the dictionary, denoted by the '#' number shown at top right. This happens to be the JIS-encoding of the Kanji, which we also call the kanji index. ๐
TIP: A good way to start learning a range of chars, is to select the"in order"option, and a particular grade level and/or frequency range. Press'C'(Shift-c) for super-cheat. This will both highlight the correct answer, AND show the full kanji+kana+english meanings in the popup search window! ๐ฆ When you have looked at it enough, click on the correct answer to move on to the next kanji. โจ Or rather than use the super-cheat option repeatedlyโฆ Read the next section. ๐
๐ง LEARNING NEW CHARS ๐ง
If you would like a small little window to memorize new chars in, instead of the bulkier 'main' or 'search' windows, there is now a 'learn' window. Pressing the (learn) button on the main window will bring up the learn window, which only displays kanji, kana, and english meanings of a char. Pressing one of the 'next' buttons will select a new char for you to look at, using the same rules of choosing that the main window uses. (grade levels, and an optional usefile) ๐
๐ USEFILES ๐
So a usefile is basically you telling kdrill: "bestie, quiz me on THESE kanji, and ONLY these specific kanji, ok?" ๐ซถ
Generally speaking, it's way easier to just pick a grade level or a frequency range and let kdrill do its thing. But if you already know the exact kanji you want (like, say, you're studying for a class ๐), a usefile is chef's kiss incredibly useful.
Heads up: Grade and Frequency restrictions still apply, even when you have a usefile. So if every kanji in your usefile is grade 4 or higher, and you've only got grades 3 and lower selected, kdrill will complain that there aren't enough kanji available, and it'll try to add viewable grade levels until there are enough valid kanji to quiz on. โจ
To add or remove a kanji from the "usefile", pull up the search window and view that particular kanji. The "usefile" button all the way on the far right will be highlighted if it's in the usefile list. You can toggle that button to set the status however you want. ๐
Wanna see everything in your usefile? Click the "show" button, right below the "usefile" toggle, in the search window. It'll show you the current list, and pressing on one will display it in the search window. Then you can remove it with the "usefile" toggle if you feel like it. ๐
When you quit kdrill, it updates the usefile, IF you have a minimum number in the list (currently, 10). Wanna know if you have enough? Use the options window to toggle "No Usefile" over to "Using Usefile". It will not let you do it if there aren't enough characters in the list. ๐
If you want kdrill to ignore your usefile when you start it up, you can use the -nousefile option.
๐ฆ Usefile format ๐ฆ
If you wanna edit a usefile by hand, here's the format, bestie:
A usefile is just a list of hex numbers โ one per line, no initial spaces allowed. A usefile lets the program know you're interested in certain kanji out of the thousands listed in the dictionary. You can add comment lines by making the very first character of a line a "#". But fair warning: those get overwritten if you make changes from inside the program. ๐ญ
Hex numbers can be checked or found by using the "xfd" util on the "kanji24" font. Alternatively, you could use the search window or the main kdrill window. In one of the "#" input boxes, type in "0x", and then the hex number. It's best to do this in the search window, since the main window may have range restrictions on it. โจ
๐ SEARCH ๐
Searching for a character in kdrill is now a whole thing, and we love that for us. You can search for an English phrase, a kana phrase, or a particular kanji. ๐
kdrill will automatically show you the first match. If there's more than one match, it gets shown in a secondary popup window. That window can be changed to display the english, kanji, or kana meaning of each dictionary entry. Click on one to have it displayed in the main search window. ๐
Also โ if a search turns up a kanji phrase instead of a single kanji, you can click on the phrase at the top of the search window, and the secondary multi-listing window will display the individual kanji so you can examine them in further detail. ๐ง
๐ธ English search ๐ธ
First, bring up the search window by pressing the search button. Then enter an English word (or fragment) in the bottom-most section of the window, and press return or enter. The window will then display the first kanji it finds that has that word in its definition, along with its index number, grade, and other information available, if any. ๐
๐ Kana search ๐
If you want to search for a kana phrase, you now have TWO options! Iconic, honestly.
For the more experienced users: you can finally type in that tempting kana window. There's no little ^ cursor, but don't worry about that. DO worry about the following conventions:
- Type
"n "(n, space) to convert a ending 'n' to kana - Press
"'"for small-tsu. (type"chotto"as"cho'to") - Press
"-"for kana elongation. ("bi-ru") - Press backspace to erase the last char.
- Press return to start the search.
For a pointy-clicky method of input: press the "kana search" button. This pops up the kana search window. (Press it again to remove the window.) Press the kana(s) you want to search for. The chars you press will show up next to the "kana search" button in the main search window. When your phrase is ready, press the [Search] box. โจ
If your kana recognition isn't all it should be, you can toggle romaji mode in the options popup (via "options" from the main window). Also, if you don't know katakana but you wanna translate a katakana phrase, use the <=> button to toggle between hiragana and katakana. Note that even if you're in katakana input mode, it will print out your buttonpresses as hiragana. That's because the search engine treats hiragana and katakana identically. ๐
If you make a mistake, press the <- button, or backspace, to erase the last char.
The characters you press will appear at the bottom of the popup, and also on the main search window next to the kana search button. As noted above, if you make a mistake typing, use the <- button on the kana window to erase, or the backspace key. ๐
๐ฅ KANJI SEARCH ๐ฅ
You now have multiple ways to look up Kanji. Let's gooo.
4-corner Kanji search
Wanna find a kanji by shape? Press the kanji search button on the search window. This brings up the kanji search window. Press it again to remove the kanji search window. ๐ฆ
This window employs the "4-corner method" of lookup. The 4-corner method has lots of strange rules to it. I strongly recommend you read the description that comes in the kanjidic document file. It is impossible for me to cover all the details here. ๐ญ
In brief: you have to press each corner of the center box, and select one of the ten elements from the top row that best matches that corner of the kanji you want to look up. For those already familiar with the 4-corner method, the "blank" element is an alias for the first element. There are still only 10 possible positions. ๐
Press the paragraph button (backwards 'P') when you're ready to search.
For those NOT already familiar with the 4-corner method... unfortunately, it sounds easy, but it is really horribly difficult, and I again refer you to the documentation that comes with the kanjidic dictionary file. Look for "kanjidic.doc" ๐
โญ SKIP Kanji search โญ
Pressing the "Kanji SKIP search" button brings up the SKIP window. This window already has directions on it. Follow the directions to define what the kanji looks like. ๐
๐ Kanji cut-n-paste lookup ๐
For ELECTRONIC lookup... if you view Japanese text online with a program like "kterm", you can now select a single kanji in kterm and paste it into a special "drop target" in the search window. It's to the far right of the "kanji" search button. โจ
If you highlight multiple characters, kdrill will now only look for an exact match of all the characters you paste in (up to 4 chars). Multi-char matching will NOT WORK unless you have downloaded the additional dictionary, "edict". ๐ค
๐ Note: There is a BUG in some versions of netscape4.x. If you're viewing kanji in a frame, you can seemingly highlight a character, but it will not cut-n-paste to kdrill, or anywhere else. If this happens, use right-click to"open frame in new window", where you'll be able to use cut-n-paste. Cut-n-paste from netscape was also improved in version5.9.6. ๐
๐ MATCH SIMILAR KANJI ๐
If you have a kanji already showing in the search window, and you're using the 'edict' dictionary, you can search the large dictionary for occurrences of the current kanji. Press the "match" button next to the kanji display. ๐ซถ
๐ What are all those letters? ๐
The top row โ "G, F, #" โ all refer to the basic indexes that are shown in the main kdrill window. They stand for "Grade, Frequency, and Index #", respectively. ๐
Hdenotes the index in the"Halperin"dictionaryNdenotes the index in the"Nelson"dictionaryUxdenotes the"Unicode"of the kanji. It'sUxto make it stand out as the only one that expects input in Hexadecimal. That's because that's the way the dictionary has it. ๐ฅ
For all windows with the little ^ in them, you can change the values. When you press return or enter in them, kdrill will attempt to find a match for what you just entered. If it can find no match, it will blank out all fields displayed. ๐ญ
You can use this jump-to-index feature in the main window too. However, the main window will keep any restrictions you might have while doing the search (limits by usefile, grade, or frequency limit).
The search window ignores any restrictions on the main window, and searches the entire on-line dictionary. ๐
โจ๏ธ KEYBOARD ACCELERATORS โจ๏ธ
Almost everything has a keyboard shortcut in kdrill. Slay.
1,2,3,4,5โ Make a guessShift+ (123456+) โ Change grade levels usedcโ (C)heatCโ Super(C)heateโ Guess (e)nglish definisionkโ Guess which (k)anji fitsmโ Guess which kana (m)eaning fitsEโ Quiz on (E)nglishKโ Quiz on (K)anjiMโ Quiz on kana (M)eaninglโ popup (l)earn windownโ (n)ext char, IF in learn windowoโ Toggle in-(o)rder drillOโ Bring up (O)ptions windowpโ Go back to (p)reviousControl+qโ (Q)uit kdrilluโ Toggle (u)sefile usage.sโ (S)earch for a KanjiTโ Timer start/stopxโ clear missed count
Additionally, the Sun keyboard "Find" (F19) and "Props" (F13) keys are bound to the search and options windows, respectively. ๐
๐ CONFIGURATION DETAILS ๐
okay so here's the tea on how kdrill finds its stuff ๐ซถ
kdrill checks for a file by the name of .kanjiusefile in the current directory, although this name can be changed either with the -usefile option, or in a resource file.
kdrill also checks for a logfile, named kdrill.log by default, in the current directory. This can be changed with the -logfile option, or in a resource file. See "LOGFILES AND MISSED KANJI", below.
kdrill uses a file called "kanjidic" (which does not come in the source package ๐ญ) to interpret many of the various 16-bit kanji chars in the kanji24 font supplied with the X11R5 distribution. This file should be in a place accessible to all users. Normally it would be in /usr/local/lib or somewhere similar.
kanjidic subdivides its entries into grade levels, and frequency ratings. Grade levels are similar to school grade levels, but more compressed. For kdrill's purposes, grade levels start at 1, and increase to 6. There are many kanji that do not have a grade level, due to their infrequency of use, or other reasons. These are denoted by the "+" character in the grade select window. โจ
The user can restrict the range of kanji to drill on in different, yet compatible, ways. The first way is to make a .kanjiusefile with a an explicit list of desired kanji. (described above in "USEFILES"),
โ ๏ธ heads up bestie: changes you make to the"Grade Select"window or the"Frequency Range"section will not do anything until you supply the correct match to the current drill-question (or press the english/kana toggle button). no cap.
Keep in mind that the xfd font tool and other applications may refer to kanji characters by a hexadecimal number. You may enter a hexadecimal number by starting it with "0x". For example, "0x315c". To maintain compatibility with the dictionary, the kdrill "usefile" expects hexadecimal input, not decimal input. Similarly, the logfile also stores kanji in hexadecimal format. This makes it easy to use a log file of kanji you have missed as a usefile, for repeated drilling. ๐
๐ LOGFILES AND MISSED KANJI ๐
Every time you guess incorrectly, kdrill makes a note. It later will give you extra practice on ones you missed, if you are playing in random order. It will only repeat a missed character about 25% of the time. The more you miss a particular character, the more kdrill will repeat showing it to you. (it's giving "we're not mad, we're just disappointedโฆ and also we're gonna keep quizzing you" ๐)
You can store a list of your incorrect answers by pressing the "Log" button. kdrill will then write out all the kanji characters it thinks you do not know into the logfile. This will erase any information previously in that logfile. kdrill will also automatically update the logfile when it quits. The next time you start up kdrill, it will automatically read in the logfile, if it exists.
The logfile is named "kdrill.log", by default. You may change the name of the logfile with the -logfile option.
It is a good idea to press "Log" just before quitting kdrill. That way, it will remember which characters you are weak on, for the next time you play. It will then go back to those characters from time to time, if you play in "random" order. If you do not press "Log", kdrill will not save a record of what you have missed.
Alternatively, you can use the logfile as a usefile. kdrill will then only quiz you on those kanji you missed. If you choose to do this, it is a good idea to copy the log file over to a different file. That way, you can make a logfile for your new usefile. For example, in UNIX;
cp kdrill.log kdrill.usefile kdrill -usefile kdrill.usefile
The total number of missed entries is shown in the main window. If there are just too many for your comfort (learning new kanji can be difficult!) you can ERASE THE COUNT with your backspace or delete key. ๐ซถโจ
๐ KANJIDIC and EDICT ๐
The dictionary for kdrill, kanjidic, is currently available where it originated, via ftp from ftp.monash.edu.au, or from a mirror in the U.S. at ftp.uwtc.washington.edu. Likewise for the "edict" dictionary. There are many other mirror sites mentioned on the kdrill web page. (See below)
At the monash site, both the dictionary and this program can currently be found in /pub/nihongo
This program's primary ftp site is now ftp.bolthole.com.
There is also an official kdrill URL;
http://www.bolthole.com/kdrill/
This currently shows you some screen-shots, and mentions the ftp sites. ๐
๐ BUGS ๐
"kanjidic" isn't perfect. There are "incomplete" entries, missing either English or kana translations. There are also entries consisting of "See Nxxxx", which isn't really an improvement. Note that you can now use the search window to follow those "See Nxxxx" references! [ Just search for that Nxxx, as if doing a search for English ]
Likewise, this man page may be incomplete! ๐ญ (iconic honesty fr fr)
๐ AUTHOR ๐
Philip P. Brown
(Who has finally taken a format Japanese lesson! Which helped a lot, but am now back on the slow "self-taught" track. sigh! shikatta ga nai)
๐ธ COPYRIGHT ๐ธ
This program was originally created while I was a student at the University of California. However, this program was developed entirely by myself, on my own computer, not related to any classwork. I retain sole right to this program.
I, Philip Brown, hereby give permission to use, and/or modify this code, so long as it it not sold for profit, and I am given credit somewhere in the code. Unrelated works originally derived from this code are not covered by this restriction (although it would be nice to mention me!) ๐
๐ฆ NOTICE ๐ฆ
Send donations, postcards, muffins, letters of commendation, to
Philip Brown
5353 Josie Ave
Lakewood, CA 90713
USA
[ I HAVE received some nice email, and more is always welcome. No postcards, though. Sniff... Although I DID actually receive a small donation. Yaaay! I can buy more manga now! :-> ]
Bug reports always "welcome". However, please ensure that you can reproduce it, so I can fix it for you. Also, be sure to let me know your machine type, and version of kdrill you are using.
Philip Brown
phil@bolthole.com
http://www.bolthole.com/kdrill/
โญ SEE ALSO โญ
ftp://ftp.bolthole.com/kdrill/zidian.README for information on how to use kdrill for Chinese learning
and that's the whole page bestie, we ate and left no crumbs ๐
โจ this little masterpiece is from Philยดs Software, dated August 21st, 2003, and it lives under the name KDRILL(1x) ๐ go forth and drill those kanji, you absolute icon ๐ซถ
๐ฆ where this page comes from
- debian trixie: kdrill 6.5deb2-13.1
- ubuntu noble: kdrill 6.5deb2-13ubuntu1
- ubuntu questing: kdrill 6.5deb2-13.1
- ubuntu resolute: kdrill 6.5deb2-13.2
- ubuntu stonking: kdrill 6.5deb2-13.2
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms