...pudding - diary

この日記は https://yapud.hatenablog.com/ に引っ越し中


2008-12-01

_ [W-ZERO3] はやくなるのかな

ウィルコムがNTTドコモと提携、競合他社よりも格安の高速データ通信サービスを開始へ、ですって。

とにかく安くて速くなるのなら歓迎です。コレ用のW-SIMが出ればいいなあ。


2008-12-02

_ [Software] redmine は sqlite3 を使ってみた

先日書いた、 redmine を導入した話だけど、これは Windows機に入れました。

事前に DB を用意しておかなければいけないのでちょっと面倒。

なのでお手軽な sqlite3 をつかいました。

sqlite のサイトから DLL をとってきて、%SystemRoot%\SYSTEM32 にコピー。

ruby に sqlite3-ruby を入れるのだけど、最新版は windwos 用のバイナリがないので、一つ前のを入れる。

gem install sqlite3-ruby --version '= 1.2.3'

あとは Redmine.JP | Redmineのインストール に従って作業すればOK。


2008-12-03

_ [Hardware] Eye-Fi

無線LAN搭載SDカード Eye-Fi 来ましたなあ。

すげえ便利そうです。

だかしかし!

俺のデジカメは xDピクチャカードでした。超マイナー。


2008-12-04

_ [Hardware] IdeaPad S10e

Lenovo から出たネットブック IdeaPad。

トラックポイントが無いですよ。後発なのに。Lenovo から出るという理由がない。なんだこれ。

さらに、縦600pxで狭い狭いといわれてるネットブックの中で、さらにひときわ狭く縦576pxとか。どうなのよコレ。

昨今の広告バリバリなWebページとか見るとき、本文にたどり着くまで縦スクロールが必要ですわな。

普通のPCよりも縦が狭いわけですからずっと縦スクロールが必要となるわけです。

狭い画面を持ち合わせる限り、縦スクロールしやすいかどうかってのも選択基準のヒトツとなると思うわけですよ。

そんなとき、ホームポジションから手を離さなくていいトラックポイントというのはかなり正解に近いと思うのだけど。

小型というボディに対して面積を取らないトラックポイントというのは大変良いと思うのだけど。

今トラックポイント付きで出せば、多くのThinkPadユーザがサブ用機として買ってくれると思うんだけど。

何故にコレを外したのだLenovo!他社とカブる層に手を出してどうするよ。わざわざ死屍累々の市場に出て行くのってなんで?

いまノートPCでLenovo機を選ぶ理由って、TrackPointとパーツが自由に発注しまくれるの位しかないわけですよ。

で、ネットブック的にここまで安い機械だと、いざというとき保守パーツで延命させるより、次の機械を買うことを検討するから、保守への期待値ってのはそんなに高くないと思うんですよ。

となったら、ウリがねえじゃん。

トラックポイント付きの機械は出すつもりナシとか言ってるので、ThinkPad 好きはせっせと金を出してThinkPadを買えってことなんだろうねえ。しょぼん。


2008-12-05

_ [いろいろ] イーモバイルの勢いがすごい

NEWS|『EMOBILE通信サービス』有料サービス開始後1年6ヶ月で100万契約を突破 | eMobile

これはたぶん100円パソコンの効果がかなりあると思うんですけど、でもまあそういうビジネスモデルを作って実行に移してきちんと数を出してるってところがすごい。

NEWS|Windows Mobile 6向けに懐かしのMSXゲームを初提供〜 イー・モバイル端末向けに限定CDバンドル版「EM・ONE α」の発売とダウンロード販売 〜 | eMobile

これかなりうらやましい。モバイルMSX!電車に揺られてBASICをコーディングですお!

NEWS|ケータイ感覚で使える国内最小*1のスタイリッシュなスマートフォン「Dual Diamond」(S22HT)を12月20日より発売 | eMobile

なかなかコンパクトな端末。すてき。だけどQVGAかあ。

日本語を使う上でどーしても文字サイズが大きくなってしまうというのは英語圏に対し不利なところだね。

あっちは QVGA で充分なのかもだけど、こっちは複雑なビットマップを持つ文字を出す必要があるから QVGA じゃ苦しいんだよねえ。


