Home > Archives > February 2007 Archive

February 2007 Archive

Hyper Estraier 導入 Hyper Estraier 導入

 Movable Type の全文検索(MT::App::Search)がどうしても重かったので代替方法をいろいろ探してみました。
 ajax をつかった全文検索も試してみたのですが、仕事でたまたまサイト検索の調査をしているときにテストしてみた Hyper Estraier の動作がとても軽快だったので採用することにしました。

 Search with Hyper Estraier: a full-text search system for communities - greenplastic.net

 まずは Hyper Estraier のインストール。ボクの場合はサーバーが FreeBSD なので ports から入れました(他の方はオフィシャルサイトの通りにどうぞ)。

portinstall converters/libiconv
portinstall databases/qdbm -m "WITH_ZLIB=yes"
portinstall textproc/hyperestraier

 次に MT から検索用のファイルを書き出すようにテンプレートを追加します。純粋にエントリー本文のみの検索にしたかったのと、それから仕事の調査もかねて Hyper Estraier の独自のデータ形式である文章ドラフトという形式を試してみたかったからです。
 すでに公開してるエントリーアーカイブとは別に、検索用に書き出すファイルのディレクトリの指定とテンプレートの追加を行い、書き出したそのファイル群を Hyper Estraier に読み込ませればいっちょ上がりです。
 簡単でしょ?

 MT の公開の設定で『アーカイブ・マッピング』を追加し、検索用のエントリーアーカイブを書き出すようにします。出力フォーマットを既存のエントリーアーカイブと別ディレクトリに指定したらテンプレートの追加。

 検索用エントリーアーカイブ(Hyper Estraier の『文章ドラフト』フォーマット用)

@uri=<MTBlogURL><$MTEntryDate format="%Y/%m/%d_%H%M"$>.php
@title=<$MTEntryTitle$>
@author=<$MTEntryAuthor$>
@cdate=<$MTEntryDate format="%Y-%m-%dT%H:%M:%S+09:00"$>
@mdate=<$MTEntryModifiedDate format="%Y-%m-%dT%H:%M:%S+09:00"$>
<MTEntryIfTagged>category=<MTEntryTags glue=","><$MTTagName$></MTEntryTags></MTEntryIfTagged>

<$MTEntryBody remove_html="1">
<MTIfNonEmpty tag="EntryMore"><$MTEntryMore remove_html="1"$></MTIfNonEmpty>
    <$MTEntryTitle$>

 @uri= のあとは、実際のエントリーアーカイブの URL に合うように書き換えてください。グリプラの場合は上記のようになっていますというサンプルです。
 あとはこちらの手順に従ってインデックスの作成、検索用 CGI スクリプトの設置を行います。
 検索ディレクトリが /PATH/TO/search、先ほど MT がファイルを書き出したディレクトリが /PATH/TO/search/entries、検索用のインデックスファイルを作成するディレクトリを /PATH/TO/search/casket とすると、下記のような手順になります。

インデックスの作成(作業はすべて /PATH/TO/search ディレクトリで行うものとする)
# estcmd gather -il ja casket entries

検索用 CGI スクリプトの設置
# cp /usr/local/libexec/estseek.cgi .
# cp /usr/local/share/hyperestraier/estseek.* .

 あとは estseek.conf ファイルの編集ですが、最低でも次の2点の編集が必要です。環境に合わせて書き換えてください。

indexname: /PATH/TO/search/casket
replace: file:///PATH/TO/WWW/{{!}}http://www.greenplastic.net/

 これで、estseek.cgi に実行権限を与えたあとブラウザでアクセスすると検索が行えます。あとは定期的にインデックスを更新したり最適化したりすれば OK ですね。テンプレートが estseek.cgi と同じディレクトリにあるので(estseek.conf)、ブログのデザインと馴染ませることも簡単にできます。
 見た目の体裁が整ったので公開しました。みなさま、ガシガシ検索してくださいませ。会社の同僚たちは、ボクがビールについて何エントリー書いたか調べてはボクを揶揄してきます。

 残りの課題としては、エントリー投稿・編集と Hyper Estraier のインデックスの更新の連携をどうするかです。MT の再構築後に処理を行うプラグインを書けば出来ると思うのですが、cron を回しておけばいいやという気もしています。

 検索は男のロマン!? (Junnama Online (Mirror)) のコメント欄での指摘を本文に反映させました。具体的には、検索用エントリーアーカイブに @mdate (文章の最終更新日時を示す)を指定しているのにもかかわらず、それらを Hyper Estraier のデータベースに追加する際に -sd オプションを使用してしまっていました。-sd を付けるとファイルの更新日時を文書の属性として追加しますので、@mdate に書かれているエントリーの最終更新日時が反映されていなかったことになるようです。
 MT4 な方は EstCrawler を利用するのが良いかも知れません。ボクも利用したいです。

