TERMINATOR_CONFIG(5)

NAME
terminator_config - the config file for Terminator terminal emulator

DESCRIPTION

This file contains the configuration for terminator(1). Terminator manages its configuration file via the ConfigObj library to combine flexibility with clear, human editable files.
Terminator offers a full GUI preferences editor which automatically saves its config file so you don’t need to write a config file by hand.

FILE LOCATION

Normally the config file will be ~/.config/terminator/config, but it may be overridden with $XDG_CONFIG_HOME (in which case it will be $XDG_CONFIG_HOME/terminator/config).

FILE FORMAT

This is what a Terminator config file should look like:

    # This is a comment
    [global_config]
      focus = system

    [keybindings]
      full_screen = <Ctrl><Shift>F11

    [profiles]
      [[default]]
        font = Fixed 10
        background_color = "#000000" # A comment
        foreground_color = "#FFFFFF" # Note that hex colour values must be quoted
        scrollback_lines = '500' #More comment. Single quotes are valid too
        cursor_blink = True
        custom_command = "echo \"foo#bar\"" #Final comment - this will work as expected.

    [layouts]
      [[default]]
        [[[window0]]]
          type = Window
          parent = ""
        [[[child1]]]
          type = Terminal
          parent = window0

    [plugins]

GLOBAL_CONFIG

These are the options Terminator currently supports in the global_config section.

  Window Behavior & Appearance

window_state = string
    Control how the Terminator window opens. 'normal' to open normally. 'maximise' to open in a maximised state. 'fullscreen' to open in a fullscreen state. 'hidden' to stay hidden.
    Default value: normal

always_on_top = boolean
    If set to True, the window will always stay on top of other windows.
    Default value: False

sticky = boolean
    If set to True, the window will be visible on all workspaces.
    Default value: False

hide_on_lose_focus = boolean
    If set to True, the window will be hidden when focus is lost.
    Default value: False

hide_from_taskbar = boolean
    If set to True, the window will be hidden from the taskbar.
    Default value: False

geometry_hinting = boolean
    If set to True, the window will resize in step with font sizes.
    Default value: False

ask_before_closing = string
    Specify when to ask for confirmation before closing a window or a tab. Can be any of: 'always', 'multiple_terminals', 'never'. Default value: multiple_terminals

borderless = boolean
    If set to True, the window will be started without window borders.
    Default value: False

  Tab Behavior & Appearance

tab_position = string
    Specify where tabs are placed. Can be any of: 'top', 'left', 'right', 'bottom', 'hidden'. If set to 'hidden', the tab bar will not be shown. Hiding the tab is not recommended, as it can be very confusing.
    Default value: top

close_button_on_tab = boolean
    If set to True, tabs will have a close button on them.
    Default value: True

scroll_tabbar = boolean
    If set to True, the tab bar will not fill the width of the window. The titlebars of the tabs will only take as much space as is necessary for the text they contain. Except, that is, if the tabs no longer fit the width of the window - in that case scroll buttons will appear to move through the tabs.
    Default value: False

  Terminal Behavior & Appearance

focus = string
    Specify how focus is given to terminals. 'click' means the focus only moves to a terminal after you click in it. 'sloppy' means the focus will follow the mouse pointer. 'system' means the focus will match that used by a GNOME window manager.
    Default value: click

always_split_with_profile = boolean
    Specify whether splits/tabs will continue to use the profile of their peer terminal. If set to False, they will always use the default profile.
    Default value: False

link_single_click = boolean
    If set to True, clicking a link will open it even if Ctrl is not pressed.
    Default value: False

putty_paste_style = boolean
    If set to True, right-click will paste text, while middle-click will popup the context menu. The source for the pasted text depends on the value of putty_paste_style_source_clipboard.
    Default value: False

putty_paste_style_source_clipboard = boolean
    If set to True, the Clipboard will be used as source for pasting in PuTTY style. Otherwise, the Primary Selection will be used.
    This option is ignored unless putty_paste_style is set to True.
    Default value: False

disable_mouse_paste = boolean
    If set to True, mouse pasting will be disabled.
    Default value: False

smart_copy = boolean
    If set to True, and there is no selection, the shortcut is allowed to pass through. This is useful for overloading Ctrl-C to copy a selection, or send the SIGINT to the current process if there is no selection. If False, the shortcut does not pass through at all, and the SIGINT does not get sent.
    Default value: True

clear_select_on_copy = boolean
    If set to True, text selection will be cleared after copying using the copy keybinding.
    Default value: False

