ココアにソースコードを強調表示する構文を実装する最良の方法は何ですか? [閉まっている
-
09-09-2019 - |
質問
Objective-C、SQL、JavaScript、Pythonなどの言語で記述されたソースコードを分析および強調表示できるはずのCoCoAアプリケーションに取り組んでいます。テキストも編集可能である必要があります(たとえば、NSTextViewを使用して)。
Mac OS X 10.5でこのような機能を実装する最良の方法は何ですか。
自動完了やその他のエクストラ機能をサポートする必要はありません。キーワード、文字列、#includes、および数字によるシンプルなフォーマットですが、クールなパフォーマンスでは問題ありません。
また、言語ごとの構成がサポートされている場合は素晴らしいことです。
ありがとう!
解決
似たようなものを必要とするプロジェクトを準備する際に、以下を見つけました(ただし、詳細に評価されていません)。
- /開発者/例/opengl/cocoa/glsleditorsampleは、構文強調表示を実装しています。
- Idekit, 、「構文の着色、ポップアップ関数、分割フレームなど、プログラマーソースコード編集を提供するオープンソースフレームワーク」。これはしばらく更新されていません(10.2と10.3の互換性を宣伝しており、プロジェクトビルダープロジェクトに付属しています - Xcode 2.5で変換できます)。
- uksyntaxcoloredTextDocument.
他のヒント
2番目のAhrumanのアドバイス - UliのuksyntaxcoloredTextdocumentを見る特に特に、どのクラスなどについて正しい方向に向けているかを示します。あなたが学ばなければならないでしょう。
これはもう1つの優れた情報源です。
http://www.cocoadev.com/index.pl?implementyntaxhighlighting
頑張ってください - 構文の強調表示は正しくなるのは難しいですが、途中でたくさんの楽しみです!
最近、Cocoaの構文強調表示ソリューションを探す必要がありました。StackOverflowを検索した後、GoogleとGithubは最新の、簡単に再利用できるものを見つけることができませんでした。
最近のほとんどの構文蛍光物は、Web用に書かれているようです。幸いなことに、実際には、CoCoaアプリで使用するWebViewにそれらを埋め込むのは非常に簡単です。編集者との通信は、webkitを介して実行できます WebScriptObjectプロトコル.
これが人気のJavaScriptテキストエディターのラッパーの例です Codemirror ココアの場合:https://github.com/swisspol/codemirrorview
Pythonで記述されたPygmentsを使用して、ソースコードのHTML表現を生成し、Webビューで表示できます。
(以下のコメントに反映されているように、この答えは元の質問に対するもので、編集可能なテキストについては言及していませんでした。)
ここで(ドイツ語で)説明されているようにFlexを使用することを検討するかもしれません[1]。このアプローチの例をここで見つけることができます[2]。
[1] http://www.osxentwicklerforum.de/thread.php?postid=14764 [2] http://objectiveous.github.com/davenport/