> Date: Sun, 24 Feb 2013 02:26:57 +0100
> From: Patrice Dumas <pertu...@free.fr>
> 
> As a side note, makeinfo in C processes the following:
> 
> @table @code
> @item @set a b
> item text
> in item
> @item jj @set j
> line
> @item vvv @set g@c
> @end table
> 
> 
> @table @code
> @item xx @set n
> @item jj
> @end table
> 
> 
> but leads to:
> 
> 
> `
>      item text in item
> 
> `jj
>      line
> 
> `vvv
> 
> `xx
> 
> `jj'

It also emits error messages:

  tt.texi:15: @code missing close brace.
  tt.texi:10: @code missing close brace.
  tt.texi:8: @code missing close brace.
  tt.texi:5: @code missing close brace.

which explain why there's no closing quote '.

> Therefore it is very weird that it correctly process tramp.texi, while
> it do not process the same constructs outside of user defined @-macro
> invocations...

Because the results of expanding macros in C were never presented to
the translator, they were written to output.  And @item never bothered
by what's after it, it just wrapped that in `...' or whatever.

IOW, there was no grammar or formal syntax involved.  makeinfo in C is
a simple translator which converts strings into other strings, that's
all.  It only hollers when it finds something which confuses its
simplistic algorithms (in the above case, I think it's a newline).

Reply via email to