Tips & Tricks

1. How to make FCKeditor (almost) WYSIWYG
2. How to configure spell checker

How to make FCKeditor (almost) WYSIWYG

When using cutom theme, sometimes it is necessary to tell FCKeditor to use the correct style.
Let's use as example the marinelli theme.

By default, it is hard to create a page with FCKeditor: background color used by site and font color are too similar and it's very hard to read anything, text is aligned to the center:

Fortunately, there is a way to tell FCKeditor to appear just like we expect.

Take a look at the source of marinelli template (you may use Firefox with Firebug to do that). The ID of main element is called "primary". The class is named "singlepage".

All we need to do is to tell FCKeditor to use that styles:

  • Edit FCKeditor profile, in the "CSS section" choose use theme css
  • In modules/fckeditor/fckeditor.config.js, add the following:
    FCKConfig.BodyId = "primary";
    FCKConfig.BodyClass = "singlepage";
    
  • Now our body inside of the FCKeditor gets the right ID.
  • Well we still have the wrong background and text alignment. To fix this, add another line in fckeditor.config.js:
    FCKConfig.EditorAreaStyles = "body{background:#FFFFFF;text-align:left;}";
    
    in newer versions of marinelli theme we may also need to adjust the font size, so if you need to, use the following code instead:
    FCKConfig.EditorAreaStyles = "body{background:#FFFFFF;text-align:left;font-size:0.8em}";
    
  • Remember to clear your browser's cache after applying changes to javascript files.

 

How to configure spell checker

  • Choose which spell checker do you want to use. Basically, you have two choices: ieSpell and Speller Pages. IeSpell  is quite simple and efficient, but it runs on IE/Windows only. Speller Pages is a free, Open Source, server side spell checker that uses the powerful GNU Aspell engine for the hard work.

    Choose one of them and in fckeditor.config.js tell FCKeditor to use it (add one of the following lines at the end of file):
    FCKConfig.SpellChecker = 'ieSpell' ;
    //or
    FCKConfig.SpellChecker = 'SpellerPages' ;
    
    More information about ieSpell and Speller Pages / Aspell installation can be found in the FCKeditor documentation.
  • [Speller Pages only] After you have succesfully installed Aspell, locate the spellchecker.php (should be located here: modules\fckeditor\fckeditor\editor\dialog\fck_spellerpages\spellerpages\server-scripts\spellchecker.php) and set the $aspell_prog variable to the aspell executable. In windows it should be something like:
    $aspell_prog    = '"C:\Program Files\Aspell\bin\aspell.exe"';
    
    In linux:
    $aspell_prog    = '/usr/bin/aspell';
    
    however in some cases this setting should also work:
    $aspell_prog    = 'aspell';
    
  • FCKeditor now knows which spell checker it should use, but we still need a button to be able to use it. FCKeditor toolbars for Drupal don't have by default the 'SpellCheck' button added. To enable 'SpellCheck' button, you have to add it by yourself in fckeditor.config.js (you may need to clear browser's cache to see changes).
    For example, find a line:
    ['Cut','Copy','Paste','PasteText','PasteWord'],
    and add SpellCheck button at the end:
    ['Cut','Copy','Paste','PasteText','PasteWord','SpellCheck'],
  • That's all! You should be now able to use spell checker inside of FCKeditor, enjoy ;-)
  • Hint for Firefox users: there is one more configuration option available. This option enables the Firefox built-in spell checker while typing. See the FirefoxSpellChecker documentation. To enable it, add
    FCKConfig.FirefoxSpellChecker = true ;
    to fckeditor.config.js

To see how FCKeditor works, add a comment on the first page.

Please use comments below only to leave your opinion and any other suggestions you might have on the subject.

 

Comments

No personal dictionary

Until FCK allows a personal dictionary, it will be less than marginal.  The dictionary is so limited, FCKeditor is not even included.

Apologies, Im just testing.

 Is this how it's actually really going to look?

test comment

fckeditor does not work with advanced forum..

Works fine

Works for me...

I have the FCKeditor working in Advanced Forum... www.mormonzeitgeist.com

Best,

DropSys

Error: Word Frame Not Available

I've gone through the insallaiton several times and I ahve the spell check buttons appearing correctly but when I attempt to use it I receive no results and any button returns an error of "Error: Word Frame Not Available". Any ideas on what would be causing this?

Drupal 6.x FCKeditor 6.x-2.0-alpha5

Thanks!

 

gfbbbcvbvc

CKeditor functionality in comments in this demo site is limited. In fact, you can do with FCKeditor much more than it is shown here - take a look at FCKeditor demo to have an overview of all available features. If you are wondering why the toolbar is reduced and some buttons are missing, take a look at an article about configuring input formats. Remember that you don't have to use all features that FCKeditor offers, you can disable any button you want and make it lightbcbbvcbvcbvbcbvcvcbvcbvbvvb

 

Drupal 6.4 doesn´t seem to work

I used this solution in Marinelli with Drupal 6.1 - after upgrading to 6.4 it doesn´t seem to work anymore. Did exactly the same - is there anything else I have to take into account?

Did you overwrite fckeditor.config.js?

I'm using Drupal 6.4 and marinelli-6.x-1.9 and it works for me.

I have this at the end of my fckeditor.config.js:

FCKConfig.BodyId = "primary";
FCKConfig.BodyClass = "singlepage";
FCKConfig.EditorAreaStyles = "body{background:#FFFFFF;text-align:left;}";

Good - that seems to work

Good - that seems to work for Filtered HTML input too. Do you know how to sort out the indent and justification problem (buttons don't work/doesn't show till saved) while editing using Filtered HTML?