One very common complaint I hear is that there is no spell checker built into any of the several DIFFERENT rich text editors that appear in SharePoint. The one used in the Content Editor web part is different from the one in the portal listings form is different from the one in the add/edit list item form, etc. How could the same company that makes a wonderful spell-checker available in its Office suite completely drop the ball in what it markets as its new flagship Office product? And what's with all the different rich text editors, anyway? Most people I know just use Word to type up whatever copy they want to put in their site, then copy and paste that text into the appropriate editor. This is all fine and good, but believe it or not, it's just too hard or complicated for some people to do.

Last night I found a great way to get around this little problem, right here in my new GeeksWithBlogs blog. In the rich text editor control on the add/edit post/article form there's a button for spell checking. This button calls a JavaScript that fires off an IE plug-in called ieSpell. If you don't have ieSpell installed, it asks you if you'd to go to the ieSpell web site to download the plug-in. I did, and boy am I glad. This nifty little plug-in checks the spelling in any textbox or text area in any web form displayed in your IE browser window. And since it's application independent, any words you add to your personal dictionary are preserved across web applications. I can check spelling in my blog, my Amazon.com order form, or when renewing my driver's license. (Somebody remind me to do that, by the way. Mine expires at the end of the month.) This also means you can check your spelling in most SharePoint forms with a single click, or a maximum of two. I tried it out on several SharePoint forms, and I was delighted to find it worked great. Then I tried the Content Editor web part's rich text editor. Kaboom! The button that opens the rich text editor pops open a new window with no toolbar or address bar. The calling window is deactivated, and you can't right-click to call ieSpell, either. Damn.

But wait, there's hope. I closed the rich text editor window and viewed the source of the page I was on. A quick Ctrl-F revealed that clicking the “Rich Text Editor...” button opens and sizes a new window pointing to /_layouts/1033/htmledit.aspx. Could this page be modified to allow for a shout out to ieSpell, or is the rich text editor buried in an inaccessible hive of .NET server controls? Well, it just so happens this page is wide open, baby.

So, if you haven't clicked one of my 50 links to ieSpell yet, do it now and get it. But open the link in a new window so you can keep reading my blog, of course! Once you've installed ieSpell and satisfied your curiosity by trying it out, find htmledit.aspx in your front-end SharePoint server's file system in ...\60\TEMPLATE\LAYOUTS\1033. Open that for edit, and add the following script with the other DECMD-prefixed functions:

function DECMD_SPELLCHECK_onclick() {
 try {
  var tspell = new ActiveXObject('ieSpell.ieSpellExtension');
  tspell.CheckAllLinkedDocuments(window.document);
 } catch (err){
  if (window.confirm('You need ieSpell to use spell check. Would you like to install it?')){window.open('http://www.iespell.com/download.php');};
 };
}

After you've put the necessary JavaScript in place, it's time to add the image the user will click to fire up the spell checker. I just found the last image, the one for indenting, and copied its HTML, changing the onclick event handler function call to my own. After you test it, you can go back and add a spell-check image and rollover image to the LAYOUTS\IMAGES directory, and swap those out for the indent images on your new button.

And that's all there is to it, thanks to a great little plug-in I can't believe I ever lived without. Give it a try. I'm sure you'll enjoy it. Happy SharePointing.

Please note that I have no affiliation with ieSpell or those to whom the intellectual property belongs. And be sure to be honest with the licensing. The only reason any of us have jobs is that people are willing to pay for products they find useful.