Как временно выйти из Vim и возвратиться

Как я мог выйти из Vim, нет :q, и затем возвратитесь, чтобы продолжить редактировать?

292
задан Peter Mortensen 12 September 2019 в 04:54
поделиться

6 ответов

Предполагая, что терминал Vim использует версию * nix:

Чтобы приостановить ваш работающий Vim

Ctrl + Z

приостановит процесс и вернется в вашу оболочку

fg

возобновит (довести до f ore g раунд) приостановленный Vim.

Чтобы запустить новую оболочку

Запустите подоболочку, используя:

:sh

(в соответствии с настройкой)

:set shell?

или

:!bash

, за которым следует:

Ctrl + D (или exit , но зачем печатать так много?)

, чтобы убить оболочку и вернуться в Вим.

550
ответ дан 23 November 2019 в 01:40
поделиться

Если Вы не возражаете использовать свою мышь немного:

  • Запускают Ваш терминал,
  • выбирают файл,
  • , выбор Открывает Tab .

Это создает новую вкладку на терминале, который можно работать на Vim. Теперь используйте свою мышь для смещения к/от терминалу. Я предпочитаю это вместо того, чтобы всегда иметь необходимость ввести (:shell и выход).

0
ответ дан 23 November 2019 в 01:40
поделиться

Вы можете временно переключиться в режим оболочки с помощью:

:! <command>

например

:! ls
33
ответ дан 23 November 2019 в 01:40
поделиться

Если вы работаете в системе Unix, Ctrl + Z приостановит Vim и предоставит вам оболочку.

Введите fg , чтобы вернуться. Обратите внимание, что Vim создает файл подкачки во время редактирования, и приостановка Vim не удалит этот файл (в конце концов, вы не выходите из Vim). На тупых терминалах, этот метод был довольно стандартным для циклов редактирования-компиляции-редактирования с использованием vi . Я только что узнал, что для меня gVim минимизируется при вводе Z .

12
ответ дан 23 November 2019 в 01:40
поделиться

Есть несколько способов выйти из Vim и получить все то же самое, когда вы вернетесь. В самом Vim есть очень хорошая документация, объясняющая различные способы это сделать. Вы можете использовать следующую команду в vim для доступа к соответствующей странице справки: : help usr_21

Чтобы дать вам краткое описание, вот различные методы выхода и возврата с сохранением сеанса:

  1. Приостановить и резюме - вы фактически не выходите из Vim с этим; вы просто скрываете свою сессию в фоновом режиме, пока она вам не понадобится. Если вы перезагрузите компьютер или отправите Vim команду kill, вы потеряете сеанс. Это хорошо, когда вы хотите временно переключиться на другую задачу, но в этом случае вы можете попробовать использовать вместо этого утилиту GNU Screen .

  2. Сессии - это правда способ сохранения сеанса между экземплярами Vim. Даже если вы действительно выйдете из Vim, ваша сессия будет для вас, когда вы вернетесь. Вероятно, это то, что вы ищете.

5
ответ дан 23 November 2019 в 01:40
поделиться

Вы можете использовать : sh для выхода в оболочку по умолчанию, а затем набрав $ exit в приглашении оболочки, вы вернетесь в Vim.

104
ответ дан 23 November 2019 в 01:40
поделиться