vimrc – ¿Cómo puedo suprimir el mensaje "lectura de STDIN" desde Vim?

Pregunta:

Cuando usa Vim para leer desde stdin, imprime un mensaje informativo:

$ echo foo | vim -
Vim: Reading from stdin...

$

Este es solo un ejemplo. El uso real no permite construcciones de shell. vim <(echo foo) no es una opción.

¿Puedo suprimir eso usando solo las opciones de Vim y / o la configuración de vimrc?


En caso de que necesite saber para qué es esto, estoy tratando de usar Vim para leer páginas de manual (enchufe desvergonzado). GNU man no permite construcciones de shell en MANPAGER , y al usar ftplugin/man.vim y otras cosas, he logrado tener una experiencia cómoda usando solo MANPAGER="vim -" . La última molestia que queda es el desagradable mensaje impreso después de cada página de manual que vi.

Respuesta:

A partir de Vim 8.0.1308 (noviembre de 2017), puede usar la opción "–not-a-term" con "salir":

$ echo hello | vi - --not-a-term -esc '%p|q!'
hello

O con "salir":

$ echo hello | vi - --not-a-term -esc 'x!/dev/stdout'
hello

http://github.com/vim/vim/issues/1552

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top

web tasarım