web-dev-qa-db-ja.com

Xcode内のすべての.xibファイルをテキスト検索しますか?

これは基本的な作業のようですが、困惑しています。

Xcodeで、プロジェクト内のすべての.xibファイル(のXMLコンテンツ)をテキスト検索する方法を教えてください。

たとえば、すべての.xibファイルには、2行目に次の文字列が含まれています。com.Apple.InterfaceBuilder3.CocoaTouch.XIB。そのため、すべてのプロジェクトファイルでその文字列を検索すると、すべての.xibファイルが返されると思いますが、Xcodeは「0回」と主張しています。プロジェクトの検索オプションが正しいことを再確認しました。

私は明らかな何かを見逃しているに違いありません。 (または、Xcodeは.xibファイルをスキップするようにハードコーディングされています。)

特定のクラスを参照するすべての.xibファイルを見つけようとしています(テキスト検索が最も直接的な方法のようです)。

ありがとう!

51
Jon-Eric

私がすることはターミナルでgrepを実行することです:

grep -i -r --include=*.xib "TextToFindHere" /PathToSearchHere

Xcodeにはxibファイルを検索するオプションがないようで、Spotlightにファイルを表示させる私の試みは失敗しました。

81
user467105

ここに私を失敗させない私の便利なコマンドがあります。ターミナルのプロジェクトディレクトリから実行します。

見つける。 -name "* .xib" -exec grep "検索するテキスト" {} \; -印刷

10
Moonwalker

これはかなり古いと思いますが、たまたまあなたのコンピューターで他の言語もコーディングしていて、そうするために Sublime Text 2 (素晴らしい)を使用することを選択した人に提案したいと思います、SublimeでiOSプロジェクトのフォルダーを開き、すべて検索機能を使用します。非常に高速で信頼性が高い。

これは、大きなプロジェクトの1つから未使用のイメージリソースを削除するために行ったものです。

〜幸せなコーディング=]

7
Ryan Crews

私はふざけているかもしれませんが、スポットライトを使用することはこれで私にとってはうまくいきます。

4
Andrew Bennett

Uはbashプロファイルでこの関数を使用できます:

function grep_xib {
    grep -i -r --include=*.xib "$1" .
}

次に、ターミナル「grep_xib TEXT_TO_FIND」を呼び出します。簡単です。

Macで.bash_profileを作成するには、次の手順に従います。

  • ターミナルを起動
  • 「cd〜/」と入力して、ホームフォルダーに移動します
  • 「touch .bash_profile」と入力して、新しいファイルを作成します。
  • お好みのエディターで.bash_profileを編集します(または、「open -e .bash_profile」と入力して、TextEditで開きます。
  • 「。bash_profile」と入力して.bash_profileをリロードし、追加した関数を更新します。
3
Ted

新しいスコープを定義することで、Xcodeの検索スコープを変更できます。検索パネルに移動し、検索バーの下に3つのドットのアイコンがあります(おそらくデフォルトで「ワークスペース内」に設定されています)。それをクリックし、[検索スコープ]で[新しいスコープ]をクリックします。 「名前」/「で終わる」/「.xib」と定義します。

2
Sarah Dygert

非常に簡単で便利な、崇高なテキストでプロジェクトフォルダーを開き、すべてのファイルを検索します。

0

grep -i -r --include=*.xib "TextToFindHere" /PathToSearchHere

応答:一致が見つかりません:--include = *。xib

cd /PathToSearchHere
grep "TextToFindHere" ./ -r | grep ".xib"

この作品はうまくいきます。

0
weiminghuaa

同じ問題が発生し、いくつかのコンソールコマンドを使用して解決しました。

1)Macでターミナルを開きます

2) "grep -i -r --include = *。xib" searchtext "/ your/project/path"コマンドを実行します

パス「/ your/project/path」を検索し、「searchtext」を使用するすべてのファイルxibの完全なパスを出力します。

これがあなたに役立つことを願っています!

0
Himanshu padia

これは、サービスとして使用する場合に機能します。

on run {input, parameters}

 display dialog "XIB Search Text" default answer ""
 set searchtext to text returned of result

 if (length of searchtext) is greater than 0 then

   tell application "Xcode" to set theProjectPath to (the project directory of front project)

   tell application "Terminal"

    set newWin to do script "cd " & theProjectPath & "; " & "rm " & theProjectPath & "/searchXIB.txt 2> /dev/null ; grep -i -r --include=*.xib " & searchtext & " . > searchXIB.txt ; exit"
    activate

    repeat while (exists newWin)
     delay 1
    end repeat

    tell application "Xcode"
     set doc to open theProjectPath & "/searchXIB.txt"
     activate
    end tell

    tell application "System Events"
     keystroke "f" using {command down}
     keystroke searchtext
    end tell
   end tell 
  end if
 return input
end run
0
ort11