flexmark,commonmark 都只是把代码解析到标签里面,并不支持根据语言高亮代码,这个有现成的库支持吗??
<pre><code class="language-java">
package com.vladsch.flexmark.samples;
import com.vladsch.flexmark.util.ast.Node;
import com.vladsch.flexmark.html.HtmlRenderer;
import com.vladsch.flexmark.parser.Parser;
import com.vladsch.flexmark.util.options.MutableDataSet;
public class BasicSample {
public static void main(String[] args) {
MutableDataSet options = new MutableDataSet();
// uncomment to set optional extensions
//options.set(Parser.EXTENSIONS, Arrays.asList(TablesExtension.create(), StrikethroughExtension.create()));
// uncomment to convert soft-breaks to hard breaks
//options.set(HtmlRenderer.SOFT_BREAK, "<br />\n");
Parser parser = Parser.builder(options).build();
HtmlRenderer renderer = HtmlRenderer.builder(options).build();
// You can re-use parser and renderer instances
Node document = parser.parse("This is *Sparta*");
String html = renderer.render(document); // "<p>This is <em>Sparta</em></p>\n"
System.out.println(html);
}
}
</code></pre>
这个是commonmark 解析的markdown的code代码块,实际上,我想解析类似下面这样的,最好直接在html里,不要单独css文件。
最后解决了,使用python 和pandoc解决的。
pypandoc.convert_text(context, 'html', format ='markdown_github', extra_args=['-s', '--highlight-style=breezeDark'])
1
yukong 2019-03-22 14:19:19 +08:00
hightlight.js
|
3
youngce 2019-03-22 14:47:18 +08:00
代码高亮最终不也就是一堆 css 吗,你的意思是 css 都不要了?
|