谁能帮我设置这个配置?
如果我创建一个新窗格,新窗格应该在与我刚刚所在的窗格相同的工作目录中开始。如果我创建一个新窗口,新窗口应该在主目录(或任何其他全局默认路径)中开始)。
tmux 1.8 可以实现吗?
mmo*_*oya 71
尝试设置:
bind c new-window -c "#{pane_current_path}"
Run Code Online (Sandbox Code Playgroud)
在我的情况下,新窗格也无法在当前目录中启动。添加-c "#{pane_current_path}"
到split-window
绑定修复了这个问题。例子:
bind c new-window -c "#{pane_current_path}"
bind | split-window -h -c "#{pane_current_path}"
bind - split-window -v -c "#{pane_current_path}"
Run Code Online (Sandbox Code Playgroud)
我在这里找到了pane_current_path
诀窍。它也记录在 upstream 中。CHANGES
小智 8
虽然@mmoya 的答案适用于 tmux 1.9 及更高版本,但早期版本中不存在-c
for 选项new-window
。对于早期版本,这需要对default-path
. 这是我如何在我的.tmux.conf
文件中设置它。
set -g default-path "~"
bind % set default-path "" \; split-window -h \; set -u default-path
bind '"' set default-path "" \; split-window -v \; set -u default-path
Run Code Online (Sandbox Code Playgroud)
这使得new-window
命令使用全局default-path
. 但是,当将窗口拆分为窗格时,它会使本地default-path
覆盖它。