Rightfields でも改行したい! Rightfields でも改行したい!

 Movable Type のエントリーフィールドを拡張して CMS ツールとしての MT の機能を格段に広げることのできるプラグイン RightFields を仕事で使っているのだけど、前にも遭遇したのですが拡張したフィールドにはエントリーの改行設定が反映されません。その挙動が未だに理解できないので(したくないのか……)個人的には使っていない MT デフォルトの『改行を変換する(Convert Line Breaks)』を選択しても拡張したフィールドでは改行が <br /> に変換されないのです。
 これはなかなか困った問題で、お客様には極力 HTML を記述しなくてもサイトの更新が容易に行えるという目的の下でフィールドを拡張しテンプレートをカスタマイズした MT を提供しているのに、<br /> といえどもタグを書かせてしまうなんて(しかもたかだか文章を改行するためだけになんて)本末転倒もいいところだと神の声が聞こえてきそう。

 というわけで、解決してみました。この方法が最適かどうかはわからないけど、とりあえず動いているのでよし。
 オフィシャルの BBS でも同じような問題に突き当たっている人がいました(返信したのだけど操作方法があっていたのかどうか、現時点ではページに反映されてません)。

 方法はいたって簡単です。
 まず、The blog of H.Fujimoto さんの 「改行を変換する」を改良するプラグイン(ModTextFilter)をインストールします。
 それからテンプレートの該当部分に filters="ModTextFilter" の記述を追加。

<MTExtraFieldValue field="movie_introduction" filters="ModTextFilter">

 もしかしたら MT デフォルトの『改行を変換する(Convert Line Breaks)』を利用できるのかもしれませんが、convert_breaks="1" では改行出来ませんでした。
 とりあえずこれで様子を見てみます。

 様子を見た結果、ogawa さんにスマートな方法を教えていただきました。
 どこでもConvert Line Breaksするための2つのTips - Ogawa::Memoranda
 さっそくボクもこちらに乗り換えました。なるほど、convert_breaks はフィルターではないのか。remove_html は効いたのに convert_breaks が効かなかったのはそういうことなのですね。もっとソース読まなくては。。。

 convert_breaks が使えず remove_html が使えた時点で前者がグローバル・タグ・アトリビュートでなく後者がそうだという感じは何となくしていたのですが、『改行を変換する』をグローバル・フィルター(・プラグイン)化する方法がわからなかったのです。

