2010年8月1日

使用SyntaxHighlighter高亮代码

有时候,需要在博客中插入代码片段,一般而言,需求很明确:
  1. 能够针对某一段代码进行语法高亮。
  2. 能够针对某几行代码做「行高亮」处理。
  3. 使用过程中,不需要重复考虑格式化问题。
  4. 支持语言尽可能广泛,目前而言,我需要能够支持 C、Tcl、Python 三种语言。考虑到后续需求,最好也支持 Java、Ruby、Lua 等一票语言。
最后选择了 SyntaxHighlighter(下文简称做 SH)。SH 当前是 v3.0.83 版本,本身不提供 Tcl 语言的支持,我照着官方教程自己写了一份(下载试用)。
考虑到 Tcl 本身是基于字符串的语言(这种机制用多了觉得真是很强大),对于关键字的使用限定很少,譬如你可以写出类似如下的 Tcl 代码:上述代码的第一行、以及第三行中,三个单词分别是「关键字」、「变量名称」、「变量值」。而使用上述的高亮脚本,则不会对此处的命令做语法分析,而将会简单的、将这三个单词全都高亮。而至于这里所定义的 if 函数,直接把 if 给重载了……
不过考虑到 Tcl 语言本身束缚就少,至于可维护性和可读性,更是和使用人员的编程素质密切相关,所以这里也就不纠结了。

更多关于 SyntaxHighlighter 的信息:
  1. 更多配置方式。
  2. SH 3.0 版本所引入的自动加载相应脚本机制

- EOF -

1 条评论:

  1. N长时间不写博客了。
    写起来还真是有一点纠结…… 囧

    回复删除

不要使用过激的暴力或者色情词汇.
不要充当勇猛小飞侠 --- 飘过 飞过 扑扑翅膀飞走 被雷得外焦里嫩地飞走.
万万不可充当小乌龟 --- 爬过.
构建河蟹社会 责任你有 我有 大家有 -_-

Creative Commons License 转载请指明出处. 谢谢合作.
/***********************
author: jtuki
http://jtuki.blogspot.com/
***********************/