2008-12-06

_ [いろいろ] ユニクロのKIDS用ダウンジャケットの売れ方がスゴイ

ユニクロのKIDS用ダウンジャケットが週末特価で安くなってた。のでオコサマ連れて見に行った。

他でダウンジャケット買ったら、同じような質のが倍以上する。同程度の値段じゃ安いビニール袋みたいのしか買えない。

無印のもなかなかカワイイんだけど、ユニクロの倍じゃあなあ。

と思って適当なユニクロに行ってみたら。狙ってた白色の人気がハンパじゃない。

最初から白色のラインナップはありませんでした、といわんが如く売り場に白がない。

他のユニクロに行ってみたけどやっぱり白がない。

白だけものすごい勢いで売れたようだ。確かにカワイイもんなあ。

無印でシーズン終わり頃に値下げされたのを買うっつうのが良いんだけど、希望のサイズがなかったら寂しいしな。


2008-12-07

_ [いろいろ] リベンジ

欲しいモノが買えないと悔しくてムキになることはありませんか。

昨日KIDS用ダウンジャケットが買えなかったのが悔しくて別店舗を数軒回ってみた。

よーやく一着発見。無事確保。ウチの子には少し大きめだけど、コレなら来年も余裕で着れるだろう。


2008-12-08

_ [オンガク] TOKYO CITY POPs

Happiness Records のシティポップなコンピ TOKYO CITY POPS

これはなかなか上質なシティポップですよ。楽しくて心地よいです。

特に、2. 朝まで君といたいのに(Makkin & the new music stuff) と 5. アメーバ(ゲントウキ) と 6. city lights(Summer Soft) と 9. 土曜日は7inch(carnival balloon) が気に入りました。グルーヴ感のあるポップ。

7. サンキュー(ワールプール) 、歌声がオザケンみたい!


2008-12-09

_ [W-ZERO3][Software] CorePlayer 1.3.0

CorePlayer 1.3.0 リリースされました、って mobihand からメール。

色々なブログ検索してみたところ、あまりよい話がないのでバージョンアップは見送りです。

現バージョンで困ってないし。


2008-12-10

_ [Software] ATOK 2009

ジャストシステム ニュースリリース(2008/12/09)多彩な表現と使いやすさで、より進んだ文書作成を実現する「JUST Suite 2009」と「一太郎2009」「ATOK 2009」を来年2月6日(金)より発売

というわけでそろそろお布施のシーズンがやってきます。

最近の ATOK は、ヘタに自前の変な癖の付いた辞書を持ち込むより、初期状態で使った方が変換効率が良かったりしませんか。

キーバインドとかは好みがあるのでそれを引き継ぐし、人名などの固有名詞は引き継ぐけど、それいがいはバスッと切った方が軽快に動くと思うのでした。

時々変な学習結果を消したりしてリフレッシュしてあげてます。

って自動学習をOFFにすればいいのか?


2008-12-11

_ [Software] String::Trigram が便利!

ちょっとしたメンテ用ツールを perl で書いてて。ちょっとした文字列の比較をしたい。でも完全一致じゃなくて、似てるのもOKとしたい。

似てるのを探すアルゴリズムなんて俺が実装しなくても誰か賢い人がすてきな実装してるに違いない、と CPAN の検索してみたらズバリ。

String::Trigram - Find similar strings by trigram (or 1, 2, 4, etc.-gram) method - search.cpan.org

Tri-gram で類似文字列を検索してくれます。便利です。


2008-12-12

_ [Software] RHEL5 で nkf ふっかつ

これだけ一般にコンピュータが普及してるというのに、文字コードの悪夢からはまだまだ逃げ切れそうにありません。つうわけで文字コード変換を必要とするシーンは色々とあるわけです。

昔々から「普通 nkf だろう」と思っていたのですけど RHEL3 とか RHEL4 には nkf が無くて寂しい思いをしておりました。

iconv を使えという事なのでしょう。

でも iconv って出力をバッファリングしてるのかな。

tail -f logfile | iconv -f SHIFT-JIS -t EUC-JP

とやっても、なかなか出てこない。入ってきたのから順にダラダラ出して欲しい。

