[Mew-dist 06718] pick & virtual-mode

Murata Takashi Takashi.Murata at example.com
1998年 10月 20日 (火) 12:14:53 JST


  村田@NSGです。久しぶりのポストです。

  以前から、?(pick) や V(virtual mode)で subject= に日本語が使えなくて
悲しかったのですが、"ABC漢字" のようにASCIIでも日本語とつながっていると、
"ABC"も含めてMIME encodeされてしまい、subject=ABC でも掛からなくなって
さらに悲しくなってしまいます。

  なんとかならないかな〜と、以下のような修正をしました(IM-102への修正)。
ついでにsubjectなどヘッダへの日本語パターンも出来るようにしました。Perl
知らずで修正していますので適当なのですが、とりあえず動作しています。
  ただ、subject=ABC漢字 のようなパターンだとダメのようで、まあそのときは
subject=ABC & subject=漢字 ってやればいいか、と諦めています。

┌───────────── 村田 隆 / Takashi.Murata at example.com ┐
└ 日本システム技術(株) 技術部  Tel:03-3503-8736  Fax:03-3580-7806 ┘

*** IM/Grep.pm~	Mon Oct 19 21:49:59 1998
--- IM/Grep.pm	Tue Oct 20 11:31:55 1998
***************
*** 18,23 ****
--- 18,24 ----
  use IM::Util;
  use IM::Folder qw(message_range);
  use IM::Japanese;
+ use IM::EncDec;
  use integer;
  use strict;
  use vars qw(@ISA @EXPORT);
***************
*** 119,124 ****
--- 120,126 ----
  	close(MES);
  
  	$head =~ s/\n\s+/ /g; # fix continuation lines
+ 	$head = mime_decode_string($head);
  	if (eval $eval_string) {
  	    push(@messages, $m);
  	}
***************
*** 298,305 ****
  	     $field =~ s/([@\/])/\\$1/g;
  	     $pattern =~ s/([@\/])/\\$1/g;
  		 
  	     if ($field eq 'body') {
! 		 $pattern = make_japanese_pattern($pattern);
  		 $string = "\$$field =~ /$pattern/om$case_flag";
  	     } elsif ($field =~ /^(all|head)$/) {
  		 $string = "\$$field =~ /$pattern/om$case_flag";
--- 300,308 ----
  	     $field =~ s/([@\/])/\\$1/g;
  	     $pattern =~ s/([@\/])/\\$1/g;
  		 
+ 	     $pattern = make_japanese_pattern($pattern);
  	     if ($field eq 'body') {
! #		 $pattern = make_japanese_pattern($pattern);
  		 $string = "\$$field =~ /$pattern/om$case_flag";
  	     } elsif ($field =~ /^(all|head)$/) {
  		 $string = "\$$field =~ /$pattern/om$case_flag";



Mew-dist メーリングリストの案内