handle_size = integer
    Specify the width of the separator between terminals. Anything outside the range 0-20 (inclusive) will be ignored and the default theme value will be used instead.
    Default value: 1

inactive_color_offset = float
    Specify how much to reduce the color values of fonts in terminals that do not have focus.
    Default value: 0.8

inactive_bg_color_offset = float
    Specify how much to reduce the color values of the background in terminals that do not have focus.
    Default value: 1.0

cell_width = float
    Specify the horizontal scale of character cells in the terminal.
    Default value: 1.0

cell_height = float
    Specify the vertical scale of character cells in the terminal.
    Default value: 1.0

title_at_bottom = boolean
    If set to True, the terminal’s titlebar will be drawn at the bottom instead of the top.
    Default value: False

  Miscellaneous

dbus = boolean
    Specify whether Terminator will load its DBus server. When this server is loaded, running Terminator multiple times will cause the first Terminator process to open additional windows. If this configuration item is set to False, or the python dbus module is unavailable, running Terminator multiple times will run a separate Terminator process for each invocation.
    Default value: True

extra_styling = boolean
    If set to True, Terminator may load an additional CSS styling file, depending on the theme.
    Default value: True

broadcast_default = string
    Specify the default broadcast behavior. Can be any of: 'all', 'group', 'off'.
    Default value: group

use_custom_url_handler = boolean
    If set to True, URL handling will be given over entirely to the program specified by 'custom_url_handler'.
    Default value: False

custom_url_handler = string
    Specify the path to a program which accepts a URI as an argument and does something relevant with it. This option is ignored unless use_custom_url_handler is set to True.

case_sensitive = boolean
    If set to True, uppercase and lowercase characters will be considered different when searching text in the terminal.
    Default value: True

invert_search = boolean
    If set to True, the search direction will be inverted (bottom to top) when searching text in the terminal.
    Default value: False

enabled_plugins = list of strings
    Specify which plugins will be loaded by default. All other plugin classes will be ignored.
    Default value: ['LaunchpadBugURLHandler', 'LaunchpadCodeURLHandler', 'APTURLHandler']

KEYBINDINGS

These are the options Terminator currently supports in the keybindings section.

  Creation & Destruction

split_horiz
    Split the current terminal horizontally.
    Default value: <Ctrl><Shift>O

split_vert
    Split the current terminal vertically.
    Default value: <Ctrl><Shift>E

split_auto
    Split the current terminal automatically, along the longer side.
    Default value: <Ctrl><Shift>A

new_tab
    Open a new tab.
    Default value: <Ctrl><Shift>T

new_window
    Open a new window as part of the existing process.
    Default value: <Ctrl><Shift>I

new_terminator
    Spawn a new Terminator process.
    Default value: <Super>I

layout_launcher
    Open the layout launcher.
    Default value: <Alt>L

close_term
    Close the current terminal.
    Default value: <Ctrl><Shift>W

close_window
    Close the current window.
    Default value: <Ctrl><Shift>Q

  Navigation

cycle_next
    Focus the next terminal. This is an alias for go_next.
    Default value: <Ctrl>Tab

cycle_prev
    Focus the previous terminal. This is an alias for go_prev.
    Default value: <Ctrl><Shift>Tab

go_next
    Focus the next terminal.
    Default value: <Ctrl><Shift>N

go_prev
    Focus the previous terminal.
    Default value: <Ctrl><Shift>P

go_up
    Focus the terminal above the current one.
    Default value: <Alt>Up

go_down
    Focus the terminal below the current one.
    Default value: <Alt>Down

go_left
    Focus the terminal to the left of the current one.
    Default value: <Alt>Left

go_right
    Focus the terminal to the right of the current one.
    Default value: <Alt>Right

page_up
    Scroll the terminal up one page.

page_down
    Scroll the terminal down one page.

page_up_half
    Scroll the terminal up half a page.

page_down_half
    Scroll the terminal down half a page.

line_up
    Scroll the terminal up one line.

line_down
    Scroll the terminal down one line.

next_tab
    Move to the next tab.
    Default value: <Ctrl>Page_Down

prev_tab
    Move to the previous tab.
    Default value: <Ctrl>Page_Up

switch_to_tab_1, switch_to_tab_2, ... switch_to_tab_10
    Move to the Nth tab. Note that <Alt><Shift>1 may be provided as <Alt>! or similar, depending on the keyboard layout.

  Organisation

resize_up
    Move the parent dragbar up.
    Default value: <Ctrl><Shift>Up

