Runtime environment

When you install the full MAT distribution (or configure it in a git checkout), the MAT installer automatically generates a MAT settings file in config/MAT_settings.config at the root of your MAT distribution. This settings file is a Python config file, which is very much like a Windows INI file. The template that MAT uses resides in MAT_PKG_HOME/etc/MAT_settings.config.in. The variables defined there are:

variable
description
overrideable?
JAVA_BIN
The path to a Java executable, version 8 through 15.
yes
JAVA_MAJOR_VERSION
The major version of the Java executable.
no
JCARAFE_JAR
The JAR file which contains the jCarafe engine
yes
YUI_JS_LIB
Pathname of the Yahoo! UI Toolkit library used by the MAT UI
yes
BOTTLEPY_PYTHONLIB
Location of the bottle Web application framework. Value will be added to sys.path, by virtue of the variable name ending in _PYTHONLIB.
yes
MUNKRES_PYTHONLIB
Pathname to the Python implementation of the Kuhn-Munkres alignment algorithm, version 1.0.7. Value will be added to sys.path, by virtue of the variable name ending in _PYTHONLIB.
yes
HTTP_PORT
The default port of MATWeb. Default value is 7801.
yes
JCARAFE_SERVER_PORT
The lowest port on which to start the jCarafe tagger server.
yes
SUBPROCESS_DEBUG
Set this setting to "yes" if you want to see the actual command line invocations of the subprocesses that MAT invokes.
yes
TMPDIR_ROOT
If set, this will be the default location for temporary directories to be created. This setting can be overridden by the --tmpdir_root common option.
yes
JCARAFE_JAR_SERVER_MODE_AVAILABLE
If "no", no server is present in the jCarafe JAR, and tagging via the UI will be inefficient because the model will have to be loaded each time the decoder is invoked.
no
MAT_PLUGIN_RECORD
The location of the file that MAT uses to store the list of available tasks.
yes
HANDLE_NON_BMP
Instructions on how to handle Unicode characters outside the Basic Multilingual Plane. Possible values are "warn", "scrub_or_warn", "fail", "ignore". See the discussion on Unicode issues for details.
yes

(The definitive version also has a couple of generated variables which are not listed here.)

Changing your runtime environment

Pip module

Very few of these settings are relevant to the core Python library distributed as a pip module. Most of these settings are related to jCarafe or the Web server, neither of which are included in the pip module. The only ones are:

See the Python API documentation for how, and when, to manipulate these settings via the API.

Full installation

n the full installation, the values for these environment variables are read out of config/MAT_settings.config at runtime. However, there are a number of ways you can override those values which can be overridden (e.g., perhaps you want to add a value for TMPDIR_ROOT to manage your temporary files, or you want to monitor subprocesses using SUBPROCESS_DEBUG). If you want to change them temporarily:

If you want to change them permanently:

You shouldn't need any of these options, but they're available for emergencies and special cases.

If you're getting weird behavior, and you want to see where your config variables are coming from, the --config_verbose common option available with most command-line tools will help you.