2006-01-01から1年間の記事一覧

もやし

W+D を買いに本屋まで行ったのですが、バックナンバーしか置いてなかったので、もやしもん一気買い。 → + + + おすすめです。

ディスクイメージを圧縮

Mac

Mac 用のフリーウェアで無圧縮 dmg を zip 圧縮して配布されているものがたまにあります。 それを圧縮し直してローカルにとっとくのに、こんなシェルスクリプトを使ってます。 % cat dmg-compress #!/bin/bash self=`basename "$0"` keep_old=1 use_bzip2=0 …

腐ってやがる

PHP

json エクステンションですが、スカラーリテラルのデコード結果がことごとく NULL なのはひどいと思うのですが。 使う機会は少ないかもしれないけど、これはひどい。

libqr-20061226

QR

また更新。libqr-20061226.tgzlibqr-20061227.tgz 型番自動選択において大きな勘違いをしていたのを修正。 エラー処理まわりを書き直し。 コンストラクタとジェネレータの引数を変更。 少しだけメモリにやさしく。 等々の変更があります。

Piece Uploader (仮)

Piece Franework の最新版がリリースされたので、さっそく example を使ってみました。 Layout 素晴らしい。自分でテンプレートごとに共通のヘッダとフッタを <flexy:include> していたのが何と無駄だったことか。 Interceptor_Authentication これも便利。設定でちょっと注</flexy:include>…

libqr-20061223: GD をサポート

QR

GD を使って、GIF/JPEG/PNG/WBMP で QR コードを出力できるようにしてみました。libqr-20061223.tgz それに伴い、コマンドラインオプションもいくつか追加。 % qr -h Usage: qr [options ...] [ [ [mode] [text | -f file] ] ...] オプション: -?, -h, --hel…

ICU 3.6

ちょいと訳ありでヘッダを grep してたら ucsdet.h てのがあるじゃないですか。 つまり文字コード判定用の API。 下記のようなコードで適当に試してみたところ、UTF-8 は正しく認識してくれたものの、Shift_JIS が ISO-8859-5 と判定されたり EUC-JP が Shif…

続・QR Code Extension

PHP

ライブラリの方はだいぶ体裁が整ってきました。libqr-20061220.tgz GNU Autotools の使い方をよく知らないし、好きじゃないので、いくつかのプラットフォーム用に手書きした Makefile を同梱してます。Mac OS X と FreeBSD で確認済み。 Python distutil か …

QR Code Extension 作成中

PHP

気を抜くとすぐ更新をサボってしまう僕ですが、ここ2,3日はこんな物を作ってました。 太田純さんが http://www.cmagazine.jp/contents/200407.html で公開されていたソースコードをベースにしています。 PHP エクステンションにする前に、C 言語のライブラリ…

セッション設定に気をつけて

第4回 Piece Framework 勉強会で、何故か "The flow name [ WizardForm ] not found in the flow definitions." と、フロー定義がねー YO! と怒られて先に進めなかった問題ですが、解決しました。 どうやらセッション関連の設定がまずかったようです。 エン…

is_numeric() & eval()

PHP

% php -r 'var_dump(is_numeric("+0123.45e6"), +0123.45e6); > var_dump(is_numeric("-0123"), -0123);' bool(true) float(123450000) bool(true) int(-83)この結果を踏まえ、is_numeric() で真となる文字列は、クォートしなかった場合 PHP のパーザで数値…

Hack#97

PHP

Piece Framework 勉強会の後の懇親会で出た(と思う)正規表現を使わずに整数であるかどうかを確認するにはどうするか?というネタと、Binary Hacks の Hack#97 - 浮動小数点数のビット列表現 を Pure PHP でやってみる、の両方をいっぺんに。ctype_digit() …

第4回 Piece Framework 勉強会

Piece の勉強会は今回が初参加。 静的なページでウィザードを作ってみるぐらいの予習はしておきたかったのですが、ぶっつけ本番で挑戦です。 神戸まで行くには以下のプランがあり、3番目はありえない(遅刻のおそれもある)ので1番目か2番目になります。 早…

unichr extension 0.0.2

PHP

Surrogate (Cs) に加え、 Noncharacter のコードポイントが与えられたときも False を返すように修正したバージョンです。 インストール方法はこちら。

平衡三進記数法

任意の整数について、平衡三進記法の各桁の trit を収めた配列を返すメソッド - Smalltalkのtは小文字です の Smalltalk のコードをベタ移植して、PHP と Python でも整数を 1, 0, -1 の配列(タプル)として返す関数を書いてみました。 平衡三進記数法とい…

デザイン変えました

etc