スーパー銭湯と大学時代の思い出、小さな友達と悲しい映画 スーパー銭湯と大学時代の思い出、小さな友達と悲しい映画

 土曜日は朝方から夕方までぶっ通しで眠りました。様々な夢の世界をハシゴしたような気がします。夕方に目が覚めたら家に誰もいませんでした。何軒目かの夢で彼女が電話で美容院の予約をしていたような気がしたのであれは現実だったのだと思ったような次第でした。

 日曜日は昼から韓国人の友人家族と箕面にあるスーパー銭湯 水春へお出かけでした。千里中央で待ち合わせ。千里中央は大学時代の思い出の地なのですが久しぶりに訪れて懐かしさを感じました。ハンバーガーショップでハンバーガーを食べて、スーパー銭湯のシャトルバスに乗って一路スーパー銭湯へ。
 大学時代に彼女と出会った夏からボクが大学を卒業し彼女がカナダへ留学に旅立つ冬の終わりまで、ボクはこの辺りに一番強い思い出を持っています。彼女がこの辺りでアルバイトをしていたこともあって、大学から15分くらいのところに住んでいた彼女の部屋に大学から1時間半くらいのところに住んでいたボクは何度か泊まり込んでました。そんな日の翌日は2人で冬の朝を寒さに震えながら彼女のアルバイト先まで歩いたものだった。それまでは片道1時間半かけて電車とバスで大学と自宅を往復するだけだったので大学の近辺については何一つ知らなかった。彼女がボクに与えてくれた数多くのもののうちのひとつです。
 そんなことを思い出しながらバスに揺られてスーパー銭湯に到着。男性陣と女性陣に別れて、ボクの友達の一歳六ヶ月のシホはお母さんと一緒なのでボクはヨンスンさんと2人きりになりました。2人とも飲まないと饒舌になれないという性格なので(自分のことはわかっているけど、ヨンスンさんについては経験則)片言の英語でとりあえずボクが案内をして、途中からは別行動になったり一緒にサウナに入ったりしてました。入る前に、1時間後くらいに集合するということになっていたのだけど1時間もお風呂に入っているのは少々辛かったです。女性たちは時間が足りないと言っていたけど少なくともボクは30分くらいであがりたくなりました。別行動だったのでいちおうヨンスンさんを探してみたのですが見つからず、かといって黙って先にあがるのもアレかなあと思ってしばらく探してみたのですが見つからず、約束の時間になったので外に出たらヨンスンさんは先に出ていました。やっぱり1時間もお風呂に入っていられなかったようです。女性たちはそれから20分くらいして出てきました。
 スーパー銭湯の一角にあるセルフサービスのレストランで食事をして、再びシャトルバスに乗って千里中央に戻りました。帰りのバスは北千里に寄ったりしてよりボクの思い出に触れることとなりました。大学の4年間、ボクは北千里を利用していたのです。ああ、なつかしき循環器センター。あのころ書こうとしていた小説に登場させたものでした。あはは。
 ボクと彼女は千里中央でぶらぶらしようということになって、ヨンスンさんとハジンとシホは(シホは寝てたけど)帰ることになりました。ヨンスンさん家族は千里中央と桃山台の間に住んでいるので行きも帰りも歩きなのです。それでまた今度と別れてボクたちはミスドで休憩することにしました。と、そこで電話が。ハジンからだったのですが英語が聞き取れなかったので(orz)彼女にかわったところ、ハジンたちも千里中央をすこしぶらぶらするのでそのあと家に来ないかということでした。30分後にまた連絡するということだったのでオールドファッション抹茶オールドファッション抹茶チョコを食べながら待ちました(煙草を買うのに千中パルを少しうろうろ)。30分後にヨンスンさんたちと合流して桃山台のヨンスンさん宅まで歩きました。ちょっとした散歩コースになっていて静かでとてもよい環境だった。マンションに着くといつも入っていたのとは別の入り口があってちょっと驚いたのだけど、もっと驚いたのはマンションの入り口に張り紙がしてあって、『不審侵入者に注意』と書いてあるのです。『見かけたら110番』と書いてあったのですが、ヨンスンさんはそれを『110号室に不審者が入った(そしてたまたま110号室は空き室だったのですが、不審者のせいでその部屋の住人はいなくなった?)』と解釈したようでそれを聞いたボクたちはすぐに110番の意味を伝えたのでした。みんなで爆笑しながら部屋に向かいました。
 それからは延々とシホと遊びました。何を隠そう、シホとボクは友達です。ホントに元気でずっと動き回ってるしずっと何かを食べ続けてます。シホと遊んでるボクを見て彼女やハジンはボクが保育士になるべきだとか言ってました。きっとからかってるんでしょうけど。ちなみに、シホにとってボクは『アジョシ(おじさん)』で彼女は『イモ(おばさん)』です。『ヨッシーアジョシは?』と聞かれたらボクのことを指さします。ホントにこの上なくかわいらしくて遊んでるだけで何よりも楽しいのです。
 ラッポッキ(ラーメン+トッポッキ)をごちそうになって帰ってきました。

 振り替え休日の月曜日は彼女が風邪っぽかったので看病をして過ごしました。ごはんを買いに行ったり洗濯したりお粥を作ったりDVDで映画を見たりしました。ボクが作るお粥はいつも同じ中華風なのですが、今日のも出来が良かったようです。自分で食べてもなかなか良い出来でした。映画は誰も知らないを見ました。ちょっと感情移入してしまって悲しくなってしまった。自分に何かしてあげられないかということをふと考えてしまったりしてしまいました。彼らが選択する方向と、誰かが彼らを導いてあげなくちゃいけない方向とを考えたりしました。良い映画だったけど、あまりにも心に響きすぎて悲しくてもう一度見たくないと思いました。

