Advanced topics

Command line Options

When Terminal is started from the command line or from a panel launcher, several options can be specified to modify its behaviour.

--help

List the various command line options supported by Terminal and exit

--version

Display version information and exit

--disable-server

Do not register with the D-BUS session message bus

--execute ...

Execute the remainder of the command line inside the terminal

--command command

Execute command inside the terminal

--working-directory directory

Set directory as the working directory for the terminal

--title title

Set title as the initial window title for the terminal

--display display

Open terminal window on the X screen specified by display.

--geometry geometry

Sets the geometry of the last-specified window to geometry. Read man X for more information on how to specify window geometries.

--role role

Sets the window role of the last-specified window to role. Applies to only one window and can be specified once for each window you create from the command line. It is mostly used for session management inside Terminal.

--startup-id id

Specifies the startup notification id for the last-specified window. Used internally to forward the startup notification id when using the D-BUS service.

--fullscreen

Set the last-specified window into fullscreen mode; applies to only one window; can be specified once for each window you create from the command line.

--show-menubar

Turn on the menubar for the last-specified window. Can be specified once for each window you create from the command line.

--hide-menubar

Turn on the menubar for the last-specified window. Can be specified once for each window you create from the command line.

--show-borders

Turn on the window decorations for the last-specified window. Applies to only one window. Can be specified once for each window you create from the command line.

--hide-borders

Turn off the window decorations for the last-specified window. Applies to only one window. Can be specified once for each window you create from the command line.

--show-toolbars

Turn on the toolbars for the last-specified window. Applies to only one window. Can be specified once for each window you create from the command line.

--hide-toolbars

Turn off the toolbars for the last-specified window. Applies to only one window. Can be specified once for each window you create from the command line.

--tab

Open a new tab in the last-specified window. More than one of these options can be provided.

--window

Open a new window containing one tab. More than one of these options can be provided.

For example, say you want to open a new terminal window with two tabs in it, where the first tab should run mutt and the second tab should run mc, and the window should have 80 columns and 40 rows, then you would use the following command to start Terminal:

Terminal --geometry 80x40 --command mutt --tab --command mc

Files and Environment Variables

Terminal uses the Basedir Specification as defined on Freedesktop.org to locate its data and configuration files. This means that file locations will be specified as a path relative to the directories described in the specification.

${XDG_CONFIG_HOME}

The first base directory to look for configuration files. By default this is set to ~/.config/.

${XDG_CONFIG_DIRS}

A colon separated list of base directories that contain configuration data. By default the application will look in ${sysconfdir}/xdg/. The value of ${sysconfdir} depends on how the program was build and will often be /etc/ for binary packages.

${XDG_DATA_HOME}

The root for all user-specific data files. By default this is set to ~/.local/share/.

${XDG_DATA_DIRS}

A set of preference ordered base directories relative to which data files should be searched in addition to the ${XDG_DATA_HOME} base directory. The directories should be separated with a color.

${XDG_CONFIG_DIRS}/Terminal/terminalrc

This is the location of the configuration file that includes the preferences which control the look and feel of Terminal.

${XDG_DATA_DIRS}/Terminal/Terminal.ui

This is the location of the main user interface description file. It includes the definitions for the main menubar and the right-click menu.

${XDG_DATA_DIRS}/Terminal/Terminal-toolbars.ui

This file includes the user interface definition for the toolbars. If you customize the toolbars using the graphical toolbars editor, Terminal will store the new toolbars layout in the file ${XDG_DATA_HOME}/Terminal/Terminal-toolbars.ui.

Hidden options

Terminal offers a few hidden options to allow powerusers to control various advanced settings and to reduce the number of options in the user interface. To set any of these options, you will have to open the file ${XDG_CONFIG_HOME}/Terminal/terminalrc in your favourite text editor and edit the section [Configuration]; simply create the file if it does not already exist. For example, your terminalrc could look like

[Configuration]
MiscBell=TRUE
MiscConfirmClose=FALSE
MiscCursorBlinks=TRUE
MiscCycleTabs=TRUE
MiscTabCloseButtons=TRUE

plus all the options that are controlled through the preferences dialog.

MiscBell

Enables (MiscBell=TRUE) or disables (MiscBell=FALSE) the audible terminal bell. It is disabled by default.

MiscConfirmClose

Controls whether Terminal popups a confirmation dialog when the user tries to close a terminal window with multiple tabs in it. Can be either TRUE (the default) or FALSE.

MiscCursorBlinks

Enable this option to display a cursor that blinks. Can be either TRUE or FALSE (the default).

MiscCycleTabs

This option controls whether you can circulate through terminal tabs. That is, whether you are able to go from the last tab to the first tab using the Next Tab button from the Go menu (or the associated keyboard shortcut), and from the first tab to the last tab using the Previous Tab button from the Go menu. The option can be either TRUE or FALSE.

This behaviour is disabled by default, because it tends to confuse users.

MiscTabCloseButtons

This setting controls whether Terminal provides a close button with the terminal tab title. Can be either TRUE (the default) or FALSE.