vim scriptからAppleScriptを呼び出す方法

たとえば

tell application "Finder"
    display dialog "こんにちわ!!"
end tell

こんなAppleScriptだった場合、これをvim scriptから呼び出すなら以下のようになります。

function! AppleScriptTest()
    let script = "!osascript "
    let script = script . " -e 'tell application \"Finder\"'"
    let script = script . " -e '    display dialog \"こんにちわ!!\"'"
    let script = script . " -e 'end tell'"
    execute script
endfunction

1行ごと-eで書いてやるのがポイントです。



そして、その方法を使ってこんなスクリプトを作ってみました。

fifnel/ofaddinbox.vim - GitHub
https://github.com/fifnel/ofaddinbox.vim

vimからOmniFocusへタスク登録ができます。

この方法を使うと、vimとその他いろいろなアプリが連携できておもしろいですね。
まぁMacOSX限定になっちゃいますけど・・・

CakePHP 2.0 + LocalPear + PHPUnit on MacOSX 10.7(Lion)

1.pearのインストール

Manual :: Getting and installing the PEAR package manager
http://pear.php.net/manual/en/installation.getting.php

$ wget http://pear.php.net/go-pear.phar
$ php -d detect_unicode=0 go-pear.phar

起動するとインストール先の指定をするメニューが出る。

デフォルトだと~/pear になる。
~/pear/binにパスを通すなどする。

2.pear_localのインストール

k1LoW/pear_local at 2.0 - GitHub
https://github.com/k1LoW/pear_local/tree/2.0

これをapp/Plugin/ 以下にそのまま置く。
app/Plugin/Console/〜 みたいな感じ。

3.CakePHPプラグインを読み込ませる

app/Cnofig/bootstrap.php を編集
一番下あたりに

CakePlugin::load('PearLocal');

4.PHPUnitのインストール

PHPUnit PEAR Channel
http://pear.phpunit.de/

$ pear config-set auto_discover 1
$ cd cakephp/app
$ ./Console/cake PearLocal.pear_local install pear.phpunit.de/PHPUnit

CakePHP 2.0 on MacOSX 10.7(Lion) とりあえず動くまでの設定

1.homebrewからSQLを入れる

Installation - GitHub
https://github.com/mxcl/homebrew/wiki/installation
以下実行前に要件をクリアしておく。

An Intel CPU 1
OS X 10.5 or higher
Xcode with X11 2
Java Developer Update 3

XcodeはMacAppStoreから無料で落として入れる。
結構時間かかる。

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.github.com/gist/323731)"

入れ終わったら、

$ brew install mysql

PostgreSQLなら

$ brew install postgresql

2.パスの検索順を変える

/usr/local/binのパス検索順が一番下になってるので、一番上にする。
.bash_profileで$PATHを書き換えても良いけど、根本的に/usr/local/binが一番下なのは微妙だなーと思うので、/etc/paths を書き換え。

3.Apache php5_moduleの読み込み

/etc/apache2/httpd.conf
以下、コメントアウト外す

LoadModule php5_module libexec/apache2/libphp5.so

4.Apache Virtual Hostの設定

2つの理由から、virtual hostの設定をする。

・当該CakePHPアプリのhttpdログを分離できる
mod_rewriteの設定にRewriteBaseをいちいち書かなくて良くなる

/etc/apache2/others/httpd-vhosts.conf

NameVirtualHost *:80

# For http://localhost in the OS X default location

ServerName localhost
DocumentRoot /Library/WebServer/Documents


# Set up permissions for VirtualHosts in ~/Sites

Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all

# VirtualHosts settings

ServerName cakephp.local
DocumentRoot "/Users/fifnel/Sites/cakephp/"
DirectoryIndex index.html index.php
CustomLog "/Users/fifnel/Sites/cakephp/logs/cakephp.local-access_log" combined
ErrorLog "/Users/fifnel/Sites/cakephp/logs/cakephp.local-error_log"

