古いパッチ

| トラックバック(0)

SqwebMail 3.6.0 Patch

2004/02/10

SqWebMail への patch です。

履歴

2004/02/18
新規: noflowed
2004/02/16
新規: ja_jp-add
2004/02/15
新規: auth_charset
2004/02/14
新規: ldap_utf8
2004/02/10
charsetfix: 足りないファイルを追加。
2004/02/09
公開


sqwebmail-3.6.0-noflowed-1.0.patch
  format=flowed 抑止。

  $sysconfdir/noflowedmsg が存在すれば、既定値では format=flowed を
  使わない。

sqwebmail-3.6.0-ja_jp-add.tar.gz
  3.6.0対応の日本語テンプレート への追加。

  TIMEZONELIST の日訳。
  グローバルアドレス帳関連のテンプレートの日訳。

  o いずれも UTF-8 です。
  o 下記 ldap_utf8 patch への対応を含む。

sqwebmail-3.6.0-auth_charset-1.0.patch
  認証モジュールから渡されるユーザ fullname の文字コード変換。

  1. $sysconfdir/authcharset があれば、そこから文字コードを読む。
  2. なければ、システムロケールで決まる文字コード (下記
    sqwebmail-3.6.0-charsetfix.patch 参照) を認証モジュールが
    返す fullname の文字コードとみなす。
  3. いずれでもなければ、変換なし。

  この変更は本家 CVS に入りましたので、
  3.6.3 以降 (4.0?) では当 patch を適用する必要がなくなります。


sqwebmail-3.6.0-ldap_utf8-1.0.patch
  入力された検索条件を UTF-8 に変換してから検索する。
  中間一致と後方一致のオプションを追加。

  3.6.2 でのバグフィクスを含む。

  この変更は本家 CVS に入りましたので、
  3.6.3 以降 (4.0?) では当 patch を適用する必要がなくなります。


sqwebmail-3.6.0-charsetfix.patch

  [注意] 巨大です (gzip 圧縮 485 KB)。

これで、
o テンプレートの日付表記に "%Y年%B%d日" などと書けます。
o CHARSET に shift_jis などもつかえます (たぶん)。
o 中文やハングルのメッセージも (キャラクタセットとフォントの対応す
  る範囲で) 読めます。


変更点
======

以下の変更は本家 CVS に入りましたので、
3.6.3 以降 (4.0?) は上記の patch を適用しなくても有効になります。

o 日本語と中文の Unicode 変換モジュールをかなり根本的に書き直し。
  ほぼ使用にたえるようになった。
o コリアンの Unicode 変換モジュールを追加。
o ロケールのエンコーディングと HTTP コンテンツのエンコーディングの
  間での相互変換。
  LOCALE のエンコーディングが日本語 EUC などであっても、
  日付表示に日本語が使えるようになった。

o 本家の ISO-8859-7、UTF-7(IMAP) の修正を含む。


使いかた
========

1. sqwebmail-3.6.0-charsetfix.patch を当てる。

2. 以下を実行する (configure.in などを書き換えているので):
  $ cd ソースのルート/unicode
  $ aclocal
  $ autoheader
  $ automake --add-missing --foreign --copy
  $ autoconf
  $ cd ソースのルート/sqwebmail
  $ aclocal
  $ autoheader
  $ automake --add-missing --foreign --copy
  $ autoconf

  * ARG_GNU_SOURCE が定義されていないというエラーがでる場合があり
    ますが、無視していいみたいです。

3. configure、make、make install する。

4. LOCALE ファイルと CHARSET ファイルの内容を、望みのものにする。
  テンプレートのキャラクタセットは CHARSET ファイルの指定に合わ
  せる。


注意
====

* システムロケールのエンコーディングを検出するのに、
  nl_langinfo(CODESET) または libcharset の locale_charset() を使
  います。

* configure オプションに --enable-unicode は必須です。

o 環境依存の注意点など:

  FreeBSD 4.x/5.x:
    nl_langinfo(CODESET) は MIME preferred name
    を返さないので、libcharset を使う必要がある。

    なお、libcharset は ports の converters/libiconv に含まれている。
    が、ports version が 1.9.1_3 よりも前の libiconv では日本語の
    エンコーディングを正しく検出できない。

    o libiconv が古い場合はアップデートする。
    o configure オプションに --with-libcharset=yes を追加する。
    o ports を作成する場合は LIB_DEPENDS に
        charset.1:${PORTSDIR}/converters/libiconv
      を追加する。

トラックバック(0)

トラックバックURL: http://hatuka.nezumi.nu/cgi-bin/mt/mt-tb.cgi/6

このブログ記事について

このページは、Hatuka*nezumiが2004年2月23日 15:34に書いたブログ記事です。

ひとつ前のブログ記事は「charset 情報のない日本語メッセージの前処理」です。

次のブログ記事は「unicodedata.normalize()」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。