我想在用Jekyll撰写的博客上改善语法突出显示的功能。我注意到,某些语言(例如Scala)并非总是被Rouge正确地突出显示(它执行了错误的标记化)。同时GitHub的代码示例和Gists正确显示了Scala语法,显然他们使用了自己的库Linguist,以获得更好的结果。
由于修补Rouge看起来很困难,是否有一种方法可以使用Linguist标记化并创建CSS以突出显示服务器端?
答案 0 :(得分:1)
有没有一种方法可以使用Linguist标记并创建CSS来突出显示服务器端?
不。 仅语言学家检测文件的语言; it doesn't perform the highlighting itself。
在GitHub上,语法突出显示的规则由a set of grammars从Sublime Text,Atom和TextMate软件包中定义。对于Scala,GitHub依赖于scala/vscode-scala-syntax。语法高亮显示本身是由GitHub拥有的一个封闭源代码库执行的。
因为修补胭脂看起来像是长镜头
这仍然可能是您最好的选择,尤其是因为目前the Rouge lexer for Scala似乎还不太复杂。