我正在寻找一个通用的语法高亮库,输出到html。
它可以在ruby应用程序中使用,所以ruby库会很好,但是可以通过管道进出的优秀实用程序
还需要猜测适当的语言以突出显示
答案 0 :(得分:16)
基于HTML / CSS / JavaScript的语法荧光笔解决方案是最受欢迎的,适用于包括Ruby在内的不同服务器技术。
SyntaxHighlighter (推荐)可以帮助开发人员/编码人员轻松在线发布代码段并使其看起来很漂亮。它是100%基于Java脚本的,它不关心你的服务器上有什么。
Syntax highlighting 库。内置支持将源代码转换为语法高亮的HTML。
SyntaxHighlighter 。它允许您轻松发布语法突出显示的代码,而不会丢失其格式或进行手动更改。
<强> Prettify 即可。一个Javascript模块和CSS文件,允许在html页面中突出显示源代码片段。
<强> GeSHi - Generic Syntax Highlighter 即可。 GeSHi最初是为phpBB论坛系统创建通用语法高亮显示器的想法,但已经推广到这个项目。 GeSHi旨在成为一个简单但功能强大的突出课程,具有以下目标:(1)支持多种流行语言(2)轻松添加新语言以突出显示(3)高度可定制的输出格式
< / LI>JUSH 是一个用JavaScript编写的语法高亮组件。它突出了相互嵌入的HTML,CSS,JS,PHP和SQL代码。除语法突出显示外,它还提供指向所有受支持语言的文档的链接。
这里有一些关于这个主题的博客文章:
答案 1 :(得分:1)
答案 2 :(得分:1)
有些选择是:
Syntax - 它真的很广泛,但我认为它有一些许可问题(语法是GPL)
Coderay - 我在我的博客上使用它,它非常有限,但功能正常
Ultraviolet支持大量语言(文本可以做的任何事情)
如果您愿意与Python建立联系,那么Pygments就支持大量语言
答案 3 :(得分:1)
试试rouge。它是纯粹的红宝石,与pygments兼容,并且积极开发。
答案 4 :(得分:0)
您可能需要查看Colorer。它似乎没有Ruby的绑定,但是对于Perl和PHP,也许有人可以在此基础上为Ruby绑定绑定。
答案 5 :(得分:0)
Scintilla可以与C ++代码一起使用。我不知道有没有办法在Ruby中使用C ++应用程序。