Posts Tagged ‘Mac’

| No Comments | 9月 1st, 2010

 画像に文字を入れたり線を引いたりする程度の、簡単な操作を簡単にできるソフトの Skitch がすごく使いやすい。Mac 専用のソフトです。使うには signup が必要。1分で終わる。

 本格的に画像を編集するのではなくて、写真にメモを入れて人に渡したり、Webデザインの崩れを指摘するときとかに使えそう。元々ある画像を編集するだけではなく、スクリーンキャプチャを取ってすぐ編集できるのが良い。

 画像キャプチャして四角を付けて文字を入れるだけなので、1分以内の作業。

 日常的にフォトショやイラレを使っている方だと、もともと一瞬なのかもしれないけれども、そういうったソフトを使っていない一般人には割とめんどくさい作業。今までは、スクリーンショット -> Seashore を使って文字入れ という手順を踏んでいたけれども、やたらめんどいと思ってました。

 あと、保存のインターフェイスが秀逸。「10.4以下しか使えない」は関係ないです…。「drag me」という箇所をドラッグすると、画像を drag したのと同じ状態になります。Finder や Skype などに drop すれば、いちいちダイアログとか開かなくていいので、とても使いやすいと感じました。

 Web 開発していると、Safari, Firefox, Chrome, IE 等さまざまなブラウザに合わせるために、結構崩れちゃったりするので、そういうやり取りをデザイナーとするときなどに重宝すると思います。といっても、だいたい IE でおかしくなっちゃうのですけどね!よく使うツールになりそうです。今まで使ってなかったのが悔やまれる。

| No Comments | 8月 31st, 2010

iMac に Vim7.3 いれました。

% sudo port selfupdate
% sudo port install vim MacVim

vim と MacVim の違いが良く分かってない。MacVim って GUI版のvimあるけど、あれは.app の形式で配布されてるし、実はよく知らない。

それと、GUI版は MacVimvim-cocoa がある。7.2のときは、日本語入力時におかしくなることがあったけど、直るといいなー。

| No Comments | 12月 6th, 2009

ファイル一覧を得て、それをまとめてあるディレクトリにコピーしたいなーと思って xargs に渡したところで、第一引数に渡したいけどどうするの?って思って調べたら、cp には -t [target directory] というオプションがあるようです。これを使って

{ファイル一覧を得る処理}| xargs cp -t [target directory]

とすることで目的が達成できそうです。しかし、Mac で上記のコマンドを実行すると -t が使えないようで、更に調べると Mac に最初から入ってる cp コマンドは、GNUの cp とは機能が異なるということが分かりました。

GNU の cp と同等のものを入れたい場合は、macports で coreutils てのをインストールすると良いです。

% sudo port install coreutils

こうすると、頭に g がついた形でインストールされます。例えば、cp は gcp、mv は gmv といった具合。非推奨というか、他のアプリケーションを使おうとしたときに弊害が出る可能性があるけれど、GNU の cp を cp として使いたい場合は、インストール時にオプションをつけることで実現できる。

% sudo port install coreutils +with_default_names

実際、違いで困ったことが今回初めてだったのでvariantsなしでインストールしてみました。これで、cp -t のオプション使えるようになります。mv -t も同様の動作になる。gcp と gmv としてですが。

今回やろうと思ったことは、解像度が 1920×1200 の画像だけを抽出して壁紙として使おう、ってことだったので、Mac に標準で入ってる画像いじくるコマンドの sips を使った。本当は1回で 高さと幅を絞り込みたいのだけれど、やりかたが分からなかった…。

sips -g pixelWidth [ファイル名] で、幅がとれます。表示は下記のように、2行に渡ってパスと情報がでます。

/Users/chihaya/save/壁紙/wallpaper1.jpg
  pixelWidth: 1024

grep -B n でn行前まで表示できるので、pixelWidth: 1920 でひっかけて、1行前のパスを取得して、さらにもう1回 sips で高さをとって pixelHeight: 1200 でひっかければ、1920×1200の画像とれそうです。

