SyntaxHighlighter是一款用于web页面的代码着色工具,可以用来着色多种语言。今天我们通过实例来学习一下它的用法。旧同桌不是老情人,但与你分享过的青春不比初恋少半分。
SyntaxHighlighter的简单实例
一、SyntaxHighlighter的代码流程如下
、Add base files to your page: shCore.js and shCore.css 、Add brushes that you want (for example, shBrushJScript.js for JavaScript, see the list of all available brushes) 、Include shCore.css and shThemeDefault.css 、Create a code snippet with either <pre /> or <script /> method 、Call SyntaxHighlighter.all() JavaScript method
使用的方式可以参考文档:http://alexgorbatchev.com/SyntaxHighlighter/manual/installation.html
jar包的下载地址: https://codeload.github.com/syntaxhighlighter/syntaxhighlighter/zip/3.0.83
二、建立一个index.html文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<link rel="stylesheet" type="text/css" href="../third/SyntaxHighlighter/css/shCore.css">
<link rel="stylesheet" type="text/css" href="../third/SyntaxHighlighter/css/shThemeDefault.css">
</head>
<body>
<pre name="code" class="brush: java">
public class Person { }
</pre>
<pre name="code" class="brush: js; gutter: false;">
function foo() {
var i = 3;
}
</pre>
<pre class="brush: java; collapse: true;">
public void javaMethod() {
int i = 3;
}
</pre>
<script type="syntaxhighlighter" class="brush: js">
<![CDATA[
/**
* SyntaxHighlighter
*/
function foo() {
if (counter <= 10)
return;
// it works!
}
]]>
</script>
<script type="text/javascript" src="../third/SyntaxHighlighter/js/XRegExp.js"></script>
<script type="text/javascript" src="../third/SyntaxHighlighter/js/shCore.js"></script>
<script type="text/javascript" src="../third/SyntaxHighlighter/js/shBrushJava.js"></script>
<script type="text/javascript" src="../third/SyntaxHighlighter/js/shBrushJScript.js"></script>
<script type="text/javascript" src="../third/SyntaxHighlighter/js/shBrushSql.js"></script>
<script type="text/javascript">
SyntaxHighlighter.all()
</script>
</body>
</html>
三、显示的效果如下所示
aaarticlea/gif;base64,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" alt="" />
具体的一些配置情况,可以参考:http://alexgorbatchev.com/SyntaxHighlighter/manual/configuration/
如果要换一种主题,可以在html中替换到默认的主题。比如使用shThemeRDark。
<link rel="stylesheet" type="text/css" href="../third/SyntaxHighlighter/css/shCore.css">
<link rel="stylesheet" type="text/css" href="../third/SyntaxHighlighter/css/shThemeRDark.css">
替换后显示的效果如下:
至于动态的通过代码来实现切换主题功能,不知道框架的代码中有没有配置。后续再做补充
四、关于其它的一些的问题
SyntaxHighlighter lets you build a single .js
file that will include the core, CSS theme and the syntaxes that you wish to use.就是说通过工具的构建,可以将SyntaxHighlighter 一些需要在项目中引入的js, css打包成一个js文件。
链接:https://github.com/syntaxhighlighter/syntaxhighlighter/wiki/Building
以下是一些默认的配置和设置,可以在代码中修改。
/**
* 1、整体可以修改默认的设置:SyntaxHighlighter.config.attrName,SyntaxHighlighter.highlight.attrName。
* 2、也可以上述所使用的那样,在html中修改属性值。<pre name="code" class="brush: js; gutter: false;">
*/
defaults : {
/** Additional CSS class names to be added to highlighter elements. */
'class-name' : '', /** First line number. */
'first-line' : 1, /**
* Pads line numbers. Possible values are:
*
* false - don't pad line numbers.
* true - automaticaly pad numbers with minimum required number of leading zeroes.
* [int] - length up to which pad line numbers.
*/
'pad-line-numbers' : false, /** Lines to highlight. */
'highlight' : null, /** Title to be displayed above the code block. */
'title' : null, /** Enables or disables smart tabs. */
'smart-tabs' : true, /** Gets or sets tab size. */
'tab-size' : 4, /** Enables or disables gutter. */
'gutter' : true, /** Enables or disables toolbar. */
'toolbar' : true, /** Enables quick code copy and paste from double click. */
'quick-code' : true, /** Forces code view to be collapsed. */
'collapse' : false, /** Enables or disables automatic links. */
'auto-links' : true, /** Gets or sets light mode. Equavalent to turning off gutter and toolbar. */
'light' : false, 'html-script' : false
}, config : {
space : ' ', /** Enables use of <SCRIPT type="syntaxhighlighter" /> tags. */
useScriptTags : true, /** Blogger mode flag. */
bloggerMode : false, stripBrs : false, /** Name of the tag that SyntaxHighlighter will automatically look for. */
tagName : 'pre', strings : {
expandSource : 'expand source',
help : '?',
alert: 'SyntaxHighlighter\n\n',
noBrush : 'Can\'t find brush for: ',
brushNotHtmlScript : 'Brush wasn\'t configured for html-script option: ', // this is populated by the build script
aboutDialog : '@ABOUT@'
}
},