2014-10-18 67 views
15

我已經在linux系統和Mac OSX上使用了tmux,沒有任何問題。我知道,截至1.9版本(根據tmux -V,我有1.9a),你需要按照tmux split-window -c "#{pane_current_path}"的方法做一些事情。但這並不奏效。似乎沒有任何工作。Windows 7上的cygwin + tmux - 爲什麼tmux不會使用當前路徑?

最好的「暗示」我能給的是,-c參數出現某種形式的認可,我得到一個錯誤說是無效的路徑,如果我給它,我知道並不存在一個明確的路徑。然而,給它一個明確的路徑什麼都不做(我想也許有一個問題,使用pane_current_path

這裏有兩個問題的機會,因爲tmux不在當前文件夾中啓動,這是默認行爲,我相信。

任何人都知道這是怎麼回事?這是預期的行爲?我缺少一個圖書館的地方?

+0

我不確定downvote是什麼...我唯一的假設(因爲沒有直接的反饋)是它來自不熟悉cygwin和/或tmux的人,所以我不確定爲什麼有這裏開始。如果保持當前路徑爲其他人開箱即用,那肯定會很高興知道。 – toadjamb 2014-10-19 06:55:17

+1

剛剛在cygwin上安裝了tmux,看到了同樣的問題。你有沒有找到解決方案? – nfarrar 2015-05-11 22:05:05

+1

@nfarrar - kraiz回答OP的解決方案,OP未能承認和接受。 – 2015-07-31 15:31:28

回答

13

在以下的.tmux.conf ::

set-environment -g CHERE_INVOKING 1 

然後tmux split-window -c "#{pane_current_path}"下降我在/,但tmux split-window -c $PWD的作品。

發現在使用set-environment$PWD我沒有工作http://article.gmane.org/gmane.comp.terminal-emulators.tmux.user/5921

+0

這對我不起作用。運行命令'tmux show-environment'時,CHERE_INVOKING應該出現嗎? – anishpatel 2015-11-23 17:23:30

+1

適合我。謝謝! – Wizmann 2016-03-28 05:32:21

+0

像魅力一樣工作,謝謝!希望我能在一個小時前找到這個答案,然後再看看所有其他該死的Slashdot答案。 – Dakusan 2018-02-12 18:43:59

8

kraiz's answer

相反,我設置環境變量在我的登錄腳本(~/.bash_profile對於bash,~/.zprofile爲zsh中):

export CHERE_INVOKING=1 

此外,$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}" 

軟件:TMUX 2.0,Cygwin的35年7月1日,zsh的5.0.6中,Windows 10

0

#{pane_current_path}總是給我留下的/"$PWD"總是讓我在~。我卸載了Ubuntu的軟件包並編譯了github master branch,現在它可以和#{pane_current_path}完美配合。

+0

你有沒有改變別的嗎?它不適合我(與主人覈對)。 – laktak 2016-11-14 14:56:25

+0

不用我只需要從主站安裝。你安裝了所有的依賴關係嗎? – Marcel 2016-11-14 14:57:16

+0

是的。 'tmux -V'說2.4。 – laktak 2016-11-14 14:58:57