RHEL5 で何となく yum install nkf やってみたら来た!

パッケージ名が nkf-2.07-1.1.fc6 ですとw Fedora Core 6 のなんだw

tail -f logfile | nkf -Seu

これでログ垂れ流しでチェキるのもスイスイです。


2008-12-13

_ [Software] はてブとdeliciousにクロスポスト

はてブのブックマークレットでブックマークした操作に反応してdeliciousにもポストしてくれる Greasemonkey Script があります。

Cross Post Hatena (+ del.icio.us) for Greasemonkey

ところがはてブがリニュってから使えなくなってしまいました。

リニュったはてブ対応に書き換えてみました。2カ所だけです。

フォーム名が変わったのと、title の扱いが変わったところです。

もっとうまい書き方があるのかもだけど、とりあえず自分はコレで満足。

14c14
<		var form = document.getElementById("edit_form");
---
>		var form = document.getElementById("bookmarklet-form");
40a41,45
>
>			if (!input["title"]) {
>				input["title"]  = encodeURIComponent(document.getElementsByClassName('title')[0].firstChild.nodeValue);
>			}
>


2008-12-14

_ [オンガク] 矢野顕子 さとがえるコンサート

毎年の年末は矢野顕子さとがえるです。

いつも思うのですが、矢野顕子は歌を歌うというよりも声を演奏するというふうに感じます。

「ラーメン食べたい」がめっちゃかっこよかったのでした。

ドラムの人は、ずっとスティックじゃなくて、マレットやブラシを使ってて、アタックのないわりと控えめの音でした。

ベースの人も、ずっと丸くてエッジのない控えめな音色でした。

なのに。

「ラーメン食べたい」だけは普通のスティックで激しく、山下洋輔の本に出てくる戦いのようなセッションですっげえかっこいいの。

いやあ、いいものみせてもらいました。

矢野顕子のコンサートは、いつも思うんだけど、説明が難しいジャンルだなあと。


2008-12-15

_ [Software][Notes] LotusScript で Trigram の Compare

先日の日記に書いた String::Trigram の件、これに含まれてる Compare が、俺にはたいそう便利で。

LotusScript 内で使いたくなったので書いてみた。

ngramCompare(n As Integer, Str1 As String, Str2 As String)

n : 数値。n-gram の n。とりあえず 3 でいいんじゃね?

Str1 : 比較文字列1

Str2 : 比較文字列2

Str1 と Str2 を n-gram で比較して、類似度を 0〜1 の間で返します。

Sub Initialize
	
	Dim Str1 As String
	Dim Str2 As String
	Dim n    As Integer
	
	n    = 3
	Str1 = "kangaroo"
	Str2 = "kanagaroo"
	
	Print ngramCompare(n,Str1,Str2)*100
	'61.53846....
End Sub
 
Function ngramCompare (n As Integer, Str1 As String, Str2 As String)
	
	Dim Str1len As Integer
	Dim Str2len As Integer
	Dim i,j,k   As Integer
	Dim acount  As Integer
	Dim hcount  As Integer
	
	Dim Str1c   As String
	Dim Str2c   As String
	
	Dim Str1tmp As String
	Dim Str2tmp As String
	
	Str1c = Strconv(Str1,(1+4+32+512))
	Str2c = Strconv(Str2,(1+4+32+512))
	
	For k=1 To n-1
		Str1c = "_" & Str1c & "_"
		Str2c = "_" & Str2c & "_"
	Next
	
	Str1len = Len(Str1c)
	Str2len = Len(Str2c)
	
	acount=0
	hcount=0
	
	For i = 1 To (Str1len-n+1) 
		Str1tmp = Mid(Str1c,i,n)
		
		For j = 1 To (Str2len-n+1) 
			Str2tmp = Mid(Str2c,j,n)
			If Str1tmp = Str2tmp Then
				hcount = hcount + 1
			End If
		Next
		
	Next
	
	acount = ((Str1len-n+1) + (Str2len-n+1)) - hcount
	
	ngramCompare = hcount / acount 
	
End Function


2008-12-16

_ [Software] cygwin 上で MeCab をビルドするとき

cygwin で mecab を build するメモ

 1. src/common.h の修正