resize_down
    Move the parent dragbar down.
    Default value: <Ctrl><Shift>Down

resize_left
    Move the parent dragbar left.
    Default value: <Ctrl><Shift>Left

resize_right
    Move the parent dragbar right.
    Default value: <Ctrl><Shift>Right

rotate_cw
    Rotate terminals clockwise.
    Default value: <Super>R

rotate_ccw
    Rotate terminals counter+clockwise.
    Default value: <Super><Shift>R

move_tab_right
    Move the current tab to the right by swapping position with the next tab.
    Default value: <Ctrl><Shift>Page_Down

move_tab_left
    Move the current tab to the left by swapping position with the previous tab.
    Default value: <Ctrl><Shift>Page_Up

  Focus

full_screen
    Toggle window to fullscreen.
    Default value: F11

toggle_zoom
    Toggle maximisation of the current terminal.
    Default value: <Ctrl><Shift>X

scaled_zoom
    Toggle maximisation of the current terminal and scale the font when maximised.
    Default value: <Ctrl><Shift>Z

hide_window
    Hide/Show all Terminator windows.
    Default value: <Ctrl><Shift><Alt>A

  Grouping & Broadcasting

create_group
    Create a new group.

group_all
    Group all terminals together.
    Default value: <Super>G

ungroup_all
    Ungroup all terminals.

group_all_toggle
    Toggle grouping of all terminals.

group_win
    Group all terminals in the current window together.

ungroup_win
    Ungroup all terminals in the current window.
    Default value: <Super><Shift>W

group_win_toggle
    Toggle grouping of all terminals in the current window.

group_tab
    Group all terminals in the current tab together.
    Default value: <Super>T

ungroup_tab
    Ungroup all terminals in the current tab.
    Default value: <Super><Shift>T

group_tab_toggle
    Toggle grouping of all terminals in the current tab.

broadcast_off
    Turn broadcasting off.

broadcast_group
    Broadcast to all terminals in the same group as the current terminal.

broadcast_all
    Broadcast to all terminals.

  Miscellaneous

help
    Open the full HTML manual in the browser.
    Default value: F1

preferences
    Open the Preferences window.

preferences_keybindings
    Open the Preferences window and show the Keybindings tab.
    Default value: <Ctrl><Shift>K

copy
    Copy the selected text to the Clipboard.
    Default value: <Ctrl><Shift>C

paste
    Paste the current contents of the Clipboard.
    Default value: <Ctrl><Shift>V

paste_selection
    Paste the current contents of the Primary Selection.

toggle_scrollbar
    Toggle the scrollbar.
    Default value: <Ctrl><Shift>S

search
    Search for text in the terminal scrollback history.
    Default value: <Ctrl><Shift>F

reset
    Reset the terminal state.
    Default value: <Ctrl><Shift>R

reset_clear
    Reset the terminal state and clear the terminal window.
    Default value: <Ctrl><Shift>G

zoom_in
    Increase the font size by one unit.
    Default value: <Ctrl>plus

zoom_out
    Decrease the font size by one unit.
    Default value: <Ctrl>minus

zoom_normal
    Restore the original font size.
    Default value: <Ctrl>0

zoom_in_all
    Increase the font size by one unit for all terminals.

zoom_out_all
    Decrease the font size by one unit for all terminals.

zoom_normal_all
    Restore the original font size for all terminals.

edit_window_title
    Rename the current window.
    Default value: <Ctrl><Alt>W

edit_tab_title
    Rename the current tab.
    Default value: <Ctrl><Alt>A

edit_terminal_title
    Rename the current terminal.
    Default value: <Ctrl><Alt>X

insert_number
    Insert the current terminal’s number, i.e. 1 to 12.
    Default value: <Super>1

insert_padded
    Insert the current terminal’s number, but zero padded, i.e. 01 to 12.
    Default value: <Super>0

next_profile
    Switch to the next profile.

previous_profile
    Switch to the previous profile.

PROFILES

These are the options Terminator currently supports in the profiles section. Each profile should be its own subsection with a header in the format [[name]].

  General

allow_bold = boolean
    If set to True, text in the terminal can displayed in bold.
    Default value: True

copy_on_selection = boolean
    If set to True, text selections will be automatically copied to the Clipboard, in addition to being copied to the Primary Selection.
    Default value: False

disable_mousewheel_zoom = boolean
    If set to True, Ctrl+mouse_wheel will not zoom or unzoom the terminal.
    Default value: False

