hns - 日記自動生成システム - Version 2.19.9

先月 2003年04月 来月
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
Namazu for hns による簡易全文検索
詳しくは 詳細指定/ヘルプを参照して下さい
検索式:

2003年04月26日() 旧暦 [n年日記]

#1 [hns] きのうは一年前の日記に反応していた

(がそれはいいとしよう)

#2 [pkgsrc] MHonArc-2.6.3

きのうは pkgsrc/mhonarc を 2.6.3 にしてくれ なんて書いてしまったが、使って見ると、 いろいろあり そう。とりあえずは、

iso-2022-jp:

<CharsetConverters>
iso-2022-jp; iso_2022_jp::str2html; iso2022jp.pl
</CharsetConverters>
なんて書いておけばいい訳だが、これだと、多分、内部では iso-2022-jp のまま扱って いて、 < > & 等を変換するだけで、他は、 横流しするだけではあるが、問題ない。
ところが .mhonarc.mrc に、 日本語の題名を入れたり、 日本語のボタンを定義 したいとする。 これは iso-2022-jp では書けないので、 EUC-JAPAN で書く (←化けているのは中身が EUC なのに jis として送っているから。手動で euc-japan に設定すれば見えるはず)。 すると、 出力は、それらがそのまま混ってしまって、両方は同時には読めず、 化ける。
化けて欲しくない場合は、

MHonArc::CharEnt::str2sgml:

<CharsetConverters>
ISO-2022-JP; MHonArc::CharEnt::str2sgml; MHonArc/CharEnt.pm
US-ASCII;    MHonArc::CharEnt::str2sgml; MHonArc/CharEnt.pm
</CharsetConverters>
とする方法があるが、これだと、msg00001.html 等を Namazu で処理するには問題がある。

.mhonarc.mrc に設定した内容:

はあちこちで、
s/$VarExp/&replace_li_var($1,$a[0])/geo;
のようにして、lib/mhonarc/mhrcvars.pl の中の
79 ##      replace_li_var() is used to substitute vars to current
80 ##      values.  This routine relies on some variables being set by the
81 ##      calling routine or as globals.
82 ##
83 sub replace_li_var {
84     my($val, $index) = ($_[0], $_[1]);
を呼んで 置換されるので、その時に、とも思うが、多分 Perl 的には ISO-2022-JP が生の時に $ 等があるとうまく行かない (はず)。... これで実は半分解決(後述)

mhfile.pl の:

165 sub file_temp {
166     my $template = shift;
167     my $dir      = shift || $CURDIR;
168     my($handle, $tmpfile);
の付近に euc -> iso-2022-jp 変換を入れてしまうということも一応思い着いたが...

添付書類を処理するとして:

charset= はいろいろ可能性がある。 もしそれを inline で表示しようとすると 閲覧系の一画面に、 いくつもの charset が入ることもある。 それを変換もせずに元のままのコードで表示しようとするのは ?
inline の時には内部コード(EUC) にして、出力は ISO-2022-JP とするのがいい ?

大前提として Namazu を使うから UTF は無:

$CBRcVarExpand って使えそう ?:

$CBRcVarExpand = undef
$mhonarc::CBxxx
の類いは API で、他の Perl から MHonArc の内を呼ぶ時のものらしい。

mhrcvars に Jcode.pm:

を入れると、一部分解決する。
mhonarc の画面を構成する要素は三種類
  1. 変数の内容 (主として EUC)
  2. 題名 (Subject:) ... 変数の内容ではあるが、変換しなければ JIS
  3. メールの本文 ( 変換しなければ ISO-2022-JP, つまり JIS)
そうして、表示する画面表示内容としては二種類
  • 日付順・話題別 索引 (上記 1 2 が出現する)
  • メール (同じく上記 1 2 3)
そこで、 mhvars.pl に Jcode::convert を入れる と、1 2 のコードが揃うので、一つ目の 索引 の方は
(AddType text/html; charset=hoge html の内容にもよるが)
一応読めるようになる。

iso2022jp.plの方も大胆に変更:

して見ると、これで行けるような気がする。



最近の日記
2024年05月08日
comparison on ./buildsh tools
2024年05月06日
py-setuptools (python 3.11.9)
make release took 1 hours and 10 min
qemu invocation for 10.99.10
2024年05月05日
Windows 10 version
serial connection
bc bench
2024年05月04日
Trial on 10.99.10
another version (later trial) to succeed
2024年04月29日
dkim
以上、1 日分です。
タイトル一覧
カテゴリ分類
Powered by hns-2.19.9, HyperNikkiSystem Project

Count.cgi (since 2000/02/05)