| 2002/12 | ||||||
|---|---|---|---|---|---|---|
| Sun | Mon | Tue | Wed | Thu | Fri | Sat |
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 | ||||
_ 気がつかないうちに結構歳をとってしまったかな。 森口博子や菊池桃子が 18 歳だったころに 18 歳をやっていたらしい。
_ Ruby で Java の XML Pull パーサっぽいものを作ってみた。
#! /usr/local/bin/ruby
require 'xml/parser'
module XML
class PullParser
def setInput(reader)
@parser = Parser.new
@cont = nil
@event = [:START_DOCUMENT, nil, nil]
@reader = reader
end
def getEvent
@event
end
def next
return nil unless @event
return @event = @cont.call if @cont
@parser.parse(@reader) do |@event|
callcc {|@cont| return @event }
end
callcc {|@cont| return @event = [:END_DOCUMENT, nil, nil] }
@cont = nil
@event = nil
end
end
end
if $0 == __FILE__
p = XML::PullParser.new
p.setInput($<.read)
e = p.getEvent
while e
p e
e = p.next
end
end_ 内部イテレータを外部イテレータにするには Continuation を使うしかないのかなぁ。 遅くて使い物にならないかも。
_ 11 月の spam,全部で 141 通。日本語 19 通,スペイン語 1 通, 文字化け 5 通,残りは英語。
_ また Klez 2通。
_ Windows 用の Sendmail の検証を頼まれたのだが, なんか妙に設定が難しい。 UNIX で動かすほうがずっと簡単だ。 どうしてわざわざ Windows で Sendmail なんて使うんだろう。
_ 熱くなった鍋の把手を握って火傷した。 いてて。
_ Opera を使ってみた。 Mac OS X 版は特に速くもないし軽くもないなぁ。 CSS の実装にちょっと変なところがある感じ。 タッチパッドでマウスジェスチャーは使いにくいかも。
_ Opera で自分のページの確認。 もともと Mozilla で確認済みだから Opera でも特に問題はないみたいだな。
_ goo の最新情報検索実験って元 HI 研の InfoBee グループがやってるのかな。 以前,RDB のラージオブジェクトを InfoBee を使って全文検索するというプログラムを開発するために, ソースの一部を見せてもらったのを思い出した。 当時は結構しょぼいプログラムだったけど,今はどうなってるのかなぁ。
_ また Klez が 2 通。
_ 12/10 に出るらしい。査定は±0。 支給額は夏とほぼ同じかな。
_ Mac OS X 10.2 付属の fetchmail 5.9.11, To に アドレスが 500 個位並んでいるメールを受信したら SEGV した。
_ 朝には1〜2cm積もっていた。 寒そうだったので厚着をして出かけたら,電車が込まくって汗だく。
_ いつのまにか Photoshop 7.0.1 のアップデータが出ていた。 とりあえずインストールしてみたけど, スクロールしたときに画面が壊れる問題は直ってなさそう。
_ 出た。実質 3.2ヶ月分くらいかな。
_ Cocoa で補助漢字を含む EUC-JP の文字列がうまく変換できないなぁ。 RubyCocoa でも Objective-C でも駄目だった。 使い方が間違っているのか,Cocoa のバグか。
_ RubyCocoa の例。
require 'osx/cocoa'
e = "a\xa1\xa1\x8e\xa1\x8f\xa2\xafabc"
d = OSX::NSData.dataWithBytes(e, :length, e.length)
s = OSX::NSString.alloc.initWithData(d, :encoding,
OSX::NSJapaneseEUCStringEncoding)
(0...s.length).each do |i|
printf("%x\n", s.characterAtIndex(i))
end_ Objective-C の例。
/*
* cc -o test test.m -framework Foundation
*/
#import <Foundation/Foundation.h>
#include <stdio.h>
#include <string.h>
int
main() {
char* b = "a" "\xa1\xa1" "\x8e\xa1" "\x8f\xa2\xaf" "abc";
NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
NSData* d = [NSData dataWithBytes: b length: strlen(b)];
NSString* s = [[NSString alloc] initWithData: d
encoding: NSJapaneseEUCStringEncoding];
int i, len = [s length];
for (i = 0; i < len; i++) {
printf("%x\n", [s characterAtIndex: i]);
}
return 0;
}_ 結果は同じ。
61
3000
ff61
2d8
3f ← おかしい
62
63_ 下塗り中。
_ jvim の補助漢字の処理,ちょっとまずい感じ。 全然関係ない文字に置き換えてしまってる。 もともと内部エンコーディングが CP932 だから, 補助漢字の完全なサポートはどうやっても無理なんだけど, いいかげんな変換をしちゃうのもまずいなぁ。
_ とりあえず変換できない文字は '?' に置き換えてみた。
--- src/kanji.c.org Wed Dec 11 20:38:20 2002
+++ src/kanji.c Wed Dec 11 20:40:14 2002
@@ -826,10 +826,14 @@
}
#endif
+#if 1
+ return 0x8148;
+#else
sjis = jistosjis((char_u)(high & 0x7f), (char_u)(low & 0x7f));
if (0xeb40 <= sjis && sjis <= 0xeffc)
sjis += 0x0a00;
return(sjis);
+#endif
}
/*_ 彩色中。 やっと Photoshop でレイヤーのグループ化の使い方がわかった。
_ Amazon で予約注文した物が全然届かないのでキャンセルして買いにいった。 ついでに色々。
_ Ruby・DB ウェブデザイン,まさかあのまま出版されるとは。 まあいいけど。
_ そういえばビクターも CCCD になっていたのか。 ちゃんと再生できるかどうか試しに買ってみることにした。
_ とりあえず DVD プレーヤ,MDミニコンポでは問題なかった。 MD への倍速コピーもできた。
_ G4 Cube では再生,リッピングとも問題無し。 iBook では CD へのアクセスを繰り返して再生不可。 V-TOWNS は TOWNS モード,FMV モードとも問題無し, Pliché は音楽トラックへのアクセス不可。
_ PlayStation2 は問題無し,Dreamcast は再生中断, XBox はプチノイズが入る。
_ まあゲーム機で CD を聴くことはないし, Cube から iPod に移せるし,実用的には問題ないかな。 それにしても中途半端なコピープロテクトだ。 こんなのに意味があるとは思えないけどなぁ。
_ 音質の劣化はよくわからないな。 まあ劣化前の音と聴き比べてみないとわからないだろうなぁ。
_ 祭り終了。 一日で約 1000 アクセス。 通常の 15 倍くらいだったかな。
_ 洗濯したり,昼寝したり。
_ 久しぶりに Recommended Pactch Cluster。 むむ,BIND のセキュリティパッチはまだなのか。 Solaris はセキュリティパッチが出るのが遅すぎだな。
_ Rec-POT S 240GB, 出荷延期か。 予約済みだったんだけどなぁ。 120GB に変更だと 64,000 円か。
_ まあ 120GB じゃ足りないし,2 月まで待つかな。
_ トピックのタイトルの文字の白と背景のピンクのコントラストが低くて液晶画面だとちょっと読みにくいかも。
_ 今まで使っていたサブウーファ(YST-SW45)が駄目すぎなので, もうちょっとましなスピーカを購入。
_ 密閉型でコンパクトなのが欲しかったので ASW2500 にした。 店からは 12/20 頃に新製品の ASW675 が入荷するとか言われたが, サイズがちょっと大きくなっているらしいのでパス。
_ とりあえず音を出してみたら窓や扉が共振。 ちょっと調整が難しいかも。
_ Virtual PC 6 for Mac が発表されたらしい。 アップグレードは $99 か。 新規購入とはゲスト OS の値段分しか違わないなぁ。 とりあえず日本語版が発売される 1/24 まで待つか。
_ Mac OS X にリモートログインして mount_webdav を使って WebDAV をマウントしようとしたら, 認証ダイアログのせいでうまくいかなかった。
_ 認証ダイアログを出さずに WebDAV をマウントするスクリプト。
#! /usr/bin/ruby
require 'tempfile'
uri = ARGV[0]
path = ARGV[1]
print "username: "
user = STDIN.gets.chomp
system("/bin/stty -echo")
print "password: "
passwd = STDIN.gets.chomp
system("/bin/stty echo")
puts
Dir.mkdir(path) rescue STDERR.puts "#$0: #$!"
f = Tempfile.new("mount_webdav")
f.print [user.size, user, passwd.size, passwd].pack("Na*Na*")
f.flush
system("/sbin/mount_webdav -a#{f.fileno} #{uri} #{path}")_ パスワードをキーチェーンから取り出そうとしたけど, あらかじめキーチェーンへのアクセスを許可しておかないとダイアログが出るから駄目だ。
#! /usr/bin/ruby
keychain = "yoshidam"
key = 1
auth = `osascript <<EOF
tell application "Keychain Scripting"
set user to account of keys #{key} of keychains "#{keychain}"
set passwd to password of keys #{key} of keychains "#{keychain}"
end tell
user & ":" & passwd
EOF
`
puts auth_ Mac OS X 10.2.3 アップデータをインストール。 51MB もあった割にはほとんど変わった気がしないな。
_ げげ,fetchmail が認証に失敗するようになってしまった。 SSH トンネル上で動かしているせいかな。 パケットやソースを眺めたりしてやっと解決。 オプションに "auth password" を指定しないと STLS を使おうとするらしい。 IMAP サーバ側で SSL の設定をちゃんとやらないと駄目なのかな。
_ ~/.fetchmailrc はこんな感じ。
skip localhost with protocol IMAP port 10143:
aka tunnel
auth password
user yoshidam
password HOGE
preconnect "ssh -C -f yoshidam@nayuki.yoshidam.net -L 10143:shiori.yoshidam.net:143 sleep 5"_ IPv6 周りがおかしくなっているみたいだ。 自分自身のリンクローカルアドレスにパケットが届かない。 困ったな。
_ Developer Tools もアップデートされていた。 うう,300MB か。
_ MSXPLAYer,Celeron 466MHz だとちょっとパワー不足。
_ 新しい Developer Tools の動作確認として FizzillaMach と Chimera のビルド。 FizzillaMach はいつのまには Mozilla 1.3b になってるな。
_ Chimera は Rendezvous (Zeroconf) サポートか。 user.js に追加。
user_pref("chimera.enable_rendezvous", true); _ 起動時にマルチキャスト DNS でサービスディスカバリが出ているな。 でも何も発見できない。 Apache は Rendezvous に対応してないのか。 というか Rendezvous に対応している Web サーバってあるのかなぁ。
_ D-VHS デッキがずいぶん安くなっているので購入。 ハイビジョン録画ができて,ビットレートコンバータが付いている機種ということで HM-DH35000 を買ってみた。
_ i.LINK ケーブルがないので BS デジタルチューナへの接続ができないな。 地上波チューナはいままでの S-VHS デッキ (HR-VXG200) と同じ感じだな。 GRT の効き具合も同じくらい。あまりよくない。
_ とりあえず S-VHS を試してみた。 画質的にはいままでの S-VHS デッキと変わらないな。
_ D-VHS テープがなかったので S-VHS テープに検出孔をあけた変造テープで D-VHS のテスト。 アナログソースなら LS3 でも画質的には十分だな。
_ D-VHS テープ高いなぁ。 300 分 (S-VHS だと 150 分相当) で 800 円, 480 分 だと 4,000 円か。 まあ変造 S-VHS で十分かも。
_ i.LINK で BS デジタルチューナと D-VHS デッキをつないでみた。
_ むむ,デジタル録画予約はチューナ側からしかできないのか。 チューナ (TT-D2000) は i.LINK に複数の録画機器がつながっていても, そのうちの一台だけしか録画対象に選べない。 既に録画予約が入っていると録画対象変更ができない。 HD レコーダと D-VHS の切替えが面倒だな。
_ HD レコーダから D-VHS のダビングをしてみた。 画質がまったく劣化しないのはいいな。 やっぱりコピーワンスの番組は無理か。 せめて移動ができればなぁ。
_ D-VHS デッキに AAC デコーダが内蔵されているので, AV アンプ (DSP-A5) と 5.1ch 接続してみた。 この AV アンプ,外部デコーダ入力には DSP とかスピーカ補正がかからないので, バランスが崩れちゃうな。 やっぱり AAC デコーダ内蔵の AV アンプが必要かなぁ。
_ BS デジタルチューナの赤外線ビデオコントローラを使って録画するときにも i.LINK から入力できることに気がついたので, i.LINK からの予約で HD レコーダに, 赤外線からの予約で D-VHS デッキに録画することにした。 ちょっと使い勝手が悪いけどしかたがない。 D-VHS デッキ側からチューナの制御ができないのは不便だな。
_ LS3 でいくつか録画してみた。 さすがに動きの激しいシーンでは破綻しやすいようだな。 4.7Mbps だからなぁ。
_ Mac OS X 10.2.3 にアップデートしてから MS Word などで Windows 用 TrueType フォントが文字化けを起こすようになった。
_ とりあえずフォントキャッシュっぽいファイルを削除して再起動したら直った。
/System/Library/Caches/*
~/Library/Caches/*
~/Library/Preferences/Microsoft/Office Font Cache (10)_ 半年くらい前に注文した物が忘れたころに到着。
_ 大掃除を始めた。
_ 塩素系カビ取りは結構強力。カビを分解してるのかな。 Orange Glo は油汚れには無力。買うだけ無駄。
_ 風呂と台所の掃除をやって力尽きた。 今年の大掃除はここまで。
_ 帰省に備えてビデオ予約。 BS デジタルの EPG も ON TV の iEPG も一週間先までしか予約できないのか。 一週間以上部屋を空けられないな。
_ D-VHS で録画するときビットレート変換すると音声が MP2 になるのか。 フルレートだと 300 分テープに 2.5 時間しか録画できないしなぁ。 画質を落としても音声は AAC のままのモードが欲しかったな。
_ Rec-POT S 240GB が出荷されていればもうちょっと余裕があったんだけどな。
_ 帰省。 ときが混んでいたので 40 分程待ってたにがわに乗った。 結構空いてた。
_ 到着。 雪はあまり降っていなかった。 積雪は 50cm くらい。 まあ,平年並か。
_ くしゃみ,鼻水。風邪をひいたかな。
_ タブレットで下書き。へぼへぼ。
_ そういえば今年は結構たくさん絵を描いたような気がするけど, ちっともうまくならなかった気がする。 Photoshop の使い方はうまくなった気がするけど。 来年はもっとがんばらなきゃ。