windows 7上的cygwin + tmux - 为什么tmux不会使用当前路径?

toa*_*amb 20 cygwin windows-7 tmux

我在linux系统和Mac OSX上使用过tmux没有问题.我知道从版本1.9(根据我的1.9a tmux -V),你需要做一些事情tmux split-window -c "#{pane_current_path}".但这不起作用.似乎没什么用.

我能给出的最好的"提示"是-c参数似乎以某种形式被识别,因为如果我给它一个我知道不存在的显式路径,我会得到关于无效路径的错误.但是,给它一个明确的路径什么都不做(我想也许使用时有问题pane_current_path.

这里有两个问题,因为tmux不会在当前文件夹中启动,这是默认行为,我相信.

谁知道发生了什么事?这是预期的行为吗?我在某个地方错过了一个图书馆吗?

kra*_*aiz 19

在你的.tmux.conf:::

set-environment -g CHERE_INVOKING 1
Run Code Online (Sandbox Code Playgroud)

然后tmux split-window -c "#{pane_current_path}"放我/,但tmux split-window -c $PWD工作.

http://article.gmane.org/gmane.comp.terminal-emulators.tmux.user/5921

  • 为我工作。谢谢! (2认同)

ani*_*tel 12

kraiz的回答使用set-environment并且$PWD对我不起作用.

相反,我在我的登录脚本中设置环境变量(~/.bash_profile对于bash,~/.zprofile对于zsh):

export CHERE_INVOKING=1
Run Code Online (Sandbox Code Playgroud)

另外,$PWD对我不起作用,但#{pane_current_path}确实如此.这是我的一个片段.tmux.conf:

bind c new-window -c "#{pane_current_path}"
bind '"' split-window -c "#{pane_current_path}"
bind % split-window -h -c "#{pane_current_path}"
Run Code Online (Sandbox Code Playgroud)

软件:tmux 2.0,Cygwin 1.7.35,zsh 5.0.6,Windows 10