[w3m-dev-en 00751] Re: tab completion weirdness in w3m 0.3

* main.c (svBuf): unescape spaces when input is filename
* proto.h (unescape_spaces): added
From: Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
This commit is contained in:
Fumitoshi UKAI
2002-06-09 16:09:24 +00:00
parent 259d1f18be
commit 1756f4887e
3 changed files with 21 additions and 11 deletions

View File

@@ -1,3 +1,9 @@
2002-06-10 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
* [w3m-dev-en 00751] Re: tab completion weirdness in w3m 0.3
* main.c (svBuf): unescape spaces when input is filename
* proto.h (unescape_spaces): added
2002-06-08 Kiyokazu SUTO <suto@ks-and-ks.ne.jp>
* [w3m-dev 03207] strchr(), strcasecmp(), and strncasecmp()
@@ -3482,4 +3488,4 @@
* release-0-2-1
* import w3m-0.2.1
$Id: ChangeLog,v 1.386 2002/06/07 15:46:44 ukai Exp $
$Id: ChangeLog,v 1.387 2002/06/09 16:09:24 ukai Exp $

17
main.c
View File

@@ -1,4 +1,4 @@
/* $Id: main.c,v 1.106 2002/06/05 15:42:10 ukai Exp $ */
/* $Id: main.c,v 1.107 2002/06/09 16:09:25 ukai Exp $ */
#define MAINPROGRAM
#include "fm.h"
#include <signal.h>
@@ -3971,26 +3971,29 @@ svI(void)
void
svBuf(void)
{
char *file;
char *qfile = NULL, *file;
FILE *f;
int is_pipe;
CurrentKeyData = NULL; /* not allowed in w3m-control: */
file = searchKeyData();
if (file == NULL || *file == '\0') {
file = inputLineHist("Save buffer to: ", NULL, IN_COMMAND, SaveHist);
}
if (file != NULL)
file = conv_to_system(file);
if (file == NULL || *file == '\0') {
qfile = inputLineHist("Save buffer to: ", NULL, IN_COMMAND, SaveHist);
if (qfile == NULL || *qfile == '\0') {
displayBuffer(Currentbuf, B_FORCE_REDRAW);
return;
}
}
file = conv_to_system(qfile ? qfile : file);
if (*file == '|') {
is_pipe = TRUE;
f = popen(file + 1, "w");
}
else {
if (qfile) {
file = unescape_spaces(Strnew_charp(qfile))->ptr;
file = conv_to_system(file);
}
file = expandName(file);
if (checkOverWrite(file) < 0)
return;

View File

@@ -1,4 +1,4 @@
/* $Id: proto.h,v 1.43 2002/06/01 17:09:05 ukai Exp $ */
/* $Id: proto.h,v 1.44 2002/06/09 16:09:25 ukai Exp $ */
/*
* This file was automatically generated by version 1.7 of cextract.
* Manual editing not recommended.
@@ -293,6 +293,7 @@ extern void escdmap(char c);
extern char *inputLineHistSearch(char *prompt, char *def_str, int flag,
Hist *hist, int (*incfunc) (int ch, Str buf,
Lineprop *prop));
extern Str unescape_spaces(Str s);
#ifdef USE_HISTORY
extern Buffer *historyBuffer(Hist *hist);
extern void loadHistory(Hist *hist);