Prism.js语法高位不起作用

时间:2017-10-20 08:58:34

标签: ruby-on-rails prism.js docsify

我使用Docsify来提供有关我的项目的文档。 对于语法高亮,我想使用prism.js。可悲的是,突出部分不起作用。我还尝试了here提到的所有建议。

在我的index.html中,我添加了file.md,正如docsify提到的here。在我想要显示一些Ruby代码的<pre><code class="language-ruby"> def hello(name) p "Hello #{name}" end </code></pre> 中:

<pre><code class="language-ruby">
  def hello(name)
    p "Hello #{name}"
  end
</code></pre>

但Ruby代码没有突出显示。 enter image description here

正在呈现的HTML:

Hadoop fs -rmr /mydir/ab*

我在这里缺少什么?

2 个答案:

答案 0 :(得分:1)

尝试手动调用Prism.highlightAll()

&#13;
&#13;
<script defer src="./docsify.min.js"></script>
<script defer src="./prism.js"></script>
<script defer lang="javascript">
   window.$docsify = {
      // call Prism.highlightAll() in vue hook
      plugins: [
         function (hook, vm) {
            hook.doneEach(function (html) {
               Prism.highlightAll()
               console.log('mounted,', Prism, Prism.languages.flow)
            })

         }
      ]
   }
</script>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

经过测试后,似乎由于某些原因docsify不会要求Prism突出显示何时手动放置标签。

如果没有什么阻止您使用标准Markdown语法的,您应该选择它:

```ruby
def hello(name)
    p "Hello #{name}"
end
```