sips -g pixelHeight *| grep -B 1 "pixelWidth: 1920"| grep "/Users/chihaya"| xargs sips -g pixelHeight| grep -B 1 "pixelHeight: 1200"| grep "/Users/chihaya"| xargs gcp -t ./wall_papers/

とすれば、current directory にある画像のうち、1920×1200 のものを、 ./wall_papers/ 以下にコピーすることが出来ます。簡単。

| No Comments | 11月 17th, 2009

 SnowLeopardでiTermを使っていて、なぜか screen すると Windows が勝手に小さくなってしまって困っていたのですが、設定がありました。

 Bookmarks -> Mangae Profiles で、使っているプロファイルを開きます。

 そのなかで、

Disable session-initiated window resizing

という項目をチェックすると、勝手にリサイズされなくなりました。

| 6 Comments | 4月 7th, 2009

 ファイルの最終アクセス日を記録しないように以前設定をして、書き込み頻度を下げましたが、/tmp を Ramdisk にして更に書き込み頻度を下げてみようと思います。

Mac OS XでRAMDiskを参考にして設定しました。

% sudo hdid -nomount ram://262144
/dev/disk1

で、128MBのRAMDiskが出来ます。/dev/disk1 のデバイスとして認識されています。

ram://xxx の数字は、 512バイトのブロックをいくつ作るかということらしいです。今回は、128MB作りたかったので、128 x 1024 x 1024 / 512 = 262144 を指定しました。

その後、HFS+で作ったRamdiskをフォーマットします。

% sudo diskutil eraseDisk HFS+ ramdisk /dev/disk1

/dev/disk1 は、さっき認識されたデバイス名を指定すればおk。この操作は、ユーティリティ → ディスクユーティリティ で「Mac OS拡張」でフォーマットするのと同じことです。先ほどのコマンドで、作ったRAMDiskが /Volumes/ramdisk にマウントされました。

ちなみに、自動的にマウントしようとするならば、出力をそのまま受け取ればよいです。
というか、常にこれをやればいいです。上記をまとめたらこうなります。

% sudo hdid -nomount ram://262144| xargs sudo diskutil eraseDisk HFS+

こうすると、Finder にも ramdisk が出ています。コマンドで確認すると、128MBのramdiskが出来ているのが分かります。

% df -h
Filesystem      Size   Used  Avail Capacity  Mounted on
/dev/disk0s2   119Gi   67Gi   52Gi    57%    /
devfs          112Ki  112Ki    0Bi   100%    /dev
fdesc          1.0Ki  1.0Ki    0Bi   100%    /dev
map -hosts       0Bi    0Bi    0Bi   100%    /net
map auto_home    0Bi    0Bi    0Bi   100%    /home
/dev/disk1s1   128Mi  3.0Mi  125Mi     3%    /Volumes/ramdisk 1

さて、次は /tmp を RAMDiskに向けます。

見てみると、Leopard では、/tmp はただのシンボリックリンクのようなので、これを変更すれば良いです。tmp -> /private/tmp

% sudo unlink /tmp
% sudo ln -s /Volumes/ramdisk /tmp

一旦シンボリックリンクを切って、ramdisk に向けてはりなおすだけです。

これで、/tmp を RAMDisk にすることが出来ました。

問題がなさそうだったら、起動時に自動的に /tmp が RAMDisk になるように設定をします。

/etc/rc.local を編集します。

#!/bin/sh
 
# Make RamDisk
hdid -nomount ram://262144
diskutil eraseDisk HFS+ ramdisk /dev/disk1
 
# for SSD
mount -u -o noatime /

前提として、以下を1回実行している必要があります。

% sudo unlink /tmp
sudo ln -s /Volumes/ramdisk /tmp

for SSD のくだりは、最終アクセス日時をディスクに記録しないようにするためのものです。参考→iMacをSSDに換装した[ブログ内記事] 順序を逆にすると、既に何かが起動して /tmp にファイルを作っているからか、動かないアプリがあるかもしれないので気をつけて下さい。ぼくの環境では、 mount -u -o notime を先に書いたら、OSのコピペ機能が動かなくなりました。

若干リスキーな変更なので、自己責任で試してみるといいと思います。

download the hurt locker  
UA-682965-1