Zbyt duże spacje po kropkach

Nieraz widuję plik, w którym spacje np. po skrótach z kropką są zbyt duże w porównaniu do pozostałych, np. $ \hbox spread 16pt{\nonfrenchspacing w tym tekście spacje po m.in. kropkach są zbyt duże} $. Wygląda to kiepsko, zaś przyczyna (i lekarstwo) są bardzo proste.

Otóż Anglosasi lubią, gdy spacja oddzielająca zdania jest większa od tej między wyrazami w zdaniu (co skądinąd jest całkiem sensowne, choć zwyczaj ten jest chyba obcy polskiej typografii). TeX przestrzega tej reguły, jednak (oczywiście) nie potrafi odróżnić kropki kończącej zdanie od kropki kończącej skrót (z wyjątkiem inicjałów; TeX domyślnie nie zwiększa spacji po kropce, która następuje po wielkiej literze).

Co zatem zrobić, gdy chcemy przekonać TeXa do niezwiększania spacji – bądź ręcznie w przypadku skrótu, bądź automatycznie w całym dokumencie (bo np. piszemy po polsku)?

W pierwszym przypadku wystarczy napisać np.

cf.\ previous chapter

zamiast

cf. previous chapter

(tak naprawdę, jeszcze lepiej pisać

cf.~previous chapter

żeby TeX nie złamał wiersza po “c.f.”, ale to już inna sprawa).

Makro “\ ” (backslash, a po nim spacja) wstawia spację zwykłych rozmiarów, po wielu skrótach lepiej zaś używać twardej spacji (~), która też jest normalnej szerokości.

Jeśli zaś chcemy uzyskać jednolite spacje automatycznie w całym dokumencie, to mamy dwie opcje. Jeśli po prostu piszemy tekst po polsku w LaTeXu, najlepiej (nie, nie “najlepiej”; koniecznie!) wpiszmy

\usepackage{polski}

do preambuły. Jeśli zaś z jakichś powodów nie możemy tego zrobić (bo tekst nie jest po polsku, bądź np. piszemy w plainie), użyjmy na początku makra

\frenchspacing

i sprawa załatwiona.

PS. Jest jeszcze jeden problem z tym związany. Może się zdarzyć, że chcemy większych spacji po kropkach na końcu zdania, i ostatnia litera w zdaniu jest wielka. Wówczas trzeba użyć np. takiego tricku, który podaję za TeXbookiem, s. 74, Exercise 12.6:

\dots launched by NASA\null. However, \dots

co daje: $ \hbox spread 12pt{\nonfrenchspacing\dots launched by NASA\null. However, \dots} $

KategoriaTeX, KategoriaLaTeX, KategoriaPlainTeX, KategoriaLaTeXPręgierz