9 个版本 (破坏性更新)

新版本 0.7.0 2024 年 8 月 21 日
0.6.0 2024 年 7 月 30 日
0.5.0 2024 年 3 月 12 日
0.4.0 2024 年 3 月 11 日
0.1.2 2024 年 3 月 9 日

233文本处理

Download history • Rust 包仓库 91/week @ 2024-07-25 • Rust 包仓库 24/week @ 2024-08-01 • Rust 包仓库

每月 115 次下载

MIT 许可证

50KB
776

关于

将 Markdown 转换为 Unicode

输入 结果
*强调* 𝘌𝘮𝘱𝘩𝘢𝘴𝘪𝘴
**** 𝐒𝐭𝐫𝐨𝐧𝐠
`代码` 𝙲𝚘𝚍𝚎
~~删除线~~ S̶t̶r̶i̶k̶e̶
***强调强*** 𝑬𝒎𝒑𝒉𝒂𝒔𝒊𝒔 𝒔𝒓𝒐𝒏𝒈
***强调*strong** 𝑬𝒎𝒑𝒉𝒂𝒔𝒊𝒔 𝐬𝐭𝐫𝐨𝐧𝐠
*****emphasis* 𝑺𝒕𝒓𝒐𝒏𝒈 𝘦𝘮𝘱𝘩𝘢𝘴𝘪𝘴
*`强调代码`* ℰ𝓂𝓅𝒽𝒶𝓈𝒾𝓈 𝒸ℴ𝒹ℯ
**`强代码`** 𝓢𝓽𝓻𝓸𝓷𝓰 𝓬𝓸𝓭𝓮
***`强调强代码`*** Ⓔⓜⓟⓗⓐⓢⓘⓢ ⓢⓣⓡⓞⓝⓖ ⓒⓞⓓⓔ
~~*删除线强调*~~ 𝘚̶𝘵̶𝘳̶𝘪̶𝘬̶𝘦̶ ̶𝘦̶𝘮̶𝘱̶𝘩̶𝘢̶𝘴̶𝘪̶𝘴̶
~~**删除线强**~~ 𝐒̶𝐭̶𝐫̶𝐢̶𝐤̶𝐞̶ ̶𝐬̶𝐭̶𝐫̶𝐨̶𝐧̶𝐠̶
~~***删除线强调强***~~ 𝑺̶𝒕̶𝒓̶𝒊̶𝒌̶𝒆̶ ̶𝒆̶𝒎̶𝒑̶𝒉̶𝒂̶𝒔̶𝒊̶𝒔̶ ̶𝒔̶𝒓̶𝒐̶𝒏̶𝒈̶
~~`删除线代码`~~ 𝚂̶𝚝̶𝚛̶𝚒̶𝚔̶𝚎̶ ̶𝚌̶𝚘̶𝚍̶𝚎̶
~~*`删除线强调代码`*~~ 𝔖𝔱𝔯𝔦𝔨𝔢 𝔢𝔪𝔭𝔥𝔞𝔰𝔦𝔰 𝔠𝔬𝔡𝔢
~~**`删除线强代码`**~~ 𝕾𝖙𝖗𝖎𝖐𝖊 𝖘𝖙𝖗𝖔𝖓𝖌 𝖈𝖔𝖉𝖊
~~***`删除线强调强代码`***~~ 𝕊𝕥𝕣𝕚𝕜𝕖 𝕖𝕞𝕡𝕙𝕒𝕤𝕚𝕤 𝕤𝕥𝕣𝕠𝕟𝕘 𝕔𝕠𝕕𝕖

使用 pulldown-cmark 和其修改版本的 push_html 进行 真正的 Markdown 解析和渲染。因此,它规范化了

  • 标题:Setext 标题
  • 无序列表:*
  • 有序列表:编号,.
  • 规则:---
  • 表格

注释

  1. 此 Crates 不进行语法高亮或终端颜色。有关此信息,请参阅 batsyntect

  2. 此 Crates 使用 数学符号封闭数字 块输出 Unicode 文本,但是您看到的效果取决于您使用的特定应用程序(终端、文本编辑器、网络浏览器等)及其配置(字体等)。例如,在终端或文本编辑器中,常规和等宽字体可能看起来相同,因为字体可能是等宽的。如果配置了非等宽字体或使用了使用非等宽字体的其他应用程序,或者更仔细地检查输出字节,您将看到效果。

  3. 这个crate可以被看作是markdown2unicodecrate的改进版本,但它不包含任何来自原始源代码的版权代码或GPLv3许可代码(来自USBashkamarkdown2unicode),而是使用pulldown-cmark

命令行

$ unidown -h
Convert Markdown to Unicode

Usage: unidown [OPTIONS] [STRING]...

Arguments:
  [STRING]...  Markdown string(s)

Options:
  -s <STYLE>      Style [possible values: italic, bold, monospace, strike,
                  bold-italic, script, bold-script, circled, strike-italic,
                  strike-bold, strike-bold-italic, strike-monospace, fraktur,
                  bold-fraktur, double-struck, all, demo]
  -i <PATH>       Input file(s)
  -r              Print readme
  -h, --help      Print help
  -V, --version   Print version
