Подсветка синтаксиса с помощью coderay, asciidoctor не работает
У меня есть асцидоценовая уценка примерно так, как описано здесь http://asciidoctor.org/docs/asciidoc-syntax-quick-reference/
:source-highlighter: coderay
:coderay-css: class
:stylesheet: coderay_railscasts.css.scss
[source,ruby]
.app.rb
----
require 'sinatra'
get '/hi' do
"Hello World!"
end
----
Но мой вывод в браузере вообще не подсвечивается. Классы также не были применены.
Мой вывод инструментов веб-разработчика выглядит так: Как видите, к тексту не применяются классы, которые должны быть, согласно документации
<div class="listingblock">
<div class="title"></div>
<div class="content">
<pre class="highlight">
<code class="language-ruby" data-lang="ruby">
require 'sinatra'
get '/hi' do
"Hello World!"
end
</code>
</pre>
</div>
</div>
Таким образом, кажется, что ему не удалось применить классы, которые могут не взаимодействовать с кодовым массивом или не могут найти правильные настройки и т. Д.
Я видел этот FAQ по asciidoctor http://asciidoctor.org/docs/faq/ объясняющий, как вам нужно настроить некоторые параметры, но я его применяю при генерации html-документов из уценки asciidoctor, а не того, что я делаю - что сохранение текста уценки в базе данных и его анализ при получении. Этот часто задаваемый вопрос также предполагает файловую структуру и структуру, которые не являются рельсами. Так что, похоже, это не относится к моему делу.
Я в растерянности, потому что у меня правильный синтаксис и настройки, но я не уверен, где он терпит неудачу, без каких-либо средств для отладки или проверки, где что-то отсутствует или неверно.
Эта проблема, кажется, точное поведение, которое я получаю. https://github.com/asciidoctor/asciidoctor/issues/947
1 ответ
Звонок должен быть либо
== Asciidoctor.convert(@article.content, safe: 'safe')
или же
== Asciidoctor.render(@article.content, safe: 'safe')
Затем вы увидите стили, размеченные в вашем блоке кода.
Если это не работает, также измените
[source,ruby]
в
[source,ruby,role="my_css_class"]
Конкретное значение атрибута роли html, похоже, не имеет большого значения.