最近買ったものたち 最近買ったものたち

 最近買ったものを紹介しようと思います。

 英辞郎第三版は、アマゾンから来たメールでその存在を知りました。そういう名前のパソコンで使える辞書があることはなんとなく知っていたのだけど、その辞書の特徴もよくわかってませんでした。リーダーズ英和辞典リーダーズ・プラスへの信仰心は大学時代に培われたものですが、いまだに根付いています。リーダーズは大学に入る前に通常の紙の辞書版を、大学時代は今から比べると幾分サイズの嵩張る電子手帳版を、そしてその後のどこかの時点からはパソコンにインストールして使うものを利用してきました(リーダーズスペシャルセット)。そういった歴史があるものだから、ボクにとって英和辞典といえばリーダーズなわけです。
 英辞郎第三版の購入を決意したのは新語を取り入れるスピードが速いということらしいからです。時間が取れなくてインストールだけしてほとんどろくに使っていないのですが、CD-ROM に付いていたアプリケーション以外にもネット上にいろいろとあるみたいなので試してみたいと思います。

英辞郎第三版
英辞郎第三版
posted with amazlet on 07.02.14

アルク
売り上げランキング: 68
リーダーズスペシャルセット
ロゴヴィスタ (2005/07/22)
売り上げランキング: 2057

 Perl Hacks —プロが教えるテクニック & ツール101選は勉強のために買いました。
 最近は仕事ではもっぱら PHP を書いているので PHP Hacks—プロが教えるWebプログラミングテクニックの方を買えば良かったかもしれません。誰かも言ってたけど、お金を払って分からないことを知ることが出来る・解決することが出来るなら本はどんどん買おうという考えでいます。仕事で使う本でも基本的には自分で買うようにしています。たまに会社に買ってもらうこともあるけど、基本的には業務時間外に勉強しているので仕事で使う本じゃない……という解釈で良いのかなあ。本やらネットやらで調べたり勉強したりして得た知識は全面的に仕事にフィードバックしているのだけど。
 ともかく、今度仕事で必要になるということで Web解析Hacks —オンラインビジネスで最大の効果をあげるテクニック & ツールを昼ごはんの帰りに購入しました。仕事帰りの電車でぱらぱらとめくってみたけど面白そうです。アクセス解析の勉強。
 こういう本をバリバリ読んでいる営業が世間ではプロと呼ばれるのだろうか。最近、社外のバリバリのプロのウェブの営業さんと仕事をする機会が続いているのですが、きちんとしている分厳しい面もあるけど仕事はとてもやりやすい。うちの会社の営業さんにも読んでもらわないとね :p

 オライリー率たかす

Perl Hacks ―プロが教えるテクニック & ツール101選
chromatic Damian Conway Curtis “Ovid” Poe 株式会社ロングテール/長尾 高弘
オライリー・ジャパン
売り上げランキング: 20024
PHP Hacks―プロが教えるWebプログラミングテクニック
ジャック ヘリントン Jack D. Herrington 牧野 聡
オライリージャパン
売り上げランキング: 29278
Web解析Hacks ―オンラインビジネスで最大の効果をあげるテクニック & ツール
Eric T. Peterson 株式会社デジタルフォレスト 木下 哲也 有限会社 福龍興業
オライリー・ジャパン
売り上げランキング: 58167

