Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

evangw

macrumors regular
Original poster
Feb 9, 2008
220
43
iOS 6 (and above) now allow you to get dictionaries in multiple dictionaries, so this workaround is no longer necessary unless you're on an iPad 1 (other device that does not support iOS 6) or looking for an unusual language that iBooks does not support.

It does not seem like iOS6 uses the same dictionary management as iOS 3/4/5 at all, so the mechanism written below will not work. You will probably also need a jailbroken iOS 6 device to modify anything.

=== For readers on iOS 5 and below ===

Is it possible to get the iBooks dictionary to work in languages other than English? Like can I change it or add on a French dictionary, in particular? Switching to the Collins app every time I want to translate a word is getting irritating.

Yes, it is possible, see below post for how I did it without disrupting the definitions available by default for Japanese and English.


NOTE: YOU DO NOT NEED A JAILBROKEN iOS DEVICE FOR THIS TO WORK, YOU CAN USE iEXPLORER OR SIMILAR.
 
Last edited:
I figured out how to do this successfully, here's a short way to do it for ANY LANGUAGE.

NON TECHNICAL WRITEUP FOR EASY USE; JAILBREAK IS NOT REQUIRED:
1. Download a dictionary for your language of interest. For example, here is a French one (in French):
http://www.etresoft.com/etreref/EtreRef_Dictionnaire-AcademieFrancaise_1935_101.zip. Note, when you install it, it will be found in either /Library/Dictionaries or ~/Library/Dictionaries/

Here are some translating ones to/from German from many other languages:
http://mysite.mweb.co.za/residents/clasqm/mac-os-x-dictionaries/west-european-languages/german.html

And you can look yourself for others. Note that if they are already in Apple's .dictionary format, it will make this process easier.

2. Once you have downloaded the .dictionary file, open it up (mac: right click -> show package contents) then click the Contents folder and look for Info.plist. Open up the Info.plist in TextEdit or a similar text editor. Look for the SECOND line starting something like <string>com...</string>. For the French dictionary linked above, this is: <string>com.etresoft.EtreRef.DAF_1935</string>

Save that somewhere.

