groff
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Groff] blm blues


From: Miklos Somogyi
Subject: Re: [Groff] blm blues
Date: Thu, 13 Nov 2008 23:37:13 +1100


On 13/11/2008, at 07:46 AM, Miklos Somogyi wrote:


That's a nice explanation, Werner. Thank you.
About "again": it's good to see that some people have memories. I can't remember what was for dinner
yesterday :-)

Miklos

On 11/11/2008, at 06:15 PM, Werner LEMBERG wrote:

I am trying to produce a macro for request blm that would set space
as a given fraction of the current vertical spacing.

I did the following:

.de blank
.  nr blankreg (c;\\$1)
..

.de blank_aux
.  sp (\\n[.v]u*\\n[blankreg]u/28340)u
..

.blm blank_aux

This does not work (does not produce any space).

Again, you haven't applied `u' correctly.  In a request which doesn't
use `u' as the default scaling indicator, *each* element gets
converted to the request's default unit before it is processed
arithmetically.  In your example, the `28340' is converted to `v'
also.  Additionally, it has no effect to apply `u' to an expression.
The right way to write the call to .sp is

.sp (\\n[.v]u * \\n[blankreg]u / 28340u)

Alternatively, you might write

.sp (u;(\\n[.v] * \\n[blankreg] / 28340))

See section 5.2.1 (Default Units) in groff.info for more examples.


    Werner








reply via email to

[Prev in Thread] Current Thread [Next in Thread]