Skip to content

Japanese - English dictionary for Kindle based on the JMdict / EDICT database

License

Notifications You must be signed in to change notification settings

jmdict-kindle/jmdict-kindle

Repository files navigation

About

This is a Japanese-English dictionary based on the JMdict and JMnedict and Tatoeba database for e-Ink Kindle devices.

Features:

  • lookup of inflected verbs.
  • lookup for Japanese names.
  • Example sentences
  • Pronunciation
  • the dictionaries can be downloaded as separate files or as one big dictionary
Inflection lookup screenshot Sentence lookup screenshot
Word lookup screenshot Name lookup screenshot

Supported Devices

The dictionary has been tested on Kindle Paperwhite and Kindle Oasis. It should also work well with other e-ink Kindle devices

The dictionary will not work well on Kindle Fire or Kindle Android App, or any Android based Kindle, because the Kindle software on those platforms does not support inflection lookups.

Download

You can download the latest version of the dictionary from here.

Install

e-Ink Kindle

There are in total 3 dictionaries:

  • jmdict.mobi: Contains data from the JMedict database, with additional examples. It does not contain proper names.
  • jmnedict.mobi: Contains Japanese proper names from the JMnedict databse.
  • combined.mobi: Contains the data from both of the above dictionaries. Please note that a lot of features are missing from the combined dictionary (sentences, pronunciation, ...) due to size constraints. Therefore, it is not suggested to use this dictionary.

To install any of the dictionaries (you can also install all three of them) into your device follow these steps:

  • for 1st-generation Kindle Paperwhite devices, ensure you have firmware version 5.3.9 or higher as it includes improved homonym lookup for Japanese;
  • connect your Kindle device via USB;
  • copy the the .mobi file for the dictionary you want to use to the documents/dictionaries sub-folder;
  • eject the USB device;
  • on your device go to Home > Settings > Device Options > Language and Dictionaries > Dictionaries and set JMdict Japanese-English Dictionary as the default dictionary for Japanese.

Kindle Android App

NOTE: Unfortunately the Kindle Android App does not support dictionary inflections, yielding verbs lookup practically impossible. No known workaround.

  • rename jmdict.mobi or any of the other two dictionaries as B005FNK020_EBOK.prc

  • connect your Android device via USB

  • copy B005FNK020_EBOK.prc into Internal Storage/Android/data/com.amazon.kindle/files/ or /sdcard/android/data/com.amazon.kindle/files

This will override the default Japanese-Japanese dictionary.

Kindle iOS App

The steps for iOS App are similar the Android App above. Unfortunately the Kindle iOS App seems to suffer from the same limitations regarding inflections.

Pitch accent information

The pitch accent information is encoded in the following way:

  • Underline for Low
  • No Formatting for High
  • ꜜ for a sudden Drop in pitch
  • ° for a Nasal sound
  • If no formatting whatsoever is present then we do not have pitch information for that particular entry

Examples:

  • たい means L-H-H
  • が°ꜜ means L-Hꜜ-L
  • んしん means L-H-H-H
  • とꜜ means L-Hꜜ-(L) [The (L) means the next sound after ひと will be low. E.g. ひとが (L-H-L)]

For more information see Japanese pitch accent - Wikipedia

Building from source

Build

Requirements:

  • Linux, Windows with Cygwin or WSL (might also work on macOS with a few changes)

  • Kindle Previewer if building on Windows or WSL Kindle Previewer

    • Kindle Previewer has to be added to PATH. If normally installed add it by executing (for this change to take effect, please close all cmd and powershell windows):
    Set-ItemProperty -Path 'Registry::HKEY_CURRENT_USER\Environment' -Name PATH -Value ((Get-ItemProperty -Path 'Registry::HKEY_CURRENT_USER\Environment' -Name PATH).path + ";$env:APPDATA\Amazon")
  • Python version 3

Inside of the makefile you can change the max number of sentences per entry, compression, as well as which sentences to include:

# The Kindle Publishing Guidelines recommend -c2 (huffdic compression),
# but it is excruciatingly slow. That's why -c1 is selected by default.
# Compression currently is not officially supported by Kindle Previewer according to the documentation
COMPRESSION ?= 1

# Sets the max sentences per entry only for the jmdict.mobi.
# It is ignored by combined.mobi due to size restrictions.
# If there are too many sentences for the combined dictionary,
# it will not build (exceeds 650MB size limit). The amount is limited to 0 in this makefile for the combined.mobi
SENTENCES ?= 5

# This flag determines wheter only good and verified sentences are used in the
# dictionary. Set it to TRUE if you only want those sentences.
# It is only used by jmdict.mobi
# It is ignored bei combined.mobi. There it is always true
# This is due to size constraints.
ONLY_CHECKED_SENTENCES ?= FALSE

# If true adds pronunciations to entries. The combined dictionary ignores this flag due to size constraints
PRONUNCIATIONS ?= TRUE

# If true adds additional information to entries. The combined dictionary ignores this flag due to size constraints
ADDITIONAL_INFO ?= TRUE

Build with make to create all 3 dictionaries (Note the combined dictionary will not build with Kindle Previewer due to size constraints):

make

or use any of the following commands to create a specific one:

make jmdict.mobi
make jmnedict.mobi
make combined.mobi

If you build it on WSL the commands are as follows:

make ISWSL=TRUE

or use any of the following commands to create a specific one:

make jmdict.mobi ISWSL=TRUE
make jmnedict.mobi ISWSL=TRUE
make combined.mobi ISWSL=TRUE

Create a Pull Request

Before making a pull request please ensure the formatting of your python code is correct. To do this please install black and run

black .

To do

  • Leverage more of the JMdict data:

    • cross references
  • Add Furigana to example sentences

  • Create better covers

Credits

Alternatives