help-texinfo
[Top][All Lists]
Advanced

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

Re: [help-texinfo] Porting macro-heavy makeinfo 4 to makeinfo 5


From: Patrice Dumas
Subject: Re: [help-texinfo] Porting macro-heavy makeinfo 4 to makeinfo 5
Date: Tue, 22 Apr 2014 22:00:58 +0200
User-agent: Mutt/1.5.20 (2009-12-10)

On Fri, Apr 11, 2014 at 10:28:51AM -0600, Scott Pakin wrote:
> I'm trying to rebuild a large, complex, Texinfo file I wrote back in
> the Texinfo 4 days, and I'm getting zillions of error messages from
> Texinfo 5's makeinfo.  I can use some help updating my document to
> work with the latest makeinfo.
> 
> My .texi file is extremely macro-heavy, and the Texinfo 5-introduced
> limitation that most commands appear only at the beginning of a line
> seems to be the document's main bugaboo.  How am I now supposed to
> write inlinable macros that depend upon non-inlinable commands?  

I am not sure I understand the problem correctly.  But a @c suppress 
more or less an end of line, maybe that could help...

> To
> make that question more concrete, how would one port the following
> Texinfo 4 constructs to Texinfo 5?
> 
>     @macro cncp {concept}
>     @cindex \concept\
>     \concept\
>     @end macro
> 
>     @macro foo
>     @cncp{Foo}
>     @end macro
> 
>     @macro bar
>     @cncp{Bar}
>     @end macro
> 
>     ...
> 
>     Some things are foolish (@foo{}), and some things are barred
>     (@bar{}).  Regardless of how @foo{} or @bar{} you are, you should
>     look for the following:
> 
>     @table @cncp
>     @item baz
>     Found in bazaars
> 
>     @item quux
>     In the vicinity of Equuleus
> 
>     @item corge
>     The most incorrigible
>     @end table

See two proposals attached.  I have switched the @cindex and the 
text in the @cncp macro definition in one of the proposals, to allow
to have the text of the macro invokation appear first on the @item
line.  It is not really the same as what you want, still, as you have
to repeat the macro invokation on each @table @item line.

In the second case, the original order is kept, but then another macro
is required for @item lines...


One thing that is really gone is the delayed expansion of user defined
macro on a @table line.  Now user defined macros are expanded in the
flow of the texinfo code.

Is it ok?


Note: surprisingly, these exampls work in texi2dvi too...

-- 
Pat

Attachment: pb_macro.texi
Description: TeXInfo document

Attachment: pb_other_macro.texi
Description: TeXInfo document


reply via email to

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