Customizing Rougail’s configuration

The Rougail‘s configuration is located in the RougailConfig object:

from rougail import RougailConfig

It’s just a python dictionary with different keys.

To modify it, just do like with any python dictionary:

RougailConfig[key] = value

Configuring the dictionnaries loading

Setting the dictionnaries folders

There are two types of dictionary directories:

  • the main dictionaries with the dictionaries_dir key. The default setting is ['/srv/rougail/dictionaries']. This setting shall list the directories folders containing dictionaries files.

  • the extra dictionaries with the extra_dictionaries key. The value is a dictionary with all namespaces. The key being the namespace and the value being a directory listing.

For example, to add the extra example you must do:

RougailConfig['extra_dictionaries']['example'] = ['/dir1', '/dir2']

Dictionaries are loaded in the same order as the main dictionaries.

The functions file

The file which contains the custom functions is managed in the functions_file key and has the default value /srv/rougail/functions.py. This key can contain a list if there are several files.

Important

Functions must return a value, even if the variable being calculated is a multiple variable. If the function can return a multiple value (a list), you must put the name of the function in the multi_functions key.

The auto_freeze variable

The auto_freeze property is only applied until a specific variable becomes True. By default the variable name is instantiated_module, but it is possible to change the name of this variable via the auto_freeze_variable key.

Modes

mode

modes are views on variables.

Modes are customizable in Rougail. By default the modes are basic, standard and advanced. It is possible to change this list via the modes_level key.

If you change these values, consider changing the default modes of families and variables in your dictionaries.

Default mode for a family

The default mode for a family is basic. It is possible to change the default mode of a family via the default_family_mode key.

Default mode for a variable

The default mode for a variable is standard. It is possible to change the default mode of a variable via the default_variable_mode key.

Internal functions names

It is possible to add internal functions via the internal_functions key.