【问题标题】:do you know of any python component(s) for syntax highlighting?你知道任何用于语法高亮的 python 组件吗?
【发布时间】:2009-03-07 00:10:37
【问题描述】:

是否有可以在 GUI 中使用的易于使用的 python 组件?拥有像 Python 的 JSyntaxPane 这样的东西会很棒。我想知道只有 python 的版本(对 jython 不感兴趣)。

【问题讨论】:

    标签: python components syntax-highlighting


    【解决方案1】:

    除了 pygments 之外? http://pygments.org/

    【讨论】:

    • 如何在 GUI 应用程序中使用 pygments?
    • Pygments 可以输出为 HTML 或 RTF。只需使用可以呈现其中任何一个的 GUI 小部件。
    • 你能发布一个可以呈现 html 的小部件的链接吗?
    • 此外,破解 Pango 输出器以将 Pygments 输出直接放入 GTK 小部件并不是特别难。
    • 您还可以编写一个自定义格式化程序,以您的小部件需要的任何格式输出语法突出显示。
    【解决方案2】:

    如果您使用的是 gtk+,gnome-python-extras 中有 Python 的 gtksourceview 绑定。根据我的经验,它似乎运作良好。缺点:文档不够完善。

    如果你喜欢 PyQt,还有一个QScintilla 的绑定用于 Python。

    【讨论】:

      【解决方案3】:

      您可以在wxPython 中使用StyledTextCtrl。查看官方演示以获取示例(任何演示的演示代码选项卡)。

      【讨论】:

        【解决方案4】:

        您说“在 GUI 应用程序中”,但没有提及工具包。

        如果您正在使用 PyQt,并且需要一个只读小部件,您可以使用 QWebKit,它包含一个基于 WebKit 的完整 HTML 小部件,因此它几乎支持任何东西,从 flash 到 ACID2 测试。

        如果你想要一个可读写的小部件,Qt 的 QTextEdit 支持语法高亮,我写了一个适配器让 pygments 使用它:

        http://lateral.netmanagers.com.ar/weblog/2009/09/21.html#BB831

        我确信其他工具包也可以做类似的事情,但我不知道怎么做。

        【讨论】:

          猜你喜欢
          • 2010-09-08
          • 2012-02-23
          • 2011-02-09
          • 2010-10-27
          • 2010-11-06
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多