ココにあるように、 src/common.h を少々書き換える

 2.iconvライブラリ明示指定

./configure LDFLAGS="-liconv"

これで make したげればおk。


2008-12-17

_ [オンガク] 中島みゆき 夜会 vol.15

中島みゆき「夜会 vol.15」 〜夜物語〜「元祖・今晩屋」を観てきました。

すごい勢いでチケット売り切れるだけあって、すごい迫力に圧倒されました。

ミュージカルとコンサートの間くらいの感じ。実験的な要素もあり。

正直ストーリーはよくわかりませんでした。

どうやら、激しく予習が必要なステージだった模様。

森鴎外の山椒大夫を学習した上で、パンフも読んでからじゃねえとワカンネってっ感じ。

でもびっくりしたり悲しい気持ちになったり、訴えかけてくる迫力はすごかったです。

せっかくだから、シロートさんにも優しい、もうちっとわかりやすいお話にして欲しかったなあ。


2008-12-18

_ [Hardware] HDDレコーダにHDMI入力とかD3/D4入力とか無いのな!

RD-X8 買って繋いで愕然としました。

HDMI入力とかD3/D4入力とか無いのな!

HD映像は放送波以外からは録画させてやらないもんね!HD映像は俺らのコントロール下じゃないとユルサンけんね!庶民はSD映像見とけよwというハートがビシビシ伝わってきてがっかりします。

こんなにそれぞれの機器の性能が上がってるのに、あちらさんの大人の事情で入力端子がついてない。

まあ、事前に調べておけという話なんですけども。

ケーブルテレビのチューナーからの信号は、今までどおりS端子接続だけかよ。しょっぺえな!

パナのCATVチューナーからの映像をきれいに録画したかったらDIGA買うしかないわけね。同メーカじゃないと縛れないもんね。

あ、もしかしたらiLinkいけるかな?ダメだろうなあ。あとで試そう。


2008-12-19

_ [Software][Notes] LotusScript で正規表現

Domino なアプリを書いてるとき、入力値チェックなんかの時に LotusScript 内で正規表現が使えたら便利なのになあ、と思っておりました。

そして検索してみたら。

LS2J : LotusScript でJavaのクラスを呼び出してみる - Notes サポートのつぶやき

中の人がとてもステキな記事を。

だかしかーし!

パッケージ java.util.regex が追加されたのは java 1.4 から。

俺がメインで使ってる Notes 6.5 の jvm は 1.3 なのだった。

なのでこのワザは使えないっすorz

もうちっと検索すると、コレ。

Sandbox - Regular Expressions in LotusScript

LotusScript のなかから、Windows の VBScript RegExp object を呼び出す方法。

クライアントが Windows 固定なら、コレで良いよねー。


2008-12-20

_ [Software] ThinkPad ワイヤレスLAN ドライバの謎

ThinkPad X60 に Windows XP な機械がある。これのワイヤレスLANドライバが、俺の環境では常にあやしい。

たとえば今日時点での最新版。リリース日 2008/10/24 の Ver.7.4.2.134 。

Lenovo ThinkPad ワイヤレスLAN (802.11a/b/g MIMO対応)(Windows XP/XP Tablet PC Edition 2005/2000) - Japan

コレを入れると、まるで帯域制御されてるかのごとく低速になる!LAN的には、電波強度も強く、54Mbpsでリンクしてるんですけど、通信速度も 800Kbpsからのびない。しかもとても応答速度が遅い。レイテンシいっぱい。すなわち反応が悪い。

Webサイト見てても、一つリンククリックしてもなかなか反応がない。なんじゃこれ?

同日リリースのVista用ドライバは、バージョンが違う。Ver.7.6.0.96f 。

Lenovo ThinkPad ワイヤレスLAN (802.11a/b/g MIMO対応)(Windows Vista) - Japan

コレを入れてみた。Vista 用と書いてあるけども XP にも入る。

そしたら劇的な変化が。変化が、っていうか、変に押さえつけられたような引っかかり感も一切無くサクサク動きます。データもばんばん流れてきます。15Mbpsくらい出てます。19倍かよw


2008-12-21

