Scintilla(シンティラ)は文書編集機能を提供するオープンソースライブラリであり、ソースコード編集向けの各種機能を備えている。Scintillaをベースとしたスタンドアロンのエディタとして SciTEクロスプラットフォーム)や Notepad++Windows)がある。

Scintilla
SciTEのスクリーンショット(Scintillaを使用)
開発元 Neil Hodgson 他
最新版 5.0.1 - 2021年4月9日 (3年前) (2021-04-09) [1] [±]
リポジトリ ウィキデータを編集
プログラミング
言語
C++
プラットフォーム クロスプラットフォーム
ライセンス Historical Permission Notice and Disclaimer英語版 [2]
公式サイト https://www.scintilla.org/
テンプレートを表示

概要 編集

ScintillaはNeil Hodgsonが開発したソースコード編集に特化したテキストエディタに共通して必要とされる機能を提供するライブラリ(部品群)である。シンタックスハイライトで扱えるプログラミング言語は標準で80以上にのぼり、それ以外のものも字句解析器 (Lexer) と呼ばれるモジュールを用意すれば比較的容易に実現できる。開発は1999年より精力的に継続されている。

なお、SciTEはScintillaエンジンを利用した同作者の手による汎用テキストエディタアプリケーションであり、並行して開発が続けられている。

対応フレームワーク 編集

ScintillaはWindowsの場合Win32 APILinux互換オペレーティングシステム (OS) の場合GTK、そしてmacOSの場合Cocoaを利用して実装されており、それらを利用するアプリケーションにて使用できる。また、Qtを選択することもできる。そのほか、後述するように有志の手による非公式ラッパーもいくつか開発・公開されている[3]。Windows版は既定で描画にGDIが使われるが、Windows Vista (SP2 + Platform Update) 以降にてDirectWriteおよびDirect2Dを使用するオプションも用意されている[4]

機能 編集

Scintillaにはシンタックスハイライトだけでなくコードエディタの作成を容易にする様々な機能がある。表示されるテキストのフォント、色、スタイル、背景色などを構文要素ごとに変更可能で、等幅フォント以外も使える。コントロールとしては、エラーインジケータ、マージンにおける行番号表示、ブレークポイントなどを示す行マーカーなどがある。他にもコード折りたたみ自動補完といった機能をエディタに追加できる。独自の正規表現エンジンも搭載されている。

Scintillaベースの主なエディタ 編集

ラッパー 編集

脚注 編集

外部リンク 編集