-
Notifications
You must be signed in to change notification settings - Fork 1
Settings
Starting from 0.1.8, Thymus employs the second version of its configuration file. Thus, there is a special setting called "config_version". Thymus checks its presence now and converts the config file to a new scheme if a version of the file is not "2".
All platform settings are stored in separate files now for convenience (in the same folder as the global configuration).
Logging settings moved from a dedicated file into the global config.
The global set command is obsolete and is not supported anymore.
Thymus supports several ways of configuring: configuration files, GUI, and the command line. We recommend using the GUI option for general settings and CLI for fine-tuning a working context.
Global and logging settings are stored inside the "thymus.json" file.
Most changes made in the file apply only to the next opened context! You can tune some platform settings via the CLI command
set.
-
system_encodingis a string-based value that sets an encoding of the system config and log files (it does not apply to network config files). -
last_opened_platformis an unsigned integer value, an index of the last opened platform. This value is used by the Open Dialog, and we do not recommend altering it. -
default_folderis a string-based value of a path to be opened by the Open Dialog each time after Thymus started. -
saves_folderis a string-based value of a path to save files by the sub-commandsave. Do not get confused with thesavecommand. -
screens_folderis a string-based value of a path to save screenshots (the feature is not available in 0.1.8). -
themeis a string-based value that sets a highlighting theme for theviewmode. -
night_modeis a bool value that sets the night mode on or off. -
filename_max_lengthis not used anymore, it is being deleted in the next release. -
sidebar_max_lengthis an unsigned integer value that sets the maximum length of the left sidebar of a working screen. Too many elements may impact your experience, slowing the application. -
network_connection_timeoutis an unsigned integer value of time in seconds the Netloader module awaits an answer from a remote machine. -
editor_frequency_factoris an unsigned integer value that governs the time the editor sleeps between two consequent chunks of lines. The default is 4 which is 0.4 seconds. The fastest mode is 0.2 seconds now. -
editor_scale_factoris an unsigned integer value multiplied by the current application height (a vertical window size) gives a count of lines per every displayed chunk. Combined with the frequency factor can improve the loading of the content after theeditcommand, but it can hang the application down. -
save_on_commitis a bool value, if it is set, automatically runs thesavecommand after every successfulcommitcommand. It does not apply to therollbackcommand
These are well-known settings. You can find the extensive description in the Python documentation. By default, the log system uses a file-rotating mechanism that creates no more than 5 log files each of which is not bigger than 5 megabytes. The logs can be found in the "log/thymus.log" file.
All platforms share the same settings (keys, not values) from the Common and Aliases sections below.
-
spacesis an unsigned integer value that sets the number of spaces for a text indentation. -
up_limitis an unsigned integer value that sets the maximum depth for theupcommand (i.e., a value forxwherexisup x).
Every command and sub-command has its unique name specific to a platform. For instance, for JunOS there is the up command, while for IOS it is the exit command. They do the same things, but users from the JunOS world got used to using their keywords just as IOS users and anybody else. But if you want to overwrite any command to your favorite it is possible on per platform basis. You can also align all platforms to the same scheme.
All alias keys start with alias_.
JunOS supports only spaces and up_limit settings.
IOS supports spaces and up_limit too, besides it has several additional settings.
-
heuristicsis a bool value. This option toggles the heuristics mechanism for a platform's parser (refer to the documentation of a selected platform). By default, it is false. -
base_heuristicsis a bool value. This option toggles the base heuristics mechanism for a platform's parser (refer to the documentation of a selected platform). By default, it is true. -
cropis a bool value. This option allows a parser to crop lines from the beginning (refer to the documentation of a selected platform). It requires the heuristics mode to be enabled first! By default, it is false. -
promiscis a bool value. This option checks the config to have the "end" keyword at the bottom. By default, it is false. -
find_headis a bool value. Refer to the documentation of a selected platform.
The same as IOS except these platforms do not have the promisc setting (to be specific, this setting is always true).
Every working context has an input field. This field is capable not only of working with a network configuration file. With the command set it is possible to change any settings of the current platform in the runtime.