このところ毎回楽しみにしている「OS X ハッキング!」。毎週金曜日更新のハズが、先週は更新されなくて残念。と、先々週の「【第49回】進化する小鳥「Fink」 その1」を参考に gtk+ をコンパイル中。
実は Fink のことをあんまり調べずに使っていたのだけれど、/sw/fink/10.2/stable/main/finkinfo 以下に RPM で言うところの SPEC ファイルにあたる(のだと思われる).info ファイルが存在するのね。configure のパラメータを変更してコンパイルするには、ここを編集してやればいいみたいだ。
gtk+ のコンパイルが終わったので、そのまま、gimp をインストールしてみた。
$ sudo apt-get install gimp
ずらずらと、他に必要なパッケージ名が20個近く出てきた。えいやっ!と、[Y/n] に Y と答えてインストール開始、、、終了。おもむろに gimp を立ち上げてみる、、、が日本語が化け。むむ。
オライリージャパンの新刊予約コーナーに「プログラミング Mac OS X for Unix Geeks」が掲載されていた。どうやら、関心空間で紹介されていた「Mac OS X for Unix Geeks」の翻訳本みたいだ。試しに買ってみるか?と Amazon で検索したものの引っ掛からず。
Carbon Emacs で便利なのは、特に何も設定しなくても command + x が M-x として扱われることだ。しかーし、X11 版 XEmacs でも、command キーか option キーを Meta キーとして扱えるハズだ!と、思っていろいろ見ていった結果、~/.Xmodmap を次のようにすれば、option キーを Meta として扱えることがわかった。
clear Mod1 clear Mod2 keycode 66 = Meta_L add Mod2 = Meta_L
これで、X11 版 XEmacs で、option + x を押せば M-x になった。ただし、僕が使っているのは US キーボード版の iBook なので、JP キーボードの場合は、keycode の値が違うかも知れない。
chsh を使っても Mac OS X のターミナルのログインシェルが変わらず??としていたところ、まさに同じ問題で悩んでいた方のページを発見。解決に至る。しかし、xterm や kterm のログインシェルは変わらない。どこをいじるんだろう?
たださん、きたさんを始め、各種技術者が集まり飲み会。知的な会話になるのかと思いきや、フランクな話題で盛り上がって楽しかった。しかし、相変わらず SANKAI は美味しい。ここの海老マヨがマヨ的に No.1 だ。
ちょっと恋愛感情が入り乱れ過ぎじゃないか? でもって、敵がよくわからないのはエヴァ的だね。身内の不思議ちゃんも綾波的と言ってしまえるのか?
分かる人にしか分からないこのセリフ、なんだかずっと頭の中に残ってる。ということで、今後の僕の方針はコレにしようかと。満点を狙い過ぎず、まず自分に見合った高さを狙おう。何を狙うかはヒミツ(笑)
Amazon から「Kill Bill Vol.1を発送したぜ!」というメールが届いたのだが、配送方法に見なれない文字が。
配送方法:Sagawa Mail (1~3日)
今までペリカンばっかりだった気がするのだけど、佐川急便も使うようになったのか。それとも前から使ってた?
そういえば、昨日ペリカンなおじさんから「いつも不在されてるんで、、、なにかボックスみたいの置いてもらえないですかね?その方が受け取る方も早く受け取れると思うんですけど」などという提案を貰った。「前向きに検討しておきます」と適当な答えを返しておいたけど。
というわけで、今夜は「朝まで生キル・ビル!もう待てない!1&2連続上映会!!」に行ってくる。
「24時間以内に発送」というのを数日前に見つけて、ポチってしまったブツをようやく今日受け取った。Nintendo DS よりしっかりした質感で、おもちゃっぽさがないね。DS もそれなりに奇麗な液晶だと思ってたけど、PSP の方が断然上だね。サイズもデカイし。
ちなみに僕のところにきた PSP は、液晶のドット欠けもないし、□キーも(今のところ)押し込まれたままにはならないし、UMDディスクが発射されることもなかった。これはアタリか?
で、早速、iPSPで動画をコンバートしてみちゃれ!と Cocoon から転送したMPEG2ファイルを変換しようとしたら「Error converting video to 3GP format during Pass 1」と言われてダメだった。CyberShot T1 で録画したMPEG1ファイルはコンバート→転送もできた。PSP の中でドレス姿の元コグレちゃんが回ってるよ!(笑)
本体だけ買ってもしゃーないので、一緒に買ったのがコレ。というか、コレをやりたくて PSP を買ったのだよ。例の独特な浮遊感に加えて、PSP の横長画面で、かなり酔い心地になる。音楽も例のごとく良いし。
コースを変える際のローディングがちょっと遅いかな?と思うけど、これは UMD の問題なのか?はたまた Psygnosis のせいなのか? って、もう www.psygnosis.com は存在しないのか。eu.playstation.com にリダイレクトされてしまう。直接関係ないらしいけど、www.pysgnosis.org には彼らのトレードマークが掲載されてるわ。
あぁ、話がそれた。Wipeout Pure のもうひとつの楽しみは、ウェブブラウザが搭載されてるってところ。とりあえず自宅の無線LANとの接続を確率して、追加コースをゲット。容量は3.6MBらしいけど、結構時間がかかったな。他の Web への接続は、また改めて。
大容量メモリースティックDuoでも買うか?と有楽町のビックカメラに出かけたら、Amazon より高くて萎え。その足で書籍売り場をウロついてたら面白そうな本を発見、、、したと思ったら、これ、ishinaoさんの本じゃないすか!
勝手に尊敬しているので即買い(笑)
「ガッシャーン」という自転車が倒れる音と共に「なんだよ!」という女性の声が聞こえ、AM3:20くらいに起こされた。その後、詳細な内容は聞き取れないものの、なんだか女性と男性とが言い合っているのが分かった。男性の雰囲気は分からないものの、女性の方は酔っているようだった。
「なんだよ、こんな深夜に痴話喧嘩か?勘弁してよ」と思って、再び寝ようと思っているのに、言い合いがなかなか終わらない。そのうち「バコン」という何かを殴ったような鈍い音とともに「痛ったぁい」という女性の声が聞こえたので、「げ、事件になったりしないだろうな。警察を呼んだ方が良いのかな。。。」と、窓から様子をうかがってみると、、、
そこにいたのはお怒りの女性と、それをなだめている警察官(年配)だった。どうやら一緒にいる警察官(若手)に対して怒っているらしかった。警察官(若手)も結構イライラしているらしく、警察官(年配)の後ろで、行ったり来たりと歩いていた。
その後しばらく会話を聞いていたら、「酔い気味の女性が自転車で車道をフラフラ?もしくは無灯火→警察官が注意→女性が無視→イライラした警察官(若手)が「オマエ!」「ふざけんな!」「ボケ」などを言った(と女性は主張)→女性の自転車を強制的に止めたもしくは女性がコケた→女性が自分の非は認めたが、警官(若手)による暴言が許せない→女性が謝罪を要求→警察官(若手)は否定→言った言わないの世界」てな感じらしかった。
警察官(年配)が「はいはい。もう帰って良いから怪我しないようにね」と帰そうとしているのに、女性の方がどうにも怒りが収まらなかった様子。最終的には自転車に乗って帰って行ったけど。
で、すっかり目が覚めてしまい、オレの貴重な睡眠時間を削られたのが悔しかったので記録してみた。
▽ madocco [答え合わせはー?]
発売当初は載ってなかったように思ったのだが、ScanSnap S510M/S300M の「よくある質問」に「OCR処理はできますか?」という項目が掲載されていた。
答えとしてはオレがメールで貰った通り「Acrobat 8 Professional を使うとできなくはない」といったニュアンスのものだ。
最近、チマチマと CakePHP を使ったアプリを作っているのだが、その時の参考にしているのが「CakePHP ガイドブック」と「Fast CakePHP」。
それぞれ良いところはあるのだが、特に「〜ガイドブック」の方は、CakePHP で開発し始めて「あれ?これってどうすべきなんだろ?」という時に参考になるなぁというのを実感している。
と、それなりに細かく読んでいて気になった点をいくつか見つけた。サポートサイトの正誤表にも書いてないので、もしかしたらまだ見つかってないのかと思って書いてみることにする。ちなみに持っているのは初版第1刷。
ページ | おそらく誤 | おそらく正 |
---|---|---|
102 | リスト1のような記述 | リスト7-1のような記述 |
103 | リスト3、リスト4のように | リスト7-3、リスト7-4のように |
123 | 複数の紐付け情報がる | 複数の紐付け情報がある |
125 | 問題がある場合はデータ勝利を | 問題がある場合はデータ処理を |
まぁ、どれも些細な部分だけどね。
今まで CoffeeScript には縁がなかったんだけど、Gruntfile を JavaScript ではなく CoffeeScript で書くことになったので、環境を整えた。
M-x package-install coffee-mode
とりあえずインデントを 2 スペースにしたかったので、ググったりしながら init にこいつを入れた。
(defun coffee-mode-custom-hook ()
(set (make-local-variable 'tab-width) 2)
(setq coffee-tab-width 2))
(add-hook 'coffee-mode-hook 'coffee-mode-custom-hook)
ただ、この coffee-mode だと、タブキーでのインデントがあんまり期待通りの動きじゃないんだよなぁ。インデントによってブロックを表現する言語って、こういうタブキーのインデントの挙動が普通なのかしら(python-mode を試せという話だ)。
昨日、Elasticsearch 勉強会へ参加してきたのもあって、最新の Elasticsearch v1.5.1 + Kibana v4.0.2 の構成をインストールしてみた。
手元にめぼしいデータが無かったので、「livedoor グルメの研究用データセット」をまたしても利用させてもらった。データ投入には PHP + Elasticsearch PHP を利用して、CSV をパースしてそのまま Elasticsearch へブチ込んだ。ここまでは以前とほぼ同じ。
Kibana4 はアーカイブを落としてきて、展開したらインストール完了。何も考えずに、ただこれだけで起動した。
./bin/kibana
Kibana4 のインターフェイスは、Kibana3 のとは全く変わっていて、前の知識があまり役に立たない。ダッシュボードの保存とか URL でシェアすれば、他の人にもダッシュボードの共有ができるとか、そういう部分は共通なんだけど、グラフを作ったりする部分はやり方がだいぶ変わっていた。Kibana3 もそこまで深く使ってないので、単にオレの Kibana に対する理解が浅いだけなのかも知れないけど、Kibana4 に関しては新たに学ぶことも多そう。
やっぱこいつら面白いので、もっと深く追ってみたい。
Crowi では編集履歴を見るための History タブがある。ここで過去に保存した時の内容を閲覧できる。ただ、それは過去のバージョンの文書を見ることができるというもので、どこを変更したのか?までは分からない。
複数人で編集していた場合に、誰がどう変更したのかを知りたいというニーズがあるとのことだったので、プロトタイプ的なものを作ってみた。これを作る前に @sotarok と相談した UI や機能があったのだけど、その案を 100% 実装できたわけではない。
でも 0 よりは 0.1 くらいの機能でもあったほうが良いかなと思って、まずはミニマムな機能で pull request を投げてみた。
Crowi の「バージョン」は、内部的には revision
として保存されていて、その中にそれぞれのバージョンの Markdown テキストが保存されていたので、その差分を取得して色付けしたりして表示している。
差分取得には JsDiff を使ってみたけど、もっと良いものもありそうな気がしている。見せ方とかも改善の余地はありそう。
UI 部分には jQuery を使っているんだけど、なんかいろいろ忘れていて調べながら書いていたら結構時間がかかってしまった。書いているうちにだんだん思い出してきたけど。昔は生 JS(?)のほうが苦手だったんだけどねぇ。いまは jQuery ではないほうが書きやすく感じている自分がいる。
▽ shachi [知らなかった(^^;;>OS X ハッキング!...でもおいらには関係なさそう。(X window使わないし。osx..]
▽ すずき [「OS X ハッキング」は、OS X の X 環境の話だけじゃなく、OS X そのものの TIPS も掲載しているの..]