namazu-ml(ring)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: namazu-1.3.0.7-pre-3 (Re:namazu-1.3.0.7-pre-2)
- From: kenzo-@xxxxxxxxxx (Ken-ichi Hirose)
- Date: Sat, 15 May 1999 03:02:28 +0900 (JST)
広瀬です。
<199905130354.MAA12420@xxxxxxxxxxxxxx>の記事において
satoru-t@xxxxxxxxxxxxxxxxxxさんは書きました。
>> >あと tknamazu がらみでもう1点あるのでもう少し待っていただけますか?
>> 了解です。
以下の patch を充てて頂けるようお願いします。
えーと、最近 tknamazu の手直しをやっているのですが、今まで(1年分 ^^;)に
思いついた機能もいくつか追加してまして、その中に 0〜9 までの key に shortcut を
割り当てると言うのと、tknamazu を help desk 風に使えるようにしたと言うのが
あります。
0〜9 までの key に shortcut と言うのは namazu の検索結果の画面で
1 なら 検索結果 1. に跳ぶ。
2 なら 検索結果 2. に跳ぶ。
9 なら 検索結果 9. に跳ぶ。
で、0 は back to result と言う感じです。
#私は結構気に入っています ^^;
また help desk 風に使うというのは site luncher で namazu.cgi の URL を
指定しておくとその site の検索を行えると言う物です。
で、この時問題になるのがcgi の結果の画面で、1つの項目に2つリンクがあると
具合が悪いのと、 NMZ.head.?? に link があるとずれてしまうと言うのがありまして
それを何とかする為に mode=tknamazu と言うのを追加させて頂きました。
また Page: [1] [2] も lynx の画面だと References の項番と区別がつかないので、
Page: 1 Page: 2 と表示するようにさせて頂きました。
一応 site luncher が動く tknamazu の alpha を
<URL:http://www.tama.or.jp/%7Ekenzo-/Namazu/tknamazu/tknamazu-1.12-alpha-13.tar.gz>
に置いておきました。
但し、上記は*ほんとーーに*作りかけなので御了承下さい。
#ドキュメント等は全然書いていません _o_
以上、宜しくお願い致します。
diff -rcN namazu-1.3.0.7-pre-3.orig/src/cgi.c namazu-1.3.0.7-pre-3/src/cgi.c
*** namazu-1.3.0.7-pre-3.orig/src/cgi.c Sun May 2 13:27:47 1999
--- namazu-1.3.0.7-pre-3/src/cgi.c Tue May 11 23:29:00 1999
***************
*** 217,222 ****
--- 217,225 ----
} else if (!strncmp(qs, "reference=off", 13)) {
NoReference = 1;
qs += 13;
+ } else if (!strncmp(qs, "mode=tknamazu", 13)) {
+ ModeTknamazu = 1;
+ qs += 13;
} else if (!strncmp(qs, "dbname=", 7)) {
uchar *pp;
diff -rcN namazu-1.3.0.7-pre-3.orig/src/hlist.c namazu-1.3.0.7-pre-3/src/hlist.c
*** namazu-1.3.0.7-pre-3.orig/src/hlist.c Sun May 2 13:27:47 1999
--- namazu-1.3.0.7-pre-3/src/hlist.c Sat May 15 02:32:05 1999
***************
*** 428,433 ****
--- 428,452 ----
free_hlist(work);
}
+ void erase_url(uchar *s)
+ {
+ int i, j;
+ uchar tmp[BUFSIZE];
+
+ strcpy(tmp, s);
+
+ if (!strncmp("<DD><A HREF=\"", &tmp[0], 13)) {
+ for (i = 13; tmp[i] != '>'; i++)
+ ;
+ strcpy(tmp, "<DD>");
+ for (i++, j = 4; tmp[i]; i++, j++) {
+ if (!strncmp("</A>", &tmp[i], 4))
+ i += 4;
+ s[j] = tmp[i];
+ }
+ s[j] = '\0';
+ }
+ }
/* replace a URL */
void replace_url(uchar * s, int opt)
***************
*** 552,557 ****
--- 571,579 ----
if (!HtmlOutput && DecodeURL &&
!strncmp("<DD><A HREF=\"", buf, 13)) {
decode_url_string(&buf[13]);
+ }
+ if (ModeTknamazu) {
+ erase_url(buf);
}
if (HtmlOutput) {
diff -rcN namazu-1.3.0.7-pre-3.orig/src/namazu.c namazu-1.3.0.7-pre-3/src/namazu.c
*** namazu-1.3.0.7-pre-3.orig/src/namazu.c Sun May 2 13:27:47 1999
--- namazu-1.3.0.7-pre-3/src/namazu.c Tue May 11 23:29:00 1999
***************
*** 272,283 ****
if (HtmlOutput && IsCGI)
fputs(MSG_MIME_HEADER, stdout);
! if (HtmlOutput)
cat_head_or_foot(HEADERFILE, query, subquery);
search_main(query_with_subquery);
! if (HtmlOutput)
cat_head_or_foot(FOOTERFILE, query, subquery);
free_dbnames();
}
--- 272,283 ----
if (HtmlOutput && IsCGI)
fputs(MSG_MIME_HEADER, stdout);
! if (HtmlOutput && !ModeTknamazu)
cat_head_or_foot(HEADERFILE, query, subquery);
search_main(query_with_subquery);
! if (HtmlOutput && !ModeTknamazu)
cat_head_or_foot(FOOTERFILE, query, subquery);
free_dbnames();
}
diff -rcN namazu-1.3.0.7-pre-3.orig/src/namazu.h namazu-1.3.0.7-pre-3/src/namazu.h
*** namazu-1.3.0.7-pre-3.orig/src/namazu.h Sun May 2 13:27:47 1999
--- namazu-1.3.0.7-pre-3/src/namazu.h Tue May 11 23:29:00 1999
***************
*** 95,100 ****
--- 95,101 ----
extern int AllDocumentN;
extern int TfIdf;
extern int NoReference;
+ extern int ModeTknamazu;
extern uchar KeyTable[];
extern uchar DbName[];
diff -rcN namazu-1.3.0.7-pre-3.orig/src/output.c namazu-1.3.0.7-pre-3/src/output.c
*** namazu-1.3.0.7-pre-3.orig/src/output.c Sun May 2 13:27:47 1999
--- namazu-1.3.0.7-pre-3/src/output.c Tue May 11 23:29:00 1999
***************
*** 24,30 ****
{
int i;
! if (HtmlOutput)
printf("<STRONG>Page:</STRONG> ");
else
printf("Page: ");
--- 24,32 ----
{
int i;
! if (HtmlOutput && ModeTknamazu)
! ;
! else if (HtmlOutput)
printf("<STRONG>Page:</STRONG> ");
else
printf("Page: ");
***************
*** 42,47 ****
--- 44,52 ----
printf("<STRONG>");
}
}
+ if (ModeTknamazu)
+ printf("Page: %d", i + 1);
+ else
printf("[%d]", i + 1);
if (HtmlOutput) {
if (i * HListMax != HListWhence) {
diff -rcN namazu-1.3.0.7-pre-3.orig/src/values.c namazu-1.3.0.7-pre-3/src/values.c
*** namazu-1.3.0.7-pre-3.orig/src/values.c Sun May 2 13:27:47 1999
--- namazu-1.3.0.7-pre-3/src/values.c Tue May 11 23:29:00 1999
***************
*** 93,98 ****
--- 93,99 ----
int DbNumber = 0; /* number of databases */
int OppositeEndian = 0; /* if opposite byte order: 1 */
int NoReference = 0; /* if no display reference: 1 */
+ int ModeTknamazu = 0; /* if tknamazu mode: 1 */
#ifdef SCORING
#define TFIDF 1
Best regards,
--
Ken-ichi Hirose (^^)k!
e-mail: kenzo-@xxxxxxxxxx (or) EHC25612@xxxxxxxxxxx