MacPortsがディスクを圧迫している時のクリーンアップ方法

HomeBrewが主流になりつつある中、乗り換えるのも面倒でしぶとくMacPortsを使い続けているnoradaikoです!
MacBook Airのディスク容量が少なくなっているという警告が出たので、何かと思ったらMacPortsが3GB以上も食っていました。
絶対無駄なファイルが蓄積されているだろうという事で調べてみたら、クリーンアップ方法を見つけたのでメモ。

#!bash
$ sudo port clean --all all

これで中途ファイルなどが削除されます。
俺の場合、これで2GBほどの容量が空きました!
ついでにinactiveなパッケージも削除しましょう。

#!bash
$ sudo port -p uninstall inactive

こっちは500MBほど空きました!
こういうのはこまめにやっておくと良いですね。

[CocoaPods] コマンド一発でライブラリのサンプルを開く方法

じゃりのツイートで知ったのでメモ。

CocoaPods に、一発でpodのサンプルプロジェクトをダウンロードして開いてくれるサブコマンドが追加されたそうな。
どういう事か説明しますね!!

CocoaPodsって何?

CocoaPods はXCodeプロジェクト向けのモジュール管理ツールです。
RubyでいうgemのObjective-C版みたいなもんですね!
世の中で公開されている多くのモジュールを、手軽にXCodeプロジェクトに追加したり削除したりできます。

コマンド一発でライブラリのサンプルを試せる

気になるライブラリを見つけてちょっと試したいなと思ったら、リポジトリをいちいち$ git cloneしてサンプルプロジェクトを開く必要がありました。
それって結構面倒ですよね。

ここでCocoaPodsの登場です。

もしライブラリがCocoaPodsに登録されていたら、任意のディレクトリで以下のコマンドを実行してみてください。

$ pod try < ライブラリ名>

自動的にリポジトリをcloneして、ヒューリスティックにサンプルプロジェクトを見つけ出して、XCodeで開いてくれます!!

pod-try

リリースされたばかりでちょっと 不具合 もあったけど、安定化も時間の問題ですね!

[XCode] LLDBでViewの階層構造を出力する

これは知っておいて損は無いTips。

po [UIView recursiveDescription] で、包含するViewを階層構造も含めて出力させる事ができます。

(lldb) po [self.view.superview recursiveDescription]
<uiviewcontrollerwrapperview: 0xbe5a870; frame = (0 0; 320 568); autoresize = W+H; layer = <CALayer: 0xbe5a940>>
   | <uiview: 0xbe0cb10; frame = (0 0; 320 568); autoresize = W+H; layer = <CALayer: 0xbe51d70>>
   |    | <uibutton: 0xb819e90; frame = (20 60; 100 44); opaque = NO; layer = <CALayer: 0xb819690>>
   |    |    | <uibuttonlabel: 0xbe5e200; frame = (27 13; 46 18); text = 'Button'; clipsToBounds = YES; alpha = 0.2; opaque = NO; userInteractionEnabled = NO; layer = <CALayer: 0xbe5dfb0>>
   |    | <uibutton: 0xb81ed00; frame = (20 120; 100 44); opaque = NO; layer = <CALayer: 0xb81edf0>>
   |    |    | <uibuttonlabel: 0xbe5c760; frame = (24 13; 52 18); text = 'Sample'; clipsToBounds = YES; opaque = NO; userInteractionEnabled = NO; layer = <CALayer: 0xbe5c870>>