/etc/hosts

127.0.0.1 localhost cakephp.local

書き換えたらシステム環境設定の共有で、「Web共有」をOffにしてからOnにする(つまり再起動させる)

iOS5ではAppleIDを入力する箇所がたくさんあるけど、それぞれ別々のID入れても大丈夫

コンテンツを家族と共有しつつ、プライベートなデータは分けたいという方へ。

iOS5には以下に示すように複数の箇所でAppleID求められますが、自分が試したところだとそれぞれ別のAppleIDを入れても正しく動くようです。

  • iTunesStore(App,Music,Bookなどの購入)
  • iTunesホームシェアリング
  • iMessage
  • FaceTime
  • iCloud

たとえば家族がいる場合だと、iTunesStoreとiTunesホームシェアリングは共通にして、他3つは個人ごと用意するのがベターです。

また、もし普段使いのメールアドレスをAppleIDにしているようなら、iMessageに設定するAppleIDは新規に取得して@me.comのメアドを割り当てたほうが無難かもしれません。
メールを送ったつもりでiMessageとして送られてて確認できなかった、なんて事態も考えられるので・・・


そして、Mac側にも同じくAppleIDを入力するところが複数あります。

これらも同様に個別に設定可能でした。
iOSにあわせて設定しましょう。


ちなみに懸案が一つ。
iTunesStoreとiCloudのAppleIDが異なる場合、バックアップからのリストア時にアプリやブックのダウンロードってどうなるのかな?
FAQを読む感じだとAppleもそれらのIDは同じものにすることを推奨していますが・・・

iCloudからのバックアップリストアはえらい時間がかかるようで(そりゃ全部ダウンロードするからね・・・)自分はしばらくiCloudバックアップを使う気が無いので調べてません。

MacBook Airが帰ってきたよ

前回の続きです。

2011年9月16日(金)

3連休x2を控えてMacなしはさすがにキツい。
せめていつ頃になりそうなのか知りたいので銀座に電話。
そしたら、工場側が遅れていて遅くとも今月いっぱいかかりそうという何とも曖昧な回答。
うーーーーーん・・・・

2011年9月17日(土)

嫁がぶち切れ電話。
とはいえ、いくらジーニアスでも無いものはどうしようもないらしく、結果がどうあれ19日に連絡をよこすということで終了。

2011年9月19日(月・祝)

朝10時に銀座より入電。
届きました!とのこと。
嫁が仕事だったので、1歳の娘をベビーカーに乗せて銀座までひとっ走りしてきました。

ちなみに、自分がMacBook Airを買った時は、数日前から配送ステータスがリアルタイムで見られました。
インターネットってこういうとき本当に便利なので、アップルストア銀座さんもそろそろ導入してみてはいかがでしょうか!!

MacBook Air(Mid2011)の調子が悪かったのでAppleにサポートを求めたらひどい目にあった

というか、まだ現在進行形です。
俺のMacBook Airはいつになったら帰ってくるんだろう。

2011年7月20日(水)

MacBook Airリリース、即バイナウ。

11インチ
Core i7 1.8GHz
SSD 256GB
USキーボード

142800円なり。

2011年7月26日(火)

MacBook Airが朝一で到着。クロネコさんGJ!
TimeMachineで旧MacBook Airから書き戻して利用開始。

2011年7月某日

システム環境設定>ディスプレイ>ディスプレイの輝度の自動調整
これにチェックをつけると画面が真っ暗になるという現象に気づく。
実用上は問題ないが、自動調整が効けばバッテリーの駆動時間が多少なりとも伸びるものと思い、時間のある時にAppleのコールセンターに質問をしようとタスク投入。

2011年8月7日(日)

Appleのコールセンターへ電話。
SMCリセット及びPRAMリセットを指示されるものの、改善せず。
色々な明るさの環境で試してくださいと言われ、部屋の電気を消したりつけたり、外へ出たりしたけど真っ暗のまま。

