自分の環境
Windows -> mintty -> SSH -> tmux -> Vim
vimrc
if&term =~'tmux'let&t_EI .="\ePtmux;\e\e[<0t\e\\"elseif&term =~'xterm'let&t_EI .="\e[<0t"endif
過程
- tmux なしだと "ここ"に書いてある設定で行けたのに、tmux の内からだとうまくいかなかった。
- IME off の制御が tmux から mintty にうまく伝わっていないのだろうと推測。
- この制御が Control Sequence Introducer (CSI) というもので実現されていると知る。
- "ここ"にたどり着く。
その他
- Insert mode を抜けてから IME が off になるまで少し時間差がある。この間のキーストロークが抜け落ちてしまう。どこでこのラグが発生しているのかはよく分からない。
- Tera Term でも同じように設定できるはず。
- あと以下のように設定しておくと、IME on のときはカーソルが赤くなって分かりやすいのでとっても便利。
.minttyrc
IMECursorColour=255,0,0
参考 links
挿入モードを出る時にIMEをオフにする(SSH接続など端末エミュレータからVimを利用する場合)
tmux and control sequence character issue