9 steps to install spellchecker for Kupu editor in Plone CMS in Windows. But this should be also helpfull for Unix-based system users.
I’ve used Windows XP, Zope 2.8.8, Plone 2.1.4. I’ve replaced default kupu product (1.3.8) with the latest version 1.4 beta5. I’ve changed kupu’s code in two places (steps: 6 and 7) but hopefully it won’t be necessary in the future when all my changes would be added to official source code.
1. Install kupu 1.4
Download Kupu 1.4 or later version from Plone Products website. Currently (25.04.2007) latest version is 1.4 beta 5. Unpack tar.gz file and copy to your /Products directory.
2. Install Cygwin and aspell
For spell checking we need aspell. To learn more about this tool visit aspell.net. This is easy to install on Linux but hopefully we can manage it also on Windows. Linux users please skip to the section 5.
The easiest way is to install Cygwin. Installation is pretty straightforward and in case of problems you can read extensive Setup manual. During installation don’t forget to check aspell and your language files.
3. Update system path
After installation we must provide that aspell.exe can be executed from anywhere in the system. That is why we need to edit system PATH variable. Go to Control Panel -> System -> Advanced (tab). Press button Environemnt Variables and modify Path variable. At the end of its string add ; /bin. You can also add here path to your python binary so it will be easier to test it. After doing that restart computer so the new Path value would be used. Attached images should explain everything.
4. Change aspell configuration
I don’t know why but now we cannot use aspell yet because it doesn’t see installed language files. You can change aspell configuration file – which I didn’t do. But I’ve copied files from /lib/aspell to /usr/lib/aspell and that’s it.
5. Test aspell
Now lets test if our istallation is correct. Go to /Products/kupu/python and run
Type existing word – you should see empty dictionary or okay word. On my Windows machine I’ve always got empty dictionary when the word was fine. Then type misspelled word and you will see distionary of possible correct values.
7. Update KupuLibraryTool
After all that changes I’ve finally got this error Error loading data, status 404. Quick look to error_log shows me that there is missing method spellcheck inside KupuLibraryTool class. But there was a CGI method with the same name here /Products/kupu/common/spellcheck.cgi. I’ve copied this method and after few changes it look like this:
from Products.kupu.python.spellcheck import SpellChecker, format_result
def spellcheck (self, REQUEST):
data = REQUEST[ “text” ]
c = SpellChecker()
result = c.check(data)
if result == None :
result = “”
result = format_result(result)
REQUEST.RESPONSE.setHeader( “Content-Type” , “text/xml, charset=utf-8” )
REQUEST.RESPONSE.setHeader( “Content-Length” ,str( len (result)))
8. Enable spellcheck button
Restart Zope or refresh kupu product. Uninstall editor in portal_quickinstaller and install again. Then go to preferences -> Kupu visual editor -> toolbar (tab). Select checkbox spellchecker to enable button.
9. Enable popups in browser