バレンタインデイ バレンタインデイ

 朝から(といっても昼前)同僚のウェブデザイナーさんがチョコレートケーキを差し入れしてくれたのでボクはてっきり誰かの誕生日なのかと思ったのだけど、実はそうではなくて単なるバレンタインデイだということでした。単なるバレンタインデイ。チョコケーキはおいしくて朝食など摂る暇のないワーカホリックなボクはとても助かりました。おかげで午前中の仕事がはかどったかも知れない。

 気がついたら1時半くらいになっていたので慌てて食事に出て、半時間で寿司食って会社に戻りました。午後の仕事もそれなりに捗りはしました。
 それで、バレンタインデイだからというわけではあるのですが、早く帰ることにしました。同僚の方はまだ残って仕事していたし、ボクが家に帰ってきて食事したあともボクが残してきたコードのデバッグをしてくれていたのだけど(したくないだろうけど)、それは感謝するとして、交代交代に早く帰る日を設けましょうという感じです。いくらワーカホリックだからといって、ワーカホリックにも限度があるというものですから。

 会社の帰りに近くのヨドバシカメラでちょっとしたスイーツなんかを買って帰って彼女をおどかそうとしたのですが、早く帰ってきて逆に怒られてしまいました。いつも終電とか遅いのに、こんな日に限って急に早く帰ってこられたらチョコ用意する時間がないじゃないか、と。
 作ってもらえるだけ喜ばなければならないのかもしれません。うれしい悲鳴でも上げておきます。
 そんな風にして珍しく急に帰ったものだから夜ごはんに食べるものがなくて(ないことはなかったのだけど)、せっかくなので宅配ピザを注文してコンビニでビールを買ってきました。届いたピザにはピザとは別に生ハムとピザカッターが付いていました。このタイプのピザを注文する度にピザカッターが1つひとつ我が家に増えていくのだろうかと幾分不安感におびえながらピザをカットして生ハムを乗せて食べ始めたのですが、生地にウニのソースが入っている部分があってその味がとても濃くて多少気持ち悪くなりました。よかった、ピザを注文する度にピザカッターが増えていくという魔の連鎖には突入しなさそうです。他の部分はとてもおいしかったのだけど(サーモンとチーズの辺りなんかは最高だった)。

 食事しながら、今日から新しく追加されたらしい Wiiみんなで投票チャンネルを試してみました。日中にネットで見かけたのですが、家に帰ってきたら Wii のディスクスロットが青く光ってたのでさっそくアップデートして Wii ショッピングチャンネルからダウンロード。最初これがわからなくて、本体が青く光ってるということは何か更新があったのだなとわかるのだけど、いざ起動してみるとあの青い光がなんだったのかは教えてくれない。少ししたらメッセージが届いていたのでそれを読んでやっと Wii ショッピングチャンネルからみんなで投票チャンネルをダウンロードするのだとわかりました。そういえばインターネットチャンネルのときもそうだったかも知れません。あのときもどこから Opera を落とせばいいのかわからなかった(ような気がする)。
 みんなで投票チャンネルを落としてさっそく試してみました。これはいい! やってることはすごく単純で、2択の問題があってどっちかを選ぶだけなのだけど、『自分がどう思うか』というのとは別に『世の中にはどう思う人の方が多いか』という『予想』も行うことが出来るのです。問題にも日本限定と世界共通の2種類があるようですし、さらに面白いのはアンケートを提案して任天堂に送ることも出来るのです。まさにこれぞユーザー参加型! 問題の更新も週に数回行われるみたいだし、最近 Wii を起動する機会があまりなかったのですがこれは毎日起動してしまいそうですね。
 ただアンケートに答えてるだけなのに、うどんが好きかそばが好きか答えてるだけなのに、それだけなのに自分の顔にそっくりの Mii と彼女の顔した Mii を Wii リモコンで『うどん』『そば』のエリアに連れて行くだけで楽しいのです。最初に都道府県を登録したのですが、オフィシャルサイトを見てると都道府県別に集計されそうですね。
 おそるべし任天堂。

 ところで、去年のバレンタインデイは何をしていたのかなと思って自分のブログを見直してみたけど、チョコにまつわるエトセトラはまったく記述されていませんでした。