_ [いろいろ] ドライヤーを買う

ペルチェユニット搭載マイナスイオンドライヤー HD-N7700 : 日立の家電品

ナノサイズのマイナスイオンが出るんですって!

よくわかんないですけど。

ドライヤー売り場をみると、マイナスイオン発生は基本機能のようですな。それにプラスして、ナノサイズのマイナスイオンとなるとお値段がグンと跳ね上がる模様。

パッケージには、ドライヤーの吹き出し口から何かが出ているイメージ図が書いてあります。

そして「ナノサイズの新イオンは目に見えません」との注意書きが。

見えなけりゃあどうとでも言えるわなあ。

面白そうなので買いました。


2008-12-22

_ [いろいろ] HARIBO のグミ

我が家ではいま HARIBO のグミ がヒット中です。

なかなか堅めの食感で、喰いまくりな感じです。


2008-12-23

_ [オコサマ] 自転車迷い中

オコサマが自転車をほしがり。親としてもそろそろ与えても良いかなと思い。

調べてんだけど、ワカンネー。

まず基本路線として、妙なキャラモノは避けたいところです。

年齢的に18インチが欲しいので、一番商品層が厚い16インチを避けるとあんまり残りません。

アンサンブル・ジュニア Panasonic

エコキッズファイン ブリヂストンサイクル

a.n.design and-style.com

16インチだったら無印のが良いなあと思ったんだけど。

無印良品ネットストア[16型自転車アイボリー]

まあ、もうちっと色々調べてみますわ。

子供自転車を色々見て回りましたけど、後輪ブレーキはみんなドラムブレーキなんですね。そりゃオモチャみたいな自転車だからコレで十分なんでしょうね。キイキイうるさそう。

でもオトナのように速度も出ないし力もないし、そんなに鳴らないかな。


2008-12-24

_ [Software] libwww-perl-5.822 で LWP::Debug が無くなったの?

libwww-perl-5.822 にて。デバッグ情報を見ようと LWP::Debug qw(+) などと書いてみたけど無反応。

あれれ?と思って Debug.pm 見たら、中身空っぽ。

このバージョンから無くなったの?

仕方なくひとつ古いのにしました。

CPAN より install GAAS/libwww-perl-5.821.tar.gz


2008-12-25

_ [Software] URI::Encode の動きがワカラン?

WWW::Mechanize 1.52 を使っていて、フォームに値を入れてPOSTするコードを書いています。

文字コードは UTF-8 BOM無し で、意味もわからず use utf8; としています。

サーバに送りたい文字列はShiftJISです。 試してみたコードは以下の通り。urlとフィールド名はとりあえず架空ので。

#!/usr/bin/perl
use warnings;
use strict;
use utf8;
use WWW::Mechanize;
use Encode;
 
my $mech      = WWW::Mechanize->new(autocheck=>0);
my $targetUrl = 'http://www.example.com/';
my $fieldName = 'name';
my $fieldData = 'あいうえお';
 
$mech->get($targetUrl);
$mech->set_fields($fieldName=>Encode::encode('shiftjis',$fieldData));
$mech->click();

変なところ?

これでPOSTされたデータを眺めると、URLエンコード結果がオカシイんです。ShiftJISの'あいうえお'ですので、

before=%82%A0%82%A2%82%A4%82%A6%82%A8

となって欲しいんですけど、

before=%C2%82%C2%A0%C2%82%C2%A2%C2%82%C2%A4%C2%82%C2%A6%C2%82%C2%A8

となってしまいます。%C2 が1バイトごとに頭に付いています。なんじゃこれ?

WWW::Mechanize が悪いのか LWP が悪いのかわからないので、LWP だけでPOSTするコードを書いてみました。

#!/usr/bin/perl
use warnings;
use strict;
use utf8;
use LWP;
use Encode;
 
my $ua = LWP::UserAgent->new;
my $targetUrl = 'http://www.example.com/';
my $fieldName = 'name';
my $fieldData = 'あいうえお';
 
$ua->post( $targetUrl, [$fieldName=>Encode::encode('shiftjis',$fieldData)]);

問題ない? 問題なくURLエンコードされています。じゃあ WWW::Mechanize が悪いのでしょうか。

