tmux 新窗格将主目录作为默认目录而不是以前的目录

tmux 新窗格将主目录作为默认目录而不是以前的目录

例如,当我在具有 的窗格中按Ctrl+ (创建新窗格)时,新窗格将作为我的主文件夹启动。"PWD /tmp~

我在看https://unix.stackexchange.com/a/109255/72471它帮助我解决了有关 Windows 的相同问题。

但是,我无法split-window通过插入来解决问题

bind " split-window -c "#{pane_current_path}"

进入我的~/.tmux.conf.

我正在使用 tmux 1.9a,因此不希望为旧版本提供相当混乱的解决方案这里(无论如何,它在我的情况下不起作用):

bind '"' set default-path "" \; split-window -v \; set -u default-path

创建新窗格时,如何将tmux默认目录设置为窗格的当前路径?

答案1

尝试指定v垂直或h水平

我的.tmux.conf文件有:

bind \ split-window -h -c '#{pane_current_path}'  # Split panes horizontal
bind - split-window -v -c '#{pane_current_path}'  # Split panes vertically

(我使用\-作为一指窗格分割器。)

无论我身在何处,都会使用当前目录为我打开新窗格。
这对我来说当然是一个关键功能!

tmux 的另一件关键事情(这是本例中的问题)是您必须通过以下方式应用更改:

tmux source-file ~/.tmux.conf

请注意,关闭终端,甚至注销并重新启动,都不会应用 tmux 更改 - 您必须实际使用该命令(或使用Ctrl+ B :source-file ~/.tmux.conf)。

你可以看到我的完整内容.tmux.conf在以下位置查看我的完整文件https://github.com/durrantm/setups

答案2

bind '%' split-window -h -c '#{pane_current_path}'  # Split panes horizontal
bind '"' split-window -v -c '#{pane_current_path}'  # Split panes vertically
bind c new-window -c '#{pane_current_path}' # Create new window

添加最后一行以在新窗口中~/.tmux.conf维护。$PWD

答案3

那是因为,

bind " split-window -c "#{pane_current_path}"

应该

bind '"' split-window -c "#{pane_current_path}"

答案4

如果有人通过搜索到达这里,这适用于 tmux 2.7,并且可能适用于所有版本

unbind '"'
bind '"' split-window -v -c '#{pane_current_path}'  # Split panes vertically

unbind %
bind % split-window -h -c '#{pane_current_path}'  # Split panes horizontal

相关内容