Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Multiple text edits: verified and rewrote steps in section 5, added screenshots, revised and edited the contents of other sections.

1. Overview

The User Dictionary is a special functionality that is aimed at the end users of web-based system where the WebSpellChecker products are integrated. It allows each end user to create personal dictionaries with custom words (complex words, acronyms, proper names etc.) and use them while working with the system. Going further, all the words added to a personal dictionary will not be considered as misspellings, and they will also be available in the suggestions list

By default, all words added to the personal dictionary are stored in the browser local storage on the user side. As soon as the user creates a new dictionary, all new words and the words from the browser local storage will be added to this dictionary and stored on the system server. It allows the user access this personal dictionary from different browsers and machines (or devices) while working with the system. Thus, users are not limited by one particular browser on their side as in case with the words stored in the browser local storage.



Panel

Table of Contents
maxLevel2
stylenone


2. User

Dictionary User Interface

Dictionaries UI Overview

2.1.

User Dictionary Interface in WProofreader

 Accessing Personal User Dictionaries and Adding New Words in WProofreader

To access personal user dictionaries: 

  1. Locate the orange badge in the lower-right corner of your web application with integrated WProofreader and hover your mouse over it.

  2. In the menu which appears, click a button with gears. 

  3. In the WProofreader dialog which opens, navigate to the  the WProofreader Settings > Dictionaries options group. 

Image Added


The personal user dictionary can be managed via simple user interface of the Settings dialog on the Dictionary tab. It allows users to create personal dictionaries with custom words (complex words, acronyms, proper names etc.) and use them while working with the system. All the words added to a personal dictionary will not be considered as misspellings and these words will also be available in the suggestions list. The user has the ability to look through the full list of the words that have been added to this dictionary and also manage the words from a simple user interface. The words can be added either from the context menu Add word or directly on the Dictionary tab.

Dictionary preferences

Accessing Personal User Dictionaries and Adding New Words in SCAYT Plugin for CKEditor 4

To add the words By default all the words added to the personal user dictionary are stored in the browser local storage on the user side. As soon as the user creates a new dictionary, all new words and the words from the browser local storage will added to this dictionary and stored on the system server. It allows the user to use this personal dictionary from the different browsers and machines (or devices) while working with the system. Thus, users are not limited by one particular browser on their side as in case with the words stored in the browser local storage.

3. Predefine

in SCAYT plugin for CKEditor 4:

  1. Click the Check Spell as You Type button on the toolbar and then click Dictionaries.

  2. In the SCAYT dialog which opens, click the Dictionaries tab. 

  3. Type the new dictionary name and click either Create button to create a brand new dictionary or click Dictionary Preferences, and then click Connect to connect with already existing server user dictionary. 
    Now all new words are added to the server personal user dictionary which is shared between the web application users or new words are added to the already existing predefined dictionary.

SCAYT Plugin for CKEditor 4 Dictionaries tabImage Added

3. Using Predefined User Dictionary in Web Application

You have an option to set a predefined User Dictionary on your web-page for a particular editable element. With such an approach all the words added using Add word by your end users will be saved and stored in the dictionary that you predefined. Just specify a necessary User Dictionary parameter and set your predefined dictionary as a value.


Product Integration

User Dictionary Parameter

SCAYT plugin for CKEditor 4

scayt_userDictionaryName

WSC plugin for CKEditor 4

wsc_userDictionaryName

SCAYT plugin for Froala EditoruserDictionaryName

WProofreader

userDictionaryName

For example, to predefine  a personal user dictionary in WProofreader, follow the procedure described below:

     1. Initialize WProofreader using the procedure described in this section.

     2. Specify additional option in the config userDictionaryName as shown in the script below.
Code Block
languagexml
themeEmacs
<script> window.WEBSPELLCHECKERCONFIG = 
			{ .... userDictionaryName: ‘predefineduser_dictionary’

			}; 
</script>

     3. To disable the dictionary preferences UI for your web application users (see the picture below), specify the  disableDictionariesPreferences option as true as shown in the script

Image Added


Code Block
languagexml
themeEmacs
<script>
    window.WEBSPELLCHECKER_CONFIG = {
        ....
		userDictionaryName: ‘predefined_user_dictionary’,
		disableDictionariesPreferences: true,
		...
   };
</script>

4. Administrate User Dictionary on Server

The Server version of the WebSpellChecker application provides a list of options for advanced User Dictionaries administration. 

4.1. Location of User Dictionaries on Server

All the created personal user dictionaries are saved and stored on the server where the WebSpellChecker application is installed and running. These dictionaries are saved as simple text files in *.txt format with UTF-8 encoding. 

Excerpt Include
IN:_include_wsc500_user_dictionary_folder
IN:_include_wsc500_user_dictionary_folder
nopaneltrue

4.2. User Dictionaries Web API Commands 

There is a list of the Web API commands available that allows administrators of the application to operate the User Dictionary functionality. The full list of Web API commands for User Dictionary can be found in the Using WebSpellChecker Server Web API#4.UserDictionaryCommand manual.

5.

Setup

Set up User Dictionary on a Remote Server 

There is a special mechanism available for the User Dictionary functionality which allows working with personal user dictionaries on the environment running under a load balancer. It is aimed at synchronizing the work of the User Dictionary functionality among a number of the WebSpellChecker application servers running at the same time. 

In a nutshell, with such an approach, one of the WebSpellChecker application servers should be defined as a User Dictionary Server. All personal user dictionaries created by end users will be stored only on this particular server. The rest WebSpellChecker application servers will be considered as User Dictionary Clients which will access a defined User Dictionary Server in case of any operations with User Dictionary functionality.

This approach can be easily configured in your environment. Just follow the step-by-step instructions below.

