![将unicode符号转换为tex](https://linux22.com/image/336590/%E5%B0%86unicode%E7%AC%A6%E5%8F%B7%E8%BD%AC%E6%8D%A2%E4%B8%BAtex.png)
我编写了一个 lualatex 文件,其中包含 Unicode 字符,例如 α、≤…
现在我需要将其转换为 latex。是否有脚本可以将符号转换为 tex 命令\alpha
?\leq
...
答案1
我正在使用以下 Python 脚本。结果需要进行一些小调整。
#!/usr/bin/env python3
import sys
import fileinput
import unicode_tex
excluded_chars = ['\\', '&', '$', '{', '}', '%', ' ', '_', '~', '\'', '`', '^', '*', '#']
tex_replacements = unicode_tex.unicode_to_tex_map.copy()
for char in excluded_chars:
tex_replacements.pop(char)
with fileinput.FileInput(sys.argv[1], inplace=True, backup='.bak') as file:
for line in file:
for src, target in tex_replacements.items():
line = line.replace(src, target+"{}")
print(line, end='')