TERMINATOR_CONFIG(5)
π TERMINATOR_CONFIG(5) β Manual for Terminator π
β¨ NAME β¨
terminator_config β the config file for the Terminator terminal emulator, it's giving βyour terminal, but make it personalβ π
π DESCRIPTION π
Okay so this file is literally where terminator(1) keeps its configuration. Terminator manages its config file through the ConfigObj library, which is the whole βflexible but also clear and human-editableβ vibe. No cap.
Terminator also has a full GUI preferences editor that automatically saves its config file for you, so bestie, you do not need to write a config file by hand unless you want to. π«Ά
πΈ FILE LOCATION πΈ
Normally the config file lives at ~/.config/terminator/config, but it can be overridden with $XDG_CONFIG_HOME β in which case it will be $XDG_CONFIG_HOME/terminator/config. Slay. β¨
π¦ 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. Group-chat roll call, let's gooo. π
πͺ Window Behavior & Appearance πͺ
window_state(string) β Controls how the Terminator window opens.'normal'opens normally.'maximise'opens in a maximised state.'fullscreen'opens in a fullscreen state.'hidden'stays hidden. Default value:normalalways_on_top(boolean) β If set toTrue, the window will always stay on top of other windows. Default value:Falsesticky(boolean) β If set toTrue, the window will be visible on all workspaces. Default value:Falsehide_on_lose_focus(boolean) β If set toTrue, the window will be hidden when focus is lost. Default value:Falsehide_from_taskbar(boolean) β If set toTrue, the window will be hidden from the taskbar. Default value:Falsegeometry_hinting(boolean) β If set toTrue, the window will resize in step with font sizes. Default value:Falseask_before_closing(string) β Specifies when to ask for confirmation before closing a window or a tab. Can be any of:'always','multiple_terminals','never'. Default value:multiple_terminalsborderless(boolean) β If set toTrue, the window will be started without window borders. Default value:False
ποΈ Tab Behavior & Appearance ποΈ
tab_position(string) β Specifies where tabs are placed. Can be any of:'top','left','right','bottom','hidden'. If set to'hidden', the tab bar will not be shown. Default value:top
β οΈ Hiding the tab is not recommended, because it can be very confusing. You have been warned, bestie π
close_button_on_tab(boolean) β If set toTrue, tabs will have a close button on them. Default value:Truescroll_tabbar(boolean) β If set toTrue, 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) β Specifies how focus is given to terminals.'click'means focus only moves to a terminal after you click in it.'sloppy'means focus will follow the mouse pointer.'system'means focus will match that used by a GNOME window manager. Default value:clickalways_split_with_profile(boolean) β Specifies whether splits/tabs will continue to use the profile of their peer terminal. If set toFalse, they will always use the default profile. Default value:Falselink_single_click(boolean) β If set toTrue, clicking a link will open it even if Ctrl is not pressed. Default value:Falseputty_paste_style(boolean) β If set toTrue, right-click will paste text, while middle-click will popup the context menu. The source for the pasted text depends on the value ofputty_paste_style_source_clipboard. Default value:Falseputty_paste_style_source_clipboard(boolean) β If set toTrue, the Clipboard will be used as source for pasting in PuTTY style. Otherwise, the Primary Selection will be used. This option is ignored unlessputty_paste_styleis set toTrue. Default value:Falsedisable_mouse_paste(boolean) β If set toTrue, mouse pasting will be disabled. Default value:Falsesmart_copy(boolean) β If set toTrue, 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 theSIGINTto the current process if there is no selection. IfFalse, the shortcut does not pass through at all, and theSIGINTdoes not get sent. Default value:Trueclear_select_on_copy(boolean) β If set toTrue, text selection will be cleared after copying using the copy keybinding. Default value:Falsehandle_size(integer) β Specifies the width of the separator between terminals. Anything outside the range0-20(inclusive) will be ignored and the default theme value will be used instead. Default value:1inactive_color_offset(float) β Specifies how much to reduce the color values of fonts in terminals that do not have focus. Default value:0.8inactive_bg_color_offset(float) β Specifies how much to reduce the color values of the background in terminals that do not have focus. Default value:1.0cell_width(float) β Specifies the horizontal scale of character cells in the terminal. Default value:1.0cell_height(float) β Specifies the vertical scale of character cells in the terminal. Default value:1.0title_at_bottom(boolean) β If set toTrue, the terminal's titlebar will be drawn at the bottom instead of the top. Default value:False
π Miscellaneous π
dbus(boolean) β Specifies 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 toFalse, or the python dbus module is unavailable, running Terminator multiple times will run a separate Terminator process for each invocation. Default value:Trueextra_styling(boolean) β If set toTrue, Terminator may load an additional CSS styling file, depending on the theme. Default value:Truebroadcast_default(string) β Specifies the default broadcast behavior. Can be any of:'all','group','off'. Default value:groupuse_custom_url_handler(boolean) β If set toTrue, URL handling will be given over entirely to the program specified by'custom_url_handler'. Default value:Falsecustom_url_handler(string) β Specifies the path to a program which accepts a URI as an argument and does something relevant with it. This option is ignored unlessuse_custom_url_handleris set toTrue.case_sensitive(boolean) β If set toTrue, uppercase and lowercase characters will be considered different when searching text in the terminal. Default value:Trueinvert_search(boolean) β If set toTrue, the search direction will be inverted (bottom to top) when searching text in the terminal. Default value:Falseenabled_plugins(list of strings) β Specifies which plugins will be loaded by default. All other plugin classes will be ignored. Default value:['LaunchpadBugURLHandler', 'LaunchpadCodeURLHandler', 'APTURLHandler']
β¨οΈ KEYBINDINGS β¨οΈ
okay so these are literally all the options Terminator supports in the keybindings section rn. buckle up bestie, there's like a million π
π Creation & Destruction π
split_horizβ splits the current terminal horizontally. default:<Ctrl><Shift>Osplit_vertβ splits the current terminal vertically. default:<Ctrl><Shift>Esplit_autoβ splits the current terminal automatically, along the longer side. default:<Ctrl><Shift>Anew_tabβ opens up a fresh new tab. default:<Ctrl><Shift>Tnew_windowβ opens a new window as part of the existing process (same process, new vibe β¨). default:<Ctrl><Shift>Inew_terminatorβ spawns a whole new Terminator process. default:<Super>Ilayout_launcherβ opens the layout launcher. default:<Alt>Lclose_termβ closes the current terminal. default:<Ctrl><Shift>Wclose_windowβ closes the current window. default:<Ctrl><Shift>Q
π¦ Navigation π¦
cycle_nextβ focuses the next terminal. this is literally an alias forgo_next. default:<Ctrl>Tabcycle_prevβ focuses the previous terminal. alias forgo_prev, periodt. default:<Ctrl><Shift>Tabgo_nextβ focuses the next terminal. default:<Ctrl><Shift>Ngo_prevβ focuses the previous terminal. default:<Ctrl><Shift>Pgo_upβ focuses the terminal above the current one. default:<Alt>Upgo_downβ focuses the terminal below the current one. default:<Alt>Downgo_leftβ focuses the terminal to the left of the current one. default:<Alt>Leftgo_rightβ focuses the terminal to the right of the current one. default:<Alt>Rightpage_upβ scrolls the terminal up one page. (no default, she's unbound π)page_downβ scrolls the terminal down one page. (no default either)page_up_halfβ scrolls the terminal up half a page. (no default)page_down_halfβ scrolls the terminal down half a page. (no default)line_upβ scrolls the terminal up one line. (no default)line_downβ scrolls the terminal down one line. (no default)next_tabβ moves to the next tab. default:<Ctrl>Page_Downprev_tabβ moves to the previous tab. default:<Ctrl>Page_Upswitch_to_tab_1,switch_to_tab_2, ...switch_to_tab_10β moves to the Nth tab. heads up bestie:<Alt><Shift>1may show up as<Alt>!or something like that, depending on your keyboard layout π«Ά
πΈ Organisation πΈ
resize_upβ moves the parent dragbar up. default:<Ctrl><Shift>Upresize_downβ moves the parent dragbar down. default:<Ctrl><Shift>Downresize_leftβ moves the parent dragbar left. default:<Ctrl><Shift>Leftresize_rightβ moves the parent dragbar right. default:<Ctrl><Shift>Rightrotate_cwβ rotates terminals clockwise. default:<Super>Rrotate_ccwβ rotates terminals counter+clockwise (yes, that's exactly what the original says, i'm not touching it π). default:<Super><Shift>Rmove_tab_rightβ moves the current tab to the right by swapping position with the next tab. default:<Ctrl><Shift>Page_Downmove_tab_leftβ moves the current tab to the left by swapping position with the previous tab. default:<Ctrl><Shift>Page_Up
π Focus π
full_screenβ toggles the window to fullscreen. default:F11toggle_zoomβ toggles maximisation of the current terminal. default:<Ctrl><Shift>Xscaled_zoomβ toggles maximisation of the current terminal and scales the font when maximised. default:<Ctrl><Shift>Zhide_windowβ hides/shows all Terminator windows. default:<Ctrl><Shift><Alt>A
π Grouping & Broadcasting π
create_groupβ creates a new group. (no default)group_allβ groups all terminals together. default:<Super>Gungroup_allβ ungroups all terminals. (no default)group_all_toggleβ toggles grouping of all terminals. (no default)group_winβ groups all terminals in the current window together. (no default)ungroup_winβ ungroups all terminals in the current window. default:<Super><Shift>Wgroup_win_toggleβ toggles grouping of all terminals in the current window. (no default)group_tabβ groups all terminals in the current tab together. default:<Super>Tungroup_tabβ ungroups all terminals in the current tab. default:<Super><Shift>Tgroup_tab_toggleβ toggles grouping of all terminals in the current tab. (no default)broadcast_offβ turns broadcasting off. (no default)broadcast_groupβ broadcasts to all terminals in the same group as the current terminal. (no default)broadcast_allβ broadcasts to all terminals, every single one π₯ (no default)
π Miscellaneous π
helpβ opens the full HTML manual in your browser. default:F1preferencesβ opens the Preferences window. (no default)preferences_keybindingsβ opens the Preferences window and jumps straight to the Keybindings tab. default:<Ctrl><Shift>Kcopyβ copies the selected text to the Clipboard. default:<Ctrl><Shift>Cpasteβ pastes the current contents of the Clipboard. default:<Ctrl><Shift>Vpaste_selectionβ pastes the current contents of the Primary Selection. (no default)send_newlineβ sends a newline (LF,0x0A) character to the terminal. super useful for shells configured to treatLFdifferently fromCR(like for multi-line input, iykyk). default:<Shift>Returntoggle_scrollbarβ toggles the scrollbar. default:<Ctrl><Shift>Ssearchβ searches for text in the terminal scrollback history. default:<Ctrl><Shift>Fresetβ resets the terminal state. default:<Ctrl><Shift>Rreset_clearβ resets the terminal state and clears the terminal window. default:<Ctrl><Shift>Gzoom_inβ increases the font size by one unit. default:<Ctrl>pluszoom_outβ decreases the font size by one unit. default:<Ctrl>minuszoom_normalβ restores the original font size. default:<Ctrl>0zoom_in_allβ increases the font size by one unit for all terminals. (no default)zoom_out_allβ decreases the font size by one unit for all terminals. (no default)zoom_normal_allβ restores the original font size for all terminals. (no default)edit_window_titleβ renames the current window. default:<Ctrl><Alt>Wedit_tab_titleβ renames the current tab. default:<Ctrl><Alt>Aedit_terminal_titleβ renames the current terminal. default:<Ctrl><Alt>Xinsert_numberβ inserts the current terminal's number, i.e.1to12. default:<Super>1insert_paddedβ inserts the current terminal's number but zero padded, i.e.01to12. default:<Super>0next_profileβ switches to the next profile. (no default)previous_profileβ switches to the previous profile. (no default)
π PROFILES π
these are the options Terminator currently supports in the profiles section, bestie. every single profile gets its own subsection with a header in the format [[name]] β like, one header per profile, no sharing β¨
π General π
allow_bold = booleanβ if set toTrue, text in the terminal can be displayed in bold. default:Truecopy_on_selection = booleanβ if set toTrue, text selections get automatically copied to the Clipboard, on top of being copied to the Primary Selection. default:Falsedisable_mousewheel_zoom = booleanβ if set toTrue,Ctrl+mouse_wheelwill not zoom or unzoom the terminal. default:Falseword_chars = stringβ specifies the characters that count as part of a single word when you're selecting text by word. hyphen and alphanumerics don't need to be specified (they're already in, obviously π ). ranges are allowed, e.g."A-Z". so like, ifword_chars = ","then"foo,bar"counts as a single word. default:-,./?%&#:_mouse_autohide = booleanβ if set toTrue, the mouse pointer gets hidden while you're typing. default:Trueterm = stringβ specifies the value Terminator assigns to the'TERM'environment variable. default:xterm-256colorcolorterm = stringβ specifies the value Terminator assigns to the'COLORTERM'environment variable. default:truecolorsplit_to_group = booleanβ if set toTrue, the terminal created by splitting gets inserted into the current terminal's group. default:Falseautoclean_groups = booleanβ if set toTrue, empty groups get removed. default:Trueuse_system_font = booleanβ if set toTrue, the system default font is used for text in the terminal. otherwise, the value offontgets used. default:Truefont = stringβ specifies which font to use for text in the terminal. β οΈ this option is ignored unlessuse_system_fontis set toFalse. default:Mono 10cursor_blink = booleanβ if set toTrue, the cursor blinks when you're not typing. default:Truecursor_shape = stringβ specifies the shape of the cursor. can be any of:'block','underline','ibeam'. default:blockcursor_color_default = booleanβ if set toTrue, the background and foreground colors of the terminal are used as the foreground and background colors for the cursor, respectively. default:Truecursor_fg_color = color stringβ specifies the foreground color to use for the cursor. β οΈ ignored unlesscursor_color_defaultis set toFalse. (no default)cursor_bg_color = color stringβ specifies the background color to use for the cursor. β οΈ also ignored unlesscursor_color_defaultis set toFalse. (no default)audible_bell = booleanβ if set toTrue, a sound plays when an application writes the escape sequence for the terminal bell. default:Falsevisible_bell = booleanβ if set toTrue, the terminal flashes when an application writes the escape sequence for the terminal bell. default:Falseurgent_bell = booleanβ if set toTrue, the window's urgency hint gets set when an application writes the escape sequence for the terminal bell. default:Falseicon_bell = booleanβ if set toTrue, a small icon shows up on the terminal titlebar when an application writes the escape sequence for the terminal bell. default:True
finishing this profile groupβs last bool before we move on, bestie:
force_no_bell= boolean β if you set this toTrue, the terminal bell is completely disabled. Default:False.
π οΈ Command
login_shell= boolean β ifTrue, the terminal runs the default shell (or whatevercustom_commandsays) as a login shell. That means the first argument passed to the shell/command will be'-l'. Default:False.use_custom_command= boolean β ifTrue, the value ofcustom_commandis used instead of the default shell. Default:False.custom_command= string β the command to execute instead of the default shell. Heads up: this option is ignored unlessuse_custom_commandis set toTrue.exit_action= string β what happens when the terminal is closed.'close'removes the terminal.'restart'restarts the shell (or the command specified bycustom_command).'hold'keeps the terminal open, even if the process in it has terminated. Default:close.
π¨ Colors
use_theme_colors= boolean β ifTrue, the themeβs foreground and background colors are used for the terminal. Otherwise, the values offoreground_colorandbackground_colorare used. Default:False.foreground_color= color string β the foreground color for the terminal. This option is ignored unlessuse_theme_colorsis set toFalse. Default:#AAAAAA.background_color= color string β the background color for the terminal. This option is ignored unlessuse_theme_colorsis set toFalse. Default:#000000.palette= string list of colors β the 16-color palette 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 β ifTrue, bold text gets brighter colors. Default:False.
π Background
background_darkness= float β the transparency of the background color. The value must be between0.0and1.0. This option is ignored unlessbackground_typeis set to'transparent'or'image'. Default:0.5.background_type= string β what kind of background the terminal has.'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 ofbackground_darkness. If this is set to'image', the image specified bybackground_imagewill be the background; the background color will then be drawn on top of it, with a transparency specified bybackground_darkness. Default:solid.background_image= path string β the path to an image that will be used as background. This option is ignored unlessbackground_typeis set to'image'.background_image_mode= string β how the background image is drawn.'stretch_and_fill'fills the terminal entirely, without necessarily maintaining aspect ratio.'scale_and_fit'fits the image inside the terminal, eventually leaving blank bars, while maintaining aspect ratio.'scale_and_crop'fills the terminal entirely, eventually cropping the image, while maintaining aspect ratio.'tiling'repeats the image as to fill the terminal. This option is ignored unlessbackground_typeis set to'image'. Default:stretch_and_fill.background_image_align_horiz= string β horizontal alignment of the background image. Can be any of:'left','center','right'. This option is ignored unlessbackground_typeis set to'image'. Default:center.background_image_align_vert= string β vertical alignment of the background image. Can be any of:'top','middle','bottom'. This option is ignored unlessbackground_typeis set to'image'. Default:middle.
π Scrolling
scrollbar_position= string β where the terminal scrollbar is put. Can be any of:'left','right','hidden'. Default:right.scroll_on_output= boolean β ifTrue, the terminall (their spelling, not mine π) will scroll to the bottom when an application writes text to it. Default:False.scroll_on_keystroke= boolean β ifTrue, the terminal scrolls to the bottom when typing. Default:True.scrollback_infinite= boolean β ifTrue, the terminal keeps the entire scrollback history. Default:False.scrollback_lines= integer β how many lines of scrollback history the terminal keeps. Lines that donβt fit in the scrollback history get discarted (yep, original spelling π). Note: setting large values can slow down rewrapping and resizing. This option is ignored unlessscrollback_infiniteis set toFalse. Default:500.
π Compatibility
backspace_binding= string β what code the backspace key generates. 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:ascii-del.delete_binding= string β what code the delete key generates. 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:escape-sequence.
π Titlebar
show_titlebar= boolean β ifTrue, the terminal has a titlebar showing the current title of that terminal. Default:True.title_hide_sizetext= boolean β ifTrue, the size of the terminal will not be written on its titlebar. Default:False.title_use_system_font= boolean β ifTrue, the system default font is used for text in the terminalβs titlebar. Otherwise, the value oftitle_fontis used. Default:True.title_font= string β which font to use for text in the terminalβs titlebar. This option is ignored unlesstitle_use_system_fontis set toFalse. Default:Sans 9.title_transmit_fg_color= color string β foreground color for the terminalβs titlebar when the terminal is focused. Default:#ffffff.title_transmit_bg_color= color string β background color for the terminalβs titlebar when the terminal is focused. Default:#c80003.title_inactive_fg_color= color string β foreground color for the terminalβs titlebar when the terminal is unfocused. Default:#000000.title_inactive_bg_color= color string β background color for the terminalβs titlebar when the terminal is unfocused. Default:#c0bebf.title_receive_fg_color= color string β foreground color for the terminalβs titlebar when the terminal is in a group and is receiving input while unfocused. Default:#ffffff.title_receive_bg_color= color string β background color for the terminalβs titlebar when the terminal is in a group and is receiving input while unfocused. Default:#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 β 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
thatβs the whole vibe π
β this page is TERMINATOR_CONFIG(5) from Terminator, dated 2023-10-10, and yes she ate. π
π¦ where this page comes from
- arch rolling: terminator 2.1.6-1 Β· GPL-2.0-only
- nixpkgs unstable: terminator 2.1.6
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms