web-dev-qa-db-ja.com

tmux:履歴バッファの代わりにvimでマウススクロールを有効にする

しばらく画面を操作して、最近tmux 1.8を使い始めました。インターネットのあちこちで物事を読んだ後、私は次の〜/ .tmux.confを思いつきましたが、vimを開いてマウスでスクロールしようとすると、vimにスクロールコマンドを送信する代わりに、tmuxがスクロールバッファーをスクロールします。回避策はありますか?以下は私の設定です:

set-option -g default-Shell /bin/bash


set -g status-utf8 on
set -g status-keys vi
set -g status-interval 1

set -g prefix `
bind `     send-key `

bind-key -n F9  resize-pane -Z
bind-key -n F11 prev
bind-key -n F12 next-window

bind-key | split-window -h
bind-key - split-window -v
set -s escape-time 0
set -g history-limit 100000

set -g mode-mouse on
set -g mouse-resize-pane on
set -g mouse-select-pane on
set -g mouse-select-window on
set-option -g mouse-utf8 on

set -g status-bg '#666666'
set -g status-fg '#aaaaaa'
set -g status-left ''
set -g status-right ''

set-option -sg escape-time 1

更新:

答えが見つかりました。用語をxtermに設定する必要がありました。画面の値を取得していました。私が次のことをするとき:

export TERM=xterm

そしてvimの中:

set mouse=a

私はtmuxの下でvimで開いたファイル内のスクロールに問題がありませんでした。ヒストリバッファにスクロールする必要がある場合は、プレフィックス[]を実行してから、マウスを使用します。それは魅力のように機能します!

20
thequark

.vimrcに以下を追加することでそれが実現します。

set mouse=a

これにより、すべてのモードでマウスが有効になるため、aallになります。 vim manpages および http://vim.wikia.com/wiki/Using_the_mouse_for_Vim_in_an_xterm を参照してください。

32