Ron Aaron wrote:

What I wish to do is accumulate text into a paragraph "as I go".  My simple 
approach is to allocate a box, and then unbox and add the text.  But this doesn't work as 
I intend:

\newbox\textbox
\def\addbox#1{
        \setbox\textbox\vbox{
                \unvbox\textbox#1
        }
}

\addbox{Hello}
\addbox{there!}

What I get is each appended bit of text in a separate line.  I've tried to "\unskip" and 
"\unkern" etc. after the \unvbox, but whatever I do I get a list of lines rather than a 
paragraph as I would like.  So far I haven't found any answers in my searching, so if one of you 
would be kind enough to point me in the right direction I would be appreciative.

Although you probably /can/ do it via a \vbox, you would have
to somehow get at the anonymous \hbox that will lie therein;
easier, IMHO, is to use an \hbox directly or a token-list
register :

\newbox \textbox
\def \addbox #1%
    {%
        \setbox \textbox = \hbox
            \bgroup
                \unhbox \textbox #1%
            \egroup
    }

\addbox {Hello}
\addbox {there!}

\unhbox \textbox
\end

\newtoks \texttoks
\def \addtoks #1%
    {%
        \texttoks = \expandafter {\the \texttoks #1}
        }

\addtoks {Hello}
\addtoks {there!}

\the \texttoks
\end

Philip Taylor


--------------------------------------------------
Subscriptions, Archive, and List information, etc.:
 http://tug.org/mailman/listinfo/xetex

Reply via email to