近所の居酒屋、週末も家で仕事、アンケート 近所の居酒屋、週末も家で仕事、アンケート

 昨日の夜は珍しく家の近所の普通の居酒屋に彼女と飲みに行きました。仕事が終わって家に帰ってきたら11時前だったのだけど、その時間から家の近所で飲める店を Google マップで探してみたのです。一度家に帰ってきてしまったので遠出するのも億劫でしたし。
 何年か前に一度だけ行ったことのある店に行きました。彼女はお酒に強くないのですが、昨日の夜は3杯くらい飲んでたかな。ボクも負けじと倍くらい飲んでました。串焼きの店だったので串焼きをメインに刺身とか釜飯とかあと枝豆をつまんでいたのですが(枝豆は必須)、お互いの仕事の話をしました。お互いの会社にどういう問題があって、それぞれ自分自身がそのことにどう向き合っているか、というようなことを。彼女も彼女で大変そうだ。
 そうそう、昨日の朝にネットで予約した YAPC::Asia 2007 Tokyo のチケットを居酒屋へ行く途中にロッピーで発券してきました。会場が東京なのに、なぜか本社(東京)の同僚2人の分もボクが大阪で発券。ということで否が応でも4月4日5日は上京することになります。なにかありましたら!

 土曜日の今日は休みの日にしては珍しく午前中に起きました。彼女は友達の韓国人のお宅に行くことになっていたのだけど、ボクは残念ながら仕事をしないといけなかったので行けませんでした。友達に会いに行きたかったのだけど(一歳半くらいのボクの親友)。
 それで昼に彼女が出かけてから、ボクは家に残って洗濯物を取り入れたり洗濯物を干したりしました。雨が降っていたのだけど、風はそれほど強くなかったので干した洗濯物が濡れることはないだろうと踏んで。
 仕事の方はなかなか捗りませんでしたが、それでも自分を奮い立たせて PHP のコーディング。ちょっとがんばったので休憩時間に WiiRimo を見てみました。著作権はともかく、YouTube に連番に分けられて上がった動画を続けてみられないのはちょっと辛い。あと、『次へ』はあるけど『戻る』がないのも辛い。それらを除けば、学生時代から彼女が使ってきた我が家の14インチのテレビデオで YouTube が見られるというのはなかなか感動ものです。DVD レコーダーのような文明の利器の経験がないので、テレビ番組を気に入らないのがあればスキップしてしかも CM がないという経験は(テレビでは)はじめてでした。バックグラウンドに流しておくには良いかも知れません。残念ながら我が家では仕事をする部屋とは別の部屋にテレビがあるので、久しぶりに Wii でテニスを1ゲームだけして終わりとなりました。

うどんとそば、どっちが好き? Wii といえば、最近はじまったみんなで投票チャンネルがスゴすぎです。この前も少し書いたけど、国内限定のアンケートと世界共通のアンケートがあるのですが、世界共通のアンケートの結果が出ていたので見てみたのです。国内共通のアンケートでは都道府県別にどちらの選択肢が多かったかが見られるのですが、世界共通のアンケートでは国別に結果を見ることが出来るのです。グァテマラでは猫より犬の方が好きな人が多いって知ってましたか?
 結果を見ていると、ヨーロッパの方では犬より猫の方が気に入られているようです。なんとなくわかるような気がする。
 あと、日本人はそばよりうどんのほうが好きなようです。

PHP の調子が悪かったので PHP の調子が悪かったので

 最近、PHP の調子がどうも悪かった。おそらく PHP 5.2.1 にバージョンアップした際に(FreeBSD 上で portupgrade php5 としただけ)おかしくなったのかなあ。それ以降、apache を再起動した際やコマンドラインで PHP を使用したときに次のようなエラーメッセージが出るようになりました。

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20060613/sqlite.so' - /usr/local/lib/php/20060613/sqlite.so: Undefined symbol &quot;spl_ce_Countable&quot; in Unknown on line 0
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/lib/php/20060613/soap.so' - /usr/local/lib/php/20060613/soap.so: Undefined symbol &quot;ps_globals&quot; in Unknown on line 0

 エラーメッセージの詳細な意味はわからないけど大雑把な意味はわかります。ライブラリーが読み込めないってことなので、今日になって試しにそれらのライブラリーを読み込まないようにして apache の再起動をしたりしてみました。

 # /usr/local/etc/php/extensions.ini

;extension=sqlite.so
;extension=soap.so

 とコメントアウト。これでエラーは出なくなったのですがどうも根本的な解決に至っていないような気がして気持ちが悪かったので、今度はコメントアウトではなく読み込む順番を変えたりしてみました。

