[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug #61453] want native mechanism for continuous (non-paginated) render
From: |
G. Branden Robinson |
Subject: |
[bug #61453] want native mechanism for continuous (non-paginated) rendering |
Date: |
Thu, 25 Jul 2024 18:34:50 -0400 (EDT) |
Follow-up Comment #11, bug #61453 (group groff):
[comment #10 comment #10:]
> [comment #7 comment #7:]
> > I'm a little nervous of meddling with the semantics of a
> > negative page length given the potential for interaction with
> > negative vertical drawing positions.
>
> There seem to be (at least) two ways to implement this. When the user
specifies ".pl -1", the code can either:
>
> 0 Store -1 as the page length.
I've just foreclosed this possibility (not because of this ticket, but because
it was [https://savannah.gnu.org/bugs/?64301 causing me headaches with
trapping arithmetic]).
commit a00682e9cb4070e35139f6df59130d9ce12505ce
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date: Thu Jul 25 15:20:55 2024 -0500
[troff]: Enforce minimum page length.
* src/roff/troff/div.cpp (page_length): Clamp `pl` request argument to
the output device's vertical resolution (similarly to the way `ll` and
`lt` behave).
* doc/groff.texi.in (Page Layout):
* NEWS: Document this.
> 0 Set a new flag that indicates page-length handling is to be disregarded.
Any code that compares against page length is made conditional on this flag
being unset.
This remains completely feasible.
> In many cases, implementation 1 may automatically do what's desired without
further code change. But this raises your concern about interaction with
negative vertical drawing positions.
I have no intention of invalidating negative vertical drawing positions.
Setting the `nl` register to `-1` to force a re-spring of a trap at vertical
position 0 is well established. There are more exotic applications like
drawing an arc with its center off the page.
> Implementation 2 is a more invasive change. But because it skips
page-length checking altogether, it avoids the prior concern.
Not terribly invasive, I think. This would be a property of the top-level
diversion and no other formatter object I can think of. That's also the only
thing that has page location traps in the first place, so I don't foresee any
problems with symbol visibility. Possibly, all the changes that this feature
needs can be made to "div.cpp".
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?61453>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
signature.asc
Description: PGP signature
- [bug #61453] want native mechanism for continuous (non-paginated) rendering, Dave, 2024/07/19
- Message not available
- Message not available
- Message not available
- Message not available
- Message not available
- Message not available
- Message not available
- Message not available
- Message not available
- Message not available
- Message not available
- [bug #61453] want native mechanism for continuous (non-paginated) rendering,
G. Branden Robinson <=