#latex #markdown #markup #markup-language #typesetting #markdown-parser #line-ending

bin+lib aldoc

CLI 和库,用于解析和编译 Aldoc Markdown 文档

6 个版本

0.2.0 2020 年 10 月 16 日
0.1.4 2020 年 9 月 28 日

#2773 in 解析实现

26 每月下载量

Apache-2.0

32KB
717

(以下部分信息可能有所变动)

Aldoc

<<<<<<< HEAD aldoc 旨在提供类似 LaTeX 文档的美观和控制的 Markdown 变体

Crates.io Docs

aldoc 旨在提供类似 LaTeX 文档的美观和控制的标记语言

06f86987d16706a69cfe4f65a86b7f9be41f36ae,具有 Markdown 的美观语法,换句话说,允许您在不硬编码 LaTeX 的情况下编写文档。

状态

该项目仍处于初级阶段(预alpha),尚未做出重大设计决策。提到的目标尚未实现,功能不足,不建议当前状态下使用。

语法

Aldoc 的语法仍在 WIP:尚未决定哪种语法最有益,但暂时使用的语法如下

  • 段落之间用空行分隔。
     Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum dolor 
     quam, sagittis quis porta id, mattis eget ligula. Morbi id eros ut mi 
     lobortis laoreet non vel magna. Sed sollicitudin dapibus metus ut ultrices. 
    
     Sed ornare dolor risus, sit amet pretium tellus tempus et. Vivamus aliquet,
     felis venenatis finibus lacinia, nisi velit laoreet odio, vitae 
     pellentesque turpis eros nec est. Maecenas vestibulum scelerisque cursus.
    
  • 可以使用 -*+ 字符编写无编号列表。
     - Alement
     - Belement
     - Celement
    
  • Aldoc 的设计允许您使用任何组合的枚举(1aIII)和符号(.)-),不同顺序。
    • 有数字
       1. Alement
       2. Belement
       3. Celement
      
    • 有字母(大写或小写)
       (a) Alement
       (b) Belement
       (c) Celement
      
    • 有罗马数字(大写或小写)
       I- Alement
       II- Belement
       III- Celement
      

工具

作为工具、库和 Cargo 包,它为语言提供抽象,并提供将文档编译为 PDF 的方法。为此,以下过程发生

  1. Aldoc 源代码被解析为 Rust 抽象。
  2. 该抽象被编译为 LaTeX。
  3. 通过 Tectonic 将 LaTeX 代码编译为 PDF。

用法

要实际编译文档,您只需要提供输入文件路径(.md)和输出 pdf 路径,如下所示

$ aldoc doc.md compile out.pdf

您甚至可以省略输出文件,在这种情况下,aldoc 将输出与文档相同的基名的 pdf 文件。

$ aldoc doc.md compile # outputs pdf as "doc.pdf"

功能

  • 普通段落
  • 允许在源代码中使用LaTeX
  • 无编号列表
  • 编号列表
    • 编号
    • 字母顺序
    • 罗马数字
  • UTF-8支持
  • 跨平台换行符
  • 完全控制列表标记(使选定的标记符号在最终文档中显示)
  • 加粗、斜体和强调文本
  • 复选框
  • 嵌入
    • 图片
    • 矢量图像
    • 表格
  • 行分隔符
  • LaTeX模板支持(用于默认样式或包)

感谢

感谢Markdown和Nom解析库提供了必要的工具,因为这对使Aldoc解析器更具可扩展性至关重要。参考链接

依赖项

~27–44MB
~723K SLoC