word_chars = string
    Specify the characters that will be considered part of a single word when selecting text by word. Hyphen and alphanumerics do not need to be specified. Ranges can be given, e.g. "A-Z".
    For example, if word_chars = "," then "foo,bar" is considered a single word.
    Default value: -,./?%&#:_

mouse_autohide = boolean
    If set to True, the mouse pointer will be hidden when typing.
    Default value: True

term = string
    Specify the value Terminator will assign to the 'TERM' environment variable.
    Default value: xterm-256color

colorterm = string
    Specify the value Terminator will assign to the 'COLORTERM' environment variable.
    Default value: truecolor

split_to_group = boolean
    If set to True, the terminal created by splitting will be inserted in the current terminal’s group.
    Default value: False

autoclean_groups = boolean
    If set to True, empty groups will be removed.
    Default value: True

use_system_font = boolean
    If set to True, the system default font will be used for text in the terminal. Otherwise, the value of font will be used.
    Default value: True

font = string
    Specify which font to use for text in the terminal. This option is ignored unless use_system_font is set to False.
    Default value: Mono 10

cursor_blink = boolean
    If set to True, the cursor will blink when not typing.
    Default value: True

cursor_shape = string
    Specify the shape of the cursor. Can be any of: 'block', 'underline', 'ibeam'.
    Default value: block

cursor_color_default = boolean
    If set to True, the background and foreground colors of the terminal will be used as foreground and background colors for the cursor, respectively.
    Default value: True

cursor_fg_color = color string
    Specify the foreground color to use for the cursor. This option is ignored unless cursor_color_default is set to False.

cursor_bg_color = color string
    Specify the background color to use for the cursor. This option is ignored unless cursor_color_default is set to False.

audible_bell = boolean
    If set to True, a sound will be played when an application writes the escape sequence for the terminal bell.
    Default value: False

visible_bell = boolean
    If set to True, the terminal will flash when an application writes the escape sequence for the terminal bell.
    Default value: False

urgent_bell = boolean
    If set to True, the window’s urgency hint will be set when an application writes the escape sequence for the terminal bell.
    Default value: False

icon_bell = boolean
    If set to True, a small icon will be shown on the terminal titlebar when an application writes the escape sequence for the terminal bell.
    Default value: True

force_no_bell = boolean
    If set to True, the terminal bell will be completely disabled.
    Default value: False

  Command

login_shell = boolean
    If set to True, the terminal will run the default shell (or the command specified by custom_command) as a login shell. This means the first argument passed to the shell/command will be '-l'.
    Default value: False

use_custom_command = boolean
    If set to True, the value of custom_command will be used instead of the default shell.
    Default value: False

custom_command = string
    Specify the command to execute instead of the default shell. This option is ignored unless use_custom_command is set to True.

exit_action = string
    Specify the action to perform when the terminal is closed. 'close' to remove the terminal. 'restart' to restart the shell (or the command specified by custom_command). 'hold' to keep the terminal open, even if the process in it has terminated.
    Default value: close

  Colors

use_theme_colors = boolean
    If set to True, the theme’s foreground and background colors will be used for the terminal. Otherwise, the values of foreground_color and background_color will be used.
    Default value: False

foreground_color = color string
    Specify the foreground color to use for the terminal. This option is ignored unless use_theme_colors is set to False.
    Default value: #AAAAAA

background_color = color string
    Specify the background color to use for the terminal. This option is ignored unless use_theme_colors is set to False.
    Default value: #000000

palette = string list of colors
    Specify the 16-color palette to use for the terminal. The value must be a string containing a colon-separated list of colors in hex format.
    For example, "#000000:#cd0000:#00cd00: ... ".

bold_is_bright = boolean
    If set to True, bold text will have brighter colors.
    Default value: False

  Background

background_darkness = float
    Specify the transparency of the background color. The value must be between 0.0 and 1.0. This option is ignored unless background_type is set to 'transparent' or 'image'.
    Default value: 0.5

background_type = string
    Specify what type of background the terminal will have. 'solid' for a solid (opaque) background. 'transparent' for a transparent background. 'image' for a background image.
    If this is set to 'transparent', the transparency of the background will be the value of background_darkness. If this is set to 'image', the image specified by background_image will be the background; the background color will then be drawn on top of it, with a transparency specified by background_darkness.
    Default value: solid

background_image = path string
    Specify the path to an image that will be used as background. This option is ignored unless background_type is set to 'image'.

