Scintilla是一个免费的源代码编辑组件。它带有完整的源代码和允许在任何免费项目或商业产品中使用 的许可证。

除了标准文本编辑组件中的功能外,Scintilla 还包括在编辑和调试源代码时特别有用的功能。其中包括对语法样式、错误指示器、代码完成和调用提示的支持。选择边距可以包含类似于调试器中用于指示断点和当前行的标记。样式选择比许多编辑器更开放,允许使用比例字体、粗体和斜体、多种前景色和背景色以及多种字体。

当前开发发生在默认分支 5.* 上,这需要支持 C++17 的最新 C++ 编译器。

Lexilla是一个可以与 Scintilla 一起使用的词法分析器库。

SciTE是一个基于 SCIntilla 的文本编辑器。最初是为了演示 Scintilla 而构建的,它已经发展成为一个普遍有用的编辑器,具有构建和运行程序的功能。它最适用于配置简单的工作——我用它来构建测试和演示程序以及 SciTE 和 Scintilla 本身。

Scintilla 的开发最初是为了改进 PythonWin 中的文本编辑器。在对 PythonWin 使用的 Richedit 控件中的问题感到沮丧之后,看起来最好的方法是编写一个新的编辑控件。Richedit 和其他类似控件的最大问题是它们将样式更改视为对文档的重要持久更改,因此它们被保存到撤消堆栈中并设置文档的脏标志。对于源代码,不应保留样式,因为它可以机械地重新创建。

Scintilla 和 SciTE 目前可用于带有 GTK 的 Intel Win32、macOS 和 Linux 兼容操作系统。它们已在 Windows XP、Windows 7、macOS 10.9+ 和带有 GTK 2.24 的 Ubuntu 18.04 上运行。这是 SciTE 的屏幕截图。

您可以下载 Scintilla。

源代码可以通过 Mercurial 在 Source Forge Scintilla 项目页面下载。

https://www.scintilla.org/