ほんのちょっとしか変わってませんが、多少は見やすくなったんじゃないかなと思います。 こっそりプリンタフレンドリーな CSS も仕込んでます。 しかし Safari (というか Cocoa の奥の方) の Unicode ⇔ EUC-JP 問題 (Yen Sign Problem) が解決する見込みもな…

メールドリブンな Web アプリ

Web

送られてきた電子メールに対して何らかのアクションを実行する場合、普通は smtpd の設定で特定のアカウント宛てのメッセージを別のプログラムの標準入力に喰わせるのですが、僕のようにメールサーバの運用などしたくない人間にとって、これはちょっと難しい…

テンプレートドリブンなデータベーススキーマ作成

PHP

昔、妄想していたことを、ふと思い出したので忘備録として。 僕は幾つかある PHP のテンプレートシステムのうち PEAR::HTML_Template_Flexy を好んで使うのですが、これにはテンプレート中のフォーム要素を取得・操作するステキな機能があります。 そして、…

PHP の定数を Python で

PHP のコアで定義されている定数 (の一部) と Python で同等の値を得るための表記の対応表を作ってみました。 間違っている箇所がありましたらコメントでご指摘ください。 マジック定数 PHP Python __LINE__ - __FILE__ __file__ __FUNCTION__ - __CLASS__ s…

Unicode まとめ

ウニよりもカキのほうが好きな僕ですが、ちょっと前まで unichr() 絡みでウニウニ言っていたときに調べた Unicode 関連のまとめ。 僕自身このまとめが正しいか確信できていないのですが、個人的なメモとして残しておきます。 文字セット 空間 符号化方式 (oc…

三嶋亭

大変美味しゅうございました。

イノダ

その後、すき焼きを食べるべく京都へ。三嶋亭の予約の時間まで少し時間があったのでイノダで一服。 イノダの何が良いかというと、店員の質。これに限ります。店員教育が行き届いており、毎度感心させられます。スイーツも美味しいですね。コーヒーは特別美味…

KOF2006

南港 ATC に行ってきました。なぜか高校生が大勢いました。 Piece Framefowk のセッションが始まる前に ITEMAN さんとちょっとお話。このブログを見ていただいていたことも驚きでしたが、まさかプロフィールのイラストで本人特定されるとは想定外でしたw 内…

Metakit 訂正編

どうやら README にあった configure のあと、Makefile を修正するというのは公式のユニバーサルバイナリ版 Python 2.5 のときの話だったようで、configure && make && make install で普通にいけました。 Metakit for Python の日本語訳の基本的な使い方も…

Metakit を試してみようと思ったのですが

Metakit という非常に面白そうな組み込み型データベースのことを知り、いざ試してみようとインストールしてみたわけですが・・・ ・・・なんか、どう見ても中間ファイルです。本当に (ry なオブジェクトにリンクしている件。 % otool -L /usr/local/metakit/…

Suhosin 0.9.6.2

PHP

PHP 5.2.0 向けの Suhosin パッチがバージョン 0.9.6.2 にアップデートされていました。 PHP の他のバージョン向けは 0.9.6 のままで、PHP 5.2.0 でビルドできない問題等が修正されているようです。 当方 (Mac OS X 10.4.8/PowerPC G5) でも 0.9.6 では zend…

はてブ debut

web

ちょー遅まきながら、はてなブックマークを使い始めてみた。 ローカルのブックマークの移行は諦めて、新規登録だけはてブにしよう。 「タブで開く」状態のブログも随時 Bloglines で読もう。 Plagger も使ってみようと思う。*1 *2 ・・・で、編集しちゃって…

-DPHP_PCRE_NO_INDEX_NAMED_CAPTURE

PHP

引き続き ext/pcre/php_pcre.c を改造。 コールバック関数にも名前付きでキャプチャして渡せるようにしたのに加え、PHP_PCRE_NO_INDEX_NAMED_CAPTURE マクロを定義してコンパイルしたときは、名前付きでキャプチャした箇所は添字番号でキャプチャされないよ…

バイナリアン度は 37 点

正解した問題も半分ぐらいは知っていたのではなく勘で答えたのですが...orz ここら辺の本を買おうかと思ってます。 Binary Hacks ―ハッカー秘伝のテクニック100選作者: 高林哲,鵜飼文敏,佐藤祐介,浜地慎一郎,首藤一幸出版社/メーカー: オライリー・ジャパン…

preg_match(_all) でメモリリークの可能性がある件

PHP

先日のパッチは PHP_5_2 ブランチの CVS (PHP 5.2.0 の玉にあるものと同じ) に対してのものだったのですが、それを PHP_4_4 および HEAD にも適用してみようと作業をしていたところ、PHP_4_4 (PHP_4_3 と PHP_5_0 も) では preg_match(_all) で名前付きキャ…