代码之家  ›  专栏  ›  技术社区  ›  Lasse V. Karlsen

用于源代码格式的C/.NET库,如堆栈溢出使用的库?

  •  3
  • Lasse V. Karlsen  · 技术社区  · 15 年前

    我正在编写一个命令行工具来将标记文本转换为HTML输出,这看起来很简单。

    但是,我想知道如何为嵌入的代码块(如堆栈溢出所使用的代码块)进行良好的语法着色。

    是否有人知道:

    • 什么库stackoverflow正在使用
    • 或者如果有一个图书馆,我可以很容易地重用?

    基本上,它需要在堆栈溢出使用的“智能”中找到一些相同的“智能”,基本上,通过尽最大努力找出使用中的语言来选择正确的关键字。

    基本上,我希望自己的程序处理如下块:

    if (a == 0) return true;
    if (a == 1) return false; // fall-back
    

    markdown sharp,我使用的库,默认情况下,将以上内容输出为一个简单的pre/code html块,没有语法着色。

    我希望和堆栈溢出的格式处理一样,上面包含蓝色的“返回”关键字。

    或者,hmm,在添加代码示例后检查了这个堆栈溢出页的源代码之后,我注意到它也被格式化为一个简单的pre/code块。这是纯javascript魔术在这里工作,所以也许没有这样的库?

    如果没有库可以通过所使用的关键字自动确定可能的语言,是否有一个库可以工作,如果我明确地告诉它语言?因为这是“我的”markdown命令行工具,所以如果需要,我可以很容易地添加语法。

    1 回复  |  直到 15 年前
        1
  •  7
  •   Jon Skeet    15 年前

    糟糕-我完全错过了你已经在使用的事实 Markdown Sharp -但是 标记处理器堆栈溢出使用。

    然而,它 使用 Google Code Prettify -这就是提供颜色的那个位。那是你丢失的那一块吗?