NoahRichardsのdiffカラーリングサンプルに基づいたVS2010の新しい構文カラーリング機能を試してみています。目標は、SpecFlow(http://www.specflow.org)の構文カラーリングを作成することです。
私の場合、構文要素の検索はかなり複雑で、行レベルではありません。したがって、GetClassificationSpansを実装するときは、ファイル全体を再解析するのではなく、変更されたテキストの先頭の状態を取得して、その時点からコンテンツを解析します。
以前の分類をClassificationTagsとして取得できると思いました。IBufferTagAggregatorFactoryServiceクラスを使用してこれを行いました。
それは機能しますが、これが最善の方法かどうかはわかりません。分類子クラス全体に対してタグアグリゲーターのみを作成しますか、それともGetClassificationSpansが呼び出されるたびに作成できますか?解析状態を記憶するための特別なタグを作成しませんか?
とにかくこれは正しい方法ではないかもしれませんが、他の提案にも興味があります。
Br、Gaspar
編集:トピックで良い記事シリーズを見つけました:http ://www.hill30.com/MikeFeingoldBlog/index.php/2009/07/31/django-editor-in-vs-2010-part-1-色/