40

私は新しい言語用のコンパイラを開発しています。構文を意識した環境でその開発を実証できれば素晴らしいと思いました。この言語にはかなりの数のカスタム キーワードがあり、その構造は Java や C/C++ などの一般的な言語とは大きく異なります。

Eclipse 用のカスタム構文ハイライガーを開発するにはどうすればよいですか? いくつかのプラグインへの参照を見てきましたが、ドキュメントは私の初心者のニーズに対して十分ではありません.

自分の言語の文法/正規表現と、関連するキーワードのリストがあります。

4

5 に答える 5

34

DSL (ドメイン固有言語) を扱っているようです。あなたが探しているものは、XTextとまったく同じように聞こえます。以下はページからの抜粋です。

Xtext は、外部のテキスト DSL を開発するためのフレームワーク/ツールです。Xtext の単純な EBNF 文法言語を使用して独自の DSL を記述するだけで、ジェネレーターがパーサー、AST メタ モデル (EMF で実装)、およびそこからフル機能の Eclipse テキスト エディターを作成します。

また、その背後にいる人々の一人へのインタビューであるこのビデオをチェックしてください. 私はあなたがここからそれを取ると確信しています:-)

このプラグインもチェックしてみてください。まさにあなたが探しているものではありませんが、良いスタートになるかもしれません。

于 2009-04-14T04:57:46.730 に答える
16

Eclipse フレームワークは、かなり複雑なドキュメント モデルを使用して構文の色付け (ハイライトではなく、色付けと呼んでいます) を行いますが、他のエディターほど単純ではありません。

本当に試してみたい場合は、Eclipse プラグイン開発者ガイド から以下を読むことをお勧めします。

(上記のリンクは現在無効です。これは類似のドキュメントまたはこのの可能性があります。)

于 2009-04-14T02:02:35.203 に答える
6

これはまさに LiClipse ( http://www.liclipse.com/ ) のターゲットの 1 つです。Eclipse をターゲットにした構文の強調表示、基本的なコード補完、アウトラインなどを備えたエディターを簡単に実行できます。カスタム言語) が最近オープン ソースになりました: http://liclipse.blogspot.com.br/2016/05/liclipse-303-providing-back-to-open.html .

新しい言語を追加するのに Java のスキルは必要ありません (ほとんどの場合、新しい .liclipse (YAML ファイル) を適切な場所に作成し、言語を分割する方法を示すいくつかの基本的なルールを作成します。つまり、通常はコードを分離するだけです)。文字列からのコメントから - パーティションにあるキーワードを指定すると、適切な構文の強調表示が既に得られます)。

ダウンロードすると、plugins\com.brainwy.liclipse.editor\languages に多数の例があり、http://www.liclipse.com/text/supported_languages.html および http://www にいくつかの基本的なドキュメントがあります。方法については、 .liclipse.com/text/scope_definition.htmlを参照してください。

于 2013-10-24T12:59:51.853 に答える
1

代わりに、Notepad++ のユーザー定義言語機能を使用できます。通常、このようなユースケースには Notepad++ を使用します。その点で、それは単なる XML です。また、notepad++ は、言語固有の文法を定義するための UI ベースの編集を提供します。

于 2016-08-02T09:19:49.963 に答える