Я хотел бы записать весь буфер в стандартный вывод ( /dev/stdout
) вместо файла, и следующая команда работает, как и ожидалось, при редактировании файла:
:w >> /dev/stdout
Подсказка: нажмите Control+, Lчтобы обновить экран.
Но это не работает, как ожидалось, когда я пытаюсь сделать то же самое из командной строки ( не в интерактивном режиме ), например:
$ echo This is example. | vim - '+:w >> /dev/stdout' '+:q!'
Vim: Reading from stdin...
Же с :w !tee
, :x! /dev/stdout
, :%print
и аналогичные.
Перед тем как уйти, он говорит: [Device] 1L, 17C appended
.
Есть ли способ заставить vim записать стандартный ввод в стандартный вывод в середине канала? Может это как-то буферизуется?