22

MacVimとターミナルVimでは、すべてが正常に動作し、問題はありません。tmuxにジャンプしてVimを実行するとすぐに、エスケープキーの遅延が約1秒になり、Vimにとして表示され^[ます。

エスケープキーを押して挿入モードを終了しますが、Vimが反応して通常モードに戻るまでに約1秒の遅延が発生します。

一時的に挿入モードにするように入力Ctrl+oすると、すぐに通常モードになります。

通常モード(私が設定したショートカット)に到達するために入力jjした場合でも、約1秒かかります。これにより、問題はtmuxではなくVimにあるのではないかと思います。

私はすでにset -sg escape-time 0tmux.confを設定しましたが、まったく役に立ちませんでした。

何か案は?

4

2 に答える 2

39

https://unix.stackexchange.com/questions/23138/esc-key-causes-a-small-delay-in-terminal-due-to-its-alt-behaviorを参照してください。

問題は tmux エスケープ遅延にあります。以下の tmux 設定で修正できます。

set -s escape-time 0

于 2012-12-12T15:45:17.437 に答える
4

問題は、エスケープがすべてのファンクション キー、矢印、マウス クリック (何らかのエスケープ シーケンスを使用して端末によって vim に送信される) の最初の文字であることです。 'ttimeoutlen' は -1) ミリ秒で、たとえば<F1>. この遅延をなくす方法はありませんが、次のように絞り込むことができます。

set timeout timeoutlen=1000 ttimeoutlen=100

. この方法では、マッピングが完了するまで 1 秒待機しますが、端末がエスケープ シーケンスの送信を完了するまで 0.1 秒しかかかりません。

于 2012-09-08T12:23:32.967 に答える