概要
tmux/screen 上で nvim を使用した際に、 escape/Ctrl-[ 入力に対するレスポンスが遅いため、これを解決する方法について記述します。
tmux/screen 上で nvim のescapeレスポンスを早くする
$HOME/.tmux.conf 上で 以下の設定を追記する
set -s escape-time 10
screen の場合は、以下の設定を $HOME/.screenrc に追記します。
maptimeout 10
vimなどで、 escape-time を 0 にしている例をよくみかけますが、nvimの場合0だとうまくいかず、 10程度のdelayを必要とします。
なぜこのような挙動になるのか
tmuxではEscape入力があった際に、500msec のディレイの後にバックグラウンドのターミナルにコマンドを送信している。
上記の設定ではこのディレイを極端に早くすることで、キー入力の直後にバックグラウンドのターミナルにEscapeコマンドを送信している。