1

То, что я хочу, это команда для запуска из оболочки, которая поддерживает:-

myprog1 'someinputfile1' |vim -

а также

myprog2 'someinputfile2' |vim -

выходы открыты в VIM в разделенном экране.

https://stackoverflow.com/questions/8287164/how-to-redirect-stdout-output-to-a-new-vim-tab?rq=1 сказал мне использовать vsp|myprog <someinputfile> для разделения уже открытого окно vim.

3 ответа3

5

Если вы используете Linux, попробуйте это:

vim -o <(myprog1 'someinputfile1') <(myprog2 'someinputfile2')

Измените -o на -O для разделения по вертикали.

0

Ну, во-вторых, это просто, потому что это просто последовательность команд:

ls | vim -
:vertical split
:enew
:read !ls

Если вы хотите diffsplit

ls | vim -
:diffthis
:vertical split
:enew
:read !ls
:diffthis

Вы можете создать раскладку клавиатуры для этого, что-то вроде

:map <F12> :diffthis\|vertical split\|enew\|diffthis<CR>:read !
0

Вы можете использовать аргумент -c Vim, чтобы прочитать первый вывод, открыть новую вкладку и затем прочитать второй вывод. Например:

vim -c ':read !ls dir1' -c ':tabnew | read !ls dir2'

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .