これは、エディタで実装する機能の数に依存すると思います。また、あなたがそれを拡張するためにどのくらいの仕事をしたいのか、あなたが対処したいと思っている学習曲線の量。
Win32をターゲットにしていて、アンマネージドDLLを気にしないのであれば、Scintilla.NETは問題にはならないと思います。また、thisページが示唆するように、簡単にWPFでホストすることができます。
個人的には、シンチラはAvalonEditよりも優れていると感じました。また、基本的なエディタを使い始める方が簡単です。例えば、Scintillaはコードを折り畳んで展開するなど、多くの機能を備えています。
AvalonEditを使用すると、フォールディング戦略を作成してドキュメントを自分で解析する必要があります。これは、まだ実装されていないAvalonEdit用のIronPythonをサポートするために必要な作業です。
私はScintillaのでIronPythonのエディタをサポートするために必要なすべての検索パスとScintilla.netアセンブリと、次のような構成にSciLexer.dllた:AvalonEditについては
private void Form1_Load(object sender, EventArgs e)
{
this.scintilla1 = new ScintillaNet.Scintilla();
this.scintilla1.ConfigurationManager.Language = "python";
this.scintilla1.Indentation.ShowGuides = true;
this.scintilla1.Indentation.SmartIndentType = ScintillaNet.SmartIndent.Simple;
this.scintilla1.Location = new System.Drawing.Point(0, 0);
this.scintilla1.Margins.Margin0.Width = 40;
this.scintilla1.Margins.Margin2.Width = 20;
this.scintilla1.Name = "scintilla1";
this.scintilla1.TabIndex = 4;
this.scintilla1.Whitespace.Mode = ScintillaNet.WhitespaceMode.VisibleAfterIndent;
this.scintilla1.Dock = DockStyle.Fill;
this.Controls.Add(this.scintilla1);
}
あなたが外部の蛍光ペンをロードする必要がありますファイルの詳細については、thisのブログ記事をご覧ください。だから、基本(ハイライト、Python + C#の折りたたみ)を望むなら、私の結論は、シンチラは簡単であり、より良い結果を出すということです。 AvalonEditを使用すると、学習曲線に取り組み、学習に取り組んでいれば、最終的にはもっと多くのことを行うことができます。現時点では、私は安定したエディタとしてScintillaを使用しており、概念の証明としてAvalonを試しています。おそらく私はエディタについてもっと学ぶときに私は新しい意見を形成するでしょう。
幸運
あなたは結局どのように解決しましたか? (今、ほぼ2年後) – Goswin
私はソースコードの中でコンポーネントとして使うことはできませんが、 'AintonEdit'をベースにした' ScintillaNET'と 'SharpDevelop'に基づく' QuickSharp'別の軽量C#エディタです。 Imo、 'SharpDevelop'はより多くの機能を備えていて、作業がはるかに簡単でした。 – nawfal