Namazu-devel-ja(旧)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: 全角半角変換
- From: Dan Kogai <dankogai@xxxxxxxxx>
- Date: Wed, 4 Jun 2003 22:54:16 +0900
- X-ml-name: namazu-devel-ja
- X-mail-count: 02945
On Wednesday, June 4, 2003, at 09:46 PM, Tadamasa Teranishi wrote:
> まだ、Perl 5.8 に環境を限定することはできないだろうというのが、
> 悩ましいところです。
そのへんは、環境変数 $] をチェックして、これが 5.008 以上なら 5.8 feature
を有効にするという方法で回避することに当然なるでしょうね。
> こちらは Perl 5.8 に限定されたのでしょうか。それとも、それ以前の
> バージョンでも動作するように作られているのでしょうか。
当然 5.8 以前のものとも互換です(下位互換性のcheckは、FreeBSD-4-STABLEの/usr/bin/perl、すなわち
5.00503 で行っております)。これは Text::Kakasi のメンテを引き継ぐ以上、当然ですから。
> それ以前のバージョンでも作られているのなら、是非ともそのルーチン
> を持ってきたいですね。様々な漢字コード変換ツールを使うのは、
> それだけでトラブルの元ですから。
参考までに、こんな感じでやってます。
> $HAS_ENCODE = load_encode();
>
> sub load_encode{
> $INC{Encode} and return 1;
> if ($] >= 5.008){
> eval { require Encode };
> $@ and return 0;
> eval {
> Encode->import(qw/find_encoding from_to _utf8_on
> _utf8_off/)
> };
> return $@ ? 0 : 1;
> }else{
> return 0;
> }
> }
あとは $HAS_ENCODE に従って、処理を切り分けています。
> なお、現状では様々な漢字コード変換ツールを使っているので、
> Perl5.8 の環境では Encode に集約したいとは、個人的に以前から
> 思っています。
ありがとうございます。
>> これを利用すれば、NamazuのindexそのものをUTF-8で作るということも
>> 可能なはずで、暇があれば取り組んでみたいのですがちょっと手いっ
>> ぱいで....
>
> mknmz, namazu 共に内部コードは EUC コードと仮定してコーティング
> されている部分が沢山ありますので、書き直すのは結構大変かと思います。
> ただ、将来的には内部コードを Unicode 等にした方がいいだろうと
> 思っています。
あと、indexもUTF-8にすると、複数コードの混じったweb siteの一括検索も可能になります。文字コードごとに indexer
だけ切り替えて....
Dan the Man with Too Many Projects to Proceed