如何在LuaTex / LuaLaTex中进行不同的扩展状态以进行调试?

时间:2015-01-11 01:44:41

标签: debugging lua state expansion

我正在使用lua程序准备LaTex / Tex片段,从SQL请求获取信息到数据库(LuaSQL)。 我希望我可以看到扩展的中间状态以用于调试目的,但也可以控制从SQL请求和lua处理带来的内容。 我的梦想是例如看到我的Latex页面的代码,好像我自己手动输入了SQL请求和lua处理给出的所有信息。 然后,我将使用我的lua程序和SQL请求进行第一次处理,以构建一个有效且可读的luaLatex代码,如果有必要我可以修改它;然后我会再次编译该文件以获取想要的pdf文档。

今天,我使用lua开发环境ZeroBrane Studio来执行和测试lua块,然后将其集成到我的luaLatex代码中。例如: 我的lua chunk:

for k,v in pairs(data.param) do
  print('\\def\\'..k..'{'..data.param[k]..'}')
end

lua打印出来:

\gdef\pB{0.7}
\gdef\pAinterB{0.5}
\gdef\pA{0.4}
\gdef\pAuB{0.6}

luaLaTex代码:

nothing visible ! except that now I can use \pA for instance in the code

我的梦想是在luaLatex代码:

\gdef\pB{0.7}
\gdef\pAinterB{0.5}
\gdef\pA{0.4}
\gdef\pAuB{0.6}

可能是一个解决方案会支持使用explo3扩展吗?但由于我不熟悉它,也没有精确的Tex扩展过程,所以在我投入大量资金来理解这个模块之前,我更愿意问你专家。

增加: 推进反射,结果是从Latex代码我得到一个Latex代码而不是例如pdf文件。这意味着我们只使用Veijkhout在" TeX by Topic"中描述的四个TeX处理器的第一步。 :输入处理器,扩展处理器(但具有受控的扩展深度),而不是执行处理器或可视处理器。此外,需要显示中间状态,这意味着新的处理器能够将令牌显示回可读字符串并纠正可以在以后处理的Tex / Latex代码。 除非有人已经做过或看过这样的事情,否则我觉得我的愿望在短期和中期可能是不可行的。如果我放弃任何希望,你的感受是什么?

0 个答案:

没有答案