> 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).