2013-04-03 2 views
1

Запуск небольшого сайта с Jekyll. Одна из проблем, над которыми я продолжаю работать, заключается в том, что уценка сохраняет модифицирующий контент, который находится между pre тегами.Остановить конверсию содержимого между предварительными тегами в Jekyll

Два заметных примера.

Первое:

<pre>a & b</pre> 

конвертируется в

<pre>a &amp;</pre> 

Второй пример:

<pre>I am "happy"</pre> 

превращается в

<pre>I am “happy”</pre> 

Если это не так ясно, последний пример преобразует цитаты в смарт-кавычки. Это плохо для меня, потому что мои pre-теги содержат примеры кода, где умные кавычки становятся синтаксическими ошибками. Кроме того, я попытался использовать & между предварительными тегами, надеясь, что вместо этого конвертер будет вставлять &. Вместо этого он (вздыхает) оставляет его как &

Есть ли очевидный способ рассказать Джекилу (или Redcarpet) о том, что часть кода не должна проходить через преобразователь разметки?

Брэдли

ответ

0

Redcarpet 2.2.2 does not modify code between HTML tags. Попробуйте это в IRB:

require 'redcarpet' 
markdown = Redcarpet::Markdown.new(Redcarpet::Render::HTML, :autolink => true, :space_after_headers => true, :fenced_code_blocks => true) 
markdown.render("<pre>They're not for sale, says Johnson & Johnson.</pre>") 

Это мой результат:

"<pre>They're not for sale, says Johnson & Johnson.</pre>\n" 
+0

Любая идея о [это] (http://stackoverflow.com/q/34532476/2404470) – xameeramir

Смежные вопросы