きりかノート 3冊め

おあそびプログラミング

User Defaults をコマンドラインオプションで指定する

はてブのcocoa新着経由で、Command Line Processing in Cocoa。コマンドで渡した引数がUser Defaultsに反映されるとのこと。コメントにあるように、AppleのドキュメントにもUser DefaultsのArgument Domainとして書いてある。

 Xcode.app/Contents/MacOS/Xcode -IndexOnOpen NO

で、IndexOnOpenの値がNOになる。ユーザのplistなどで値が設定されていたときは、このプロセス内のみ一時的に上書きされる。

ユニットテストでDefaults使うときに悩んだことがあるけど、これを利用しテストの実行時に値を入れるのがよさそう。