namazu-ml(avocado)


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

Re: pnamazu-98.05.14



村下です

mknmzで、現在はnkfやらわかち書き用のコマンドなどを呼んでいますが、
perlだけで処理できるようにしてみるのも面白いかなと思っています。
#ただ半角カナ文字の処理が悩みなんですけどね。。。

At 21:25 1998/05/14 +0900, Rei FURUKAWA wrote:
> perl 版の検索クライアントを別便にて高林さんに送ります。

久しぶりに、いい加減なcommand用パッチを当ててみました。
-Sと-LとLANGUAGEに対応して、SCOREには対応していません。(^^;)

*** cmdline.pl.org      Mon Apr 27 01:49:00 1998
--- cmdline.pl  Wed May 20 17:11:33 1998
***************
*** 2,17 ****
  $CmdLineEna = 1;
  sub usage(){
      die << "ENDOFUSAGE";
!   Search Program of Namazu Perl Command-line Version 0.1 by tmu\@ikegami.co.jp
!   Original Search Program of Namazu Version 1.1.1.3
    Copyright (C) 1997-1998 Satoru Takabayashi All rights reserved.
    Original pnamazu.cgi-$Pnamazu
    Namazu Search (perl 版) by furukawa\@dkv.yamaha.co.jp

!   usage: pcnamazu.pl [-nwsvhca] [dir] "key string"
       -n (num)  : 一度に表示する件数
       -w (num)  : 表示するリストの先頭番号
       -s        : 短いフォーマットで出力
       -v        : usage を表示する (この表示)
       -f (path) : namazu.conf を指定する
       -h        : HTML で出力する
--- 2,18 ----
  $CmdLineEna = 1;
  sub usage(){
      die << "ENDOFUSAGE";
!   Search Program of Namazu Perl Command-line Version 0.2 by tmu\@ikegami.co.jp
!   Original Search Program of Namazu Version 1.1.2.3
    Copyright (C) 1997-1998 Satoru Takabayashi All rights reserved.
    Original pnamazu.cgi-$Pnamazu
    Namazu Search (perl 版) by furukawa\@dkv.yamaha.co.jp

!   usage: namazu.pl [-nwsvhcaoCHFRUL] [index dir(s)] "key string"
       -n (num)  : 一度に表示する件数
       -w (num)  : 表示するリストの先頭番号
       -s        : 短いフォーマットで出力
+      -S        : もっと短いフォーマット (リスト表示) で出力
       -v        : usage を表示する (この表示)
       -f (path) : namazu.conf を指定する
       -h        : HTML で出力する
***************
*** 24,29 ****
--- 25,31 ----
       -F        : <FORM> ... </FORM> の部分を強制的に表示する
       -R        : URL の置き換えを行わない
       -U        : plain text で出力する時に URL encode の復元を行わない
+      -L (lang) : メッセージの言語を設定する JAPANESE または ENGLISH
  ENDOFUSAGE
  }

***************
*** 38,43 ****
--- 40,47 ----
    * URL_REPLACE_TO   : $URL_REPLACE_TO
    * Wakati           : $WAKATI
    * LOGGING          : $LOGGING
+   * LANGUAGE         : $LANGUAGE
+   * SCORING          : $SCORING
  ENDOFPRINTCONF
  exit;
  }
***************
*** 50,55 ****
--- 54,60 ----
                  if ($& eq 'n'){$Max = shift(@ARGV);last;}
                  if ($& eq 'w'){$Whence = shift(@ARGV);last;}
                  if ($& eq 's'){$Format = 'short';}
+                 if ($& eq 'S'){$Format = 'veryshort';}
                  if ($& eq 'h'){$HtmlOutput = 1;}
                  if ($& eq 'H'){$PageIndex = 1;}
                  if ($& eq 'F'){$PrintForm = 1;}
***************
*** 58,63 ****
--- 63,69 ----
                  if ($& eq 'e'){$Sort = 'earlier'}
                  if ($& eq 'R'){$Replace = 0;}
                  if ($& eq 'U'){$DecodeURL = 0;}
