2013年2月3日日曜日

スクリーンショットのファイル名の変更 (2)

defaultsコマンドでスクリーンショットのファイル名を変更しましたが、先頭のプレフィックス部分("スクリーンショット"、私は"ss"に変更しました)と日付の部分の間の空白(スペース)は消えません。日付と時間の間のスペースもですね。
スクリーンショット 2013-02-03 01.23.45.png や、ss 2013-02-03 01.23.45.png のように間がスペースになっています。

この部分を変更する方法は、以下のようになります。システムファイルを触るので、気をつけて実行する必要があります。
ここでは、Mountain Lion (10.8.2)、日本語環境とします。また、Xcodeをあらかじめインストールしてください。

変更するファイルは、
/System/Library/CoreServices/SystemUIServer.app/Contents/Resources/Japanese.lproj/ScreenCapture.strings
です。
このファイルは、バイナリ形式のプロパティファイルです。

1. まず、問題が起きた時のために、ScreenCapture.stringsのバックアップを取ります。
Finderでもターミナルでもよいですが、ScreenCapture.stringsを、ScreenCapture-orig.stringsなどとコピーしておきます。システムファイルなので、一連の操作のたびに管理者パスワードが必要になります。

2. 次に、ScreenCapture.stringsを自分のディレクトリ(~/Documentsなど)にコピーして、拡張子をplistに変更します。

3. 変更したファイルをXcodeで開くと以下のような画面になります。

この中の赤で囲んである部分のスペースを"-"に変更します。以下のようになります。

4. ファイルを保存したら、拡張子をstringsに戻し、元のディレクトリにコピーします。
5. ターミナルで、SystemUIServerを再起動します。

この手順で、スクリーンショットを取ると、ファイル名が
スクリーンショット-2013.02.03-01.23.45.pngのようになります。

普通はこれで終わっている解説が多いと思いますが、もう少し完璧を期したい場合は続きがあります。好みの範疇かもしれませんが。

6. もう一度、~/DocumentsにコピーしたplistファイルをXcodeで開きます。
青で囲んである部分の空白も"-"に変更します。以下のようになります。
この状態で、上記の4, 5を繰り返します。

何をしたかというと、1秒間に複数枚のスクリーンショットを撮った場合のファイル名に対処するためです。例えば、この状態で、command + shift + 3 で素早く連続してスクリーンショットを取ると、1秒以内のファイル名が、以前は、スペース付きで" 1", " 2"と増えていっていたのが、"-1"、"-2"のようにハイフン付きで増えるようになります。
ここまで気にする必要は多分ないと思いますが。

ところで、私は、この手順が確認できた後、また元に戻してしまいました。
手順の1.で保存しておいたScreenCapture-orig.strings を元のScreenCapture.stringsに戻しました。OSのバージョンアップで変更があると元に戻ってしまうのと、他に代替手段があればシステムファイルはできるだけ触らない方がよいと思ったためです。
代替手段については、稿を改めて書きたいと思います。

0 件のコメント:

コメントを投稿