[iOS]Xcode5のFind NavigatorでOSフレームワークを検索

2013.12.26

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

Xcode5になってから画面の左側タブの左から三番目にあるFind NavigatorのUIが変更されました。
プロジェクトにもともと追加されているフレームワークヘッダを調べるときにつまずいたのでまとめておきます。

Find Navigatorの場所


↓ここです。

findnavigator1

Foundation.frameworkを検索してみる

findnavigator2

デフォルトでIn Projectになっている検索範囲を変更してみます。 In Projectの箇所をクリックすると

findnavigator3

上のようにSEARCH SCOPESとPROJECTの2つのグループが出てきます。SEARCH SCOPESの下にあるMy Scopeにマウスオーバーして、出てくるEditというボタンをクリックして、検索条件をデフォルトで付いているLocation属性のis within workspaceis within workspace and frameworksに変更します。

  • 検索窓の上がFind > Text > Containingになっていること
  • 検索窓の下がIn My Scopeになっていること


を確認した後、適当にFoundation.frameworkに含まれていそうなテキストを打ち込んでEnterしてみます。

findnavigator4

OSフレームワークが検索できました!

検索オプション

Xcode5では若干Xcode4とUIが異なっています。

検索窓上部のオプション

検索窓上部にはデフォルトでFind > Text > Containing となっている箇所がありますが、こちらを設定することでソースの検索条件を設定したり、ソースの該当部を一括変更できます。

findnavigator5

一番目に出てくるメニュー
Find : 条件に合う部分を一括検索します
Replace : 検索条件に合う部分を一括変更します
二番目に出てくるメニュー
Text : ソースに含まれるすべてのテキストを検索対象とします
References : 他の部分で定義されたコードを呼び出している部分(メソッド内でクラスやプロパティ、メソッド等々を呼び出している部分)を検索対象とします
Definitions : メソッド、クラス、プロパティ、メンバ変数等々を宣言した部分、メソッド定義部分を検索対象とします
Regular Expression : 正規表現パターンマッチで条件に合致した部分を検索します
三番目に出てくるメニュー
Containing : 検索窓に入れられた文字列を含む部分を検索します
Matching : 検索窓に入れられた文字列に合致するような部分を検索します
Starting with : 検索窓に入れられた文字列で始まる部分を検索します
Ending with : 検索窓に入れられた文字列で終わる部分を検索します


Replaceの機能は以前と変わらず、一括変更が可能です。

検索窓下部のオプション

大まかには以下のとおりです

findnavigator11

findnavigator10


カスタム検索条件の作成については検索対象ファイルに関する複数のオプションが用意されています。条件は逐次追加することが可能で、リストの条件をすべて満たしたファイルが検索対象になります。

findnavigator8


尚、ここでのPathはファイルのフルパスを対象としています。

参考サイト

Find Navigator Help