/[wait]/trunk/script/sman
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/script/sman

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

cvs-head/script/sman revision 10 by ulpfr, Fri Apr 28 15:40:52 2000 UTC trunk/script/sman revision 91 by dpavlin, Tue May 25 15:57:50 2004 UTC
# Line 1  Line 1 
1  #!/usr/local/perl5.005_56.Mar06/bin/perl -w  #!/usr/bin/perl -w
2  ######################### -*- Mode: Cperl -*- #########################  #                              -*- Mode: Perl -*-
3  ##  # $Basename: sman $
4  ## $Basename: sman $  # $Revision: 1.14 $
5  ## $Revision: 1.8 $  # Author          : Ulrich Pfeifer
6  ##  # Created On      : Fri Aug 30 15:52:25 1996
7  ## Author           : Ulrich Pfeifer  # Last Modified By: Ulrich Pfeifer
8  ## Created On       : Fri Aug 30 15:52:25 1996  # Last Modified On: Mon May  8 11:03:46 2000
9  ##  # Language        : CPerl
10  ## Last Modified By : Ulrich Pfeifer  #
11  ## Last Modified On : Sun May 30 17:48:53 1999  # (C) Copyright 1996-2000, Ulrich Pfeifer
12  ##  #
 ## Copyright (c) 1996-1997, Ulrich Pfeifer  
 ##  
 ##  
 ######################################################################  
13    
14  use strict;  use strict;
15    
16  use Term::ReadLine;  use Term::ReadLine;
17  use Getopt::Long;  use Getopt::Long;
18  use Fcntl;  use Fcntl qw(O_RDONLY);
19  use Config;  use Config;
20    
21    use lib '/data/wait/lib';
22    
23  require WAIT::Config;  require WAIT::Config;
24  require WAIT::Database;  require WAIT::Database;
25  require WAIT::Query::Base;  require WAIT::Query::Base;
# Line 43  GetOptions(\%OPT, Line 41  GetOptions(\%OPT,
41             'table=s',             'table=s',
42             'filter=i',             'filter=i',
43             'max=i',             'max=i',
44             'pager:s') || die "Usage: ...\n";             'pager:s') || die "
45    Usage: $0
46              [--database database]
47              [--dir      dir     ]
48              [--table    table   ]
49              [--filter   integer ]
50              [--max      integer ]
51              [--pager    pager   ]
52    ";
53    
54  my $db = WAIT::Database->open(name      => $OPT{database},  my $db = WAIT::Database->open(name      => $OPT{database},
55                                mode      => O_RDONLY,                                mode      => O_RDONLY,
# Line 67  if ($Config::Config{'archname'} eq 'i586 Line 73  if ($Config::Config{'archname'} eq 'i586
73  }  }
74    
75  my $pager =  ($OPT{pager}) ? \&pager : \&less;  my $pager =  ($OPT{pager}) ? \&pager : \&less;
76    $pager =  \&less;       # force pager usage
77  my $OUT   = $term->OUT;  my $OUT   = $term->OUT;
78    
79  my $st = 1;  my $st = 1;
# Line 121  while (defined ($_ = &myreadline("$st> " Line 128  while (defined ($_ = &myreadline("$st> "
128      if ($@ ne '') {      if ($@ ne '') {
129        print $OUT "$_ => $query\n\$\@='$@'\n";        print $OUT "$_ => $query\n\$\@='$@'\n";
130      } elsif (ref($query)) {      } elsif (ref($query)) {
131        %hits = $query->execute();        %hits = $query->execute(top => $OPT{max}, picky => 1);
132        # the hash %hits has as keys document numbers and as values        # the hash %hits has as keys document numbers and as values
133        # quality figures. The doc numbers are not what we have as docid        # quality figures. The doc numbers are not what we have as docid
134        # to find the item in the access class, they are WAIT's private        # to find the item in the access class, they are WAIT's private
# Line 157  while (defined ($_ = &myreadline("$st> " Line 164  while (defined ($_ = &myreadline("$st> "
164    }    }
165    
166  } continue {  } continue {
167    # we don't do this since ANdreas Koenig does not think of it as feature    # we don't do this since Andreas Koenig does not think of it as feature
168    # $term->SetHistory(grep length($_)>4, $term->GetHistory)    # $term->SetHistory(grep length($_)>4, $term->GetHistory)
169  }  }
170    warn "Thank you for using sman\n";
171    
172    $tb->close;
173    $db->close;
174    
175  sub myreadline {  sub myreadline {
176    if (@ARGV) {    if (@ARGV) {
# Line 182  sub help { Line 193  sub help {
193   q              Exit from $0   q              Exit from $0
194   l              redisplay last ranking   l              redisplay last ranking
195  Other input is tried as wais query.  Other input is tried as wais query.
196  The following fields are known: $idb  The following fields for table '$OPT{table}' are known: $idb
197  ] ;  ] ;
198  }  }
199    
# Line 225  sub display { Line 236  sub display {
236  # WHAT DOES HE DO HERE? ULI???  # WHAT DOES HE DO HERE? ULI???
237  # Re: some indexing scripts did use pathnames relative to the table directory  # Re: some indexing scripts did use pathnames relative to the table directory
238  # especially the cpanwait script does this. uli  # especially the cpanwait script does this. uli
239  #  if ($tdid !~ m(^/)) {    if ($tdid !~ m(^/)) {
240  #    $tdid = $tb->dir . '/' . $tdid;      $tdid = $tb->dir . '/' . $tdid;
241  #  }    }
242    
243    # The main task of all that follows from here is highlighting. WAIT    # The main task of all that follows from here is highlighting. WAIT
244    # is designed to make it possible to show the user why a certain    # is designed to make it possible to show the user why a certain

Legend:
Removed from v.10  
changed lines
  Added in v.91

  ViewVC Help
Powered by ViewVC 1.1.26