Markdown失败并将section截断为32字节散列

时间:2017-02-23 16:07:49

标签: markdown

以markdown格式编写更长的文本并使用markdown将其转换为html,我遇到了一个看似错误的内容,其中部分内容被替换为32字节的字符串似乎是随机的(东西的哈希?内容?)

是否有人能够发现我是否已经以某种方式破坏了降价语法,如果这确实是一个错误或可能是我不理解的功能?

(尝试复制的结果也是最受欢迎的)

MWE:

# trigger #

trigger

 1. trigger

   1. trigger

  trigger

# test #

 1. This string is certainly not a 32 byte has of it self!

  trigger

   1. trigger

  trigger

        code

输出:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<title>markdowntest.html</title>

</head>

<body>

<h1>trigger</h1>

<p>trigger</p>

<ol>
<li><p>trigger</p>

<ol>
<li>trigger</li>
</ol>

<p>trigger</p></li>
</ol>
<h1>test</h1>



b51d272a31d78671f8ed67b251d4ef0e



<p>trigger</p>

<p><pre><code>code
</code></pre></li>
</ol></p>

</body>
</html>

测试:Kali linux,在virtualbox中运行,uname -aLinux kali 4.6.0-kali1-686 #1 SMP Debian 4.6.4-1kali1 (2016-07-21) i686 GNU/Linuxmarkdown -vThis is Markdown, version 1.0.1. Copyright 2004 John Gruber http://daringfireball.net/projects/markdown/

并在Linux mint 18上运行,在虚拟框中运行,uname -aLinux aaubox 4.4.0-21-generic #37-Ubuntu SMP Mon Apr 18 18:33:37 UTC 2016 x86_64 x86_64 x86_64 GNU/Linuxmarkdown -vThis is Markdown, version 1.0.1. Copyright 2004 John Gruber http://daringfireball.net/projects/markdown/

1 个答案:

答案 0 :(得分:2)

这是markdown.pl中的错误。在引擎盖下,解析器将使用散列作为占位符来散列文档的一部分,然后将该占位符替换为实际内容。您似乎找到了一个边缘情况,其中最后一步没有发生。

事实上,appears修复了错误Markdown.pl 1.0.2b8。不幸的是,测试版1.0.2b8从未正式发布为正式版。虽然,据我所知,使用markdown.pl的人都喜欢并使用它而不是最新的官方版本1.0.1。鉴于在过去10年中没有发生任何事情,John Gruber表示他认为Markdown多年来在各种场合都是完整的,我认为可以安全地假设不会有新版本发布。