extension=zlib.so
extension=zip.so
extension=xmlwriter.so
extension=xmlrpc.so
extension=xmlreader.so
extension=xml.so
extension=tokenizer.so
extension=spl.so
extension=sockets.so
extension=simplexml.so
extension=session.so
extension=posix.so
extension=pdo_sqlite.so
extension=pdo.so
extension=pdf.so
extension=pcre.so
extension=mysqli.so
extension=mysql.so
extension=mcrypt.so
extension=mbstring.so
extension=ldap.so
extension=json.so
extension=imap.so
extension=iconv.so
extension=hash.so
extension=gmp.so
extension=gettext.so
extension=gd.so
extension=ftp.so
extension=filter.so
extension=fileinfo.so
extension=exif.so
extension=dom.so
extension=dbase.so
extension=dba.so
extension=curl.so
extension=calendar.so
extension=bz2.so
extension=sqlite.so
extension=soap.so

 こうして最後に持ってくることでエラーは出なくなりました。逆に、先頭に持ってくるとエラーが再発することも確認しました。よくわからないけど、これで解決したみたいです。

ダイナミック・パブリッシングの不具合 ダイナミック・パブリッシングの不具合

 前エントリーで書いたように PHP の調子がどうも悪かったのですが、その間、Movable Type のダイナミック・パブリッシング(PHP を利用した、再構築不要の動的ファイル生成)が機能しなくなっていました。PHP の調子が元に戻るとダイナミック・パブリッシングも元通りに動いてくれたのですが、動作確認をしているときにふと気がついたのだけど、月別アーカイブや個別アーカイブの『次の月』『次のエントリー』へのリンク先がすべて『最新の月』『最新のエントリー』になっているのです。具体的には <MTEntryNext><MTArchiveNext> が正しく動作しなくなっているということでしょう。

 この不具合についてはなんとなく覚えがあったのでググってみたのですが、先月にはてなブックマークしていました。

 WingMemo: MT3.32にはダイナミックで重大なバグあり & 修正方法

# diff -c mtdb_base.php.original mtdb_base.php

*** mtdb_base.php.original      Mon Feb 19 00:11:27 2007
--- mtdb_base.php       Mon Feb 19 00:12:34 2007
***************
*** 534,539 ****
--- 534,549 ----
              $limit = 0; $offset = 0;
          }

+         if ($args['sort_order']) {
+           if ($args['sort_order'] == 'ascend') {
+             $order = 'asc';
+           } elseif ($args['sort_order'] == 'descend') {
+             $order = 'desc';
+           }
+         }
+ 
+         $sort_field or $sort_field = 'entry_created_on';
+ 
          $sql = "
              select mt_entry.*, mt_placement.*, mt_author.*,
                     mt_trackback.*

 このバグが起こるのは 3.32、3.33、3.34 ということなので、先日 3.34 にバージョンアップしたときからずっと起こっていたのではないかと思います。PHP の調子が悪くてダイナミック・パブリッシングを利用できなかった期間には起こっていなかったようですが :p

真夜中の花粉 真夜中の花粉

 同僚の方が火曜日くらいから鼻をぐずぐず言わせていてどうも花粉症だと言うのだけど、同じく花粉症持ちのボクにはまったく症状が現れていなかったので、俄には信じがたかったということはもちろんないのだけど、それでもとりあえずは花粉症って2月やったっけと疑問を抱いてしまうのだった。

 初めて花粉症の症状が出たのは10代の終わり頃だったでしょうか。もう10年以上前のことになるけど、その頃、とんでもなく暑い夏の年があったのを記憶しています。琵琶湖の水面が史上最低ラインにまで下がったとか騒いでいたような。その翌年に見事に花粉症デビューしたのでした。

 同僚の方は昨日の夜、花粉症の症状でよく眠れなかったそうです。花粉症の薬なんて常備しているわけもなく(少なくともボクは常備していない)、今日になって薬を飲んで今度は眠気に困っているようでした。
 そういえば今朝少し鼻がぐずぐずしていたのと日中どうも目が痒かったのですが、鼻の方は朝方だけだったし、目の方はホントに花粉のせいなのか伸びた髪が目にかかっていただけなのか怪しいところです。いずれにせよ仕事中は大事に至ることなく、いつものように11時くらいに帰ってきました。
 さすがに連日の疲れがたまっていたので今日は家に帰ってから仕事も勉強も遊びもしないと心に決めて寝ることにしたのですが、低周波治療器で体中の疲れをほぐそうというささやかな試みと共に眠ろうとしたその瞬間にくしゃみ。鼻もぐずぐずしだしてきました。仕方ないのでとりあえず空気清浄機を花粉モードにしたのだけど、すっかり眠るきっかけを失ってしまったので仕事のメールを書いたりこうしてブログを書いたりしています。

 最近楽しいことがないなあ。再来週あたりに東京に行く予定。再来月も行かないといけないし。

