QSciLexer*
クラスは誤解を招くように命名されています。彼らは実際にはレクサーではありません。代わりに、Scintilla ベースのエディターであるSciTEで使用されるプロパティ ファイルのラッパーを提供します。プロパティ ファイルには、特定の Scintilla レクサーを構成するために必要なすべての設定 (フォント、色、キーワードなど) が含まれています。
デフォルトでは、QScintilla はQsciLexer*
、Scintilla がサポートするすべての言語のクラスを提供しているわけではありません。最も一般的に使用されている言語のほか、メーリング リストでユーザーから要求されたものを提供するだけです。Qscintilla の作成者である Qscintilla はQsciLexer*
、Scintilla がサポートする任意の言語のクラスを喜んで追加します。唯一の要件は、対応するレクサーに使用可能な SciTE プロパティ ファイルが存在することです。
残念ながら、現在の SciTE ソースには、Progress 4GL レクサーのプロパティ ファイルが含まれていません。ただし、誰かが作成した可能性は十分にあるため、少し検索すると作成される可能性があります。それができない場合は、いつでも自分で作成できます。
PS: QScintilla がクラスを適切にサブクラス化できないのは本当に厄介ですQsciLexer
(重要な仮想関数のいくつかは公開されていません)。そうであれば、Qscintilla の作成者に追加を依頼しなくても、Scintilla がサポートする任意の言語用のカスタム ラッパー クラスを作成することができます。