三色アイスクリームのこと。
先日の席で話題にのぼって、 私はあれを勝手に「ナポレオン」と思い込んでいて、 別の日本人は「ナポリタン」と言っていてたら、 唯一の native speaker が「ネオポリタン」だよと言って、 「ははは、みんな勘違いしてたんじゃん」とか「パスタじゃないんだから」とか 言いたい放題のことを言っていた。(ある人などは、お腹をよじらせて笑い転げていた。)
気になったので調べてみたら、あれま、意味的には「ナポリタン」が正解でした。 cf. wikipedia: Neapolitan ice cream.
文字はきちんと見てから発音しましょうね。 とは言え、私はもともと「こうよう」というラーメン屋の看板を なんの迷いもなく「ようこそ」と読んでいた人間だからな (cf. 10/9/2000)。
norah jones の debut CD の参加ミュージシャンを改めてみると……。
いや、そうそうたる面子であった。
というのは、最近気になっている(と言っても私時間の話なので年のオーダーだけど) sam yahel について調べてみたら、件の CD もリストに出てきて、びっくりした、ということ。 それから brian blade もその半分で叩いていた。 (ちなみに、私にとってドラムは全然理解不能な楽器(の1つ)で、 誰が叩いているかとか、誰がいいとか、全然分からない。)
ちなみに(その2)、 brian blade と言えば、 先日借りた一連の CD の中では 抜群に総当たりであった。
ちなみに(その3)、本題と関係ないけど、 試しにエントリーの名前のハイフンを _ にしてみた (cf. 7/8/2008)。 うむ、確かに動いている模様。スペースの代用という意味ではいいけれど、 しかしハイフンをハイフンとして使いたい時ってあるよね?うーむ。
付記(その3、大団円): 全置換しました。
はてなの名前付きタグの件。
日々 文句を書いているうちに、とうとう頭にきて、 不本意ながら quick and dirty な perl script を書いて、 既存の日記約10年分のハイフンを使った name tag をアンダースコアに変更した。 (ところで一体、何が不本意なんだろう -- はてなが対応せずに、 自分がしてしまったことに、なんだろうけれど、 そんな下らないことに意地を張らなくてもいいのにと、我ながら思う。)
どんなに quick で dirty なコードか知りたい人もいるかな、と思うので、 みんなの目を汚してしまおう:#!/usr/bin/perl use Jcode; sub adj_pics ($); sub usage ; sub execute ($); $cmd_mv = "/bin/mv"; $cmd_rm = "/bin/rm"; $cmd_nkf = "/usr/local/bin/nkf"; $output = "index.html"; $tmpfile = "tmp.html"; @argv = @ARGV; foreach $i (@argv) { adj_pics($i); } exit 0; ## sub routines sub execute ($) { my $c = shift; print STDERR "$c\n"; system($c) == 0 or die "failed: $c"; 1; } # adj pics sub adj_pics ($) { my ($html) = @_; open(HTMLFILE, "< $html") or die "Cannot open $html"; open(NEWHTMLFILE, "> $tmpfile") or die "Cannot open $tmpfile"; while (<HTMLFILE>) { # convert input-line into utf8 Jcode::convert ( \$_, "utf8"); $line = $_; if (/<a id="d\d{1,2}-(.*)" name="d\d{1,2}-(.*)">/) { $old = $1; if ($old =~ /-/) { $new = $old; $new =~ s/-/_/g; $line =~ s/$old/$new/g; } } elsif (/<a href="#d\d{1,2}-(.*)">/) { $old = $1; if ($old =~ /-/) { $new = $old; $new =~ s/-/_/g; $line =~ s/$old/$new/g; } } elsif (/<a href="diary\d{4}_\d{2}.shtml#d\d{1,2}-(.*)">/) { $old = $1; if ($old =~ /-/) { $new = $old; $new =~ s/-/_/g; $line =~ s/$old/$new/g; } } print NEWHTMLFILE $line; } close NEWHTMLFILE; close HTMLFILE; execute ("$cmd_nkf -j $tmpfile > $output"); execute ("$cmd_rm $tmpfile"); execute ("$cmd_mv $output $html"); 1; }
※「<||」「||>」は必ず行頭になるよう記述してください。
とかって何が「スーパー」なんだろうな…… local rule は嫌いだ(って、文句言い過ぎ?))
使い方は、元データ(つまり infoseek の日記に使っている HTML)を食わせるだけ。 複数のファイルを同時に与えても良いので、 backup をとった後でperl html-mod-hatena.pl *.shtml
一発で終わり。
どの辺りが手抜きかという解説は、明らかに蛇足だけど一応しておくと、 漢字コードを perl 処理の前に Jcode で utf-8 にしておいて、 できた結果は nkf で jis にもどしてたり、 HTML はきちんと parse などせずに目標のタグの決め打ちだし、 一行に2つのエントリーが発生した時はうまく処理できない (そういうケースはほとんどなかったけど、一ヶ所だけあって、本文に手を入れた。 と言っても、 HTML で書いている当該の行を改行しただけだけど) などなど。まあ一回切りの使い捨てコードなので、文句はなし、と。
蛇足ついでに、当の script の来歴を言っておくと、 つまりこれは私がすべて scratch から書いたものではなくて、 大本は、遥か昔の ほそかわたつみさんの 絵日記を吐く script をベースにした自分の script で、 HTML 絡みの quick-and-dirty な処理が必要になる度に そいつから切り出して、手を入れて、と繰り返してきたもの。 故に adj_pics などという subroutine name になっているのです (とは言え、ほとんど原形はとどめていないとは思うけれど)。
付記(7/13/2008): blosxom でも escape してない pre でひどいことになっていた。 ということで diary2blosxom.pl で pre の時に escape するようにした (そう、これまではしていなかったのです)。 diary2hw.pl の方は、スーパーpre記法を噛ましているので、 むしろ escape しない方がいいのかな、と思って放置。 それから、上の matching が greedy なので問題を起こす場合があった。 これ、いつも悩まされるポイントだな。多分、正規表現のd\d{1,2}-(.*) をd\d{1,2}-(.*?) にすればよかったのだろう。 あと、1行に2つの置換が必要な奴は、 何も考えずに script に二回食わせてもよかった。 ついでに diary2blosxom.pl と diary2hw.pl もスーパーpre記法でさらしておく。