If an offline spell checker functionality is needed, you can download JSpell Evolution AJAX Spell Checker from http://www.jspell.com/ajax-spell-checker.html.
It may be desirable to install an offline spell checker for one of the two reasons:
- If you need to install custom dictionaries/thesaurus
- You are behind a firewall that prevent the application from accessing URLs outside the application's domain
Install JSpell Evolution AJAX spell checker
Here are the steps to install JSpell Evolution AJAX spell checker:
- Extract the downloaded file jspellevolutionw.zip and execute jspellevolution_0811c.exe.
- Click Next on the welcome screen of the installation wizard.
- Select Enter a License Key radio button and enter the license key in the box. Click Next.
- In the next screen, choose your web server from the list. In our case, choose Microsoft IIS (ASP.NET 2.0+). Set the Web server port to 80 and make sure that the checkbox is enabled for Install the JSpell service. Click Next.
- Specify the path to install JSpell Evolution and click Next. You can leave this at default.
- Next, you must specify your website document root. Click Browse.
- Browse and select C:\Inetpub\wwwroot since we are using Microsoft Windows IIS. Click OK and then Next. Click Next again.
- Click Finish to complete the JSpell Evolution setup.
- Open the file "web.config" using Notepad or a suitable text editor, add the below line in the <appSettings> section, and save it.
- Ensure that the JSpell service is running in the following way:
- Run "services.msc" (click Start -> Run or Windows + R keys together, type "services.msc" in the Run dialog box, and click OK). Ensure that the Status shows as Started and the Startup Type is Automatic.
- If you don't see as above, then right click JSpell in the list and click Properties to open the JSpell Properties window.
- Select Automatic from the Startup type dropdown and click the Start button under Service status.
- This will start the JSpell service and set it to start automatically at Windows startup.
- Grant the user "Network User" read/write access to the "lexicons" folder in the "JSpell Spell Checker" directory (usually "C:\Program Files (x86)\JSpell Spell Checker\lexicons"). This is necessary to be able to save custom dictionaries (exclusions) to be used with JSpell. This can be done as below:
- Navigate using Windows file Explorer to the "JSpell Spell Checker" folder (usually C:\Program Files (x86)\JSpell Spell Checker), right click the "lexicons" folder inside it, and click Properties.
- Click Security tab in the folder Properties window that opens, and click Edit button.
- Click Add in the Permissions window that opens next.
- Type "Network" in the Select Users or Groups window and click Check Names.
- Select NETWORK SERVICE in the Name (RDN) list and click OK.
- Click OK in the Select Users or Groups window.
- Make sure that the NETWORK SERVICE user is selected in the Group or user names list of the folder Permissions window, and check the checkbox for Write permission in the Permissions list near the bottom of the window. Click OK. Click OK again.
Check if JSpell works with the custom dictionary
- Log into ExamDeveloper as a Manager and navigate to Manage -> Settings -> Dictionary.
- Add non-dictionary words in the custom dictionary as detailed here Setting up a Dictionary for your Project and save.
- Navigate to Develop Questions -> Write Item -> Write Question and enter one of the saved non-dictionary words from step 2 in a TinyMCE window such as the Question Stem.
- Click the Check Spellings tool in the TinyMCE toolbar.
- If JSpell works as expected with the custom dictionary, then you will get a popup message stating "No Errors Found" as shown below.
- When a non-dictionary word, not present in the custom dictionary, is entered in any TinyMCE window and the spell checker is run, then the font color of the concerned word will appear red and it will be underlined. A Spell Checker box will open with various options as shown below.
You can opt to switch the spell checker later if required as detailed here Switching the spell checker dictionary.