2〜3時間程度話したけれど解決せず、こちらもこれ以上は時間的に厳しい旨を伝えたら、都合の良い時にまた電話をください、とのこと。

キーボードバックライトの方は環境光と連動しているので、センサーが死んでいるわけではない、ということだけは判明した。

2011年8月8日〜13日

1週間帰省をしていたため、この間サポセンとのやり取りはナシ。
楽しい夏休みでした。

2011年8月20日(土)

電話だと埒があかないのでAppleStore銀座のジーニアスバーをこの日に予約したものの、娘の体調が悪化したので急遽キャンセル。
午後になって娘が落ち着いたタイミングでコールセンターに電話。

案の定なんの進展もないまま時間だけが過ぎていく。
この時点で累計4時間は電話をしているが、解決の糸口すらない状態で「修理」「引取り」「交換」の一言も出てこないのはある意味スゴイ。

その後、コールセンターの人は自分では手に負えないと判断したのか、シニアエンジニアが対応を任されることになった。

しかし、やはり原因は分からず、しまいには「明るさの感じ方は人それぞれ違います」とか言い始めた。
いやいや、感じ方の問題ではなく、画面が真っ暗なんだって。もう両手で数えきれないくらい同じこと説明してるって。

結局この日もなにも進展がなく、対処法を調べて数日後に留守電に入れます、という事になった。

2011年8月24日(水)

あれから数日経過。コールセンターからの連絡は一切ナシ。留守電の痕跡もナシ。

ちなみに、9月13日現在でも連絡は相変わらずナシ。

やはり電話ではダメだと思い、ジーニアスバーを再び予約。

2011年8月26日(金)

銀座のジーニアスバーへ。
店舗内でも画面が真っ暗になるのを見せたらひと目で不具合と判断され、修理対応へ
ディスプレイかロジックボードの交換ですねーとのことで、2〜3日程度で治るけど、一応1週間程度は見てください、と言われる。

さすがジーニアス様。惚れる。

2011年9月1日(木)

ジーニアス様のイケメン対応からそろそろ1週間。

数日でサクっと治るような口ぶりだったけど、この時点で銀座からの連絡はなし。
せめて目処くらい知りたいと電話をしたら、交換用パーツが手に入らなくていつになるのか分からない、という回答。えっ?
その事をTwitterでグチったら、嫁がぶち切れてコールセンターに電話。

※店舗とコールセンターは完全に別部署(?)扱いらしく、少なくともコールセンター側から店舗側への干渉はあまりできないような事を言われたらしい

      • -

その日の夕方、銀座から入電。
治ったので取りに来て欲しいとのこと。えっ??

おい嫁、何をしたw

ジーニアスが言うには、パーツ交換をしたが解消せず、ソフトウェア側の検査をしたらベゼル関係の設定ファイルが壊れていたとのこと。
(plistファイルがロックされていて設定が変えられない状態だった模様。原因は恐らくMobileMeの環境設定同期だと推測)

っていうか、パーツが手に入らないんじゃなかったんですかい・・・

すでに交換してしまったパーツはこのままにしてもいいし、元に戻してもいいと言われたので、「どちらでも良いです」と答えておいた。

2011年9月2日(金)

朝イチで銀座に修理上がりのMacBook Airを取りに向かった。
問題となっていた明るさの自動調節は機能するようになっていて、これで快適なモバイルライフが送れる!とワクワクしながら帰宅。

      • -

その日の夜、どうもネットの接続が不安定だったので、皆が寝静まった頃に調査開始。
無線LANルーターAirMac Extreme)やNTTのひかり電話のモデムが問題なのかと思って、ファームウェアを上げたり無線LANのチャンネルを変えたりしていたけど、いまいち改善せず。
これはもしやと思い、旧MacBook AiriPhoneなど他のWiFi機器で接続してみたところ、問題なく接続できるし通信速度も結構出る。
ということで、修理上がりのMacBook Air自体が原因であると特定。

