关于html:用Javascript突出显示代码的语法

Syntax highlighting code with Javascript

对于HTML中突出显示块的语法,您可以推荐哪些JavaScript库?

(请为每个答案提供一个建议)。


stackoverflow使用prettify库。


我最近发明了一种叫彩虹的东西。

主要的设计目标是使核心库非常小,并使开发人员很容易扩展。

见http://rainbowco.de。


SyntaxHighlighter作为Github项目提供。


莱维鲁的棱镜怎么样?

从她2012年6月的博客公告中:

  • It’s tiny. The core is only 1.5KB minified & gzipped.
  • It’s incredibly extensible. Not only it’s easy to add new languages (that’s a given with every syntax highlighter these days), but also to
    extend existing ones.
  • It supports parallelism through Web Workers, for better performance in certain cases.
  • It doesn’t force you to use any Prism-specific markup, not even a Prism-specific class name, only standard markup you should be using
    anyway. So, you can just try it for a while, remove it if you don’t
    like it and leave no traces behind.


jquery syntax highlighter是一个基于Google的prettify的新版本——一个非常流行的纯JavaScript语法highlighter。

它支持codepre块,能够使用language-javascript之类的类名来表示我们希望它突出显示,以及换行。您可以通过正常选择代码来复制和粘贴代码,而不必像其他许多视图一样打开原始视图。它可以通过使用html5数据属性data-sh或通过在初始化时指定选项来进一步定制。一个非常稳定的选择,定期更新。


我对SHJ很满意。它支持多种语言,而且似乎非常快速和准确。

下面是一个我在博客上使用它的例子。我正在使用自己的自定义CSS文件来模拟coda的语法突出显示。如果你想用的话给我发邮件。


如果您使用jquery,会有辣椒:

网址:http://code.google.com/p/jquery-chili-js/

你所要做的就是包括jquery-chili.js和recipes.js,并用

1
$("code").chili();

它应该自己去理解语言。


怎么样:

合成荧光笔

突出显示.js

J荧光笔


语法是一个非常快速和轻量级的语法亮点。它具有语法源文件的动态加载功能,并使用CSS或Modelines清晰地集成。

它是专门为填补一个空白而开发的——即:一个快速、干净、客户端语法分析器。


如果要在浏览器编辑器中查找突出显示的语法,请尝试codemirror。


我不是在争论,但我认为值得一提的是,如果你使用的是CMS或博客平台,那么使用后端荧光笔会更好,原因很明显——如果你感兴趣的话,可以访问geshi(http://qbnz.com/highlighter/)。实际上,您可以通过后端技术设置服务器来解析HTML内容——所以根本不需要JSHighlighters。(他们添加的唯一功能是打印/复制[使用SWF]。)


本文在Web资源库列出了一系列突出显示代码的选项,其中一些选项使用JavaScript。2009年5月4日出版。


合成荧光笔