我有一个 tmux 配置,其中一行bind r source-file ~/.tmux.conf
是~/.tmux.conf
我当前的 tmux 配置。
这工作正常并且有一个状态栏,如下所示:
[ cpStudy ] * 96% ( 0:nvim *) [ 05-12 - 10:56 ]
但是,当我启动一个新的 tmux 会话(通常使用tmux
)时,配置似乎无法正确加载,并且我得到以下状态栏
[3] ( 0:zsh *) "cpj@cpStudy: ~" 10:58 05-Dec-18
这似乎是默认状态栏,而不是配置中的状态栏。重新加载prefix+r
给了我正确的栏,因此必须加载绑定的热键
答案1
我曾经遇到过同样的问题,并且非常沮丧,最后我发现这是因为我使用了主题插件,删除该插件后,tmux 可以获取 ~/.tmux.conf 并完美应用状态栏样式。
我在 ~/.tmux.conf 中删除了这一行
# theme
set -g @plugin 'jimeh/tmux-themepack'
答案2
配置tmux
文件是在tmux
服务器启动时获取的。从文档中:
The configuration file is a set of tmux commands which are executed in
sequence when the server is first started. tmux loads configuration files
once when the server process has started. The source-file command may be
used to load a file later.
您的配置未应用的原因可能是当您更改配置文件时仍然至少有一个活动会话。您可以尝试关闭所有活动会话来停止服务器,然后打开一个新会话来重新启动服务器。 (一台tmux
服务器处理所有会话,因此仅重新启动会话不足以读取更新配置。)