更に、5GHzでは問題ないが、2.4GHzでの接続が著しく不安定になる、というところまで自力で調べた。
使っているモバイルルーターが2.4GHzにしか対応していないので、このままでは非常に困る。

2011年9月3日(土)

またもや嫁がぶち切れてコールセンターに電話。
具体的な症状を説明するものの、無線LANのシグナルの数値自体は問題ないですねー」と言われてまたもや埒があかない
というか、このAppleのコールセンターは、いったいどうなればMacを修理する、という判断をしてくれるんだろう。

その後、改めて銀座へ電話。
いい加減、ちゃんと使えるMacBook Airが無いと本当に困るという事情を説明し、新品交換対応となった。

全く同じ構成で交換するルールとなっているということで、口頭で

11インチ
Core i7(1.8GHz)
SSD 256GB
USキーボード

と伝えた。
2〜3週間程度で届くとのこと。

2011年9月12日(月)

テザリング出来るXPERIA rayを買ったので、いい加減MacBook Airを持ち歩きたいなぁという思いが強くなってきた。

試しに、今から新品のMacBook Airを注文したら何日かかるのかと思って、AppleStoreのWebサイトで購入直前まで進めてみたら、3営業日と表示されて愕然・・・
2〜3週間っていったいなんなの!?と思って、銀座に問い合わせをしたら、「ちょうど今日届きましたのでいつでも受け取りOKです!」とのこと。
・・・・えぇ、信じますよ。信じますとも!

      • -

その日の夜、返却用のMacBook AirはTimeMachineでバックアップをとって、SSDはフォーマットした。

2011年9月13日(火)

朝イチで銀座へ。
開封MacBook Airキター!

修理完了のサインが欲しいということで、書類にサラッと目を通したら、「修理前と構成が違うことがあります」のような一文が目についた。
まさかねー!と思ったけど、一応構成を確認させてもらった。
パッケージのシールからは

11インチ
Core i7(1.8GHz)
SSD 256GB

であることは読み取れた。

これ、キーボードはUSキーボードですよね?」と尋ねたら、「少々おまちください」と言って、ジーニアスは奥に引っ込んでしまった。

10分くらいして戻ってきたジーニアス「日本語キーボードでした申し訳ございません

ズコー!

再度発注及び自宅まで配送してくれることになった。

あぁ、日本語キーボードであることが判明した時の、ジーニアスの捨て犬のような目が忘れられない・・・

MacBook AirへのOSX Lionのクリーンインストール手順

MacBook Airを嫁に渡すため、クリーンインストールしました。
リカバリーディスクを作ってないので、正攻法で。

1.とりあえずLionを入れてしまう

入れてしまうというか、すでにLionにしてしまった後でしたが・・・

ちなみに、この手順でSnow Leopardから直接Lionのクリーンインストールをすると、Lionのダウンロードが都合2回入る流れなので、結構時間がかかると思います。

2.Optionを押しながら起動してRecovery HDから起動する

Command+Rならいきなりリカバリーで起動するらしいです、試していませんが。

3.ディスクのクリーンナップ

ディスクユーティリティでMachintosh HDを消去します。
ここで消去せずにインストールすると、Snow LeopardからLionにアップデートした時と同じ状況になります。(データが残ってる状態)
恐らく、システムファイルに限った再インストール(リカバリー)の効果があるんじゃないかと。

4.Lionのインストール

再インストール って項目を選びます。
ネットからダウンロードしてインストールする流れなので、無線LANにつながってないとダメです。

有線LANアダプタがあるならそっちの方が早いかもしれませんが、なんとなくMac AppStore側にボトルネックがあるような気が・・・

5.待つ

11n環境で5時間とか表示されましたが、実際どうなんでしょう。
放置して寝てしまったので不明。
たぶん実質5時間よりは多少短いと思います。

6.おしまい

インストールが終わったら住んでる地域の設定やらAppleIDの入力やら、初期情報入力画面が出ます。