2 个不稳定版本
0.3.0 | 2023年11月2日 |
---|---|
0.2.0 | 2023年10月24日 |
1724 在 文本处理
每月下载量 22
29KB
410 行
Markdown 表格格式化器
一个性能良好的表格格式化器,完全符合 Unicode 15.1.0 和 Github Flavored Markdown (GFM) 规范。该格式化器在抽象语法树上操作,以完全捕捉 Unicode 和 GFM 规范的复杂性。
use markdown_table_formatter::format_tables;
let unformatted = "# Example
| A | B | C |
| :-- | :--: | ----: |
| C | D | E |";
let correct = "# Example
| A | B | C |
| :--- | :---: | ---: |
| C | D | E |";
assert_eq!(format_tables(unformatted), correct);
如果您正在使用 npm
软件包,请使用以下替代方案。
import { format_tables } from "@jameslanska/markdown_table_formatter";
format_tables(unformatted)
Markdown 表格格式化器 正确处理 双宽度 图形群,例如表情符号(🦀🤯)和表意 CJK(中国,日本,韩国)字符,根据 Unicode 标准附录 #11 和 Unicode 技术标准 #51。
由于表格是通过将文档解析为 抽象语法树 来在文本中发现的,因此被 HTML 块或代码块包裹的表格将被忽略。如果它没有渲染,则不会进行格式化。
本项目目标是定义一个 正确 的基本实现,可以在其他项目中使用。如果您发现正确性错误或其他错误,请 在 GitHub 上提交问题。
对齐问题
如果表格对齐看起来略有偏差,并且您不确定格式是否正确,请在 vim 中打开文件进行检查。以下片段可能在 VS Code 或 GitHub Markdown 渲染中不完全对齐,但在 vim 中将正确对齐。
| A | B |
| --- | --- |
| ✅ | ❌ |
许多文本编辑器,如 VS Code,不使用真正的等宽字体。有关更深入的讨论,请参阅 Markdown Table Formatter 的姐妹项目 字体 文档部分。
致谢
我想向 Joe Lanska 表示我最深切的感激,感谢他坚定不移的支持,以及他花时间帮助我改进文档的所有时间。
支持
如果您想进一步支持开发,请考虑 给我买一杯咖啡。
依赖关系
~8.5MB
~164K SLoC