36

vim を使用してテキスト ファイルをすばやく編集することがありますが、Emacs の Cx Cs シーケンスを誤って入力して保存すると、vim が^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y)ステータス ラインの読み取りに応答しなくなります。端末を強制終了してから最初からやり直す必要があるのは本当に面倒なので、vimを再び応答させる方法はありますか?

4

2 に答える 2

56

と入力してみてください^Q

^S^Qは、tty 設定のデフォルトの「停止」および「開始」文字です。

(vimは tty 設定を操作する必要があるため、control-S は出力を停止しませんが、停止しないシステムを見てきました。はい、面倒です。)

于 2013-02-06T20:03:45.483 に答える
10

^Sこれは、プログラムの出力を で停止し、 で再開できる古代の Unixism^Qです。このような機能が便利なほど画面の更新が遅かった時代にさかのぼります。lessまたはの非常に古いバージョンと考えてくださいmore

^Qプログラムの出力を再開するように入力するか、これを次のように追加して、このほとんど役に立たなくなったメカニズムを無効にすることができます~/.bashrc

# Are we on a terminal?
if [ -t 0 ];
then
    stty sane
    stty stop ''
    stty start ''
    stty werase ''
fi
于 2013-02-06T20:10:00.440 に答える