10

私は現代のテキストエディタのためのデザイン\アーキテクチャのガイダンスを探しています。

最新のテキストエディタとは、次のことを意味します。

  • 構文の強調表示をサポートしています
  • オートコンプリートがあります(IntelliSenseのようなもの)
  • 高度なナビゲーション機能(インクリメンタルサーチなど)を備えています

次のプロパティがプラスになります。

  • 管理言語(Java、任意の.NET言語)で実装
  • モジュラーアーキテクチャ
  • アドインのサポート

テキストエディタ関連のデザイン\アーキテクチャドキュメント\記事、オープンソースプロジェクトへのリンクに 非常に興味があります。

一般的な推奨事項、OOP/デザインパターンの本の広告には興味がありません。

現在、 SharpDevelopコードエディタのソースコードを分析しています。同様のプロジェクトへのリンクをいただければ幸いです。

4

7 に答える 7

9

もちろん、究極のテキストエディタはemacsです。私は、The Craft of Text Editorial、またはEmacs for the Modern Worldが、エディターの作成の基本に関する優れた自習ガイドであることに気づきました。例はすべて単純な古いCであり、テキストは少し古くなっているように見えるかもしれませんが(1991年のものです)、基本的な考え方は依然として有効であり、エディターがそのように機能する理由を完全に理解しています。

于 2008-09-15T15:09:39.000 に答える
4

SharpDevelopのエディタは優れており、オープンソースでもあります。

于 2008-09-12T10:57:52.983 に答える
3

Javaベースのエディタ「jEdit」は、テキストエディタアーキテクチャの良い例であり、プラグインのサポート、強力なユーザーコミュニティ、および優れた抽象化を備えています。

于 2008-09-15T14:58:33.647 に答える
2

Scintillaのソースコードも見ることができます。

于 2008-09-12T10:58:41.937 に答える
2

xacc.ideをチェックアウトできます

于 2008-10-01T19:36:04.930 に答える
1

それはおそらくあなたが探しているものではなく、Mozillaに基づいていますが、完全を期すために:

Open Komodoは、開発者環境を構築するためのオープンソースプラットフォームを作成するためのActiveStateによるイニシアチブです。

于 2008-09-12T11:35:17.823 に答える
0

あなたはvimを見ましたか?オートコンプリート、構文の強調表示、インクリメンタル検索、統合ビルドなどをサポートしています。モジュール式であり、より高度な機能の多くはプラグインとして実装されており、同梱または個別に見つけることができます (例: svn 統合、 cscope/ctags、ssh を介した透過的な読み取り/書き込み)。

独自の拡張言語 ('vimscript') だけでなく、いくつかの言語 (例: python、ruby、perl) でプラグインを作成するための API があります。

高レベルのアーキテクチャ ドキュメントに関して彼らが何を持っているかはわかりませんが、ソースを掘り下げ始めると、それがどのように機能するかについての特定の質問に答えることができるはずの活発なコミュニティと開発者のメーリング リストがあります。

于 2008-09-15T14:30:06.583 に答える