[OS X TeX] Geometry package, lists and hfill weirdness
Charilaos Skiadas
cskiadas at gmail.com
Mon Oct 15 23:47:38 CEST 2007
Thanks Frank for the detailed explanation! These are the subtleties
of TeX that I try not to think about too much ;). I like the \hbox
solution, which was also suggested to me off-list. Since I was in a
hurry, I ended up using {\ } to put a small space at the end.
Haris Skiadas
Department of Mathematics and Computer Science
Hanover College
On Oct 15, 2007, at 12:34 PM, Frank STENGEL wrote:
>
> Le 15 oct. 07 à 15:34, Charilaos Skiadas a écrit :
>
> <snip>
>
>>
>> So two questions:
>> 1. Is this a known behavior of the geometry package, and do you
>> know of a way to circumvent it?
>
> Actually no: what geometry does is change the (logical) paper
> margins. The fact is that on an A4 sheet, article uses rather large
> margins. So in any case the ``there!'' are truly placed at the
> right margin. What you may want to do is add a \hbox{} after the
> hfill so that the skip (hfill) is not gobbled (unskipped) when the
> line is cut.
>
> Actually what happens (more or less) is that when TeX cuts a line
> it kills any white space (stretchable or no) at the end of the
> line. If this line is the last line of a paragraph, it adds the
> glue (stretchable space) defined in \parfillskip, which here is
> equivalent to a \hfil (one l, infinitely less springy than a
> \hfill) So you end up with single line paragraphs of the form:
>
> <left margin> \hfill Hi \hfill There! \hfil <right margin>
>
> The \hfil being weak, it will be smashed by the \hfills therefore
> giving the impression of:
>
> <left margin> \hfill Hi \hfill There! <right margin>
>
>> 2. How can I make the \filltwo calls in the enumerate environment
>> distribute their arguments equidistant in a single line?
>
> Try this:
>
> \documentclass{article}
> \usepackage[left=1cm,right=1cm,top=1cm,bottom=1cm]{geometry}
> \newcommand{\filltwo}[2]{\par\hfill #1 \hfill {#2} \hfill\hbox{}}
> \begin{document}
> \begin{enumerate}
> \item In list:\par
> \hfill Hi \hfill there! \hfill\hbox{}
> \item Also in list:
> \filltwo{Hi}{there!}
> \end{enumerate}
> %Another way would be to use hfil
> \par\hfil Hi \hfil there!\par % notice, no tailing \hfil, it is
> added by \parfillskip...
> \filltwo{Hi}{there!}
> \end{document}
>
> Another way would be to use boxes such as :
>
> \hbox to 10cm{\hfill Hi \hfill There! \hfill}
>
> HTH
>
> --
> Frank STENGEL (fstengel<at>mac.com)
>
------------------------- Helpful Info -------------------------
Mac-TeX Website: http://www.esm.psu.edu/mac-tex/
TeX FAQ: http://www.tex.ac.uk/faq
List Archive: http://tug.org/pipermail/macostex-archives/
List Reminders & Etiquette: http://www.esm.psu.edu/mac-tex/list/
More information about the macostex-archives
mailing list