大多数 PHP 开发人员可能熟悉名为“的语法荧光笔”GeSHi http://qbnz.com/highlighter/",它使用 HTML 和 CSS 获取代码并突出显示它:
include('geshi.php');
$source = 'echo "hello, world!";
$language = 'php';
$path = 'geshi/';
$geshi = new GeSHi($source, $language, $path);
echo $geshi->parse_code();
GeSHi 支持广泛的语言 http://qbnz.com/highlighter/geshi-doc.html#features.
我想知道 Perl 有类似的模块吗?
Perl 有一个端口Kate http://en.wikipedia.org/wiki/Kate_(text_editor)突出显示系统:语法::突出显示::引擎::凯特 http://search.cpan.org/perldoc/Syntax::Highlight::Engine::Kate这似乎有点接近你所需要的。它似乎是一部分Padre http://padre.perlide.org/.
您还可以选择 HTML 客户端荧光笔(逻辑显然是 JS),例如谷歌的代码美化器 http://code.google.com/p/google-code-prettify/
-
两个很好的语法突出显示引擎列表是:
Wiki 语法高亮文章 http://en.wikipedia.org/wiki/Syntax_highlighting#Syntax_highlighting_engines- 在它列出的内容中,Kate 和 Perl 端口/API 似乎都存在着色器(语法::突出显示::通用) http://search.cpan.org/~palant/Syntax-Highlight-Universal/
这是对 HTML 语法荧光笔的很好的回顾 http://www.xibl.com/web-development/html-syntax-highlighters/,其中包含很多客户端,例如 SHJS 等。
请注意,这些通用荧光笔都没有“100%正确”工作,就像语法荧光笔在优秀的 IDE 中的工作方式一样,因为它们使用正则表达式进行近似解析,而不是使用词法分析器进行实际语言语法解析。更多细节在维基百科上 http://en.wikipedia.org/wiki/Syntax_highlighting#History_and_limitations
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)