題 tmux忽略配置文件


我剛剛在Ubuntu 10.04上安裝了tmux,並嘗試將前綴密鑰重新映射到 C-a 通過創建文件 ~/.tmux.conf 用這些線:

set-option -g prefix C-a
unbind-key C-b

當啟動tmux時,定期和使用 -f ~/.tmux.conf,前綴實際上是默認的相同 C-b

沒有任何錯誤或警告。

知道加載conf有什麼問題嗎?


75
2017-09-14 12:22


起源


這個對我有用。試試跑步 strace -s9999 -f -o tmux.strace tmux -c true 並發布的輸出 grep -C5 'tmux\.conf' tmux.strace。 - Gilles
我有同樣的問題,沒有現有會話,('tmux ls'報告連接被拒絕,即沒有運行),但它仍然沒有讀取conf文件。我在/ usr中用某個CWD啟動它,但當我切換到〜/並啟動tmux時,它處理了conf文件。這是奇怪的行為,但這是要檢查的東西。 - Ranko Kohime


答案:


首次啟動tmux服務器時會加載〜/ .tmux.conf文件。因此,如果存在tmux會話,則啟動新會話 tmux 不會導致重新加載.tmux.conf文件。嘗試重新啟動tmux服務器:使用該命令 tmux list-sessions 查看是否存在會話。退出它們(例如 tmux attach 然後殺死所有窗口並退出)。一旦所有會話都消失了,試試吧 tmux 再次。這次重新綁定應該有效。


102
2017-11-18 00:11



killall tmux 要么 tmux kill-server 也會完成工作 - Matt
我用了 killall tmux 和 tmux kill-server 仍然我的conf沒有加載。我可以確認它是有效的,因為使用 :source-file ~/.tmux.conf 在tmux中確實會使配置發生變化!無法弄清楚導致此行為的原因。 - Ambidex
我想知道為什麼在這個答案中沒有提到重新加載配置。它有時有效,有時則無效。有什麼想法嗎? - DarthPaghius


要重新加載〜/ .tmux.conf而不中斷會話,您可以執行以下操作:

C-b :source-file /absolute/path/to/your/.tmux.conf

44
2018-02-23 08:20



您可以將以下內容添加到.tmux.conf中以使用Ctrl-A r重新加載: bind r source-file ~/.tmux.conf \; display-message "Config reloaded..." - RedPixel


在你的tmux會話中運行:

tmux source-file /absolute/path/to/your/.tmux.conf

17
2018-02-17 07:34





還有一個默認的鍵盤快捷鍵綁定來重新加載你的 ~/.tmux.conf,至少在我的安裝中: C-b r。如果你打了 C-b ? 它會顯示所有綁定鍵盤快捷鍵的列表,因此您可以查看是否已經定義了一個鍵盤快捷鍵。


2
2017-12-31 15:39



這特定於您的安裝/配置。默認情況下, <prefix> r 一定會 refresh-client (你所描述的將是類似的東西 source ~/.tmux.conf)。 - Chris Johnsen


我有這個問題,因為我正在使用 TMUX,下一

最初我只是通過顯式傳遞配置文件解決了它 tmux -f ~/.tmux.conf 正如這裡的問題所指出的那樣。 (我已經把tmux別名 - 在tmux旁邊。)

然後我意識到tmux-next正在使用tmux-next.conf,所以如果使用它只需要對它進行符號鏈接,只需要運行下一個tmux版本。

ln -s ~/.tmux.conf ~/.tmux-next.conf


0
2018-03-15 15:35