Create your own Kindle dictionary for every language for free


Share

Not everyone is happy with the Oxford Dictionary delivered on Amazon’s Kindle. I will show you how to create your own free Kindle dictionary for every language. All you need comes free (and totally legal) from open sources.

Advantages

  • you don’t have to install any software, no Python stuff, no big generator installations.
  • you can chose every language you like as long as there are database sources in text format available (the common download format for it in the internet)
  • it only takes about 30 minutes to generate a dictionary with 800.000 entries

What we need

  • a dictionary database in tab delimited file format (<word>TAB<translation>). I advice you to download a fresh one from dict.cc which as to my experience currently has the biggest free (for personal use) database and the widest selection of languages. Name the file “dict.txt
  • The following package of files to generate a opf file
  • The newest version of Amazon’s mobigen to generate the dictionary itself in the final step

Step by Step instruction

1. Unpack and open the downloaded file with an text editor (not with a word processor). You should give notepad++ a try.

2. Delete the comment header and the empty line at the beginning of the file.

3. Put all the files (dict.txt, package files and mobigen.exe) together in one folder

4. Open a command line window and execute the following command:

tab2opf.exe dict.txt

This generates dict.opf and a bunch of html files. It will take about 5-10 minutes depending on your machine.

5. Generate a 600×800 pixel sized cover image (cover.jpg) or you will get a warning message. Take an empty picture if you are not in the mood for drawing.

6. Open the new dict.opf with the editor and change/edit the title and input respectively output language (e.g. en or de). You can edit additional meta data (information link below) to your needs as well. Insert information for a cover:


<meta name="cover" content="my-cover-image" />

...

<manifest>

...

<item href="cover.jpg" id="my-cover-image" media-type="image/jpeg" />

...

</manifest>

6. Back to the command line:

mobigen.exe dict.opf

This generates the dictionary dict.mobi. It will take about another 5-10 minutes. You can ignore the warnings, it will still work. If you want to get rid of the warnings and generate a dictionary with cover, title page and an instruction have a closer look at my screen shot where indicated yellow.

Installation on your Kindle:

  • Transfer the generated file (dict.mobi) to the documents folder on your Kindle
  • Press Menu
  • Select Settings
  • Press Menu again
  • Select Change Primary Dictionary
  • Select your new dictionary

You can find more information on this topic here:

14 Kommentare zu „Create your own Kindle dictionary for every language for free“

  • pnt:

    I have utf-8 txt file in Serbian language, bat after compailing lost caracters.

    • Have a close look at what the kindle compiler is printing out.
      It should work, I use UTF-8 for German language also.
      But you have to make sure that EVERY file is UTF-8

  • Habit:

    Wow, this works. Thank you very much!!! Is it possible to remove the pagebreak after each entery? Remove the ?

  • emilio:

    thanks for this tutorial, it works, however I only get one word-pair on every page in my kindle, is there any possibility to sort it out?

  • irinabv:

    Hi,
    I have an error in the command window to execute command <>

    ” Traceback :
    File “tab2opf.py, line 240, in
    ValueError: need more than 1 value to unpack”

    Please tell me what am I doing wrong…
    thanks, Irina

  • irinabv:

    Hi,
    I have an error in the command window to execute command “”tab2opf.exe dict.exe”"

    ” Traceback : (most recent call last):
    File “tab2opf.py”, line 240, in (module)
    ValueError: need more than 1 value to unpack”

    Please tell me what am I doing wrong…
    thanks, Irina

    • Peter:

      I got the same error.

      tab2opf did stop somewhere at first letter N. This happens if there is no translation available, just one word in the line.
      The error message “need more than 1 value to unpack” tries to point it out.

      tab2opf shows the last successful word before the error occurs. Search this word in the dict.txt file and the next line should be causing the problem. Delete this line.

  • selim:

    Thank you for this tutorial. You made it much more easier without phyton stuff. But I ma having some weird problem. I’m trying to make a Japanese-Engish dictionary, my dictionary data is delimited and saved in utf-8 but when I run tab2opf.exe, instead of Japanese characters, only weird numbers shows up. Do you know the problem?

    • RW:

      I’m having the same problem with a Japanese-English dictionary. Has anyone found a solution?
      Thanks.

  • Andrey:

    Open dict.txt and search for the last printed word before the error.
    Next to it there will be some text that is not following the pattern – remove it. Example:

    aaa noun bbb
    noun
    ccc verb ddd

    I removed separate ‘noun’ from a single line and saved the file.