Xcode 8 の新しい Xcode Source Editor Extensions のドキュメントを探しています。
私が見る限り、XcodeKit のヘッダー ファイルには「ドキュメント」しかありません。より詳細でより公式なものを手に入れるのは素晴らしいことです。
Xcode 8 の新しい Xcode Source Editor Extensions のドキュメントを探しています。
私が見る限り、XcodeKit のヘッダー ファイルには「ドキュメント」しかありません。より詳細でより公式なものを手に入れるのは素晴らしいことです。
非常に予備的な XcodeKit リファレンスドキュメントが利用可能になりました。
Xcode Source Editor Extensions を紹介する WWDC 2016 プレゼンテーションは、依然として最高のウォークスルーです。
ただし、最も短いバージョンは次のとおりです。アプリ拡張機能はアプリケーションに埋め込む必要があるため、最初に新しい macOS Cocoa アプリケーションを作成してから、新しい Xcode ソース エディター拡張機能をそのアプリケーションに追加する必要があります。次に、XcodeKit リファレンスは、それを実装する際に役立つはずです。
実際にはドキュメントではありませんが、良いリファレンスでもあり ます https://developer.apple.com/videos/play/wwdc2016/414/
拡張機能は、現時点では十分に文書化されていません。多くの仮定が行われています (たとえば、コンテナー アプリを実行できることを知っていましたか? はい、GUI の設定には非常に便利です。このHow To Execute Container App - Second Answer を参照してください) 。
現時点では、不足しているものがたくさんあります。たとえば、データ オブジェクトに対応する行を示す構造はありませんが、これは次のコードで簡単に作成できます。
var matches: [NSTextCheckingResult] = []
do {
let regex = try NSRegularExpression(pattern: "\n", options: [])
matches = regex.matches(in: completeBuffer,
options: [],
range: NSMakeRange(0, completeBuffer.count))
}
catch {
}
これにより、すべての の位置がわかります\n
。残りを入力して、行に一致する開始位置と終了位置を指定できるはずです。
全体として、拡張機能には多くの利点がありますが、不足している点もかなりあります。
現在、利用可能なドキュメントはヘッダーのみです。それらについて「非公式」なものは何もありません。具体的な質問がある場合は、お尋ねください。