双方の動きを追ってみたかったのですが、こちとら perl は素人でサッパリです。

perl -d filename.pl

で眺めてみたところ、URI の _query.pm 内での振る舞いが違うようです。

双方のコード共に、_query.pm を通るのですが、WWW::Mechanize を使用したモノは、なぜか utf8 処理用のコードを通過してるように見えます。ShiftJISなのに!

URI-1.37 の ChangeLog を見ると、1.36 から utf8 周りをいじってるようなので、変更される前のバージョンに戻してみました。

install GAAS/URI-1.35.tar.gz

これでOK。

しかし、同じバイト列(だと思う)が、同じコードを通ってるように見えるのに動作が違うのは何なのでしょう。追うの面倒なのでこれでオシマイ。

■追記:いちげん氏にいただいたコメント

こんにちは。

私も同じ問題でハマったので、コメントさせていただきます。

まずこれの直接の原因はURI/Escape.pmの

return join '', @URI::Escape::escapes{$_[0] =~ /(\C)/g};

という行にあるみたいです。

\Cっていうのが悪さをするようで、UTF-8フラグが立った文字列を食わせるとバイトごとに%C2にマッチしてしまうんですね。

ってことはUTF-8フラグを落とせば良いんですが、そもそもどこで立ったのか、WWW::Mechanize、HTML::Formとかが自動的にHTMLページをパースするときに、その「ページ」(※フォームの値ではない!)にUTF-8な文字列が入っていると、あとでリクエストボディを作るときに全体が影響を受けてしまう…、という感じです。

しかも訳のわからないことに、フォームにASCII文字しか入っていなくても、です…。

で、とりあえず回避策は、単にリクエストの直前に片っ端からフォームデータのUTF-8フラグを落とすだけでOKです。

ただこのとき要注意なのは、

●valueメソッドを使うとチェックなどされるので、問答無用で直接プロパティを書き換える

●valueだけじゃなくnameも書き換える

●selectタグとかcheckboxのような選択型の場合、valueを書き換えるとなぜか無効になってしまうので、選択中の選択肢のvalueを書き換える

というようにします。

こんな感じ。

これをリクエスト送信の直前に実行します。

$FORMはフォームオブジェクトに、$CHARSETは文字コードに置き換えてください。

require Encode;
foreach my $input ($FORM->inputs) {
	$input->{name} = Encode::encode($CHARSET, $input->{name});
	if (exists $input->{menu} && exists $input->{current}) {
		$input->{menu}[$input->{current}]{value} = Encode::encode($CHARSET, $input->{menu}[$input->{current}]{value});
	} else {
		$input->{value} = Encode::encode($CHARSET, $input->{value});
	}
}

2008-12-26

_ [オンガク] Bio_100% のゲーム曲がダウンロード出来まくる!

Bio_100%

やべえ!かなりハマったので曲を聴くだけでカラダが動き出すw


2008-12-27

_ [オンガク] TOKYO BOSSA NOVA 〜por-do-sol〜

happiness record のコンピ TOKYO BOSSA NOVA~por-do-sol~

なかなか夕方感あふれるステキなボッサ集です。

シトロバルの「BED」がメロウですてき。


2008-12-28

_ [いろいろ] 誕生日

またひとつ大きくなりました。

目標。健康維持。


2008-12-29

_ [Hardware] あたらしいVAIOのウワサ

「VAIO New Mobile」サイト更新、キーボードをチラ見せ - Engadget Japanese

これ、もしかしてスティックポインタ来ますかね!

C1の再来ですかね!

ドキドキして待ってていいんですかね!

Lenovo涙目ですかね!


2008-12-30

_ [オデカケ] 人が減ってる年末

近所に買い物に出かけてみた。

電車も人が少ないし、街も人が少なめ。

今年は連休が長いから、みんなどっかに出かけちゃってるのかな。

都心残り組はノンビリ過ごせるのでよい感じです。


2008-12-31

_ [いろいろ] 大晦日


正月の準備完了。

後は寝るだけです。

今年は特に何事もなく平穏な一年でした。

来年もよい年でありますように。


2008年
12月
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
Twitter : @moriya_jp