LATEX-L Archives

Mailing list for the LaTeX3 project

LATEX-L@LISTSERV.UNI-HEIDELBERG.DE

Options: Use Forum View

Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Benjamin Berg <[log in to unmask]>
Reply To:
Mailing list for the LaTeX3 project <[log in to unmask]>
Date:
Sun, 20 Aug 2017 23:52:26 +0200
Content-Type:
multipart/signed
Parts/Attachments:
text/plain (1555 bytes) , signature.asc (832 bytes)
Hi,

On Wed, 2017-08-09 at 09:50 +0100, Joseph Wright wrote:
> On 09/08/2017 00:18, Benjamin Berg wrote:
> > just ran into the same issue myself. I haven't been able to solve my
> > usage yet but noticed in the processes that \vbox_set_top:Nw seems to
> > be still missing.
> 
> Could you give a bit more detail of the case you need to solve?

I would expect it to be added either way, just so that the API is the
same for the different boxes :)

Anyway, the case I am trying to solve is a macro which in reality puts
the content into a box (this can be a vtop or hbox depending on the
command).

So my user would type something like:

  \question[text=some text]{\verb^some text^}

Here the "some text" is exported as metadata and the \verb should be
put into the box. I could implement the above command correctly using
\vbox_set_top:Nw by swallowing the opening braces and emitting
\vbox_set_end: using \group_insert_after: for the closing brace.
For now I have done a workaround using \vtop directly.

The reason to use \vtop is a bit more odd. I was unhappy that I
wouldn't get the correct interline skip for the first row of the vbox.
So my solution was to put it into a \vtop to measure the height and
then unpack it into a normal \vbox to get the correct \prevdepth value
after the box has been added to the vertical list.

Note that this works as I am calculating the interline skip myself.
There are a number of other (weird) things which make everything more
complicated, but I think this might explain enough.

I am happy to explain in more detail or point to the code.

Benjamin

ATOM RSS1 RSS2