Termite

出自 ArchWiki

Termite 是一个极简的基于 VTE终端模拟器。它是一个模态应用,类似于 Vim,具有插入模式和选择模式,在这些模式下,按键绑定具有不同的功能。

配置文件允许更改颜色和设置选项。Termite 支持透明度以及 256 色和真彩色(1600 万色)调色板。它具有类似于 urxvt 的外观和感觉。

安装

安装 termiteAUR 软件包。

使用

Termite 默认以插入模式启动。可以使用鼠标或使用选择模式键选择文本。在插入模式下,Ctrl+Shift+c 用于将选定的文本复制到 X 剪贴板,Ctrl+Shift+v 用于粘贴。Ctrl+Tab 启动回滚完成,Ctrl+Shift+Up / Ctrl+Shift+Down 向上或向下滚动屏幕。

Ctrl+Shift+Space 进入选择模式,类似于 vim 的普通模式。许多命令借用自 Vim,例如 v 代表可视模式,Shift+v 代表可视行模式,Ctrl+v 代表可视块模式,y 代表复制(“yank”)选定的文本,/? 代表搜索,wb^$ 代表移动,以及 Escape 返回插入模式。

配置

Termite 在 $XDG_CONFIG_HOME/termite/config~/.config/termite/config$XDG_CONFIG_DIRS/termite/config/etc/xdg/termite.cfg 中查找配置文件。配置文件用于更改字体、颜色、窗口提示等选项。配置文件的语法受到 XDG Desktop Entry Specification .desktop 文件(灵感来自 Microsoft Windows .ini 文件)的启发,包含三个部分:optionscolorshints

要开始自定义 termite,请首先将基本示例文件复制到您的主目录

$ cp /etc/xdg/termite/config ~/.config/termite/config

字体

字体在 options 部分下以 font=<font_name> <font_size> 格式指定。<font_name> 根据 fontconfig 而不是 Xft 指定。使用 fc-list 查看系统上可用的字体(另请参阅 字体配置#字体路径)。

~/.config/termite/config
[options]
font = Monospace 9
font = xos4 Terminus 12px
font = Droid Sans Mono 8
提示: 您还可以指定 cell_height_scale=<scale> 属性来缩放行的高度(这不会缩放字体 - 它只会在线的上方和下方添加填充)。根据 [1],此属性仅适用于比例值 >= 1。

颜色

颜色由 24 位十六进制值(例如 #4a32b1)或 rgba 向量(例如 rgba(16, 32, 64, 0.5))组成。颜色的有效属性为 foregroundforeground_boldforeground_dimbackgroundcursorcursor_foregroundcolorN(其中 N 是从零到 254 的整数;用于为终端颜色 N 分配 24 位颜色值)。

可以在这里找到 Termite 配色方案的精彩集合:https://github.com/khamer/base16-termite/tree/master/themes

~/.config/termite/config
[colors]
foreground = #dcdccc
background  = #3f3f3f

无需退出重载配置

您可以通过在 Termite 中按下 Ctrl+Shift+r 来重载 Termite 的配置文件,而无需退出。

或者,您可以向所有 Termite 实例发送 USR1 信号

$ killall -USR1 termite

透明度

从版本 9 开始,Termite 通过指定 alpha 通道值的颜色定义支持真透明度 [2]。这需要运行合成器,例如 picomxcompmgr。大多数合成器不需要特殊配置即可让 Termite 使用透明度。

~/.config/termite/config
[colors]
background = rgba(63, 63, 63, 0.8)
注意:i3 中,在堆叠/选项卡式布局中,这会显示所有窗口“堆叠”在彼此之上,按照它们最近在前台的顺序,而不是直接在 Termite 后面显示桌面(根窗口)。这是因为 i3 重新排序窗口而不是隐藏平铺模式下的不可见窗口。您可以配置您的合成器,使具有 _NET_WM_STATE=_NET_WM_STATE_HIDDEN 的窗口完全透明以解决此问题。例如,对于 picom,请使用
~/.config/picom.conf
opacity-rule = [
  "0:_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'"
];

故障排除

Ctrl+Shift+t

如果通过 Ctrl+Shift+t 打开新标签页失败并显示 no directory uri setsource /etc/profile.d/vte.sh。请参阅 GNOME/技巧和窍门#新终端采用当前目录

如果仍然失败,请确保您的 主机名 有效。请参阅 hostname(7)

远程 SSH 错误

当 Termite 使用远程 SSH 连接时,有时会出现错误:Error opening terminal: xterm-termite.Open terminal failed: missing or unsuitable terminal: xterm-termite.

当尝试使用 vim 或 nano 编辑文件时,可能会发生此错误。要解决此问题,您应该在远程系统上执行此命令

$ export TERM=xterm-color

或者,按照 Termite GitHub 上的说明进行操作。这将允许您在使用 SSH 时使用 Termite 的所有功能,而上述方法可能无法实现。[3]

SSH 终端问题

当 Termite 用于 SSH 连接到没有 Terminfo 的远程系统时,可能会发生各种问题(例如,退格键无法工作和奇怪的光标行为)。解决方案是将您的 Terminfo 发送到远程主机。

在本地主机上,使用 Termite

$ infocmp > termite.terminfo  # export Termite's Terminfo
$ scp termite.terminfo user@remote-host:~/  # or any other method to copy to the remote host

在远程主机上,在您复制 termite.terminfo 的目录中

$ tic -x termite.terminfo  # import Terminfo for current user
$ rm termite.terminfo  # optional: remove Terminfo file
注意: 之后,您需要启动一个新的 SSH 会话才能让远程 shell 加载新的 Terminfo。

参见