LaTeX sometimes puts too much or too little space after periods

后端 未结 3 1335
别那么骄傲
别那么骄傲 2021-01-29 22:24

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 Superm         


        
相关标签:
3条回答
  • 2021-01-29 22:57

    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.

    0 讨论(0)
  • 2021-01-29 22:58

    I like the answer from dreeves and the handy search he suggests too. I don't have the Stackoverflow "rep" points to comment, but...

    Since lines in raw *.tex tend to be very long, the output from grep can be overwhelming (i.e., entire paragraphs); I suggest a variation to only display the words ending in '[A-Z].' (followed by one or more space, followed by a new capitalized word). It is,

    grep -o -E '[A-Z]+\. +[A-Z]+[A-Za-z]+' *.tex
    
    0 讨论(0)
  • 2021-01-29 23:10

    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
    
    0 讨论(0)
提交回复
热议问题