background_image_mode = string
    Specify how the background image will be drawn. 'stretch_and_fill' to fill the terminal entirely, without necessarily maintaining aspect ratio. 'scale_and_fit' to fit the image inside the terminal, eventually leaving blank bars, while maintaining aspect ratio. 'scale_and_crop' to fill the terminal entirely, eventually cropping the image, while maintaining aspect ratio. 'tiling' to repeat the image as to fill the terminal. This option is ignored unless background_type is set to 'image'.
    Default value: stretch_and_fill

background_image_align_horiz = string
    Specify the horizontal alignment of the background image. Can be any of: 'left', 'center', 'right'. This option is ignored unless background_type is set to 'image'.
    Default value: center

background_image_align_vert = string
    Specify the vertical alignment of the background image. Can be any of: 'top', 'middle', 'bottom'. This option is ignored unless background_type is set to 'image'.
    Default value: middle

  Scrolling

scrollbar_position = string
    Specify where the terminal scrollbar is put. Can be any of: 'left', 'right', 'hidden'.
    Default value: right

scroll_on_output = boolean
    If set to True, the terminall will scroll to the bottom when an application writes text to it.
    Default value: False

scroll_on_keystroke = boolean
    If set to True, the terminal will scroll to the bottom when typing.
    Default value: True

scrollback_infinite = boolean
    If set to True, the terminal will keep the entire scrollback history.
    Default value: False

scrollback_lines = integer
    Specify how many lines of scrollback history will be kept by the terminal. Lines that don’t fit in the scrollback history will be discarted. Note that setting large values can slow down rewrapping and resizing. This option is ignored unless scrollback_infinite is set to False.
    Default value: 500

  Compatibility

backspace_binding = string
    Specify what code will be generated by the backspace key. The value can be: 'ascii-del' for the ASCII DEL character; 'control-h' for the ASCII BS character (Ctrl+H); 'escape-sequence' for the escape sequence typically bound to backspace or delete; 'automatic' for letting the terminal automatically decide the character sequence to use.
    Default value: ascii-del

delete_binding = string
    Specify what code will be generated by the delete key. The value can be: 'ascii-del' for the ASCII DEL character; 'control-h' for the ASCII BS character (Ctrl+H); 'escape-sequence' for the escape sequence typically bound to backspace or delete; 'automatic' for letting the terminal automatically decide the character sequence to use.
    Default value: escape-sequence

  Titlebar

show_titlebar = boolean
    If set to True, the terminal will have a titlebar showing the current title of that terminal.
    Default value: True

title_hide_sizetext = boolean
    If set to True, the size of the terminal will not be written on its titlebar.
    Default value: False

title_use_system_font = boolean
    If set to True, the system default font will be used for text in the terminal’s titlebar. Otherwise, the value of title_font will be used.
    Default value: True

title_font = string
    Specify which font to use for text in the terminal’s titlebar. This option is ignored unless title_use_system_font is set to False.
    Default value: Sans 9

title_transmit_fg_color = color string
    Specify the foreground color to use for the terminal’s titlebar in case the terminal is focused.
    Default value: #ffffff

title_transmit_bg_color = color string
    Specify the background color to use for the terminal’s titlebar in case the terminal is focused.
    Default value: #c80003

title_inactive_fg_color = color string
    Specify the foreground color to use for the terminal’s titlebar in case the terminal is unfocused.
    Default value: #000000

title_inactive_bg_color = color string
    Specify the background color to use for the terminal’s titlebar in case the terminal is unfocused.
    Default value: #c0bebf

title_receive_fg_color = color string
    Specify the foreground color to use for the terminal’s titlebar in case the terminal is in a group and is receiving input while unfocused.
    Default value: #ffffff

title_receive_bg_color = color string
    Specify the background color to use for the terminal’s titlebar in case the terminal is in a group and is receiving input while unfocused.
    Default value: #0076c9

LAYOUTS

The layouts section contains all the saved layouts. Each layout should be its own subsection with a header in the format [[name]].

Each object in a layout is a named sub-sub-section with various properties.

type = string
    Can be any of: 'Window', 'Notebook', 'HPaned', 'VPaned', 'Terminal'.

parent = string
    Specify which object is the parent of the component being defined. All objects, except those of type Window, must specify a parent.

This is an example of a layouts section containing only the layout named "default".

    [layouts]
      [[default]]
        [[[window0]]]
          type = Window
          parent = ""
        [[[child1]]]
          type = Terminal
          parent = window0

PLUGINS

Terminator plugins can add their own configuration to the config file, and it will appear as a subsection. Please refer to the documentation of individual plugins for more information.

SEE ALSO

terminator(1),