User preferences for DomTerm are normally in the file
.domterm/settings.ini in the user’s home directory.
(On WSL (Windows Subsystem for Linux) the file is
c:\Users\.)
You can override this default with the USER\AppData\Roaming\DomTerm\settings.ini-settings command-line argument.
If the settings.ini is changed it is automatically re-loaded.
The syntax of settings.ini is a variant
of the INI file format.
A preference is written as:
keyword=value
For example:
window.geometry=800x600
Spaces before or after = are optional.
A keyword should be a sequence of letters, numbers,
periods or hyphens.
The value is almost any sequence of characters (depending of
the keyword), up to end of the line.
Multi-line values are written as an empty line following the ‘=’,
and then one or lines starting with a single space followed by ‘|’.
For example:
style.user =
|div.domterm { --background-color: azure }
|div.domterm-spacer {background: none }
In this cases the resulting value has two lines,
with the two-character prefixes ‘ |’ removed.
For a boolean value any
one of true, yes, or on
enable the preference;
one of false, no, or off disable the preference.
Comment lines start with # in the first column.
Comment lines and all-blank lines are ignored.
shell.default = command
Specify a default “shell” command to execute when creating a new terminal. The command can include arguments, separated by spaces. You can uses quotes, as in a shell.
The default is the value of the SHELL environment variable;
if that is not set the default is /bin/bash.
frontend.default = application-list
The browser-like program used to create new top-level windows, unless overridden by a specific window-specifier command.
The application-list is a list of commmand front-end,
separated by newlines or semi-colons. The commands are tried
left-to-right, until one is found that exists and is executable.
The default is currently:
frontend.default = electron;qt;chrome;firefox;browser
The commmands electron, qt, chrome,
firefox, or browser are equivalent to the
corresponding windows-specifier --electron and so on.
Otherwise a command may be include command-line arguments
(possibly quoted), optionally including %U,
similar to the program in a --browser= option.
program
command.firefox = command
command.chrome = command
command.electron = command
Command to use for respectively --firefox,
--chrome, or --electron.
The default for these is to search in the PATH,
possibly with some platform-depending knowledge of default locations.
window.geometry = geometry
Control the size of new top-level windows.
(Currently works for either Electron or qtdomterm windows,
as well as ones started with --chrome-app.)
The geometry has the same syntax as the --geometry
command-line opton, ,
where WxH and W
are the width and height of the window, in pixels.
H
The default is 800x600.
style.user = css-style-rules
Set the user stylesheet to the rules in css-style-rules.
The latter is typically a multi-line value.
See the Styling section for examples.
style.qt = css-style-rules
qtdomterm only: Set styling for QT user interface widgets.
For example to specify the color green
for text in QMenu do:
style.qt =
|QMenu { color: green; }
See more examples.
style.dark = value
This option (if set) selects “reverse video”, which is a color preference for a darker background and a ligher foreground (text).
The default is off, which selects
lighter background and a darker foreground colors.
style.caret = value
Change the style of the caret (text input cursor).
The value can be one of these (unquoted) words:
block, blinking-block,
underline, blinking-underline,
bar, or blinking-bar.
The default is blinking-block. Note that
both blinking-block and blinking-underline
only blink 20 times after each change or focus.
To change the number of blinks set the CSS variable --caret-blink-count.
For example to blink indefinitely, add this to settings.ini:
style.user= div.domterm { --caret-blink-count: infinite }
Currently, bar and blinking-bar are the same and use
the browser’s native text cursor, which may be blinking or not.
open.file.application = application-list
open.link.application = application-list
List of applications to try when clicking on a link.
If the link’s href is a file: URL,
then the open.file.application list is tried first;
then the open.link.application list is tried.
For a non-file: URL, only the open.link.application list is tried.
For details, see link-handlers.
keymap.line-edit = keymap-overrides
Add or replace keybindings for input line editing. (Changing other keybindings is planned but not yet implemented.)