2

私は、次のような単純なものを決して提供しない数十のエディターを持っています。

  • タイプキーワードとインストラクションキーワードを区別して、色を変えられるようにします。
  • qt gtkなどの標準的なGUIライブラリを使用するクロスプラットフォームであること(notepad ++、はい、私はほとんどあなたを嫌います)。
  • 重複行、コメント選択、適切な検索-置換などの十分なキーボードショートカット。
  • 行全体を選択するための数直線マージンのシングルクリックなどのまともなタスク緩和機能。
  • 脳をコンパイルするコードは1つのものであるため、Scintillaまたは十分に異なる別のレクサーで、さまざまなものを強調表示します。私が重要だと思うものを目ですばやく識別します。

HTMLやCSSではなく、C、C ++、おそらくPythonなどの非常に基本的な言語をサポートしたいだけです。

Scintillaは、これらの言語を強調するだけの良い選択であり、レクサーは本当に必要ですか?

QTは、私がやりたいようなテキストエディタをプログラムするのに十分ではありませんか?QScintillaがあることは知っていますが、レクサーを統合するlibを使用すべきではない理由はありますか?Scintillaがこんなに良いlibなのはなぜですか?

QTはそのような編集者にとって良い選択ですか?(また、ProFontをエディターにハード埋め込みして、OS間のフォントの問題を解消したいと思います)。

編集:要するに、私は、notepad++と同じ構文のハイライト機能だけを備えたエディターを作りたいと思っています。それが私の主な目標であり、QScintillaの使用は私が思っていたよりも少し難しいかもしれません...

EDIT2:ええと、私はtextadeptを見つけました、それはそれほど知られていませんが、かなり素晴らしいです。字句解析プログラムを作成できませんでした。ウィンドウの下で行うことが他にあるため、残念ながらMacでは低速です。どうやら、Mac用のSciteの公式ビルドはありません。

4

8 に答える 8

7

C ++は、想像力の及ぶ限りでは「非常に基本的な言語」ではありません。

なぜあなたは本当にこれをしたいのですか?そこには非常に多くのオープンソースコードエディタがあります。

于 2010-10-31T19:52:01.223 に答える
5

独自のエディターを作成する必要がある場合は、他のオープン ソース エディターを調べて、どの部分をエディターに移植するかを検討することをお勧めします。

独自のコードを記述してデバッグするよりも、既存の動作中およびテスト済みのコードの一部を移植する方が、通常ははるかに優れています。

Emacs、Eclips、CodeBlocks、CodeLight などのいくつかの本格的なオープン ソース エディターを熟読した後、ゼロからエディターを作成することについて考えが変わり始めると思います。

-- トーマス・マシューズ
私の情報

于 2010-10-31T21:27:57.843 に答える
2

あなたが本当にこれをしたいのなら(そしてそれは多くの仕事のように聞こえます)、私はコードを解析するためにANTLRを見るでしょう。あなたは彼らのANTLRWorksディスプレイからいくつかのアイデアを得るかもしれません。解析ツリーをディスプレイにリンクするのはかなりの作業になる可能性があるので、EclipseなどのIDEプラットフォームが提供するものを確認します。

于 2010-10-31T19:51:09.797 に答える
1

Javaで大丈夫ですか?

もしそうなら、Eclipseテクノロジー:SWTJFaceに行きましょう。後者はorg.eclipse.jface.text、多くの機能を備えたパッケージを提供します。次に、それに基づいて簡単に独自のエディターをロールできます。(私はScintillaベースよりもEclipseベースのエディターを好みます。それらはより高度で機能が豊富である傾向があると思いますが、それは私の個人的な意見です。)

しかし、さらに一歩進んで、アプリケーションにEclipse RCPフレームワークを使用することもできます...しかし、Eclipse IDE自体を使用して、必要なものをプラグインとして追加してみませんか。

Eclipseコードベースは巨大であり、どれだけ再利用したいかはあなた次第です。

于 2010-12-04T14:03:37.287 に答える
1

私は emacs のカラー テーマ パッケージとさまざまな言語モードを試してみる努力を惜しみません。Lispを曲げて、やりたいことができるかどうかを確認してください。ほぼ確実にできます。私の考えでは、emacs と少し努力すれば、究極のエディターを手に入れることができます (emacs は実際には単なる DIY エディター ツールキットであることを思い出してください)。emacs を自分の好きな形に曲げることができない場合は、独自のものを書くことに労力を費やすことができます。

于 2011-01-20T07:22:57.973 に答える
0

他のみんなが言っているように、おそらくそれは価値があるよりも面倒ですが、本当にやりたいのであれば、クロスプラットフォームであるため、Qt は良い選択です。QSyntaxHighlighter を使用してキーワード/タイプの強調表示を行い、キーボード ショートカットに対する Qt のサポートを最大限に活用します。

于 2010-11-04T14:35:17.070 に答える
0

スクリプト エンジンには C、QT、Lua などを使用します。

于 2011-02-11T09:23:15.763 に答える