[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ifset documentation
From: |
Patrice Dumas |
Subject: |
Re: ifset documentation |
Date: |
Thu, 18 Aug 2005 00:35:02 +0200 |
User-agent: |
Mutt/1.4.2.1i |
On Wed, Aug 17, 2005 at 11:31:04PM +0200, Karl Berry wrote:
> I think a precision is in order.
>
> I am not sure I want to be precise :(. For one thing, I think
> texinfo.tex and makeinfo might behave differently; I've never done any
> exhaustive testing. Did you test with both?
I begun my testings with makeinfo. The whole story is that I tried
my-bib-macros.texi with texi2html and found that texi2html don't handle right
nested @ifclear. That's what got me interested in that matter. A quick
check of texi2dvi shows that texi2dvi fails on my-bib-macros.texi.
> Is there some real document that fails, or are you looking for a spec to
> implement in texi2html, or ... ?
I am looking for a spec to implement in texi2html but in the meantime I
should test makeinfo and texi2dvi.
Here is a first testcase that breaks makeinfo and texi2dvi: @ignore
is ignored in @ifset, or not handled right:
@c ===============================
@ifset a
@ignore
@ifset
@end ignore
@end ifset
@c ===============================
address@hidden examples]$ makeinfo bug_makeinfo_nested_ifset.texi
bug_makeinfo_nested_ifset.texi:8: Reached eof before matching @end ifset.
texi2dvi:
Runaway argument?
address@hidden
! File ended while scanning use of @next.
<inserted text>
@par
Same if you replace @ignore by @html, or by @verbatim or @ifset is enclosed
in @verb{}.
In my opinion these are bugs, meaning that I think that @ignore, @html
and so on shouldn't be ignored in @ifset. However you may have another advice
on that matter.
What I would like to know is whether user defined macros and @values should
be expanded in @ifset. It matters (especially for macros) as a user defined
macro could lead to a @ignore or something similar appearing.
It seems that @macro aren't expanded in @ifset currently, as the following
snippet doesn't lead to an error:
@c ===============================
@macro addifset
@ifset
@end macro
@ifset a
@addifset
@end ifset
@c ===============================
Is it the right thing? I don't have a firm idea on that. Maybe do what is
easier from the implementation perpective.
--
Pat