5 个版本
| 0.2.3 | 2023年7月26日 | 
|---|---|
| 0.2.2 | 2023年7月15日 | 
| 0.1.9 | 2023年7月3日 | 
| 0.1.3 |  | 
#55 in #tex
每月下载量 104
37KB
 1K  SLoC
德州
目的
本 crate 并没有涵盖您可以使用 LaTeX 完成的各种事情。相反,它试图提供一些最基本功能的友好 API。此外,它不会捕获大多数 LaTeX 错误。
这也是我第一次进入开源世界,因此欢迎和感谢建设性的批评。 https://github.com/Abhay478/Texas/issues
基本功能
- 主要类型是 Document,您可以随心所欲地填充它。可以这样写入文件
let mut q = File::create("file.tex")?;
let doc = document!("book");
write!(q, "{}", doc.to_string())?
- 文档可以填充 Component、Package和Command。它们可以通过函数和宏创建。
- Component是一个枚举,每个变体包含一个单独的结构体。如果一个组件- impl了- Populate特性,您可以用更多- Component填充它,然后像这样将其安装到- Document中
let mut p1 = part!("one");
p1.attach(chapter!("c1"))?
    .attach(chapter!("c2"))?; // and so on.
p1.attach_vec(vec![chapter!("c3"); 2])?;
doc.new_component(p1);
- Command可以这样创建和安装
doc.new_command(Command::new("brak", 1, "\\ensuremath{\\left(#1\\right)}"));
- 并且可以在文中这样调用命令
let mut p1 = section!("one");
p1.attach(command!(doc, "brak", "hello there"))?;
- 最终将添加从代码生成类似 ensuremath的功能。
- 包可以像这样创建和安装
doc.new_package(package!("parskip", "parfill"));
- 还有一个 Opt特性,允许为命令添加选项(如目前usepackage和documentclass)。
日志
- 
0.1.7- package!宏不起作用,已修复。
- 将模块移到前面(在 lib.rs中重新导出)以方便使用。
 
- 
0.1.8- 小错误。由于 Line代码导致的 LaTeX 错误。
 
- 小错误。由于 
- 
0.1.9- 将结构体引入作用域。
 
- 
0.2.1- 现在有了文档。
 
- 
0.2.2- 图像和表格。
- 修复了一些文档的小问题。
- 修复了 package!宏的另一个问题。最初并没有真正致命。
 
- 
0.2.3- 小清理。
- 最终添加了 ensuremath 功能。还将添加更多。