[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug #54537] [PATCH] om.tmac: Add block brackets to avoid a warning abou
From: |
G. Branden Robinson |
Subject: |
[bug #54537] [PATCH] om.tmac: Add block brackets to avoid a warning about unbalanced .ie |
Date: |
Sat, 22 Jan 2022 01:56:41 -0500 (EST) |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Firefox/78.0 |
Update of bug #54537 (project groff):
Item Group: None => Incorrect behaviour
_______________________________________________________
Follow-up Comment #7:
This was an actual correctness issue with respect to *roff syntax, though
whether it had any discernible impact on mom(7)'s operation, I am not remotely
prepared to opine.
`el` is a request much like any other, and does not "bind" at a lexical level
to its companion `ie` request more tightly than any other request does. This
means that if an `ie`/`el` pair is governed by another conditional, they
_must_ be braced for correct behavior. Here's an illustration.
$ cat EXPERIMENTS/block-and-el.roff
.nr a 1
.nr z 0
.ie \nz \
. ie \na a is true
. el a is false
.el z is false
$ ./build/test-groff -Tutf8 -b -ww EXPERIMENTS/block-and-el.roff | cat -s
troff: backtrace: file 'EXPERIMENTS/block-and-el.roff':6
troff:EXPERIMENTS/block-and-el.roff:6: warning: unbalanced 'el' request
a is false
Another trick you can play with `el` is (nowadays) documented in our Texinfo
manual.
5.20.3 if-else
--------------
-- Request: .ie cond-expr anything
-- Request: .el anything
Use the 'ie' and 'el' requests to write an if-then-else. The first
request is the "if" part and the latter is the "else" part.
Unusually among programming languages, any number of
non-conditional requests may be interposed between the 'ie' branch
and the 'el' branch.
.nr a 0
.ie \na a is nonzero.
.nr a +1
.el a was not positive but is now \na.
=> a was not positive but is now 1.
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?54537>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [bug #54537] [PATCH] om.tmac: Add block brackets to avoid a warning about unbalanced .ie,
G. Branden Robinson <=