2016-06-30 2 views
2

나는 행운이없는 2 주 동안 이것을 알아 내려고 노력했습니다.Vim에서 tmux를 통해 제어 화살표 키를 사용할 수 없습니다.

저는 세션 관리자로 tmux를 사용하여 OSX에서 Iterm2를 사용하고 있습니다. 나는 .vimrc

"_____Easy change tab left and right____ 
nnoremap <C-Left> :tabprevious<CR> 
nnoremap <C-Right> :tabnext<CR> 
nnoremap <C-h> :tabprevious<CR> 
nnoremap <C-l> :tabnext<CR> 

에서 다음과 같은 두 가지 바인딩 VIM 설정이 이제 이상한 부분은 왼쪽 화살표는 말한다 동안 Ctrl 키 h와 L 바로 가기가 완벽하게 작동한다는 것입니다. (그것은 TMUX 외부에서 완벽하게 작동합니다!) 일어나고 있지만, 충돌 매핑을 표시하지 않습니다 :map를 사용하여 내 매핑을 확인해야 무슨 관련이없는 것 같다

E349: No identifier under cursor

. 그러나 나는 이것을 이해할 수 없다. 어떤 도움이라도 대단히 감사하겠습니다. 아래는 나의 tux.conf 파일이다. 이것은 tmux 외부에서 완벽하게 작동하기 때문에 vimrc가이 작업과 관련이 있어야한다고 생각하지 않습니다.

터미널과 tmux에 이상한 것을 보내고있는 Iterm2가 잘못 해석하고 있다는 느낌이 들지만, 어떻게 해결해야할지 모르겠다.

tmux.conf

#set -g default-terminal "xterm-256color" 
set -sg escape-time 0 

# remap prefix from 'C-b' to 'C-a' 
unbind C-b 
set-option -g prefix C-a 
bind-key C-a send-prefix 

# split panes using | and - 
bind | split-window -h 
bind - split-window -v 
unbind '"' 
unbind % 

# reload config file (change file location to your the tmux.conf you want to use) 
bind r source-file ~/.tmux.conf 

# switch panes using Alt-arrow without prefix 
bind -n M-Left select-pane -L 
bind -n M-Right select-pane -R 
bind -n M-Up select-pane -U 
bind -n M-Down select-pane -D 

# Enable mouse mode (tmux 2.1 and above) 
set -g mouse on 

# don't rename windows automatically 
set-option -g allow-rename off 

# Use Alt-arrow keys without prefix key to switch panes 
bind -n M-S-Left previous-window 
bind -n M-S-Right next-window 

# Dont clear screen after other program is on 
set-window-option -g alternate-screen on 
#set-window-option -g xterm-keys on 

답변

2

당신은이 라인을 주석 처리하는 경우 :

#set -g default-terminal "xterm-256color" 
#set-window-option -g xterm-keys on 

을 다음 tmux

  • 이 정의 터미널 설명에 TERM 환경 변수를 설정 키 및
  • vim이 예상하는 xterm 스타일의 컨트롤 화살표 키를 보냅니다. 두 변경없이

, TERM은 (키를 정의하지 않음), 및 tmux어느 단말 설명하지 일어날 제어 화살표 키에 대해 서로 다른 시퀀스 (보낼 screen로 설정된).

+0

고맙습니다. 완벽하게 작동했습니다. 나는 그걸로 어지럼 울 때 나는 그 두 가지 옵션을 동시에 쓰는 대신 따로 시도 했었다고 생각합니다. 매우 간결하고 명확한 설명도! – Mix999

관련 문제