$ unidown -V
unidown 0.7.0
$ unidown 'Here is some *emphasis*, **strong**, ***strong emphasis***, ~~strike~~, and `code` text.'
Here is some 𝘦𝘮𝘱𝘩𝘢𝘴𝘪𝘴, 𝐬𝐭𝐫𝐨𝐧𝐠, 𝒔𝒕𝒓𝒐𝒏𝒈 𝒆𝒎𝒑𝒉𝒂𝒔𝒊𝒔, s̶t̶r̶i̶k̶e̶, and 𝚌𝚘𝚍𝚎 text.
$ unidown -s all 'Your text here'
𝘠𝘰𝘶𝘳 𝘵𝘦𝘹𝘵 𝘩𝘦𝘳𝘦
𝐘𝐨𝐮𝐫 𝐭𝐞𝐱𝐭 𝐡𝐞𝐫𝐞
𝚈𝚘𝚞𝚛 𝚝𝚎𝚡𝚝 𝚑𝚎𝚛𝚎
Y̶o̶u̶r̶ ̶t̶e̶x̶t̶ ̶h̶e̶r̶e̶
𝒀𝒐𝒖𝒓 𝒕𝒆𝒙𝒕 𝒉𝒆𝒓𝒆
𝒴ℴ𝓊𝓇 𝓉ℯ𝓍𝓉 𝒽ℯ𝓇ℯ
𝓨𝓸𝓾𝓻 𝓽𝓮𝔁𝓽 𝓱𝓮𝓻𝓮
Ⓨⓞⓤⓡ ⓣⓔⓧⓣ ⓗⓔⓡⓔ
𝘠̶𝘰̶𝘶̶𝘳̶ ̶𝘵̶𝘦̶𝘹̶𝘵̶ ̶𝘩̶𝘦̶𝘳̶𝘦̶
𝐘̶𝐨̶𝐮̶𝐫̶ ̶𝐭̶𝐞̶𝐱̶𝐭̶ ̶𝐡̶𝐞̶𝐫̶𝐞̶
𝒀̶𝒐̶𝒖̶𝒓̶ ̶𝒕̶𝒆̶𝒙̶𝒕̶ ̶𝒉̶𝒆̶𝒓̶𝒆̶
𝚈̶𝚘̶𝚞̶𝚛̶ ̶𝚝̶𝚎̶𝚡̶𝚝̶ ̶𝚑̶𝚎̶𝚛̶𝚎̶
𝔜𝔬𝔲𝔯 𝔱𝔢𝔵𝔱 𝔥𝔢𝔯𝔢
𝖄𝖔𝖚𝖗 𝖙𝖊𝖝𝖙 𝖍𝖊𝖗𝖊
𝕐𝕠𝕦𝕣 𝕥𝕖𝕩𝕥 𝕙𝕖𝕣𝕖
$ unidown -s demo 'Your text here'
| Input                            | Result         | Style              |
|----------------------------------|----------------|--------------------|
| `` *Your text here* ``           | 𝘠𝘰𝘶𝘳 𝘵𝘦𝘹𝘵 𝘩𝘦𝘳𝘦 | italic             |
| `` **Your text here** ``         | 𝐘𝐨𝐮𝐫 𝐭𝐞𝐱𝐭 𝐡𝐞𝐫𝐞 | bold               |
| `` `Your text here` ``           | 𝚈𝚘𝚞𝚛 𝚝𝚎𝚡𝚝 𝚑𝚎𝚛𝚎 | monospace          |
| `` ~~Your text here~~ ``         | Y̶o̶u̶r̶ ̶t̶e̶x̶t̶ ̶h̶e̶r̶e̶ | strike             |
| `` ***Your text here*** ``       | 𝒀𝒐𝒖𝒓 𝒕𝒆𝒙𝒕 𝒉𝒆𝒓𝒆 | bold-italic        |
| `` *`Your text here`* ``         | 𝒴ℴ𝓊𝓇 𝓉ℯ𝓍𝓉 𝒽ℯ𝓇ℯ | script             |
| `` **`Your text here`** ``       | 𝓨𝓸𝓾𝓻 𝓽𝓮𝔁𝓽 𝓱𝓮𝓻𝓮 | bold-script        |
| `` ***`Your text here`*** ``     | Ⓨⓞⓤⓡ ⓣⓔⓧⓣ ⓗⓔⓡⓔ | circled            |
| `` ~~*Your text here*~~ ``       | 𝘠̶𝘰̶𝘶̶𝘳̶ ̶𝘵̶𝘦̶𝘹̶𝘵̶ ̶𝘩̶𝘦̶𝘳̶𝘦̶ | strike-italic      |
| `` ~~**Your text here**~~ ``     | 𝐘̶𝐨̶𝐮̶𝐫̶ ̶𝐭̶𝐞̶𝐱̶𝐭̶ ̶𝐡̶𝐞̶𝐫̶𝐞̶ | strike-bold        |
| `` ~~***Your text here***~~ ``   | 𝒀̶𝒐̶𝒖̶𝒓̶ ̶𝒕̶𝒆̶𝒙̶𝒕̶ ̶𝒉̶𝒆̶𝒓̶𝒆̶ | strike-bold-italic |
| `` ~~`Your text here`~~ ``       | 𝚈̶𝚘̶𝚞̶𝚛̶ ̶𝚝̶𝚎̶𝚡̶𝚝̶ ̶𝚑̶𝚎̶𝚛̶𝚎̶ | strike-monospace   |
| `` ~~*`Your text here`*~~ ``     | 𝔜𝔬𝔲𝔯 𝔱𝔢𝔵𝔱 𝔥𝔢𝔯𝔢 | fraktur            |
| `` ~~**`Your text here`**~~ ``   | 𝖄𝖔𝖚𝖗 𝖙𝖊𝖝𝖙 𝖍𝖊𝖗𝖊 | bold-fraktur       |
| `` ~~***`Your text here`***~~ `` | 𝕐𝕠𝕦𝕣 𝕥𝕖𝕩𝕥 𝕙𝕖𝕣𝕖 | double-struck      |
$ unidown -s fraktur 'Your text here'
𝔜𝔬𝔲𝔯 𝔱𝔢𝔵𝔱 𝔥𝔢𝔯𝔢

请参阅API文档

依赖项

~5–14MB
~179K SLoC