3. Open up your iOS device with a file explorer, like iExplorer ( http://www.macroplant.com/iexplorer/ ) for Mac; many equivalents for PC.

Navigate to /Library/Dictionaries/ ---> note this is "Root - Library - Dictionaries"

4. Copy your dictionary file to the Dictionaries folder. You should now see your new dictionary in that folder.

5. Now go to your iOS device (still in iExplorer) and go to your Apps folder and go to iBooks.app. Open the iBooks.app folder which will have MANY files. Look for the file called BKDictionaryManager_LanguageToOrder.plist and copy this to your computer.

6. Open the BKDictionaryManager_LanguageToOrder.plist file in a simple text editor like TextEdit.

You will see something like:

<key>en</key>
<array>
<string>com.apple.dictionary.NOAD</string>
<string>com.apple.dictionary.OAWT</string>
<string>com.apple.dictionary.AppleDictionary</string>
</array>
<key>ja</key>
<array>
<string>com.apple.dictionary.Daijisen</string>
<string>com.apple.dictionary.ruig</string>
<string>com.apple.dictionary.PEJ-PJE</string>
</array>


Here, you need to add a new section depending on your language and the <string> from step 2. For me to add my French dictionary, I add the additional lines after the </array> for Japan (but BEFORE </dict>)

<key>fr</key>
<array>
<string>com.etresoft.EtreRef.DAF_1935</string>
</array>


I now save this file and copy it back to the same folder in iBooks.app on the iOS device where I got it.

7. Your dictionary should immediately begin working. Note: you may need to quit iBooks and relaunch it by double-clicking the Home button, holding down on iBooks.app, and then pressing the red minus sign.

8. Congrats!


NOTES:

1. This method will not affect Japanese or English books/definitions. However, if you want to replace the English or Japanese dictionaries (e.g. you want to translate English into your native language), when you see the line in the LanguageToOrder.plist like:

<string>com.apple.dictionary.NOAD</string>

You should add your dictionary <string> line BEFORE THAT. The dictionary.app on iOS preferentially chooses the FIRST dictionary for a language under each <key>. If it does not find the word in the first dictionary, it goes onto the second, and so forth. Do not delete any old dictionaries or text, just in case you want to go back.

2. If you want to make your own dictionaries, it is unfortunately quite difficult. Furthermore, there is no way to concatenate two dictionaries easily; e.g. you cannot combine a translating dictionary with a real dictionary in any simple method.

3. You can download a wide variety of translating dictionaries from StarDict here:
http://cvsup6.freebsd.org/mirror/FreeBSD/distfiles/stardict/

Unfortunately they must be converted using DictUnifier which only works on OS X 10.5 through 10.7 at the time of writing, though may work for 10.8 eventually. ( http://code.google.com/p/mac-dictionary-kit/ ). To make these, simply drag the .tar.bz2 dictionary file onto DictUnifier and wait for it to complete, then install the dictionary, which you will find in ~/Library/Dictionaries/ and then can copy to your iOS device.

------ "HACKER" METHOD -------

This method is technically more difficult and requires a jailbroken iOS device, so I don't really recommend it, but it's how I did it in the first place. If you know what you're doing it's just as quick as the previous method.

ON YOUR COMPUTER
1. Download or make the dictionary you want. By far the easiest is to download a file already in Apple's .dictionary format, which you can find online in many places [see above]

2. Show package contents on the Apple .dictionary file and look inside the Info.plist for the <key>CFBundleIdentifier</key>
<string>com.apple.dictionary.YOUR_DICTIONARY_NAME</string>

and keep track of the <string>com.apple.dictionary.YOUR_DICTIONARY_NAME</string> line.

3. Copy your dictionary to the iOS device to /Library/Dictionaries/ (you MUST copy as root). E.g. this is syntax like "scp -r YOURDICTIONARY root@XXX.XXX.X.XXX:/Library/Dictionaries/". The default root password is "alpine" and if it is still that, you should change it. Note the "-r" is essential for this copy.

ON YOUR iOS DEVICE
5. Find your iBooks application folder, either by going through all your Application folders one-by-one (if using a browing app) or by typing "find . -name iBooks.app" if you're using CLI. Keep track of that location.

ON YOUR COMPUTER
6. Copy BKDictionaryManager_LanguageToOrder.plist back to your computer, e.g. "scp root@XXX.XXX.X.XXX:/var/mobile/Applications/325187A0ETCETCETC/iBooks.app/BKDictionaryManager_LanguageToOrder.plist ."

7. Open up the BKDictionary... file in a text editor. Make a new language entry for your language, using the correct two letter key (fr is French, de is German; you'll have to figure out the rest).

8. Save the plist and copy it back to your iBooks.app/ from step 5.

9. If iBooks is open, close it, then double-click your home button, hold down on iBooks, then click the red 'minus'. Now re-open iBooks and your new dictionary should immediately start working.

10. If you want multiple dictionaries for a language, then you can do that by adding more ITEMS to the plist, but unfortunately iBooks will default and select the first dictionary and only go onto item 2, 3, etc, if the word you search for is not in item 1. Switching between the two is a PITA since you have to edit the plist.

E: I based my instructions off of this person's tutorial, with some modifications. http://eduworkz.net/Forums/tabid/57/forumid/7/postid/62/scope/posts/Default.aspx
 
Last edited:
Thank you!

Evangw, that was extremely helpful, thank you!

I was wondering though, could it be possible for you to upload the .dictionary zips for both french dictionaries somewhere like megaupload? I haven't got a Mac so I can't use DictUnifier or install the dictionaries. I would appreciate it so much!

Many thanks!
 
Evangw, that was extremely helpful, thank you!

I was wondering though, could it be possible for you to upload the .dictionary zips for both french dictionaries somewhere like megaupload? I haven't got a Mac so I can't use DictUnifier or install the dictionaries. I would appreciate it so much!

Many thanks!

Here you go: http://www.megaupload.com/?d=0G9UOZSG

It contains the last out-of-copyright French Academy Dictionary (1929 or something), and two free dictionaries for English-->French and French-->English (which are pretty terrible but better than nothing).

Everything else you have to pay for, but I can't find even a better pay-for French-->English dictionary (e.g. Collins has an AMAZING translating dictionary for iOS, but I can't find it for OS X).
 
Read first! Please use the appropriate forum or subforum

To help other users find the iPad threads they are looking for, please choose the most appropriate forum for your new thread.
Use iPad Tips, Help and Troubleshooting for troubleshooting and problem-solving. This forum is new and we hope you'll take advantage of it.
Use iPad Accessories for cases, gadgets you connect, etc.
Use iPad Hacks for jailbreaking and customization.
Use iPad Launch Meetups for iPad events.
Use iPad Apps for iPad applications.
Use the main iPad forum for other iPad topics: features, opinions, ideas, speculation, iOS discussion, and so on.
Thanks!
 
Evangw, I can't begin to express how much you have helped me! At long least I have a french dictionary :)

I guess we'll have to wait for Apple to implement multilingual dictionaries, but until then this is quite nice :) Cheers!
 
Did you guys figure out a way to add two dicts for one language ?
e.g. to get definition from both English dict & the French one ?
 
Did you guys figure out a way to add two dicts for one language ?
e.g. to get definition from both English dict & the French one ?

As far as I can tell, the only way to do this is to merge to dictionaries into a single file, so that your definition will have (1) Definition then (2) definition (3) definition etc. I have not done this but would like to. I just followed my instructions again since somehow I lost my French dictionary... all the links and instructions still seem to be working fine.
 
Thank you!!

It took me a while to figure things out and I ended up downloading half a dozen apps to get it right but finally it worked!! Thank you so much!

I wish I could combine French-French and French-English into a .dictionary file.


For those poorly oriented with CLI or command lines, I used SSH and CyberDuck (FTP Server for Mac+Linux, Windows users can use WinSCP) to move around the files and found it much easier. (Instructions here: http://www.iphoneheat.com/2010/05/how-to-ssh-into-ipad-using-winscp-cyberduck-windows-mac/)

I tried using a combination of Terminal, iFile (for Cydia), and iFunBox, but they all seem to have some sort of limitation.

To find the iBook folder, these commands in Terminal worked well once connected with OpenSSH (credits to this guy: http://www.mobileread.com/forums/showthread.php?t=131307) :

> ssh root@192.168.X.X
> root@192.168.X.X's password: **** (like OP said, default is alpine)
> cd /var/mobile/Applications/
> find . -iname "iBooks.app"
> ./03D95CB6-B29E-4326-9BD9-587ADEF6A6AD/iBooks.app
> cd 03D95CB6-B29E-4326-9BD9-587ADEF6A6AD/

Thanks again!
 
Hello,

I was searching for a solution to add an "engl to german dictionary"
to my IPod Touch 4g to use it with ibooks. O.K. I am german :)
Thank you for this thread! :)

So I have the link to stardict: engl to german
http://cvsup6.freebsd.org/mirror/FreeBSD/distfiles/stardict/stardict-quick_eng-deu-2.4.2.tar.bz2

and the program DictUnifier (http://code.google.com/p/mac-dictionary-kit/) to convert the stardict to the Apple's ".dictionary" format.

The only problem is, that I have a windows os and I didn´t find a DictUnifier clone for windows OS. :mad:

Can anybody help me??

Best regards

Martin

P.S.: In the meantime I found some .dictionary-files on
http://mysite.mweb.co.za/residents/clasqm/mac-os-x-dictionaries/west-european-languages/german.html
But "http://dl.dropbox.com/u/1043447/binaries/quick_frank-eng-deu.dictionary.zip" doesn't work.
Maybe these files for "Mac OS X (10.5 "Leopard" to 10.8 "Mountain Lion")" are not compatible for my IPod touch 4G?
 
Last edited:

Hey Martin,

Here's the solution, which will work fine on a PC. Stardict not required.
---------------------------------------------------------

I downloaded the file from http://mysite.mweb.co.za/residents/clasqm/mac-os-x-dictionaries/west-european-languages/german.html for english-deutsch. There are two things specific to your computer, everything else here can be followed verbatim:

My IP address (169.254.79.92) is whatever your iOS device's LOCAL IP address is.
My iBooks folder location (2C1..) you will have to find your own.

-------------- INSTRUCTIONS -------------

The english-to-german dictionary name is: <string>com.apple.dictionary.quick_frank-eng-deu</string>

[on computer using terminal [mac] or cygwin [pc] or other SSH client like CyberDuck]

scp -rp ~/Downloads/english-deutsch.dictionary/ root@169.254.79.92:/Library/Dictionaries/

[on iOS device]
find . -name iBooks.app
--> my result ./Applications/2C1BAB94-AE6D-45A4-BD46-3ECF53513F9B/iBooks.app

[on computer]
scp . root@169.254.79.92:/var/mobile/Applications/2C1BAB94-AE6D-45A4-BD46-3ECF53513F9B/iBooks.app/BKDictionaryManager_LanguageToOrder.plist

[on computer]
open the plist file, add string

<string>com.apple.dictionary.quick_frank-eng-deu</string>

to the first line under <array> under <key>en</key> SINCE YOU ARE TRANSLATING ENGLISH TO GERMAN PUT IT UNDER <key>en</key>, also essential that it is the FIRST line. This will also replace your default English dictionary (unless you delete/comment out this line later)

e.g.

<key>en</key>
<array>
<string>com.apple.dictionary.quick_frank-eng-deu</string>
<string>com.apple.dictionary.NOAD</string>
<string>com.apple.dictionary.OAWT</string>
<string>com.apple.dictionary.AppleDictionary</string>
</array>

[on computer]
scp BKDictionaryManager_LanguageToOrder.plist root@169.254.79.92:/var/mobile/Applications/2C1BAB94-AE6D-45A4-BD46-3ECF53513F9B/iBooks.app/


[on iOS device]
Quit iBooks by double-clicking the home button, then hold down on iBooks until the red minus appears, then quit it. Then relaunch.

Voila! I just tried it and it works great for me. IMPORTANT NOTE: This will REMOVE the English definition of the word from the default apple dictionary (see picture attached). There is no easy way to fix this problem; you would have to make your own dictionary file that included both the Apple dictionary data as well as the translating dictionary data.


-------------
If you want German to English, add a <key>de</key> then treat it the same as you treat the default jp and en languages.
 

Attachments

  • photo.PNG
    photo.PNG
    45.9 KB · Views: 1,252
Last edited:
Thanks

Hello evangw,

thank you very much for your detailed explanation!

Now it is working:
engl => ger
and
ger => eng too :)

IMPORTANT NOTE: This will REMOVE the English definition of the word from the default apple dictionary (see picture attached). There is no easy way to fix this problem; you would have to make your own dictionary file that included both the Apple dictionary data as well as the translating dictionary data.

What a shame :(

Can you explain how to build such a combined dictionary?
(original [engl=> engl] and user defined [engl => ger] dictionary]

thanks in advance

best regards

Martin
 
Can you explain how to build such a combined dictionary?
(original [engl=> engl] and user defined [engl => ger] dictionary]

If you have XCode installed, there is a Dictionary Development Kit. UNFORTUNATELY, I could not figure out any way to 'decode' a previously-constructed dictionary.

What I tried to do was decode my French dictionary and my French-English dictionary into their raw .xml files, then concatenate the two based on definitions, however I could not figure out any way to do this, and making your own dictionary from scratch is (as far as I can tell) pretty time consuming.

If anyone figures it out—or an easy way to switch through dictionaries—I would love to know! If I get super motivated, I'll make a Cydia hack to switch between dictionaries, but don't hold your breath, and it will require jailbreak.
 
Hello evangw,

If you have XCode installed, there is a Dictionary Development Kit.

This tool requires OS X 10.7.4. I am a windows user.

If anyone figures it out—or an easy way to switch through dictionaries—I would love to know! If I get super motivated, I'll make a Cydia hack to switch between dictionaries, but don't hold your breath, and it will require jailbreak.

Maybe this is an alternative:
http://itunes.apple.com/us/app/ireader4study-for-studying/id449499459?ls=1&mt=8

But no trial version available :mad:
 
Hello evangw,

This tool requires OS X 10.7.4. I am a windows user.

Maybe this is an alternative:
http://itunes.apple.com/us/app/ireader4study-for-studying/id449499459?ls=1&mt=8

But no trial version available :mad:

Oops, right. Well, anyway XCode requires a lot of technical expertise.

I just tried the iReaderStudy—it's not very good. Its translating dictionary is as bad as the ones discussed in this thread* (e.g. only does single word translations, does not give a full definition as well) and furthermore it only translates the words into whatever your iPhone's language is set to. So, if you're reading a German book, it will translate to German; reading an English book, it will translate to German, and so forth.

Also the user interface is ugly and much harder to use than iBooks.


*in fact, I bet good money it uses the StarDict translating dictionaries. The Japanese sample it gives is good, but the English -> French dictionary is mediocre.
 
Hi evangw Thank you for this great thread.

I'm like 'jaimefe', I don't have a mac so I can't install any dictionary and I'm desperate for a french dictionary for my ipod touch, could you please re-upload them to one of the still available sharing web sites. I know you did it before on megaupload but you know ...

thank you in advance.
 
Help a beginer!!

Hi evangw Thank you for this great unique thread :)
is there a way to merge Arabic + Italian dictionaries beside the original one from ios 6 ? or at least is there a way to translate from English to Arabic in iBook application on iPhone?
I appreciate your reply.
Thank you, Keep the good work going Man...:)
 
Accessing Root

First of all THANK YOU for this post. I have been hoping to be able to do this for some time (you would think someone would have produced a reader app for this sort of thing by now!)

I am having a problem accessing the root library on my unjailbroken iPad. I downloaded iExplorer and the "Root" icon is not lit up and I can't access it. I am running in Demo mode. So it could be that? But I'm not sure. Anybody else experience this?
 
First of all THANK YOU for this post. I have been hoping to be able to do this for some time (you would think someone would have produced a reader app for this sort of thing by now!)

I am having a problem accessing the root library on my unjailbroken iPad. I downloaded iExplorer and the "Root" icon is not lit up and I can't access it. I am running in Demo mode. So it could be that? But I'm not sure. Anybody else experience this?

What iOS are you running? It works fine in 5.1 and 4.2.3 for me. Haven't downgraded to iOS6 on any of my devices yet... will try whenever my iPhone 5 arrives.
 
It's an iPad 2 running on iOS 6.

When I open in iExplorer the "Root Folder" is visible but unhighlighted and I can't click it.

Any thoughts?

Thanks so much!
 
It's an iPad 2 running on iOS 6.

When I open in iExplorer the "Root Folder" is visible but unhighlighted and I can't click it.

Any thoughts?

Thanks so much!

It's possible / likely that Apple has closed what they considered a security hole, or that iExplorer has just not been updated to work 100% with iOS6. I'll get back to you in a few weeks when my phone gets here. It's not due to iExplorer demo mode, as I also did not purchase it and it still works fine for me on both iOS4 and 5.

Otherwise, if you saved your shsh blogs for iOS4, you might consider upgrading back to that, unless you actually use any of the very few features offered by iOS5/6.
 
It's an iPad 2 running on iOS 6.

When I open in iExplorer the "Root Folder" is visible but unhighlighted and I can't click it.

Any thoughts?

Thanks so much!

Got my iPhone 5 a couple days ago, but sorry, seems there's no way to do this on iOS6 at the moment. I will see if I can figure out a workaround, but in 30 minutes I haven't figured anything out.

You'll probably just have to wait for a jailbreak, or change back to iOS4 if you can do that. I'm running iOS 4 on my iPad 2 and iOS 5 on my iPhone 4, and iExplorer is still working fine for both.
 
Got my iPhone 5 a couple days ago, but sorry, seems there's no way to do this on iOS6 at the moment. I will see if I can figure out a workaround, but in 30 minutes I haven't figured anything out.

You'll probably just have to wait for a jailbreak, or change back to iOS4 if you can do that. I'm running iOS 4 on my iPad 2 and iOS 5 on my iPhone 4, and iExplorer is still working fine for both.

Hi, first of all congratz with your new iPhone 5.
But I'm having a problem using this method. I am a ios6 user on my iPod touch 4g and I am running a tethered jailbreak, so I have no problem getting into the root directory using iexplorer. But I can't seem to find the dictionaries folder anywhere. What should I do?
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.