nraoaoc@nmt.edu (Daniel Briggs) (08/11/90)
This may be a silly question, but is one that I have wondered about. The answer is not immediately obvious to me. (And yes, I think that I've RTFM.) Simply put, LaTeX provides a simple control sequence to tell the program that a given period after a capital letter actually ends a sentence, and is not an abbreviation. Lamport's example of this is The Romans wrote I + I = II\@. Really! I looked up the definition of \@ in LaTeX, and it turns out to be some fairly obscure arcana. It sets some interword penalty or other to 1000. Not the sort of stuff that you would expect your average TeXnician to employ. My question is, how does a normal person deal with this problem in plain TeX? The problem of capital letters ending sentences does occur often enough to be a problem for many folks. Short of rewriting the sentence, is there an easy equivalent to \@ ? As usual, post or email is fine with me. Thanks! -- This is a shared guest account, please send replies to dbriggs@nrao.edu (Internet) Dan Briggs / NRAO / P.O. Box O / Socorro, NM / 87801 (U.S. Snail)
eykhout@wn2.sci.kun.nl (Victor Eijkhout) (08/12/90)
nraoaoc@nmt.edu (Daniel Briggs) writes: >LaTeX provides a simple control sequence to tell the >program that a given period after a capital letter actually ends a sentence, >and is not an abbreviation. Lamport's example of this is > The Romans wrote I + I = II\@. Really! >I looked up the definition of \@ in LaTeX, and it turns out to be some >fairly obscure arcana. It sets some interword penalty or other to 1000. Nope. It sets the spacefactor, which is thousand times the ratio by which the stretch of spaces should be magnified. The trick is this (and it's in the TeX book!): the '.' will set the spacefactor to 3000 (so spaces after . will stretch thrice as hard), but if the current space factor is <1000, TeX will only set it to 1000. Now by inserting \@, you set the space factor manually to 1000, so the subsequent period will increase the spacefactor to 3000. The reason this is necessary, is that all capital letters have spacefactor 999, which is done precisely to prevent double spacing after initials. Now for the simple remedy: the space factor is also set to 1000 after boxes and rules, so you might write The romans wrote I + I = II\hbox{}. Really! Victor. >Not the sort of stuff that you would expect your average TeXnician to >employ. My question is, how does a normal person deal with this problem >in plain TeX? The problem of capital letters ending sentences does occur >often enough to be a problem for many folks. Short of rewriting the >sentence, is there an easy equivalent to \@ ? As usual, post or email >is fine with me. Thanks! >-- >This is a shared guest account, please send replies to >dbriggs@nrao.edu (Internet) >Dan Briggs / NRAO / P.O. Box O / Socorro, NM / 87801 (U.S. Snail)
dhosek@sif.claremont.edu (Hosek, Donald A.) (08/12/90)
In article <2090@wn1.sci.kun.nl>, eykhout@wn2.sci.kun.nl (Victor Eijkhout) writes... ->nraoaoc@nmt.edu (Daniel Briggs) writes: ->>LaTeX provides a simple control sequence to tell the ->>program that a given period after a capital letter actually ends a sentence, ->>and is not an abbreviation. Lamport's example of this is ->> The Romans wrote I + I = II\@. Really! ->>I looked up the definition of \@ in LaTeX, and it turns out to be some ->>fairly obscure arcana. It sets some interword penalty or other to 1000. ->Nope. It sets the spacefactor, which is thousand times the ->ratio by which the stretch of spaces should be magnified. ->The trick is this (and it's in the TeX book!): the '.' will set the ->spacefactor to 3000 (so spaces after . will stretch thrice as hard), ->but if the current space factor is <1000, TeX will ->only set it to 1000. Now by inserting \@, you set the space factor ->manually to 1000, so the subsequent period will increase the ->spacefactor to 3000. The reason this is necessary, is that all ->capital letters have spacefactor 999, which is done precisely to ->prevent double spacing after initials. ->Now for the simple remedy: the space factor is also set to 1000 ->after boxes and rules, so you might write -> The romans wrote I + I = II\hbox{}. Really! Or even simpler, "The romans wrote I + I = II\null." cf. _The TeXbook_, p. 311. -dh --- Don Hosek TeX, LaTeX, and Metafont support, consulting dhosek@ymir.claremont.edu installation and production work. dhosek@ymir.bitnet Free Estimates. uunet!jarthur!ymir Phone: 714-625-0147 finger dhosek@ymir.claremont.edu for more info