namazu-ml(avocado)


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

Re: Namazu v1.1.2.2 released



古川です。

>> On Fri, 8 May 1998 14:50:47 +0900, Satoru Takabayashi <ccsatoru@xxxxxxxxxxxxxxxxxx> said:
  > 	* 送り仮名の削除をするオプション -G をmknmz に追加
  > 	  (古川@ヤマハさんのコードを元にしています Thanks!)
  > 	* 両端の記号を削除をするオプション -E を mknmz に追加
  > 	  (古川@ヤマハさんのコードを元にしています Thanks!)

これなんですが、次のようにしていただけないでしょうか。

------------------------------ ここから ------------------------------
*** mknmz.pl.orig       Fri May  8 19:13:47 1998
--- mknmz.pl      Fri May  8 21:22:47 1998
***************
*** 1805,1810 ****
            $tmp[$ndx] = ' ' . $tmp[$ndx];
            if ($OkuriganaOpt) {
!               $tmp[$ndx] =~ s/([^\xa4][\xa1-\xfe])+(\xa4[\xa1-\xf3])+ /$1 /g;
!           } elsif ($HiraganaOpt) {
                $tmp[$ndx] =~ s/ (\xa4[\xa1-\xf3])+ //g;
            }
--- 1805,1811 ----
            $tmp[$ndx] = ' ' . $tmp[$ndx];
            if ($OkuriganaOpt) {
!               $tmp[$ndx] =~ s/([^\xa4][\xa1-\xfe])(\xa4[\xa1-\xf3])+ /$1 /g;
!           }
!             if ($HiraganaOpt) {
                $tmp[$ndx] =~ s/ (\xa4[\xa1-\xf3])+ //g;
            }
***************
*** 1839,1847 ****
      @words_ = ();
      foreach $word (@words) {
-       $$word_count{$word} += $weight;
        if ($NoEdgeSymbolOpt) {
            # 両端の記号を削除
!           $word =~ s/^[^\xa1-\xfea-z_0-9]+(.*?)[^\xa1-\xfea-z_0-9]+$/$1/g;
        }
        unless ($NoSymbolOpt) {
            if ($word =~ /^[^\xa1-\xfea-z_0-9](.+)[^\xa1-\xfea-z_0-9]$/) {
--- 1840,1848 ----
      @words_ = ();
      foreach $word (@words) {
        if ($NoEdgeSymbolOpt) {
            # 両端の記号を削除
!           $word =~ s/^[^\xa1-\xfea-z_0-9]*(.*?)[^\xa1-\xfea-z_0-9]*$/$1/g;
        }
+       $$word_count{$word} += $weight;
        unless ($NoSymbolOpt) {
            if ($word =~ /^[^\xa1-\xfea-z_0-9](.+)[^\xa1-\xfea-z_0-9]$/) {
------------------------------ ここまで ------------------------------

修正点としては、

    OkuriganaOpt を有効にすると、HiraganaOpt が効かなくなり、「ひらがな
    だけの語」の削除ができなくなったのを修正

    NoEdgeSymbolOpt の効果が、単語登録より後になっていたので、登録が
    おこなわれてしまっていた。また、両端のうち、片方だけに記号がある
    場合には削除できなくなっていた。

-- 

                                        ヤマハ(株)ピアノプレーヤ設計課
                                                              古川 令
                                             furukawa@xxxxxxxxxxxxxxxx