日本人はいつも仕事で忙しくしている 日本人はいつも仕事で忙しくしている

 土曜日の昨日は家で仕事をしていました。日中はまあゆっくりと仕事していたのだけど、結局今日の朝方までやることになってしまった。それで3時間くらい寝て仕事再開。とりあえず一通りは終わったかなと言う感じで、あとはデバッグ要員さまからの返りに対応という感じでしょう。

 それはそうと、今年に入ってまともに週末を休んだことがないような気がする。あったかも知れないけど、先週もずっと仕事してたし。
 これから出かけないといけないので朝まで仕事したりしたわけですが、休みの日に仕事をしていてむかつくことがないわけではない。いくら仕事が好きだからと言ったって、平日出来ることをあえて休日にやろうと取っていたわけではないのだから。
 プログラムのコードを書くのは勉強になるからそれ自体にはなんら不満はない。休みの日に家で書こうが平日に会社で書こうが得られるものはかわらないんじゃないかと思うのと、休みの日は同じプログラムでももうちょっと面白いものに触れていたいと思うくらいで、こうして座り心地の良い椅子に座って作業効率の良い大きなモニターでプログラムを書いているのは(みなさんが思うほどには)けして悪くはない。
 なぜ休日にこうして仕事をしないといけないのかという原因に納得がいかないこと以外はなんら問題はないのです。

 とりあえず一通り終わったので仕事のことは忘れてこれから出かけてきます。
 彼女が大学時代にトロントに留学していたときに知り合った韓国人の男性が、この間まで国連にインターンシップか何かで働きに行っていて、今回韓国に戻る途中に大阪に立ち寄って会いに来たというので出かけてきます。彼には一度ソウルであったことがあるのだけど、一緒にいたのも数時間だったし会話もほとんどしなかった。
 場所はこちらも彼女がトロントで知り合った韓国人の女性の家。何度か書いているけど、旦那さんが日本で働くことになって家族で大阪に住んでいるのです。1歳半の子供はボクの親友なのです。
 本当は12時半に一緒に出かける予定だったのだけど仕事が終わらなかったので遅れて参加することに。

 そういえば、昨日の夜に skype で音声チャットをしつこく求められたので渋々出てみると、上海に住んでいる女性で去年日本語の勉強をして、今は日系の会社で働きたいと言う。たぶん日本語の勉強をしたくてネットで日本人を捜したんだろうけどどうやってボクを見つけたのやら。ブログのトップページに skype の ID 書いてるか :p
 仕事ばかりしていてうんざりしていたのでしばらく話してたのですが(向こうからの音声がノイズがひどくて聞き取りにくかったのが残念だった)、日本人はいつも仕事で忙しくしているのはどうしてかとタイムリーな質問を受けて笑ってしまった。わからない、とボクは答えたけど、もし彼女が今後日本語をさらに勉強して達者になったならこう説明したい。
 それはね、忙しくない日本人もたくさんいるんだよ。彼らはあまり仕事をしないので、その分を否応なく肩代わりさせられる人たちがいるのさ。あのときのボクがそのうちの1人だったんだけどね。今? 今もたいしてかわらないね。

 中国に行くチャンスがあれば中国の有名なところを案内してくれるそうです。そのかわりに日本語を教えてと言われました。

Index of all entries

Home > Archives > February 2007 Archive

Popularity
  • feedburner
  • このブログのはてなブックマーク数
  • あわせて読みたい
Last.fm
  • Last.fm
Ads
Blog People
  • add greenplastic.net by BlogPeople
Ads

Return to page top