我有一堆 LaTeX 片段,我想尽可能忠实地将它们转换为 Unicode 字符串。
(事实上,这些是来自书目数据库的论文标题,我想将其用作文件名。)
有人可以建议如何将 LaTeX 片段“编译”成纯文本吗?
这里有些例子:
{\it {A}rithm\^etik\^e stoichei\^osis}꞉ on {D}iophantus and {H}ero of {A}lexandria
On a geometry of {I}vanov and {S}hpectorov for the {O}'{N}an sporadic simple group
On a theorem of {P}l\"unnecke concerning the sum of a basis and a set of positive density
On some series containing {$\psi(x)-\psi(y)$} and {$(\psi(x)-\psi(y))^2$} for certain values of {$x$} and {$y$}
我主要关心的是将重音字符正确地转换为 unicode 并删除多余的括号。我不关心保留格式(例如\it
上面的格式),我很乐意保留$
分隔的数学。
我对使用 TeX 本身进行转换的解决方案感兴趣,也对使用其他语言“手动”进行翻译的明智建议感兴趣。即使删除括号而不破坏$
分隔的数学,似乎也很棘手。
答案1
其他人必须找到一种方法来使用“TeX 本身”,这似乎没有必要那么复杂,尽管不可否认的是,这并非毫无意义。我更喜欢“使用合适的工具来完成工作”的理念。在这种情况下,我的建议是使用潘多克,因为它的设计目的就是:将文件从一种标记转换为另一种标记。输入如下内容:
% latex-snippet.tex
\emph{{A}rithm\^etik\^e stoichei\^osis}꞉ on {D}iophantus and {H}ero of {A}lexandria % <-- fixed to use LaTeX syntax (\emph vs \it); seems to require extra blank line because of this comment
On a geometry of {I}vanov and {S}hpectorov for the {O}'{N}an sporadic simplegroup
On a theorem of {P}l\"unnecke concerning the sum of a basis and a set of positive density
On some series containing {$\psi(x)-\psi(y)$} and {$(\psi(x)-\psi(y))^2$} for certain values of {$x$} and {$y$}
你用:
pandoc -f latex -t plain -o outputfile.txt latex-snippet.tex
结果如下outputfile.txt
:
Arithmêtikê stoicheiôsis꞉ on Diophantus and Hero of Alexandria
On a geometry of Ivanov and Shpectorov for the O’Nan sporadic simple group
On a theorem of Plünnecke concerning the sum of a basis and a set of positive density
On some series containing \psi(x)-\psi(y) and (\psi(x)-\psi(y))^2 for certain values of x and y
离题附录:最好将整个单词括在括号中(例如{Diophantus}
):它不会破坏括号中的字母和下一个字母之间的字距,并且仍保留大写。