tmux配置
tmux配置文件(tmux.conf)
默认情况下,
tmux
在两个地方查找配置设置。它首先在
/etc/tmux.conf
中查找系统范围的配置。然后,它会在当前用户的主目录中查找名为" .tmux.conf"的文件。
如果这些文件不存在,则
tmux
仅使用其默认设置
目前,我们将为我的root用户创建用户特定的tmux
配置文件。
# touch ~/.tmux.conf
1.更改前缀组合
我们要做的第一件事是更改前缀组合。
使用ctrl + b几乎不会触发,因为键盘上的按钮已经很远了,因此我们将其更改为ctrl + a
说明:
我们可以将第三方工具用作Windows上的自动热键,以将Capslock密钥映射到ctrl,以便我们更方便地访问Prefix组合
要更改前缀组合,请在~/.tmux.conf中添加以下内容
# Setting the prefix from C-b to C-a set -g prefix C-a
其中我们使用
-g
开关进行全局设置,该开关为我们创建的所有tmux
会话设置选项。不必要,但是我们可以使用unbind-key或者unbind命令删除已定义的键绑定,因此稍后我们可以为该键分配其他命令。
让我们在~/.tmux.conf中释放这样的Ctrl-b:
# Free the original Ctrl-b prefix keybinding unbind C-b
tmux不会自动读取对文件的更改。
因此,如果我们在运行tmux
时正在编辑.tmux.conf
文件,则需要完全关闭所有tmux
会话,或者使用Prefix
::进入tmux
命令模式。
每当我们进行更改时,请键入以下内容:source-file~/.tmux.conf
现在,对于任何新会话,我们都可以使用Ctrl + a作为新的前缀组合。
2.更改默认延迟
前缀组合和命令之间的默认延迟值非常小,有时不起作用,因此我们可以增加延迟值
要更改默认延迟值,我们在~/.tmux.conf文件中添加以下内容
#setting the delay between prefix and command set -s escape-time 5
现在,对于所有新的tmux会话,点击Prefix后,我们将有5秒钟的时间输入命令按键
3.设置窗口和窗格索引
默认情况下,我们知道所有窗口或者窗格都以索引0开头。
因此,我们可以定义自己的索引值,每次在tmux
会话中打开新窗口或者窗格时,该值都将被视为基础
要为新窗口定义自定义索引值,请在~/.tmux.conf文件中添加以下内容
# Set the base index for windows to 1 instead of 0 set -g base-index 1
要为新窗格定义自定义索引值,请在~/.tmux.conf
文件中添加以下内容
# Set the base index for panes to 1 instead of 0 set -g pane-base-index 1
现在,我们可以开始一个新会话并验证索引基值
4.创建快捷方式以重新加载配置文件
每次修改tmux
配置文件时,我们都必须
关闭所有
tmux
会话并重新启动它们在所有会话上使用源文件
~/.tmux.conf
重新加载配置文件
让我们创建一个自定义按键绑定以重新加载配置文件。
bind命令定义一个新的键绑定。
我们指定要使用的密钥,然后指定要执行的命令。
让我们定义Prefix
r
,以便它在当前会话中重新加载.tmux.conf
文件。
将此行添加到~/.tmux.conf文件中。
提示:重新加载文件时,可能无法始终分辨出任何更改,但是可以使用display命令在状态行中显示一条消息。
# Set bind key to reload configuration file bind r source-file ~/.tmux.conf \; display "Reloaded!"
现在,我们可以使用带有r
键的Prefix
重新加载配置文件,并且状态栏应显示为Reloaded!因此我们知道新的配置文件更改已应用
5.分割窗格
前缀%的默认组合很难被击中,因为它涉及4次击键Ctrl + a Fun + 5,因此我们可以定义一个cstom绑定组合来拆分窗格。
我们将水平分割设置为Prefix |和垂直分割为Prefix
# splitting panes with | and bind | split-window -h bind - split-window -v
6.启用鼠标支持
我们知道,tmux完全由键盘驱动,但有时使用鼠标可以方便地进行移动。
有时候,可以使用鼠标滚轮在终端缓冲区中向上滚动,或者选择窗口和窗格,这非常好,尤其是在我们刚开始使用tmux时。
要配置tmux,以便我们可以使用鼠标,我们需要启用鼠标模式。
# Enable mouse support set -g mouse on
此设置配置了" tmux",因此它将使我们能够使用鼠标来选择窗格或者调整窗格的大小,让我们单击窗口列表来选择一个窗口,甚至让我们使用鼠标向后滚动缓冲区(如果终端)支持它。
7.更改默认编辑器
status-key选项使我们可以修改在tmux命令提示符下键入时移动光标的方式。
tmux的默认设置是使用Emacs模式键,因此如果我们是Emacs用户,则可能已经准备就绪。
tmux还尝试提供帮助,并且可能会根据环境变量默认切换到一个组或者另一个组。
要切换到vi
编辑器,我们可以使用
# Set vi as the default editor set -g status-keys vi
8.更改状态栏的背景和前景色
状态栏的默认颜色是绿色阴影。
我们可以使用以下命令更改状态栏的默认背景和前景
# set the status line's colors set -g status-style fg=white,bg=blue
提示:有些终端支持256种颜色的完整xterm调色板,有些仅支持16种颜色,有些则不支持任何颜色。
由于终端颜色主题的缘故,大多数显示器都有自己的色彩风格,因此我们指定为蓝色的内容可能根本不会在屏幕上呈现为蓝色。
9.高亮显示活动窗口
当我们有多个窗口时,默认情况下,我们可以通过选中星号来标识活动窗口。
我们还可以为活动窗口分配自定义背景色,这可以帮助我们轻松确定:
# Set different background color for active window set -g window-status-current-bg magenta
10.显示可用选项
现在,我们可以根据需要使用tmux进行配置,以简化生活。
要获取支持的选项列表,我们需要启动tmux会话
# tmux
接下来,使用前缀d断开会话。
现在,在终端上,我们可以使用不同的命令来查看受支持的选项:
获取全局选项列表
# tmux show-options -g
获取窗口选项列表
# tmux show-options -w
获取服务器选项列表
# tmux show-options -s
因此,我们可以在tmux.conf
配置文件中添加自定义值并绑定键。