Крамдаун с жуликом не сгенерировал оболочку <pre>
Это из моей консоли:
> input = <<-HEREDOC
* # Header 1
* ## Header 2
*
* ```
* def hello
* puts "hello world"
* end
* ```
* HEREDOC
=> "# Header 1\n## Header 2\n\n```\ndef hello\n puts \"hello world\"\nend\n```\n"
> Kramdown::Document.new(input, input: "GFM", syntax_highlighter: "rouge").to_html
=> "<h1 id=\"header-1\">Header 1</h1>\n<h2 id=\"header-2\">Header 2</h2>\n\n<div class=\"highlighter-rouge\">def hello\n puts \"hello world\"\nend\n</div>\n"
Как видите, HTML, сгенерированный для блока кода, не содержит <pre>
обертка кода. Но если бы я удалил rouge
вариант и использование coderay
Работает красиво.
> Kramdown::Document.new(input, input: "GFM").to_html
=> "<h1 id=\"header-1\">Header 1</h1>\n<h2 id=\"header-2\">Header 2</h2>\n\n<pre><code>def hello\n puts \"hello world\"\nend\n</code></pre>\n"
Есть идеи, что случилось? Заранее спасибо.
1 ответ
Это из-за rouge
версия драгоценного камня. Мне нужно изменить это на < v2.0.0
, И сейчас я использую:
- kramdown v1.13.1
- Руж v1.11.1