Termite
Termite is a minimal VTE-based terminal emulator. It is a modal application, similar to Vim, with an insert mode and selection mode where keybindings have different functions.
The configuration file allows changing colors and setting options. Termite supports transparency along with both the 256 color and true color (16 million colors) palettes. It has a similar look and feel to urxvt.
Installation
Install the termiteAUR package.
Usage
Termite starts in insert mode by default. Text may be selected using the mouse, or by using selection-mode keys. In insert mode, Ctrl+Shift+c
is used to copy selected text to the X clipboard, Ctrl+Shift+v
to paste. Ctrl+Tab
starts scrollback completion, and Ctrl+Shift+Up
/ Ctrl+Shift+Down
scroll the screen up or down.
Ctrl+Shift+Space
enters selection-mode, similar to vim's normal-mode. Many commands are borrowed from Vim, for example v
for visual mode, Shift+v
for visual line mode, Ctrl+v
for visual block mode, y
to copy ("yank") selected text, /
and ?
for searching, w
, b
, ^
, $
for movement, and Escape
to go back to insert mode.
Configuration
Termite looks for configuration files in $XDG_CONFIG_HOME/termite/config
, ~/.config/termite/config
, $XDG_CONFIG_DIRS/termite/config
and /etc/xdg/termite.cfg
. The configuration file is used to change options such as font, colors, window hints, etc. The configuration file syntax is inspired by XDG Desktop Entry Specification .desktop files (inspired by Microsoft Windows .ini files), with three sections: options, colors, and hints.
To start customizing termite copy the base example file to your home dir first:
$ cp /etc/xdg/termite/config ~/.config/termite/config
Font
Fonts are specified in the format font=<font_name> <font_size>
under the options section. <font_name>
is specified according to fontconfig, not Xft. Use fc-list
to see which fonts are available on the system (see also Font configuration#Font paths).
~/.config/termite/config
[options] font = Monospace 9 font = xos4 Terminus 12px font = Droid Sans Mono 8
cell_height_scale=<scale>
property to scale the height of a line (this will not scale the font - it will just add padding above and below a line). According to [1], this property only works for scale values >= 1.Colors
Colors consist of either a 24-bit hex value (e.g. #4a32b1
), or an rgba vector (e.g. rgba(16, 32, 64, 0.5)
). Valid properties for colors are foreground
, foreground_bold
, foreground_dim
, background
, cursor
, cursor_foreground
, and colorN
(where N is an integer from zero through 254; used to assign a 24-bit color value to terminal colorN).
An amazing collection of termite color schemes can be found here: https://github.com/khamer/base16-termite/tree/master/themes
~/.config/termite/config
[colors] foreground = #dcdccc background = #3f3f3f
Reload configuration without exiting
You can reload Termite's configuration file without exiting by pressing Ctrl+Shift+r
from within Termite.
Alternatively, you can send a USR1
signal to all Termite instances:
$ killall -USR1 termite
Transparency
As of version 9, Termite supports true transparency via color definitions that specify an alpha channel value [2]. This requires a compositor to be running, such as picom or xcompmgr. Most compositors do not require special configuration for Termite to use transparency.
~/.config/termite/config
[colors] background = rgba(63, 63, 63, 0.8)
_NET_WM_STATE=_NET_WM_STATE_HIDDEN
fully transparent to solve this. For example, for picom use
~/.config/picom.conf
opacity-rule = [ "0:_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'" ];
Troubleshooting
Ctrl+Shift+t
If opening a new tab through Ctrl+Shift+t
fails with no directory uri set
, source /etc/profile.d/vte.sh
. See GNOME/Tips and tricks#New terminals adopt current directory.
If it continues to fail, ensure your hostname is valid. See hostname(7).
Remote SSH error
When Termite is using remote SSH connection sometimes the error occurs: Error opening terminal: xterm-termite. or Open terminal failed: missing or unsuitable terminal: xterm-termite.
This error can occur when trying to edit file with vim or nano. To fix this issue you should execute this command on the remote system:
$ export TERM=xterm-color
Alternatively, follow the instructions on Termite's GitHub. This will allow you to use all of Termite's features when using SSH, whereas the above may not. [3]
Terminal issues with SSH
When Termite is used for SSH connections to a remote system which does not have its Terminfo, various issues (such as non-working backspace and weird cursor behaviour) could happen. The solution is to send your Terminfo to the remote host.
On the local host, using Termite:
$ infocmp > termite.terminfo # export Termite's Terminfo $ scp termite.terminfo user@remote-host:~/ # or any other method to copy to the remote host
On the remote host, in the directory where you copied termite.terminfo
:
$ tic -x termite.terminfo # import Terminfo for current user $ rm termite.terminfo # optional: remove Terminfo file