Вот постановка задачи:
- Я открываю терминал GNOME и запускаю сценарий запуска setup_myproject_view1, который устанавливает сеанс SCM и устанавливает некоторые переменные среды.
- Я открываю терминал vim и начинаю просматривать некоторые файлы, часто в нескольких разделенных панелях (:sp, :vsp)
- Я понимаю, что мне нужно отредактировать и сохранить один или несколько из этих файлов. Но прежде чем я смогу это сделать, мне нужно проверить файл с сервера/хранилища SCM.
Теперь у меня есть несколько вариантов:
- Закройте все мои панели vim и запустите команду проверки в оболочке, а затем откройте один или все файлы, которые я открывал ранее. Очень утомительно.
- Откройте новое окно или вкладку терминала, запустите сценарий запуска и извлеките файл. Затем вернитесь к исходному терминалу, запустите: e, чтобы снова загрузить файл с включенным разрешением на запись, и продолжите его редактирование. Все еще утомительно, потому что мне нужно запустить сценарий запуска (поэтому я должен помнить, в каком представлении проекта я работаю) и переключаться между окнами/вкладками.
- Запустите команду проверки оболочки из vim, используя :shell или :!. Это было бы идеально, потому что я могу быстро вернуться к редактированию, не прерывая ход мыслей. Но оболочка внутри vim снова не имеет стартового сеанса setup_myproject1_view1. Я также не хочу, чтобы setup_myproject_view1 автоматически запускался в файле .cshrc моей оболочки, потому что у меня разные проекты и представления: setup_myproject3_view2 и т. д.
Итак, как я могу удобно запустить команду оболочки из vim без необходимости настраивать представление проекта SCM?