tags:

views:

389

answers:

2

LaTeX tries to guess whether a period ends a sentence, in which case it puts extra space after it. Here are two examples where it guesses wrong:

I watched Superman III. Then I went home. 

(Too little space after "Superman III.".)

After brushing teeth etc. I went to bed.

(Too much space after "etc.".)

Note that it doesn't matter how much whitespace you use in the LaTeX source since LaTeX ignores that.

+8  A: 

I found the answer here: http://john.regehr.org/latex/. Excerpt:

When a non-sentence-ending period is to be followed by a space, the space must be an explicit blank. So the second example should be:

After brushing teeth etc.\ I went to bed.

The converse of this problem happens when a capital letter precedes a sentence-ending period in the input, as in the first example. In this case LaTeX assumes that the period terminates an abbreviation and follows it with inter-word space rather than inter-sentence space. The fix is to put "\@" before the period. So the first example should be

I watched Superman III\@. Then I went home.

A handy way to find this error is:

grep '[A-Z]\.' *.tex
dreeves
The command "\@" is in fact specifically for this purpose -- to precede a non-sentence-ending period.
dreeves
And you can also write `etc.\@ I went to bed.` if you like the symmetry.
Will Robertson
+1  A: 

You can sidestep the spacing issue if you prefer single spaces at the end of sentences: put \frenchspacing on (for older versions of Latex this was a fragile command). Knuth was following the traditional naming in calling it French spacing, although calling double spacing after sentences French spacing has become dominant in publishing.

Dirk Margulis wrote a nice post summarising some of the reasons for the prevalance of single spacing: Space between sentences.

Charles Stewart