Если у меня есть сеанс vim с двумя разделениями, когда я выполняю :!
команду, результат отображается во всем окне. Можно ли отображать вывод только на активном сплите?
11
Если у меня есть сеанс vim с двумя разделениями, когда я выполняю :!
команду, результат отображается во всем окне. Можно ли отображать вывод только на активном сплите?
:!
отображается в командной строке, из которой есть только один, и может быть только в нижней части экрана. Лучшее, что я могу придумать, - это создать новый буфер /: split под текущим ...:!
не идет в командную строку. Вместо этого сеанс vim исчезает, и все окно терминала показывает вывод терминала, включая то, что было напечатано до того, какvim
был вызван.TERM
настройкой?screen
) или альтернативного экрана (вtmux
).Ответы:
Вы можете использовать эту команду:
Это откроет новый сплит и поместит вывод команды в этот сплит ( хотя не в текущий активный сплит, как вы упомянули ).
источник
Вы можете сделать команду, чтобы сделать это:
Команда будет что-то вроде этого:
или же
В ваших
.vimrc
вы можете написать это:Вы можете найти, как сделать свои собственные команды с
:help :command
.источник
Это не будет возможным. Вам придется разделить экран с помощью другого инструмента, такого как tmux (IIRC), screen, ...
Если вам не нужно взаимодействовать с исполняемой программой, вы можете импортировать ее результаты непосредственно в любое окно (в смысле vim
:h windows
), с которым вы хотите:r!command line
.:h :r!
источник