默认的 tmux 配置文件在哪里?

默认的 tmux 配置文件在哪里?

我正在寻找默认设置.tmux.conf或类似设置。我试图消除默认设置造成的状态行噪音。

答案1

默认配置不能作为普通配置文件使用;它是源代码的一部分(因此内置于编译的程序中)。

您可以使用以下命令检查配置的各个部分list-keysshow-options

tmux list-keys         # show current bindings

tmux show-options -s   # show current server options

tmux show-options -g   # show current global session options
tmux show-options      # show current session options

tmux show-options -gw  # show current global window options
tmux show-options -w   # show current window options

tmux1.7,show-options还可以显示单个选项的值(之前的版本只能列出指定类的所有选项):

tmux show-options -gw window-status-format

如果您对“原始”服务器的默认配置感兴趣,那么您可以像这样检查这些项目:

tmux -L unconfigured -f /dev/null start-server \; list-keys \; show-options -s \; show-options -g \; show-options -gw

-L unconfigured位指定您可能尚未使用的服务器套接字(如果您碰巧有一个使用该套接字名称的服务器,则只需选择其他未使用的名称)。确保-f /dev/null服务器不使用您的正常~/.tmux.conf配置文件(尽管,如果没有自定义构建,则无法跳过/etc/tmux.conf系统配置文件)。该start-server命令是必需的,因为只有某些命令才能自动启动服务器。


如果您有兴趣查看源代码,以下是感兴趣的区域:

  • 选项定义在options-table.c在这些数组中:
    • server_options_table
    • session_options_table
    • window_options_table
  • 绑定开始key_bindings_init()key-bindings.c但有些细节分散在各个命令定义中(cmd_select_window_key_binding()例如cmd-select-window.c)。

答案2

您的用户应该有一个$HOME/.tmux.conf特定的配置文件,并且系统范围的配置文件位于/etc/tmux.conf

相关内容