[w3m-dev 02964] Print data of forms when halfdump option is set
* backend.c (print_headers): print w3m-current-url and w3m-base-url
* backend.c (print_formlist): deleted
* backend.c (internal_get): remove "if (buf->formlist) {}"
* file.c (print_internal_information): added
* file.c (loadHTMLstream): if halfdump, print_internal_information
if w3m_backend, print_internal_information
* fm.h (DUMP_HALFEXTRA): added
* main.c (-halfdump_extra): added
From: TSUCHIYA Masatoshi <tsuchiya@pine.kuee.kyoto-u.ac.jp>
This commit is contained in:
@@ -1,3 +1,15 @@
|
||||
2002-02-03 TSUCHIYA Masatoshi <tsuchiya@pine.kuee.kyoto-u.ac.jp>
|
||||
|
||||
* [w3m-dev 02964] Print data of forms when halfdump option is set
|
||||
* backend.c (print_headers): print w3m-current-url and w3m-base-url
|
||||
* backend.c (print_formlist): deleted
|
||||
* backend.c (internal_get): remove "if (buf->formlist) {}"
|
||||
* file.c (print_internal_information): added
|
||||
* file.c (loadHTMLstream): if halfdump, print_internal_information
|
||||
if w3m_backend, print_internal_information
|
||||
* fm.h (DUMP_HALFEXTRA): added
|
||||
* main.c (-halfdump_extra): added
|
||||
|
||||
2002-02-01 Dai Sato <satodai@dog.intcul.tohoku.ac.jp>
|
||||
|
||||
* [w3m-dev 02972] #include "config.h"
|
||||
@@ -2709,4 +2721,4 @@
|
||||
* release-0-2-1
|
||||
* import w3m-0.2.1
|
||||
|
||||
$Id: ChangeLog,v 1.291 2002/02/01 14:06:46 inu Exp $
|
||||
$Id: ChangeLog,v 1.292 2002/02/03 06:12:41 ukai Exp $
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* $Id: backend.c,v 1.7 2001/12/27 18:22:59 ukai Exp $ */
|
||||
/* $Id: backend.c,v 1.8 2002/02/03 06:12:41 ukai Exp $ */
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <sys/types.h>
|
||||
@@ -97,6 +97,9 @@ print_headers(Buffer *buf, int len)
|
||||
for (tp = buf->document_header->first; tp; tp = tp->next)
|
||||
printf("%s\n", tp->ptr);
|
||||
}
|
||||
printf("w3m-current-url: %s\n", parsedURL2Str(&buf->currentURL)->ptr);
|
||||
if (buf->baseURL)
|
||||
printf("w3m-base-url: %s\n", parsedURL2Str(buf->baseURL)->ptr);
|
||||
printf("w3m-content-type: %s\n", buf->type);
|
||||
#ifdef JP_CHARSET
|
||||
if (buf->document_code)
|
||||
@@ -108,29 +111,6 @@ print_headers(Buffer *buf, int len)
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
print_formlist(int fid, FormList *fp)
|
||||
{
|
||||
Str s =
|
||||
Sprintf("w3m-form: (formlist (fid %d) (action \"%s\") (method \"%s\")",
|
||||
fid,
|
||||
fp->action->ptr,
|
||||
(fp->method == FORM_METHOD_POST) ? "post"
|
||||
: ((fp->method == FORM_METHOD_INTERNAL) ? "internal" : "get"));
|
||||
if (fp->target)
|
||||
Strcat(s, Sprintf(" (target \"%s\")", fp->target));
|
||||
if (fp->charset)
|
||||
Strcat(s,
|
||||
Sprintf(" (charset '%s)", get_mime_charset_name(fp->charset)));
|
||||
if (fp->enctype == FORM_ENCTYPE_MULTIPART)
|
||||
Strcat_charp(s, " (enctype \"multipart/form-data\")");
|
||||
if (fp->boundary)
|
||||
Strcat(s, Sprintf(" (boundary \"%s\")", fp->boundary));
|
||||
Strcat_charp(s, ")\n");
|
||||
Strfputs(s, stdout);
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
internal_get(char *url, int flag, FormList *request)
|
||||
{
|
||||
@@ -151,14 +131,6 @@ internal_get(char *url, int flag, FormList *request)
|
||||
last = Strnew_m_charp("</pre><title>", html_quote(buf->buffername),
|
||||
"</title>\n", NULL);
|
||||
print_headers(buf, len + first->length + last->length);
|
||||
if (buf->formlist) {
|
||||
FormList *fp;
|
||||
int fid = 0;
|
||||
for (fp = buf->formlist; fp; fp = fp->next)
|
||||
fid++;
|
||||
for (fp = buf->formlist; fp; fp = fp->next)
|
||||
print_formlist(--fid, fp);
|
||||
}
|
||||
printf("\n");
|
||||
printf("%s", first->ptr);
|
||||
for (p = backend_halfdump_buf->first; p; p = p->next)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* $Id: file.c,v 1.58 2002/02/01 05:01:47 ukai Exp $ */
|
||||
/* $Id: file.c,v 1.59 2002/02/03 06:12:41 ukai Exp $ */
|
||||
#include "fm.h"
|
||||
#include <sys/types.h>
|
||||
#include "myctype.h"
|
||||
@@ -5714,6 +5714,66 @@ completeHTMLstream(struct html_feed_environ *h_env, struct readbuffer *obuf)
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
print_internal_information(struct html_feed_environ *henv)
|
||||
{
|
||||
int i;
|
||||
Str s;
|
||||
TextLineList *tl = newTextLineList();
|
||||
|
||||
if (form_max >= 0) {
|
||||
FormList *fp;
|
||||
for (i = 0; i <= form_max; i++) {
|
||||
fp = forms[i];
|
||||
s = Sprintf("<form_int fid=\"%d\" action=\"%s\" method=\"%s\"",
|
||||
i, fp->action->ptr,
|
||||
(fp->method == FORM_METHOD_POST) ? "post"
|
||||
: ((fp->method == FORM_METHOD_INTERNAL) ? "internal" : "get"));
|
||||
if (fp->target)
|
||||
Strcat(s, Sprintf(" target=\"%s\"", fp->target));
|
||||
if (fp->charset)
|
||||
Strcat(s, Sprintf(" accept-charset=\"%s\"", code_to_str(fp->charset)));
|
||||
if (fp->enctype == FORM_ENCTYPE_MULTIPART)
|
||||
Strcat_charp(s, " enctype=multipart/form-data");
|
||||
if (fp->boundary)
|
||||
Strcat_m_charp(s, " boundary=\"", html_quote(fp->boundary), "\"", NULL);
|
||||
Strcat_charp(s, ">");
|
||||
pushTextLine(tl, newTextLine(s, 0));
|
||||
}
|
||||
}
|
||||
#ifdef MENU_SELECT
|
||||
if (n_select > 0) {
|
||||
FormSelectOptionItem *ip;
|
||||
for (i = 0; i < n_select; i++) {
|
||||
for (ip = select_option[i].first; ip; ip = ip->next) {
|
||||
s = Sprintf("<option_int selectnumber=%d"
|
||||
" value=\"%s\"%s>%s</option_int>",
|
||||
i,
|
||||
html_quote(ip->value ? ip->value->ptr : ip->label->ptr),
|
||||
ip->checked ? " selected" : "",
|
||||
ip->label->ptr);
|
||||
pushTextLine(tl, newTextLine(s, 0));
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif /* MENU_SELECT */
|
||||
if (n_textarea > 0) {
|
||||
for (i = 0; i < n_textarea; i++) {
|
||||
s = Sprintf("<textarea_int textareanumber=%d>%s</textarea_int>",
|
||||
i, textarea_str[i]->ptr);
|
||||
pushTextLine(tl, newTextLine(s, 0));
|
||||
}
|
||||
}
|
||||
|
||||
if (henv->buf)
|
||||
appendTextLineList(henv->buf, tl);
|
||||
else if (henv->f) {
|
||||
TextLineListItem *p;
|
||||
for (p = tl->first; p; p = p->next)
|
||||
printf("%s\n", p->ptr->line->ptr);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
loadHTMLstream(URLFile *f, Buffer *newBuf, FILE * src, int internal)
|
||||
{
|
||||
@@ -5850,6 +5910,13 @@ loadHTMLstream(URLFile *f, Buffer *newBuf, FILE * src, int internal)
|
||||
if (fmInitialized)
|
||||
term_raw();
|
||||
signal(SIGINT, prevtrap);
|
||||
if (w3m_dump & DUMP_HALFEXTRA)
|
||||
print_internal_information(&htmlenv1);
|
||||
return;
|
||||
}
|
||||
if (w3m_backend) {
|
||||
print_internal_information(&htmlenv1);
|
||||
backend_halfdump_buf = htmlenv1.buf;
|
||||
return;
|
||||
}
|
||||
phase2:
|
||||
@@ -5864,8 +5931,6 @@ loadHTMLstream(URLFile *f, Buffer *newBuf, FILE * src, int internal)
|
||||
#ifdef USE_IMAGE
|
||||
newBuf->image_flag = image_flag;
|
||||
#endif
|
||||
if (w3m_backend)
|
||||
backend_halfdump_buf = htmlenv1.buf;
|
||||
HTMLlineproc2(newBuf, htmlenv1.buf);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* $Id: fm.h,v 1.46 2002/01/31 17:54:51 ukai Exp $ */
|
||||
/* $Id: fm.h,v 1.47 2002/02/03 06:12:41 ukai Exp $ */
|
||||
/*
|
||||
* w3m: WWW wo Miru utility
|
||||
*
|
||||
@@ -772,6 +772,7 @@ extern char *w3m_version;
|
||||
#define DUMP_EXTRA 0x08
|
||||
#define DUMP_HALFDUMP 0x10
|
||||
#define DUMP_FRAME 0x20
|
||||
#define DUMP_HALFEXTRA 0x40
|
||||
global int w3m_debug;
|
||||
global int w3m_dump init(0);
|
||||
#define w3m_halfdump (w3m_dump & DUMP_HALFDUMP)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* $Id: main.c,v 1.77 2002/01/31 17:54:52 ukai Exp $ */
|
||||
/* $Id: main.c,v 1.78 2002/02/03 06:12:41 ukai Exp $ */
|
||||
#define MAINPROGRAM
|
||||
#include "fm.h"
|
||||
#include <signal.h>
|
||||
@@ -562,6 +562,8 @@ MAIN(int argc, char **argv, char **envp)
|
||||
w3m_dump = (DUMP_HEAD | DUMP_SOURCE | DUMP_EXTRA);
|
||||
else if (!strcmp("-halfdump", argv[i]))
|
||||
w3m_dump = DUMP_HALFDUMP;
|
||||
else if (!strcmp("-halfdump_extra", argv[i]))
|
||||
w3m_dump = DUMP_HALFDUMP | DUMP_HALFEXTRA;
|
||||
else if (!strcmp("-halfload", argv[i])) {
|
||||
w3m_dump = 0;
|
||||
w3m_halfload = TRUE;
|
||||
|
||||
Reference in New Issue
Block a user