+                 if ($& eq 'L'){$LANGUAGE = shift(@ARGV);last;}
                  if ($& eq 'C'){&load_namazu_conf;
                                 &show_configuration;}
                  if ($& eq 'f'){$NamazuConf = shift(@ARGV);
*** ldnmzcnf.pl.org     Thu Apr 23 12:41:00 1998
--- ldnmzcnf.pl Wed May 20 16:11:16 1998
***************
*** 12,17 ****
--- 12,19 ----
              $URL_REPLACE_TO   = $1 if /^URL_REPLACE_TO\s+(\S+)/i;
              $WAKATI           = $2 if /^(wakachi|wakati)\s+(\S+)/i;
              $LOGGING          = $1 if /^LOGGING\s+(\S+)/i;
+             $LANGUAGE         = $1 if /^LANGUAGE\s+(\S+)/i;
+             $SCORING          = $1 if /^SCORING\s+(\S+)/i;
          }
          $LOGGING = 0 if $LOGGING =~ /^off$/i;
          $ReplaceFrom = quotemeta($URL_REPLACE_FROM);
*** namazu.pl.org       Thu May 14 20:42:00 1998
--- namazu.pl   Wed May 20 17:12:19 1998
***************
*** 186,193 ****
  sub puthlist{
      # 参考ヒット数出力
      if (@Words){
!         &message("<H2>検索結果</H2>\n");
!         &message("<P>\n参考ヒット数: ");
          foreach $_ (@Words){
              if ($SubHit{$_}){
                  &output(" [ $_: $Hit{$_} \(");
--- 186,195 ----
  sub puthlist{
      # 参考ヒット数出力
      if (@Words){
!         &message("<H2>検索結果</H2>\n") if $LANGUAGE ne 'ENGLISH';
!         &message("<H2>Results:</H2>\n") if $LANGUAGE eq 'ENGLISH';
!         &message("<P>\n参考ヒット数: ") if $LANGUAGE ne 'ENGLISH';
!         &message("<P>\nWord count: ")   if $LANGUAGE eq 'ENGLISH';
          foreach $_ (@Words){
              if ($SubHit{$_}){
                  &output(" [ $_: $Hit{$_} \(");
***************
*** 209,215 ****
          &message("\n</P>\n");
      }

!     &message("<P><STRONG>検索式にマッチする <!-- HIT -->$Keys<!-- HIT --> 
個の項目が見つかりました。</STRONG></P>\n");
      # 検索結果出力
      if ($Keys){
          my($offset, $next, $summary, $dt, $st, $dd);
--- 211,218 ----
          &message("\n</P>\n");
      }

!     &message("<P><STRONG>検索式にマッチする <!-- HIT -->$Keys<!-- HIT --> 
個の項目が見つかりました。</STRONG></P>\n") if $LANGUAGE ne 'ENGLISH';
!     &message("<P><STRONG>Total <!-- HIT -->$Keys<!-- HIT --> documents
match your query.</STRONG></P>\n") if $LANGUAGE eq 'ENGLISH';
      # 検索結果出力
      if ($Keys){
          my($offset, $next, $summary, $dt, $st, $dd);
***************
*** 226,233 ****
                      $dd =~ s/$ReplaceFrom/$ReplaceTo/g;
                  }
                  $dd =~ s/(\<A HREF=\")(.*?)(\")/$1.&decode_url($2).$3/e
if $DecodeURL;
!                 &output("$dt$Ndx. $st (score: $Score{$key})\n");
!                 &output("$summary\n") if $Format ne 'short';
                  &output("$dd");
              }
              last if ($Whence + $Max) <= $Ndx && $Max;
--- 229,241 ----
                      $dd =~ s/$ReplaceFrom/$ReplaceTo/g;
                  }
                  $dd =~ s/(\<A HREF=\")(.*?)(\")/$1.&decode_url($2).$3/e
if $DecodeURL;
!                 &output("$dt$Ndx. $st (score: $Score{$key})\n") if
$Format ne 'veryshort';
!                 &output("$summary\n") if $Format eq 'long';
! if($Format eq 'veryshort') {
! $dd =~ s/\n+/\n/g;
! $dd =~ s/ size \(\d.*$//g;
!
! }
                  &output("$dd");
              }
              last if ($Whence + $Max) <= $Ndx && $Max;
----
MURASHITA Takuya  Ikegami Tsushinki Co.,Ltd. Information Planning Div. 
http://www.ikegami.co.jp/