使用不同的语法进行预编译

使用不同的语法进行预编译

我正在寻找-编译器引入定制语法转换成 LaTeX。

希望一个例子能胜过千言万语:我想编译这个

\thm
The sum 
$ 1+2+3
is equal to
$$[six] 6. 
% this line will be skipped
\proof
$$ 1+2 &= 3
$$ 1+2+3 &= 6

获得这个

\begin{theorem}
The sum
$ 1+2+3 $
is equal to
\begin{align}
\label{six}
6.
\end{align}
\end{theorem}
\begin{proof}
\begin{align*}
1+2 &= 3\\
1+2+3 &= 6
\end{align*}
\end{proof}

然后在后者上运行标准 LaTeX 编译器。

我想知道是否有一些快速/聪明的方法来做到这一点。

答案1

你可以用 Perl 等语言编写一个程序来完成这样的转换。但最好还是定义自己的命令来接受一些参数并输出你想要的结果。除非你仔细设计它们,否则它们的使用会变得相当混乱。

也许您可以哄骗您的编辑器完成(部分)繁重的工作?也许只需吐出一个模板来填写(或从文件中获取)就可以了。我知道事实上它emacs可以做更多的事情,而且据我所知最新版本vi(1)可以用可用的语言进行扩展(虽然我记得用 vi 最初的单字母命令编写的迷宫解算器,所以......)。

相关内容