代码高亮SyntaxHighlighter插件使用

2021-06-20 作者:未知   |   浏览(
在看其他人网站的时候,有些语言是php 有些是mysql 有些是 javascript代码高亮显示,如何达成的呢?今天给大伙介绍一下
原名:SyntaxHighlighter,是一款用于web页面的代码着色工具,可以用来着色多种语言,可以是HTML,CSS,Javascript,还可以是C,JAVA等编程语言。最早见于Yahoo的YUI,当时还是自由软件,近期打开官方网站发现已被goolge收编。它可以在网页中对各种程序源码语法进行加亮显示。支持目前时尚的各种编程语言:C#、CSS、C++、Delphi、Java、JavaScript、PHP、Python、Ruby、SQL、Visual Basic、XML / HTML

该工具核心基于javascript,用起来非常简单:

1、假设网页文件test.htm存放在一个目录,将dp.SyntaxHighlighter解压缩,并复制其中的Scripts文件夹和styles文件夹,确保和test.html在同一个目录下面。
2、在网页的<head></head>之间插入以下代码:
<link type="text/css" rel="stylesheet" href="Styles/SyntaxHighlighter.css"></link>
3、在网页要显示程序源码的地方插入以下代码,如果是HTML种类的话,用XML(其它的如class="js"表示以js语法显示源码,其他可设定的class值分别为c#、css、c、elphi、java、js、php、python、ruby、sql、vb、xml):
<textarea name="p" class="js" rows="15" cols="100">
程序源码放在这儿
</textarea>
说明:
name="p"是需要的,不可以更改;
class="xml"是着色的方法,即需要着色的代码的种类,依据需要进行更改。
4、在网页尾部的</body>之前插入以下代码:
<script class="javascript" src="Scripts/shCore.js"></script>
<script class="javascript" src="Scripts/shBrushCSharp.js"></script>
<script class="javascript" src="Scripts/shBrushPhp.js"></script>
<script class="javascript" src="Scripts/shBrushJScript.js"></script>
<script class="javascript" src="Scripts/shBrushJava.js"></script>
<script class="javascript" src="Scripts/shBrushVb.js"></script>
<script class="javascript" src="Scripts/shBrushSql.js"></script>
<script class="javascript" src="Scripts/shBrushXml.js"></script>
<script class="javascript" src="Scripts/shBrushDelphi.js"></script>
<script class="javascript" src="Scripts/shBrushPython.js"></script>
<script class="javascript" src="Scripts/shBrushRuby.js"></script>
<script class="javascript" src="Scripts/shBrushCss.js"></script>
<script class="javascript" src="Scripts/shBrushCpp.js"></script>
<script class="javascript">
dp.SyntaxHighlighter.HighlightAll;
</script>

一个页面里面可以包含任意多个需要着色的代码段;
压缩包中有各种着色代码种类的着色案例,大伙可以参照用。

办法2、
1. 第一在页面上添加如下代码(假设下载后的SyntaxHighlighter放在SyntaxHighlighter目录下面,注意目录结构):

<link type="text/css" rel="stylesheet" href="SyntaxHighlighter/Styles/SyntaxHighlighter.css"></link>
<script language="javascript" src="SyntaxHighlighter/Scripts/shCore.js"></script>
<script language="javascript" src="SyntaxHighlighter/Scripts/shBrushCSharp.js"></script>
<script language="javascript" src="SyntaxHighlighter/Scripts/shBrushXml.js"></script>
<script language="javascript">
window.onload = function {
dp.SyntaxHighlighter.ClipboardSwf = 'SyntaxHighlighter/Scripts/clipboard.swf';
dp.SyntaxHighlighter.HighlightAll;
}
</script>

官方的安装中没window.onload,我想这个还要的,毕竟,页面加载的时候我就需要给代码着色。
2. 用法如下:
办法1、用pre
<pre name="p" class="c-sharp">
... some p here ...
</pre>

办法2、用textarea
<textarea name="p" class="c#" cols="60" rows="10">
... some p here ...
</textarea>

另外,这里还有一些高级特质的设置办法可供参考,诸如代码折叠等。
案例下载:http://freemoban.com/uploadfile/2015/0218/20150218114602868.rar