b2evolutionの日本語化

備忘録として。

このブログソフト(b2evolution)のメッセージ日本語化は非常に良くできているのですが、プログラムの方は改善の余地があるようです。少なくとも私の環境では以下の様な問題に気がつきました。

  • 使用する文字エンコーディングをもう少し柔軟に設定可能にする
  • メールで使用される文字エンコーディングがおかしい(何故かUTF-8として送信され、実体はISO-2022-JP)
  • 文字数は数えても仕方ない(スキンから削除するだけ。削除済み)
  • 少なくともRSS1.0の記事の発行時間を調整可能にする(現状GMT。JSTも指定できるようになっていて欲しい)

メール送信の問題くらいは直さないといちいちメールが来る度にエンコーディングを指定しないとならないので面倒ですね。簡単に直りそうなので早めに直したい所です。

dc:dateの部分は仕様的(RSS1.0およびW3C Date and Formats)には正しいのですがGMT時間であることを示す”Z”を処理できないRSS処理系があるようです。(困っているのはmixi.jpの日記RSS)

2004-10-03T23:58:18Z

の様にb2evolutionは正しく送っていてもJSTを前提に処理してしまうサイトがあるのでこちらで対処する方が早いと言うだけです。本来は仕様にしたがっていないサイトを修正してもらうべきですが…

[追加]
もう少し詳しく書くとRDF Site Summary 1.0 Modules: Dublin Coreのdc:dateは

* <dc:date> ( #PCDATA ) [W3CDTF]

となっておりW3CDTFで次のように定義されています。

The formats are as follows. Exactly the components shown here must be present, with exactly this punctuation. Note that the “T” appears literally in the string, to indicate the beginning of the time element, as specified in ISO 8601.

Year:
YYYY (eg 1997)
Year and month:
YYYY-MM (eg 1997-07)
Complete date:
YYYY-MM-DD (eg 1997-07-16)
Complete date plus hours and minutes:
YYYY-MM-DDThh:mmTZD (eg 1997-07-16T19:20+01:00)
Complete date plus hours, minutes and seconds:
YYYY-MM-DDThh:mm:ssTZD (eg 1997-07-16T19:20:30+01:00)
Complete date plus hours, minutes, seconds and a decimal fraction of a
second
YYYY-MM-DDThh:mm:ss.sTZD (eg 1997-07-16T19:20:30.45+01:00)

where:

YYYY = four-digit year
MM = two-digit month (01=January, etc.)
DD = two-digit day of month (01 through 31)
hh = two digits of hour (00 through 23) (am/pm NOT allowed)
mm = two digits of minute (00 through 59)
ss = two digits of second (00 through 59)
s = one or more digits representing a decimal fraction of a second
TZD = time zone designator (Z or +hh:mm or -hh:mm)

錯覚

たまたま見つけたすごい画像です。静止画ですが錯覚を利用して画像が動いている様に見えます。

http://www.ritsumei.ac.jp/~akitaoka/index-e.html

乗り物酔に弱い方等は気分が悪くなるかも知れないので注意してください。

日本におけるb2evolutionの利用状況

日本ではあまりユーザがいないのではと思っていたb2evolutionですが、b2evolutionをキーワードにググってみる

b2evolution の検索結果のうち 日本語のページ 約 601 件中 1 – 97 件目 (1.10 秒)

という結果に。ま、私はある程度マイナー好きな傾向があるのでよしとしておきます。しらぬまにメジャーになったものも多いですが、LinuxとかPHPとか 🙂

良く使うソフトウェアが知らぬ間にマイナーからメジャーになる、と法則性が当たるとすればPostgreSQL, Momongaがメジャーになっていき、b2evolutionも広く使われる事でしょう。(違う?

カスタマイズ

本当はb2evolutionをカスタマイズしている暇はないのですが、ほんの少しだけカスタマイズしてみました。

このページはb2evolutionのcustomスキンをそのまま使っているのですがXHTML文書としてバリデートできませんでした。理由は簡単、ISO-8859-xな文字がテンプレートの作者名に含まれていたからです。

日本語では単語数を数えても意味が無い(というか日本語の単語数を数えられるようになっていない)ので単語数を削除しました。

どちらも

skin/custom/_main.php

を編集して該当行を削除して今の状態になっています。

b2evolutionのspam排除機能

b2evolutionにはSPAM排除と言う機能があり、これでSPAMを防ぐ機能があります。管理ページの「spam排除」タブに「中央ブラックリストに迷惑行為の更新情報を請求する!」をクリックするとSPAMを行っているサイトのリストとコメントSPAM用(?)のキーワードが増えるようです。便利便利。

リファラスパム

wikiへのアクセスなんだか週末にしては妙に多い、と思ったらリファラスパムが送られて来ているようです。怪しげなサイトがリファラとして残っていました。世の中スパムばかりになって来て嫌になりますよね…

wikiはリファラを表示していないので宣伝やグーグルの検索結果ランクアップには役立たないのですが、送って来る所をみると無差別にスパム送信を業者が始めたようです。

referer spamでググってみると知人もSPAMの影響を受けていますね。そして最近、スパムが急増しているように思えます。リファラを記録し表示するWebアプリは多くあるので対策が面倒です。SPAMメールと同じ用にブラックリスト使えればよいのですが、と思ったところで既にあるかもと思ってググってみても直ぐに見つりませんでした。リファラ、コメント、トラックバックスパム対応のblack list知っている方教えて下さい。

久しぶりにorkut

招待メール送って、と知人に頼まれたので、久しぶりにorkutを見てみたらかなり重いですね。タイムアウトの連続… mixiも遅い時があるらしい(?)ですが私が見ている時間で遅いことは無かったですね。運が良いだけかな?

記事など

本当はとっくに書き終わっているはずの「はじめてのPHP」(技術評論社)より前に、PHPとPostgreSQLムック(Impress)に私が執筆したページが掲載されます。予定通りなら本の執筆はとっくに終わっているハズだったので引き受けたのですが… 技術評論社の関係者の皆様、本当に申し訳ございません…

入試にリスニング

今日のテレビのニュースで大学の入試に英語のリスニングが加わった、と報道していました。リスニング試験の方式になれるための予行演習にとアナウンサーが原稿を読み上げているその時の映像を見て固まってしまいました。そこにはSDカード付き、何やら再生や早送り・巻き戻しが可能らしいプレーヤーにつながっているヘッドフォンを付けているいる高校生がいました。

TOFEL、TOEICのどちらも受けたことがありますが両方ともラジカセクラスのプレーヤーからのスピーカーの音声を聞いて試験をしました。特に問題は感じませんでしたが、だれが一人一人にプレーヤーを付けることにしたのでしょう? もし会場が広くて後ろの席の受験生が不利と言うことであればミニFM局を作ってラジカセで再生した方が低コストなような気がします。アメリカだったらこんな非効率な方式はありえないような気がしますが、どこかの国のリスニング試験がモデルになっているのでしょうか?

b2evolutionに移行します

さすがにPukiWikiの日記はおまけ的なプログラムという事、Wikiと日記を別に管理したいのでblogをe2evolutionに移行します。

採用理由はPHPで記述されたGPLかBSDライセンスのblogアプリケーションをググって最初に見つけたアプリケーションがb2evolutionだったこと、ソースをざっと見てまともそう、と言う印象だったので使ってみることにしました。本当はもっとソースレベルで精査しないとならないのですが、今はその余裕がありません。b2evolutionは残念ながらb2evolutionはMySQLしかサポートしていません。暇があったらソースのチェックを兼ねてPostgreSQLに移植できるとよいのですが、いつになることやら….