-

сайт небольшого сообщества специалистов в сфере IT;
здесь мы делимся экспертизой и наработками

Как выйти из Vim?

Vim - очень специфичный редактор и даже первое знакомство с вим начинается с того, чтобы разобраться, как из него выйти (закрыть). Абсолютное большинство новичков начинают свое знакомство именно с этого квеста.

Как закрыть вим вкратце: нажимаем несколько раз ESC, набираем :q! и нажимаем Enter.

Чуть более детально, но всё еще весьма поверхностно про то, как выйти из вима: в какие-то далекие времена на клавиатуре не было стрелок, а при редактировании текста необходимо перемещаться по тексту и вот в vi (предке vim) добились подобной функциональности с помощью нескольких режимов: normal, visual, insert.

По умолчанию при открытии редактора он находится в нормальном режиме, в котором можно перемещаться по тексту и вводить команды. Для ввода команд необходимо сначала набрать двоеточие ( : ), потом уже саму команду, очень напоминает консоль, которая в игрушках и не только зачастую вызывается кнопкой `. Есть множество разных способов попасть в visual или insert режим. Например, если открыть редактор в первый раз и сразу же полететь вводить текст в привычном режиме, то можно случайно включить visual режим, расстроиться, что ничего на экране не меняется и захотеть выйти, по привычке нажав Esc. В vim Esc отменяет последнее действие, набирая какое-нибудь слово можно случайно сынициировать несколько действий, поэтому в подобной ситуации лучше всего нажать Esc несколько раз, чтобы отменить все начатые действия.

Оказавшись в normal mode, закрыть vim изнутри можно только командой для выхода. В виме клавиши для команд и действий как правило первая или первые буквы действия, для выхода это будет первая буква слова quit. В большинстве редакторов при закрытии, если были внесены изменения в документ, выскочит предложение сохранить изменения или выйти без сохранения. Vim тоже делает подобную проверку, но, если при выходе были обнаружены не сохраненные изменения, то команда выхода просто не сработает, поэтому добавляем в конец команды восклицательный знак ! для выполнения команды в любом случае, таким образом мы отдаем команду выйти без сохранения.

Vim - очень мощный текстовый редактор, который нужно не только понять, но еще и натренироваться использовать. При работе в командной строке линукса вим может быть использован как программа по умолчанию, например, в git, либо при редактировании cron. Так что даже если вы уже нашли для себя nano и не хотите осваивать vim, то вам всё равно придется разобраться как из него выйти, потому что он может открыться тогда, когда вы этого не ждете.