Re: [Vim] Wrapping indented paragraphs



On 2008-11-11, Mark Shroyer <usenet-mail@xxxxxxxxxxxxxxx> wrote:
How does one wrap indented (as opposed to double-linebreak delimited)
paragraphs in Vim?

Suppose I have the following text:

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Proin
facilisis lacinia augue. Aliquam malesuada,
erat vel rhoncus
euismod, pede nulla congue neque, vel convallis quam lacus non urna.
Vestibulum purus.
Vivamus ac felis vitae leo tristique adipiscing.
Ut eu risus nec ante scelerisque mattis. Donec ac nibh sit
amet magna aliquam
posuere. Vestibulum neque. Class aptent taciti sociosqu ad litora
torquent per conubia nostra, per inceptos himenaeos. Pellentesque
accumsan lobortis tellus. In mollis ante eu elit.

I want to rewrap these two paragraphs to fix their jagged right edges,
but I also want to preserve paragraph indentation.

On Linux, I would pipe the text through the fmt program.

Vim's reformatting sucks. It can probably be tweaked, but the path of least
resistance is <select text>!fmt.

The fmt utility is part of GNU coreutils.

Fmt understands special indentation in the first line or two of paragraphs.

Here is your text piped through fmt:

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Proin
facilisis lacinia augue. Aliquam malesuada, erat vel rhoncus
euismod, pede nulla congue neque, vel convallis quam lacus non urna.
Vestibulum purus.
Vivamus ac felis vitae leo tristique adipiscing.
Ut eu risus nec ante scelerisque mattis. Donec ac nibh sit amet magna
aliquam posuere. Vestibulum neque. Class aptent taciti sociosqu
ad litora torquent per conubia nostra, per inceptos himenaeos.
Pellentesque accumsan lobortis tellus. In mollis ante eu elit.

Here it is through vim's gq:

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Proin
facilisis lacinia augue. Aliquam malesuada, erat vel rhoncus euismod,
pede nulla congue neque, vel convallis quam lacus non urna.
Vestibulum purus. Vivamus ac felis vitae leo tristique adipiscing.
Ut eu risus nec ante scelerisque mattis. Donec ac nibh sit amet magna
aliquam posuere. Vestibulum neque. Class aptent taciti sociosqu ad
litora torquent per conubia nostra, per inceptos himenaeos.
Pellentesque accumsan lobortis tellus. In mollis ante eu elit.

Whoops! here is gq after :set autoindent off

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Proin
facilisis lacinia augue. Aliquam malesuada, erat vel rhoncus euismod, pede
nulla congue neque, vel convallis quam lacus non urna. Vestibulum purus.
Vivamus ac felis vitae leo tristique adipiscing. Ut eu risus nec ante
scelerisque mattis. Donec ac nibh sit amet magna aliquam posuere. Vestibulum
neque. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per
inceptos himenaeos. Pellentesque accumsan lobortis tellus. In mollis ante eu
elit.

Not so useful.

Note that vim's formatting can be made to use an external program
using the formatprg option, e.g. :set formatprg=fmt . Then gq
will use fmt and behave the same way. gq is faster to type than
!fmt<Enter> so this is useful.
.



Relevant Pages

  • Re: Getting mouse position within div during click event?
    ... Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy ...
    (microsoft.public.scripting.jscript)
  • mathtools showonlyrefs
    ... Lorem ipsum dolor sit amet, consectetuer adipiscing elit. ... Ut purus elit, vestibulum ut, placerat ac, adipiscing ... Phasellus eu tellus sit amet tortor gravida placerat. ...
    (comp.text.tex)
  • Re: LaTeX "danger" environment
    ... I'm trying to set up a LaTeX "danger" environment. ... Lorem ipsum dolor sit amet, ... xx Lorem ipsum dolor sit amet, consectetuer adipiscing elit. ...
    (comp.text.tex)
  • LaTeX "danger" environment
    ... I'm trying to set up a LaTeX "danger" environment. ... Lorem ipsum dolor sit amet, ... xx Lorem ipsum dolor sit amet, consectetuer adipiscing elit. ...
    (comp.text.tex)