web-dev-qa-db-ja.com

tmux内で実行しているときにvimでキーを台無しにした

私はtmuxで遊んでいて、大好きです。ただし、vimを内部で実行すると厄介な問題が発生します。

どういうわけか矢印キーが再マップされますが、Command-Tを起動するときなど、特定の時間にのみ、ファイルリストを下にスクロールしようとすると、コマンドがキャンセルされ、挿入モードになります。矢印キーによっては押すと、A、B、C、Dが挿入されます。

たとえば、矢印を使用してバッファ内を移動すると、正しく機能します。

何か案は?

ありがとう!

8
Ivan

最後に私はここで私の答えを見つけました: OSXで画面を実行しているとき、command + rはすべての画面でvimの矢印キーを台無しにします

奇妙なことに、.vimrcファイルにマッピングを1つだけ追加しました。

map <Esc>[B <Down>

しかし、その単一のマッピングにより、すべての矢印キーが正しく機能します...

6
Ivan

.tmux.confにset -g default-terminal "xterm"を追加しただけです

これにより、tmuxはscreenの代わりにxtermを使用するようになったので、人生は美しく、キーバインドを踏むことを心配する必要はありません。

12
Zee

万が一、誰かがこのソリューションが機能しないことに腹を立てた場合に備えて。

実際にtmux + vim + AutoClose vimプラグインを使用していないことを確認してください。自動クローズは、前の行にABCD文字が挿入される原因となるものをマップします。

プラグインを消去したところ、正常に機能しています

1
txomon

Xtermおよびxterm-256colorは、BCEの問題を引き起こします。 http://permalink.gmane.org/gmane.comp.terminal-emulators.tmux.user/1932 を参照してください。

1

Command-Tは、端末で実行しているときにマッピングによって何か馬鹿げたことをします。 $ TERMがvt100 *またはxterm *の場合、マッピングはスキップされますが、これは適切なソリューションではありません。

0
graywh

コマンドラインモードでカーソルを移動したい人は、 this ブログ投稿をご覧ください。私はvimrcに8行を追加することになりました。

" Needed for tmux and vim to play Nice
" Needed for tmux and vim to play Nice
map <Esc>[A <Up>
map <Esc>[B <Down>
map <Esc>[C <Right>
map <Esc>[D <Left>

" Console movement
cmap <Esc>[A <Up>
cmap <Esc>[B <Down>
cmap <Esc>[C <Right>
cmap <Esc>[D <Left>
0
frbl