2

所以我最近在 Github Pages 上从 Maruku 切换到了 Kramdown,但遇到了一个问题:

Kramdown 的问题

这是导致问题的降价:

Five days ago I wrote [Standardizing Harmony Classes]
(/standardizing-harmony-classes "Aadit M Shah | Standardizing Harmony Classes").

你看到那个管道了"Aadit M Shah | Standardizing Harmony Classes"吗?Kramdown 错误地将其视为表格单元格分隔符,从而导致上面的可怕表格,实际上应该是一个段落。

这是没有意义的,因为管道分隔符位于链接文本文字内,并且不应将降价应用于链接文本文字。显然这是 Kramdown 中的一个错误。

那么如何在 Kramdown Jekyll 中禁用表格?有很多地方我有管道,我不想更换它们。这个问题还有其他解决方案吗?

4

4 回答 4

2

Gaurav 建议的转义管道不起作用,因为反斜杠出现在输出中,这是错误的。

最终,我厌倦了 Kramdown,转而选择了 Redcarpet。现在一切都像一个魅力。

于 2014-05-26T02:29:51.653 回答
1

逃离他们怎么样?

http://kramdown.gettalong.org/syntax.html#automatic-and-manual-escaping

所以在你的情况下,它可能是:"Aadit M Shah \| Standardizing Harmony Classes"

希望这可以帮助!

于 2014-05-20T05:57:35.227 回答
1

派对的另一个迟到的答案。为了完全禁用 kramdown 中的表,我最终将它分叉并在其源中禁用表;这是1 行更改

首先,克隆kramdown。然后,lib/kramdown/parser/kramdown.rb只需:table从数组中删除@block_parsers

您可以使用 轻松更新您的 kramdown git pull origin master


如果您将 kramdown 用作捆绑器 gem,例如使用博客工具 jekyll,请在您克隆 kramdown 的目录中运行rake dev:gemspec(生成kramdown.gemspec)。然后,在您的Gemfile添加中:

gem 'kramdown', path: '/path/to/kramdown/folder'

/path/to/kramdown/folder您克隆的存储库/目录包含在哪里kramdown.gemspec。最后,运行bundle install


如果您使用的是 kramdown 二进制文件,我相信您可以使用它来构建它,rake dev:gem它将位于(新创建的)pkg/文件夹中。

于 2018-12-10T02:24:13.030 回答
0

派对迟到了,但也遇到了这个问题:

Kramdown 支持多种解析器,其中::Kramdown, 也有:markdown :GFM(Github Flavoured) 和:HTML.

:markdown没有表解析,也可以解决您的问题。初始化如下:

 Kramdown::Document.new(string, input: :markdown)
于 2017-07-19T13:06:50.037 回答