TMUX使用HJKL导航窗格

Apa*_*ear 40 tmux

标准TMUX设置为在窗格之间导航时使用ctrl-b + [向上,向下,向左,向右].

我想这样做,以便我可以使用ctrl-b(或我选择的前缀)+ [h,j,k,l].

我以为我在我的~/.tmux.conf设置中使用以下vi键完成了此操作:

set -g status-keys vi
setw -g mode-keys vi
Run Code Online (Sandbox Code Playgroud)

然而,这似乎没有任何改变(至少不是我想要的).我怎样才能让它发挥作用.是的,我.tmux.conf的工作正常.如果需要,我可以提供更多信息.

更新:

尝试使其工作后,这是我的完整.tmux.conf:

set -g status-keys vi
setw -g mode-keys vi

set -g prefix C-a
unbind C-b
bind C-a send-prefix


# smart pane switching with awareness of vim splits
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
Run Code Online (Sandbox Code Playgroud)

或者,我尝试使用这个w/vim-tmux-navigator Vim插件:

# smart pane switching with awareness of vim splits
bind -n C-h run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-h) || tmux select-pane -L"
bind -n C-j run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-j) || tmux select-pane -D"
bind -n C-k run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-k) || tmux select-pane -U"
bind -n C-l run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys C-l) || tmux select-pane -R"
bind -n C-\ run "(tmux display-message -p '#{pane_current_command}' | grep -iq vim && tmux send-keys 'C-\\') || tmux select-pane -l"
Run Code Online (Sandbox Code Playgroud)

资源

哪个也不起作用.我有点难过.

Mic*_*ith 51

你可以这样做:

bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R
Run Code Online (Sandbox Code Playgroud)

注意,mode-keys指的是在缓冲区中使用类似vi的导航,并且status-keys指的是在状态栏中使用类似vi的编辑,但都不是指在窗格之间切换.

  • 也适用于我的系统(OSX Yosemite; tmux 2.0).我从github用户实现了这个配置:https://gist.github.com/rssvihla/789284. (2认同)

Eri*_*c S 11

你还记得找到你的〜/ .tmux.conf文件吗?在此文件中进行任何更改后,您需要输入以下命令以查看是否发生了任何更改

tmux source-file ~/.tmux.conf
Run Code Online (Sandbox Code Playgroud)