Step 1.  Define and Configure User Dictionary Server

On this step you need to appoint assign a User Dictionary Server role to one of the WebSpellChecker application servers. The rest application servers will be User Dictionary Clients that will be connected with the appointed assigned User Dictionary Server. Here are steps that needs need to be performed to configure a User Dictionary Server.

Stage 1: Edit in AppServerX.xml file to specify a unique port number for a personal user dictionary server.

Open 

To do so:

1. Stop AppServer before editing the AppServerX.xml file. To do so, refer to Main AppServer Commands guide, Stop AppServer section.

2. Open <WebSpellChecker_Installation_Path>/AppServer/AppServerX.xml of the WebSpellChecker application server that will be used as a User Dictionary Server address.

3. Locate the <Port> tag and change the default port value to any available (e.g.

 2882

2882) as shown below.

Code Block
languagexml
themeEmacs
<Port>2882</Port>
Open

4. Start AppServer. To do so, refer to Main AppServer Commands guide, Start AppServer section.

Stage 2:  Edit the ssrv.ini file. To do so:

1. Open the <WebSpellChecker_Installation_Path>/WebComponents/WebInterface/script/ssrv.ini file.

2. Locate appserver_port parameter and change the default port value to

2881

2882 (the same as on the previous step). 

Code Block
languagexml
themeEmacs
appserver_port = 2881
  • As soon as the modifications are completed, you are required to restart the WebSpellChecker application server (AppServer) for the changes to take effect.
Expand
titleClick here to see how to restart AppServer on Windows-based environments...
Excerpt IncludeIN:_include_stop_appserver_windowsIN:_include_stop_appserver_windowsnopaneltrue Excerpt IncludeIN:_include_start_appserver_windowsIN:_include_start_appserver_windowsnopaneltrue Expand
titleClick here to see how to restart AppServer on Linux-based environments...
Excerpt IncludeIN:_include_stop_appserver_linux
288

3. Restart your web or Java application server after the changes made to the ssrv.ini file

IN:_include_stop_appserver_linuxnopaneltrue Excerpt IncludeIN:_include_start_appserver_linuxIN:_include_start_appserver_linuxnopaneltrueAlso, due to changes in the ssrv.ini file, it is also recommended to restart your Web/Application Server

.

Step 2. Configure User Dictionary Clients

As soon as the User Dictionary Server is defined, the next step is configure other application servers that will be considered as User Dictionary Clients.

  • Stop AppServer before editing the AppServerX.xml file. To do so, refer to Main AppServer Commands guide, Stop AppServer section.
  • Open <WebSpellChecker_Installation_Path>/AppServer/AppServerX.xml of each application server that should work as a User Dictionary Client.
  • Locate the <UserDictServers> tag.
  • In the tag, set the <EnableUserDictServer> tag value as true and specify the default <UserDictHost> tag providing an IP a host address and port number of a designated User Dictionary Server.
Code Block
languagexml
themeEmacs
<UserDictServers>
	<EnableUserDictServer>true</EnableUserDictServer>
    <UserDictHost>127.0.0.1:2880<2882</UserDictHost>
</UserDictServers>
Excerpt IncludeIN:_include_stop_appserver_windowsIN:_include_stop_appserver_windowsnopaneltrue Excerpt IncludeIN:_include_start_appserver_windowsIN:_include_start_appserver_windowsnopaneltrue Expand
titleClick here to see how to restart AppServer on Linux-based environments...
Excerpt IncludeIN:_include_stop_appserver_linuxIN:_include_stop_appserver_linuxnopaneltrue Excerpt IncludeIN:_include_start_appserver_linuxIN:_include_start_appserver_linuxnopaneltrue
  • As soon as the modifications are completed, restart the WebSpellChecker application server (AppServer) for the changes to take effect.
Expand
titleClick here to see how to restart AppServer on Windows-based environments...
Note

Actions described in Step 2 must be performed for each copy of the WebSpellChecker application server which is working as Personal User Dictionary Client.

Step 3. Verify Work of Remote User Dictionary

Follow the steps below to verify the work of the remote User Dictionary Server.

  • Go to WebSpellChecker Samples shipped with the installation package: http(s)://your_host_name:port_number/wscservice/samples/
  • Open any demo sample, e.g. SCAYT for Content Editable tagsWProofreader for Rich Text Editors, for example, CKEditor 4 with Proofreader.
  • Create a sample user dictionary. Open the SCAYT context menu and go to Settings –> Dictionaries tab –> Dictionary Preferences –> Create a new user dictionary named “Test”dictionary and add some words to this dictionary. To do so:  
    • Locate the orange badge in the lower-right corner of your web application with integrated WProofreader and hover your mouse over it.
    • In the menu which appears, click an icon with gears.
    • In the WProofreader dialog which opens, navigate to the Dictionaries options area, type a new dictionary name, for example, “Test” and click Create.
    • In the Add new word area, type some words to be added to this newly created personal user dictionary and either press Enter or click theAdd word button.
  • Go to User Dictionaries folder (UserDictionaries) of each copy of the WebSpellChecker application server that is configured as a User Dictionary Client. This folder shouldn't contain a newly created user dictionary named “Test” .  Excerpt IncludeIN:_include_wsc500_user_dictionary_folderIN:_include_wsc500_user_dictionary_foldernopaneltrue
  • Go to User Dictionary folder (UserDictionaries) of the WebSpellChecker application server which is set as User Dictionary Server. This UserDictionaries folder must contain the newly created dictionary named “Test”. Moreover, you may add several words to this user dictionary via user interface and after that verify that those words are recorded in the saved user dictionary “Test”.
  • and words you have added to it.