一个用于在Python中处理LaTeX代码的词法分析器和编解码器。
项目描述
使用latexcodec,我鼓励您考虑使用pylatexenc,它要优越得多: https://github.com/phfaist/pylatexenc
该编解码器提供了一种在LaTeX文本和unicode之间转换的便捷方式。由于它不是一个LaTeX编译器,因此更适合处理短文本片段,如一段段落或BibTeX条目的值,而不适合完整的LaTeX文档。特别是,其对待非简单选择字符的LaTeX命令的行为,旨在使unicode表示可由人类读者理解,但不是规范的,可能需要手动调整以产生期望的效果。
编码器会尽力将LaTeX输入(默认为ascii)范围之外的unicode字符替换为选择该字符的LaTeX命令。更技术地说,unicode码点被替换为选择可以合理表示码点的glyph的LaTeX命令。具有特殊用途的LaTeX中的unicode字符被替换为其LaTeX等效物。例如,
原始文本 |
编码后的LaTeX |
---|---|
¥ |
\\yen |
ü |
“u” |
\N{NO-BREAK SPACE} |
~ |
~ |
~ |
% |
\% |
# |
\# |
x |
x |
解码器尽力替换LaTeX命令中选择的字符,用Unicode字符代替。例如,
原始LaTeX |
解码后的Unicode |
---|---|
\\yen |
¥ |
“u” |
ü |
~ |
\N{NO-BREAK SPACE} |
~ |
~ |
\% |
% |
\# |
# |
x |
{x} |
# |
# |
此外,注释被删除(包括标记注释结束的换行符),段落被规范化为双换行符,其他换行符保持不变。LaTeX命令之后的空格也被规范化了。
例如,
hi % bye there\par world \textbf {awesome}
被解码为
hi there world \textbf {awesome}
在解码过程中,不直接选择字符的LaTeX命令(例如,宏和格式化命令)将保持不变。对于尚未被编解码器识别的字符选择的LaTeX命令,也会发生相同的情况。任何一种情况都可能导致混合Unicode字符串,其中一些字符被理解为实际的字符,而其他字符则被视为未展开命令的一部分。因此,有时为了表示可能未被识别的控制序列的开始,反斜杠将保持不变。
鉴于有众多不断变化的包提供此类LaTeX命令,编解码器永远不会完整,对新识别的未识别Unicode或LaTeX符号的新翻译总是受欢迎的。
项目详情
下载文件
下载适合您平台的文件。如果您不确定该选择哪个,请了解更多关于安装包的信息。
源分发
构建分发
latexcodec-3.0.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 917dc5fe242762cc19d963e6548b42d63a118028cdd3361d62397e3b638b6bc5 |
|
MD5 | 19edb0931c2cb7cbb0e49e5829365c20 |
|
BLAKE2b-256 | 98e7ed339caf3662976949e4fdbfdf4a6db818b8d2aa1cf2b5f73af89e936bba |
latexcodec-3.0.0-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 6f3477ad5e61a0a99bd31a6a370c34e88733a6bad9c921a3ffcfacada12f41a7 |
|
MD5 | 88f1b09249106cfb89a62487600487ca |
|
BLAKE2b-256 | b0bfea8887e9f31a8f93ca306699d11909c6140151393a4216f0d9f85a004077 |