Подтвердить что ты не робот

Vim не реагирует после последовательности C-x C

Я иногда использую vim для быстрого редактирования текстового файла, и я часто ошибочно вхожу в последовательность C-x C-s Emacs, чтобы сохранить его, после чего мой vim становится невосприимчивым, читая ^X mode (^]^D^E^F^I^K^L^N^O^Ps^U^V^Y) в строке состояния. Может быть, есть способ снова сделать vim отзывчивым, потому что это действительно раздражает необходимость убить терминал, а затем начать все заново?

4b9b3361

Ответ 1

Попробуйте ввести ^Q.

^S и ^Q являются значениями по умолчанию "stop" и "start" в настройках tty.

(vim должен управлять настройками tty, поэтому control-S не останавливает вывод, но я видел системы там, где это не так. Да, это раздражает.)

Ответ 2

Это древний Unixism, который позволяет остановить вывод программы с помощью ^S и снова запустить ее с помощью ^Q, начиная с того дня, когда экран обновляется настолько медленно, что такая вещь будет полезна. Подумайте об этом как о чрезвычайно архаичной версии less или more.

Вы можете ввести ^Q, чтобы снова запустить вывод программы, или отключите этот практически бесполезный механизм, добавив его в свой ~/.bashrc:

# Are we on a terminal?
if [ -t 0 ];
then
    stty sane
    stty stop ''
    stty start ''
    stty werase ''
fi