Я довольно часто сопоставляю ключ, чтобы сделать это для меня. Я обычно использую клавишу F5, так как с ней по умолчанию в vim нет команды, связанной с ней.
Мне нравится использовать следующее отображение:
:map <F5> :w<CR>:!python % 2>&1 \| tee /var/tmp/robertw/results<CR>
это также гарантирует, что вы написали свой скрипт перед его запуском. Он также захватывает любой вывод после дублирования stderr на стандартный вывод во временном файле.
Если вы сделали:
:set autoread
и a:
:sb /var/tmp/robertw/results
Вы получите два буфера. Один содержит скрипт, а другой - вывод, в т.ч. ошибки, из вашего скрипта. При установке автоматического прочтения окно, отображающее вывод, будет автоматически загружено после нажатия клавиши v.
Уловка, которую нужно запомнить, - это использование cntl-ww для переключения между окнами и тем, что отображение, поскольку оно ссылается на% (текущий файл), будет работать, только когда курсор находится в окне, содержащем скрипт Python. *
Я считаю, что это действительно сокращает мой код, время тестирования, отладки.