I found myself writing:
\vspace 1 \baselineskip
and then when it's not compiling changing without thinking to:
\vskip 1 \baselineskip
but what is the difference? Perhaps knowing this will make me write the right one from the start in the future…
Best Answer
The syntax
is incorrect, as
\vspace
(or, more precisely, the internal version\@vspace
) is a command that takes one argument, so this would be equivalent towhich raises an error. However, also the two calls
are not equivalent. The former will not force end-of-paragraph, if given in LR-mode (using LaTeX parlance; horizontal mode in TeX parlance), adding the stated vertical spacing under the line in which it appears in the typeset document. With
\vskip
, which is a primitive TeX command, the current paragraph will be terminated.With
\vspace
you have also the *-version, providing a vertical space that won't disappear at a page break; spacing inserted with\vskip
will always disappear at a page break.In general it's best to issue
\vspace
between paragraphs, but the "in-paragraph" feature may come up handy in some cases.Lastly,
will give some surprises to those who are not accustomed with Plain TeX lingo.
Note for the curious:
\vglue 1\baselineskip
ends the paragraph and produces spacing that won't disappear at a page break. It's not documented in the LaTeX manuals, and it's good it isn't.