For a number of reasons, I have acquired many Bible study resources that are chm files (Microsoft Compiled Help format). They all worked great in Windows but when I switched to Ubuntu the troubles began. Using ChmSee many fonts didn’t display properly, things were even less pleasant in xchm. Both applications had difficulty with rendering frames properly. Life wasn’t a lot better with kchmviewer; rendering with the QTextBrowser-based widget wasn’t any improvement and KHTMLPart-based widget failed with an error message. It complained about not being able to find the ms-its protocol. Searches to find a resolution for the problem turned up little helpful information but I eventually managed to turn up the name of the missing file and its expected location. From there some geeky kind of sleuthing resulted in a solution. Yay! Even better, kchmviewer using the KHTMLPart-based widget has by far done the best job of rendering chm files with frames as well as Greek and Hebrew fonts either assigned in the individual pages or using style sheets.
So for those of you who are still searching for a solution, here’s what I did on Kubuntu Maverick 10.10.
The six files you need are: ms-its.so, okularGenerator_chmlib.so, libokularGenerator_chmlib.desktop, msits.protocol, okularChm.desktop, okularApplication_chm.desktop. Reportedly they are included in the okular-extra-backends-kde4. They were nowhere to be found in the Maverick version of the package but they ARE included in the package for Hardy (8.04LTS). I went here: http://ns2.canonical.com/hardy/okular-extra-backends-kde4 and downloaded the package for my architecture. I did NOT install the package since I didn’t want to downgrade support for other filetypes. Instead, I extracted the needed files and moved them to the proper locations.
Once you download the package, use Ark or its equivalent to open it; you’ll probably have to tell Ark that it is trying to open a tar archive. Extract at least the five files you need, then open dolphin with administrator rights; Alt-F2 and the command ‘kdesudo dolphin’ without the quotes will get you there. Then move the files to these locations:
ms-its.so and okularGenerator_chmlib.so to /usr/lib/kde4
libokularGenerator_chmlib.desktop, msits.protocol and okularChm.desktop to /usr/share/kde4/services
okularApplication_chm.desktop to /usr/share/applications/kde4
Following these steps allowed me to change the setting in kchmviewer to use the KHTMLPart-based widget and not get errors. Perhaps not all the files are necessary but they didn’t break anything and kchmviewer does what I need it to.