Update Language Configurations

A language configuration is a group of settings that influences checking in a particular language. You can update these components in the language configuration file and the Dashboard. Language configurations include settings for components of your guidance package such as terminology, style and grammar checking, and Reuse. When you make changes to any of these components, you must reload the relevant language configurations so that your changes are available for checking. If you have allocated several language servers to one language, you must reload the language configuration on each language server.

Reloading Language Configurations

If you have the user privilege Reload language configuration, you can reload language configurations to make the changes to your guidance package available for checking. You can reload configurations for individual language servers or for all language servers.

To reload the language servers:

Open the Servers page.

  • Click Reload Language Configuration next to an individual language server to reload the language configuration on that server.
  • Click Reload All Language Configurations to reload all the language configurations on all language servers.

Configuring Language Servers to Reload Simultaneously

By default, language servers reload language configurations one at a time. If you have several language servers you can make the loading process faster by configuring language servers to load language configurations simultaneously.

Before you use this configuration, ensure that your hardware is capable of reloading language servers simultaneously. Use this configuration only if your computer has a dedicated CPU for each configured language server.

To configure language configurations to reload simultaneously, follow these steps:

  1. Open your overlay of the core server properties file.

    You find the overlay for the core server properties file in the following location:

    %ACROLINX_CONFIGURATION_ROOT%\server\bin\coreserver.properties
  2. Add the following property:

    maxParallelResourceLoadRequests=<NUMBER>

    For example, if you add the property maxParallelResourceLoadRequests=3, the core server loads the first three language servers simultaneously. Any remaining language servers are loaded one at a time.

  3. Save your changes and restart the core server.

Disabling the Sequential Reloading of Language Servers

You disable the sequential reloading of language servers to ensure that all users get the same checking results when checking with multiple language servers. However, users must wait until all relevant language servers have reloaded before they can run checks.

Sequential reloading ensures users can still check when a language configuration is being reloaded on several language servers. If you disable sequential reloading, language servers are still loaded one at a time, but the core server waits until the last language server has reloaded before making the language servers available for checking again.

To disable the sequential reloading of language servers, follow these steps:

  1. Open your overlay of the core server properties file.

    You find the overlay for the core server properties file in the following location:

    %ACROLINX_CONFIGURATION_ROOT%\server\bin\coreserver.properties
  2. Add the following property:

    serializedResourceReloading=false

    When this property isn’t present, the default is: true

  3. Save your changes and restart the core server.

Allocation of Language Configurations

The number of language servers is defined during the installation procedure. The installer then creates numbered language servers which are devoid of any language configuration until they’re started. The core server initially loads all language configurations. The configurations are then allocated to the language servers when they start up and register with the core server. The sequence in which language configurations are allocated depends on two things:

The Startup Order of the Language Servers.

Since there are many ways to start the language servers, they may not always start in a numerical sequence from 01 upwards. A language server may not always receive the same language configuration each time.

The Order of Language Configurations in the Master Language Configuration File

In the master language configuration file, each language configuration is given a name which is by default, a two letter abbreviation of the language. The configuration names are then listed in the order that the core server should load each configuration. If there are more language servers than configurations, the core server cycles through the list again.

Example

Suppose you’ve defined three language servers during installation, and have two alphabetically ordered language configurations (de and en) listed in your master language configuration file.

If you start language servers 01, 02, and 03 in numerical order:

  • LS 01 receives the de configuration
  • LS 02 receives the en configuration
  • LS 03 also receives the de configuration

If you stop all language servers, and restart LS 02 first, it receives de configuration instead of en.

Adjusting the Allocation of Language Configurations

You can change how language configurations are allocated to each language server by editing the master language configuration file. You might update the allocation of language configurations to dedicate more system resources to a specific language. For example, if you have three language servers, you could allocate English to the first two servers and Japanese to the third language server.

To change the order of language configurations, follow these steps:

  1. Open your overlay of the following file: configurations.properties.

    If you haven’t yet created an overlay of this file, create a new version of the file at the following location:

    %ACROLINX_CONFIGURATION_ROOT%\data\
    

    Don’t edit the installed version of the file. Instead, always edit your overlay copy in the configuration directory.

  2. Add the following property:

    pool=<CONFIGURATION_LIST>

    Replace <CONFIGURATION_LIST> with a comma-separated list of the configuration names in the order you want to have them loaded.

    You can enter a language configuration multiple times in order to have it loaded by multiple language servers. For example, the line pool=en,en,en,de ensures that the en configuration is loaded by the first three language servers.

    The order of languages in the pool property also determines the order of languages listed in the Guidance Settings and Reuse sections of the Dashboard.

  3. Save your changes and restart all servers.

Dedicating Language Configurations

It’s possible to ensure that a specific language server is always assigned a specific language configuration. You can add this optional setting if you prefer to regulate the way the core server allocates language configurations.

To dedicate a server number to a language configuration, follow these steps:

  1. Open your overlay of the following file: configurations.properties

    If you haven’t yet created an overlay of this file, create a new version of the file at the following location:

    %ACROLINX_CONFIGURATION_ROOT%\data\

    Don’t edit the installed version of the file. Instead, always edit your overlay copy in the configuration directory.

  2. Add the following property:

    pool=<CONFIGURATION_LIST>
    
    pool=<LANGUAGE_ID>@<LANGUAGE_SERVER_ID>

    Replace <LANGUAGE_ID> with a two-letter abbreviation of each installed language and <LANGUAGE_SERVER_ID> with the abbreviation "ls-" concatenated with the number of the language server.

    Example: pool=de@ls-01,en

  3. Save your changes and restart all servers.

    Other servers can still load configurations with a server dedication. In the example pool=de@ls-01,en, if the serverls-02 is started first, it will still load de, because de appears first in the list. If ls-01 is, then started as the second server, ls-01 will also load de because ls-01 is set to always load the de language configuration. To reduce confusion, you can dedicate all your servers as in the following example pool=de@ls-01,en@ls-02