[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: SUBDIR in Makefile



In message <200603281443.XAA18508@shell.rim.or.jp> I wrote:
> 今度は nkf がなくて htdocs/ja 以下の make ができんと言われました。
> 
> 以前 mirrors/index.html で iconv を使ってしまったので、
> 今回も安易に案 2 でどうかと思っているのですが、どうでしょうか。

> 案 2:
>   list2html.pl を nkf でなく iconv を使うように変更する

nkf を使っていたところを iconv を使うように変更したわけですが、

  http://www.jp.NetBSD.org/ja/JP/ml/www-changes-ja/200603/msg00176.html
  http://www.jp.NetBSD.org/ja/JP/ml/www-changes-ja/200603/msg00178.html
  http://mail-index.NetBSD.org/www-changes/2006/03/29/0002.html

今度は、
ru/list2html.pl では PerlIO で変換をしているので
ja もそのようにせよといわれております。

  http://cvsweb.NetBSD.org/bsdweb.cgi/htdocs/ru/list2html.pl#rev1.17

EUC-JP と ISO-2022-JP との間の変換は、
nkf -Ej や nkf -Je と同じ結果になりますので、
気持ち悪いですが、実用上の問題はないのではないかと思います。

水曜日までに異議がなければ、
gallery/in-Action 以下なども含めてそのようにします。

--- list2html.pl.orig	2006-03-29 21:08:36.000000000 +0900
+++ list2html.pl	2006-04-04 22:09:43.000000000 +0900
@@ -52,6 +52,10 @@
 #
 
 use strict;
+
+use open IN=>':encoding(iso-2022-jp)', OUT=>':encoding(iso-2022-jp)';
+use encoding "euc-jp";
+
 use File::Basename;
 use Getopt::Std;
 # use Text::Wrap;
@@ -351,7 +355,7 @@
 
     $data = $date_month = '';
     $entry_num = $date_num = $date_num_used = 0;
-    open(FILE, "iconv -f iso-2022-jp -t euc-jp $infile|") || die("Unable to open '$infile': $!");
+    open(FILE, $infile) || die("Unable to open '$infile': $!");
     foreach( <FILE> )
 	{
 	foreach $rcstag (%rcsmap)
@@ -584,7 +588,7 @@
     if ($data !~ s/(<head[^>]*>)/$1$_/i)
 	{ &fail("Unable to locate <head> tag"); }
 
-    open(FILE, "|iconv -f euc-jp -t iso-2022-jp >$outfile") || die("Unable to write '$outfile': $!");
+    open(FILE, ">$outfile") || die("Unable to write '$outfile': $!");
     print FILE &extras_process($data, %extras);
     close(FILE);
     if ($date_num) {