![~/.tmux.conf 在启动时不起作用,但在使用“源文件”时起作用](https://linux22.com/image/1585067/~%2F.tmux.conf%20%E5%9C%A8%E5%90%AF%E5%8A%A8%E6%97%B6%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8%EF%BC%8C%E4%BD%86%E5%9C%A8%E4%BD%BF%E7%94%A8%E2%80%9C%E6%BA%90%E6%96%87%E4%BB%B6%E2%80%9D%E6%97%B6%E8%B5%B7%E4%BD%9C%E7%94%A8.png)
我想启动带有两个窗格的 tmux,并让其中一个窗格运行一个程序:
[0] [ishpeck@kiyoshi ~]$ cat ~/.tmux.conf
split-window -h top
[0][ishpeck@kiyoshi ~]$ tmux
当 tmux 启动时,显示错误:
/home/ishpeck/.tmux.conf:1:没有当前目标
在 tmux 仍然打开的情况下,我点击字首然后输入“:源 ~/.tmux.conf“并且它按预期工作。为什么它在启动时从不工作,但在我获取它时却工作正常?
答案1
我想出了一个仅涉及 tmux 但仍然涉及第二个文件的解决方案。
在你的 tmux.conf 中添加以下行:
set-hook -g after-new-session "source-file /path/to/tmux-windows.conf"
然后将您的窗口和分割放入该 tmux-windows.conf 文件中。
答案2
现在查看了 tmux 的代码,似乎配置文件被读取前有任何会话。改变它并不是一件容易的事。
根据 Aulis Ronkainen 的评论,最好的选择似乎是有一个运行 tmux 命令的 shell 脚本。