iTermでいくつかのショートカットを定義し、Vimでキーマッピングに使用しました。
Ctrl-Enter
たとえば、エスケープコードを送信するためにマップし、^[O2P
それを使用してCtrl-Enter
Vimでキーマップを定義しました。
set <F13>=O2P
map <F13> <C-CR>
inoremap <C-CR> <C-O>o
通常のiTermセッションとスクリーンセッションでは機能しますが、いいえtmuxセッションで。 tmuxで使用するには、この問題をどのように解決する必要がありますか?この途切れ以外は、画面から離れてtmuxを本当に楽しんでいます。
答え1
私は.vimrc
これがどのように機能するのか、そしてなぜtmuxが外部に送信するのとは異なるシーケンスを送信するのかをよりよく理解したかったのですが、すべてがうまくいきました。
if &term =~ "screen"
set <F13>=[1;2P
set <F14>=[1;2Q
set <F15>=[1;2R
set <F16>=[1;2S
set <F17>=[1;5P
set <F18>=[1;5Q
set <F19>=[1;5R
set <F20>=[1;5A
set <F21>=[1;5B
elseif &term =~ "xterm"
set <F13>=O2P
set <F14>=O2Q
set <F15>=O2R
set <F16>=O2S
set <F17>=O5P
set <F18>=O5Q
set <F19>=O5R
set <F20>=[1;5A
set <F21>=[1;5B
endif
" use some unused function key codes to
" make special key combos work in terminal
map <F13> <C-CR>
map! <F13> <C-CR>
map <F14> <S-CR>
map! <F14> <S-CR>
map <F15> <C-Space>
map! <F15> <C-Space>
map <F16> <S-Space>
map! <F16> <S-Space>
map <F17> <C-BS>
map! <F17> <C-BS>
map <F18> <M-Tab>
map! <F18> <M-Tab>
map <F19> <M-S-Tab>
map! <F19> <M-S-Tab>
map <F20> <C-Up>
map! <F20> <C-Up>
map <F21> <C-Down>
map! <F21> <C-Down>