2009-02-10 11 views
5

Quería imprimir un documento de texto simple y asegurarme de que las palabras se ajustan a los límites de las palabras. He intentado tantoCómo habilita el ajuste de palabras en vim al imprimir

set linebreak 

y

set wrap 

pero al imprimir, sólo se rompe en la columna de la derecha en el medio de las palabras. ¿Es esto posible para imprimir?

+0

enscript funciona muy bien, tenga en cuenta que enscript soporte adicional de ajuste de texto en 1.6. – mattwright

Respuesta

6

Está creando un archivo de texto sin linebreaks incorporados, por lo que cada párrafo es una sola "línea", aunque con linebreak y wrap set, parece que son varias líneas). Esta es la razón por la que se imprimen descansos en lugares fijos. (De acuerdo con http://www.vim.org/htmldoc/various.html#printing que no parece que se puede tener salto de línea respecto vim/envuelva durante la impresión.)

Para evitar esto, si quieres el texto se ajuste mientras se está editando, haga

set textwidth=70 

para envolver en la 70.a columna Si desea que su archivo tenga líneas largas (por ejemplo, para que tenga un buen formato cuando se carga en MS Word o algo así), deberá preprocesar la versión de texto antes de imprimirla. Así, por ejemplo, puede intentar:

fmt file.txt | lpr 

o si ha instalado enscript, usted debe ser capaz de probar:

enscript --word-wrap file.txt 

para imprimir. Un archivo existente se puede envolver ejecutando en vim:

gggqG 

es decir, 'GG' para ir al inicio del archivo y 'GQG' volver a formatear 'GQ' desde la posición actual (es decir, la primera línea) a la última línea (yendo a 'G'). 'gq' respetará su configuración actual de ancho de texto.

Cuestiones relacionadas