題 如何在tmux中按ctrl +左/右鍵移動整個單詞?


在zsh和bash中,ctrl +箭頭允許我按整個字移動我正在鍵入的位置,但是這在tmux中不起作用,這是一個問題,因為我每次打開shell時都會自動啟動它。

我怎樣才能解決這個問題?


94
2017-11-23 19:43


起源




答案:


  1. 編輯你的 ~/.tmux.conf 並添加行:

    set-window-option -g xterm-keys on
    
  2. 如果您還不想讓它永久化,請執行以下操作:

    C-b :set-window-option xterm-keys on
    
  3. 通過執行以下操作在tmux中重新加載配置:

    C-b :source-file ~/.tmux.conf
    

更多信息 這裡


122
2018-02-29 11:04



奇怪:只有當我從tmux重新加載〜/ .tmux.conf文件或在tmux的:--prompt中設置動作時,這才適用於我,而不是在我打開tmux時。任何想法可能是那裡的問題? - AME
@AME關閉所有tmux會話然後再試一次。 - Nathan
如果重新加載配置無法解決問題(對我來說就是這種情況),請嘗試新的會話。也許您需要殺死當前會話並創建一個新會話。使其在窗格(而非會話)中生效的另一個選項是C-b:respawn-pane -k - fstang
這對我來說很有用。我想知道為什麼它默認不啟用? - inetknght
殺死會話,或其他什麼 set-window-option -g xterm-keys on 在我的情況下仍然沒有做任何事情。 - noraj


set-window-option -g xterm-keys on

給了我一些方式並給了我 按Ctrl - 左右 在控制台上,但它在vim中仍然有不同的反應。

取消綁定鍵似乎沒有幫助。

事實證明,在某些時候我將我的默認終端設置為屏幕(set-option -g default-terminal "screen" 在 .tmux.conf

將此更改為以下內容給了我 按Ctrl - 左右 在其他一切:

set-option -g default-terminal "xterm-256color"

希望能幫到別人。


8
2018-06-11 10:38



除了這打破了vim,tig的顏色,並且可能是其他一大堆東西...... - koniiiik
也可以看看 unix.stackexchange.com/a/1098/250 關於在tmux中設置TERM的建議 - phunehehe


對於msys2 / Cygwin / mintty:

添加到下面 ~/.inputrc

"\e[1;5C": forward-word   # ctrl + right
"\e[1;5D": backward-word  # ctrl + left 

重新加載會使tmux正常工作。


3
2017-10-19 02:05





我不確定,但這可能是因為 tmux 默認情況下綁定 C-<up/down/left/right> 將焦點移動到當前聚焦窗格上方/下方/左側/右側的窗格。如果您不經常使用窗格,則可能沒有註意到此功能。如果這就是問題所在,您可以通過以下方式取消綁定這些鍵:

unbind C-Left
unbind C-Right

這可能就足夠了,或者您可能需要再次手動將它們綁定到您希望它們執行的操作,方法是:

bind -n C-Left <the action you want>
bind -n C-Right <other action you want>

1
2017-12-08 10:49



它本身應該足夠了,如果它沒有被tmux抓住,它應該傳遞給shell。 - Rob


對我來說,密鑰沒有被正確綁定,因為High Sierra中的系統偏好設置為Mission Control使用。 取消選中這些允許正確的綁定在iTerm2和Tmux中工作

System Preferences

取消選中引用控制鍵的所有項目,允許綁定正常工作


0
2018-01-24 08:44