Category Archives: Log

Log

Mac (Lion) にzshをインストール

Lionにzshをインストールした。以前もやったのだが、記録がなかったのでとどめておく。

zshをHomebrewでインストールする。

$ brew install zsh

/ect/shellsに/usr/local/bin/zshを追加する。

システム環境設定の「ユーザとグループ」を開く。鍵を開く。
シェルを変更したいユーザを右クリックして詳細オプションを開く。
ログインシェルを/usr/local/bin/zshに変更する。

Log

Safari5.1でEvernoteクリッパープラグインが使えないのでブックマークを使用する

Safari5.1になってEvernoteクリッパープラグインが使えなくなっていますね。

しかたがないので、そのうち対応されることでしょうからそれまでの間はブックマークレットを使用してクリップすることにします。

追記: Safari 5.1からEvernoteにPDFで保存する方法について記事を書きました。

Log

MacでImageMagick+RMagickを使う

ImageMagickとRMagickを使うべくhomebrewとgemでインストールした。

$ brew install imagemagick
$ gem install rmagick

で、使ってみるとSegmentation faultがでる。検索した結果、以下のように再インストールすれば使えるようになった。

brew install -f imagemagick --disable-openmp

つぎにannotationを使おうとするとフォントが無いと言われる。ので
ftp://ftp.imagemagick.org/pub/ImageMagick/delegates/ghostscript-fonts-std-8.11.tar.gz
をダウンロードして、以下のように/usr/local/share/ghostscriptに展開する。

$ mkdir /usr/local/share/ghostscript
sudo tar xzf ghostscript-fonts-std-8.11.tar.gz -C /usr/local/share/ghostscript

これでやっと利用できるようになった。

Log

UserInterfaceState.xcuserstateがgitで邪魔なのでignoreする

Xcode4になってUserInterfaceState.xcuserstateファイルが作成されるようになった。これがくせ者でXcodeを触るとすぐに変更されてしまって、gitで管理しているとコミットかチェックアウトしないといけなくなってしまう。

ので.gitignoreに加えた。

で、加えるだけでは駄目で、

git rm --cached ProjectFolder.xcodeproj/project.xcworkspace/xcuserdata/myUserName.xcuserdatad/UserInterfaceState.xcuserstate
git commit -m "hoge"

とする必要がある。

Log

かなキーをコントロールキーにしてみた

KeyRemap4MacBookで「かな」キーをコントロールキーにしてみた。

これまでは小指でコントロールキーを押していたけど、親指でおせると少しは楽かもしれない。

親指シフトを使っていて英数キーは親指シフトキーなのでコントロールにはできない。コントロールにするには英数キーの方があっているかもしれない。かなキーだとCtrl-Mが押しにくい。それは我慢ということで。

Log

node.jsでhello world

node.jsとnpmをインストールする。node.jsはhomebrewでインストール。

brew install node.js
curl http://npmjs.org/install.sh | sh

server.jsを下記の内容で作成。

var http = require('http')
http.createServer(function (req, res) {
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Hello world!\n');
}).listen(8000, "localhost");
node server.js

を実行しhttp://localhost:8000/にアクセスすると、Hello world!が表示される。

Log

NSStringとNSNumberにRubyのtimesみたいなのを生やしてみた

実用性は不明…

使い方は単純に
[@"5" times:^{ [foo bar]; }];
[[NSNumber numberWithInt:5] times:^{ [foo bar]; }];
みたいに。

Log

Xcode4がダウンロードできなかったらLicense Agreementを更新するといい

Xcode4が出ました。新しもの好きの私は早速ダウンロード…しようとしたらAccess Denied。

ネットで調べたらキーチェーンがどうちゃらこうちゃら。その通りに調べてみても問題なし。

で、ADCサイトをブラウズしてたらiOS Developer Program License Agreementのアップデートをしてくれと表示される。ハッ!と思って、アップデートして、再度Xcode4をダウンロードしてみたら正常に開始。

Twitterで他にも同様の問題が発生しているとつぶやいてる人に、この現象を伝えたら、その人もLicense Agreementの更新でダウンロードができたと返事が。

ということで、Xcode4ダウンロードでAccess DeniedになるのはiOS Developer Program License Agreementの更新をしてなかったのが原因みたい。

Log

Objective-C/Cocoaにおける例外の利用についてのメモ

Objective-C/Cocoaでの例外の利用についてのメモ。

例外は以下のような予期されない論理上のエラーを伝播するために利用する。

  • 配列の添字が境界外である
  • 不変オブジェクトに変更を試みた
  • 引数の型が不正

このような例外はテストで捕捉して問題を解決するもので、アプリケーション利用時には例外を処理する必要は無いというのがあるべき姿である。

予期されるエラーを捕捉するために例外の代わりにエラー(NSError)を利用する。

Log

SparrowのAppleScript対応状況

MacのGmail(IMAP)メーラーSparrowを購入してみました。

Mac App Storeでの購入では試用できないので、どんな機能が搭載されているかとか、AppleScriptでどれほどコントロールできるか分からないなど不便です。Webサイトで機能を確認できても、たとえば日本語で検索できるかとか分からないので、Macアプリは高額になりがちですし購入しにくいですね。

さてさてSparrowのAppleScript対応状況ですが、AppleScriptでメールが作成できるようです。

tell application "Sparrow"
	set newMessage to make new outgoing message with properties {subject:"This is a title", sender:"myaddress@example.com", content:"This is a pen."}
	compose newMessage
end tell

というように作成します。
to recipientをどのように指定すればいいかが分からないです。分かる方コメントください。

それからメールの送信アクションもありますね。

Mail.appでは受信したメールにフィルタをかけることができるので、メールからOmniFocusにTaskを取り込むことが簡単にできました。Sparrowではこのような仕組みがないので、今後はメール→OmniFocusをどう処理するかを検討する必要があります。Sparrowはフィルタ機能を搭載する予定があるか問い合わせてみようと思ってます。

Get Adobe Flash playerPlugin by wpburn.com wordpress themes