add emacs_like_lineedit
This commit is contained in:
@@ -1,5 +1,12 @@
|
||||
2001-11-24 Fumitoshi UKAI <ukai@debian.or.jp
|
||||
|
||||
* fm.h (emacs_like_lineedit): runtime option emacs_like_lineedit
|
||||
* linein.c (inputLineHist): ditto
|
||||
* linein.c (_esc): ditto
|
||||
* linein.c (next_dcompl): ditto
|
||||
* rc.c (CMT_EMACS_LIKE_LINEEDIT): ditto
|
||||
* rc.c (params3): ditto
|
||||
|
||||
* fm.h (ftppass_hostnamegen): runtime option ftppass_hostnamegen
|
||||
* ftp.c (FtpLogin): ditto
|
||||
* rc.c (CMT_FTPPASS_HOSTNAMEGEN): ditto
|
||||
|
5
fm.h
5
fm.h
@@ -1,4 +1,4 @@
|
||||
/* $Id: fm.h,v 1.13 2001/11/23 20:23:41 ukai Exp $ */
|
||||
/* $Id: fm.h,v 1.14 2001/11/23 20:50:59 ukai Exp $ */
|
||||
/*
|
||||
* w3m: WWW wo Miru utility
|
||||
*
|
||||
@@ -703,6 +703,9 @@ global int useVisitedColor init(FALSE);
|
||||
global int visited_color init(5); /* magenta */
|
||||
#endif /* USE_COLOR */
|
||||
global int confirm_on_quit init(TRUE);
|
||||
#ifdef EMACS_LIKE_LINEEDIT
|
||||
global int emacs_like_lineedit init(FALSE);
|
||||
#endif
|
||||
global int displayLink init(FALSE);
|
||||
global int retryAsHttp init(TRUE);
|
||||
global int showLineNum init(FALSE);
|
||||
|
70
linein.c
70
linein.c
@@ -1,4 +1,4 @@
|
||||
/* $Id: linein.c,v 1.6 2001/11/22 15:02:17 ukai Exp $ */
|
||||
/* $Id: linein.c,v 1.7 2001/11/23 20:50:59 ukai Exp $ */
|
||||
#include "fm.h"
|
||||
#include "local.h"
|
||||
#include "myctype.h"
|
||||
@@ -37,10 +37,7 @@ static void insertself(char c),
|
||||
_mvB(void), _mvE(void), _enter(void), _quo(void), _bs(void), _bsw(void),
|
||||
killn(void), killb(void), _inbrk(void), _esc(void),
|
||||
_prev(void), _next(void), _compl(void), _tcompl(void),
|
||||
_dcompl(void), _rdcompl(void);
|
||||
#ifndef EMACS_LIKE_LINEEDIT
|
||||
static void _rcompl(void);
|
||||
#endif
|
||||
_dcompl(void), _rdcompl(void), _rcompl(void);
|
||||
#ifdef __EMX__
|
||||
static int getcntrl(void);
|
||||
#endif
|
||||
@@ -191,22 +188,27 @@ inputLineHist(char *prompt, char *def_str, int flag, Hist * hist)
|
||||
(((cm_mode & CPL_ALWAYS) && (c == CTRL_I || c == ' ')) ||
|
||||
((cm_mode & CPL_ON) && (c == CTRL_I)))) {
|
||||
#ifdef EMACS_LIKE_LINEEDIT
|
||||
if (cm_next) {
|
||||
_dcompl();
|
||||
need_redraw = TRUE;
|
||||
}
|
||||
else {
|
||||
_compl();
|
||||
cm_disp_next = -1;
|
||||
}
|
||||
#else
|
||||
_compl();
|
||||
cm_disp_next = -1;
|
||||
if (emacs_like_lineedit && cm_next) {
|
||||
_dcompl();
|
||||
need_redraw = TRUE;
|
||||
}
|
||||
else {
|
||||
#endif
|
||||
_compl();
|
||||
cm_disp_next = -1;
|
||||
#ifdef EMACS_LIKE_LINEEDIT
|
||||
}
|
||||
#endif
|
||||
}
|
||||
else if (!i_quote && CLen == CPos &&
|
||||
(cm_mode & CPL_ALWAYS || cm_mode & CPL_ON) && c == CTRL_D) {
|
||||
_dcompl();
|
||||
need_redraw = TRUE;
|
||||
#ifdef EMACS_LIKE_LINEEDIT
|
||||
if (! emacs_like_lineedit) {
|
||||
#endif
|
||||
_dcompl();
|
||||
need_redraw = TRUE;
|
||||
#ifdef EMACS_LIKE_LINEEDIT
|
||||
}
|
||||
#endif
|
||||
}
|
||||
else if (!i_quote && c == DEL_CODE) {
|
||||
@@ -421,25 +423,35 @@ _esc(void)
|
||||
case CTRL_I:
|
||||
case ' ':
|
||||
#ifdef EMACS_LIKE_LINEEDIT
|
||||
_rdcompl();
|
||||
cm_clear = FALSE;
|
||||
if (emacs_like_lineedit) {
|
||||
_rdcompl();
|
||||
cm_clear = FALSE;
|
||||
need_redraw = TRUE;
|
||||
} else
|
||||
#else
|
||||
_rcompl();
|
||||
_rcompl();
|
||||
#endif
|
||||
break;
|
||||
case CTRL_D:
|
||||
_rdcompl();
|
||||
#ifdef EMACS_LIKE_LINEEDIT
|
||||
if (!emacs_like_lineedit)
|
||||
#else
|
||||
_rdcompl();
|
||||
#endif
|
||||
need_redraw = TRUE;
|
||||
break;
|
||||
#ifdef EMACS_LIKE_LINEEDIT
|
||||
case 'f':
|
||||
_mvRw();
|
||||
if (emacs_like_lineedit)
|
||||
_mvRw();
|
||||
break;
|
||||
case 'b':
|
||||
_mvLw();
|
||||
if (emacs_like_lineedit)
|
||||
_mvLw();
|
||||
break;
|
||||
case CTRL_H:
|
||||
_bsw();
|
||||
if (emacs_like_lineedit)
|
||||
_bsw();
|
||||
break;
|
||||
#endif
|
||||
#ifdef JP_CHARSET
|
||||
@@ -628,13 +640,11 @@ _compl(void)
|
||||
next_compl(1);
|
||||
}
|
||||
|
||||
#ifndef EMACS_LIKE_LINEEDIT
|
||||
static void
|
||||
_rcompl(void)
|
||||
{
|
||||
next_compl(-1);
|
||||
}
|
||||
#endif
|
||||
|
||||
static void
|
||||
_tcompl(void)
|
||||
@@ -815,9 +825,11 @@ disp_next:
|
||||
clrtoeolx();
|
||||
bold();
|
||||
#ifdef EMACS_LIKE_LINEEDIT
|
||||
addstr("----- Press TAB to continue -----");
|
||||
if (emacs_like_lineedit)
|
||||
addstr("----- Press TAB to continue -----");
|
||||
else
|
||||
#else
|
||||
addstr("----- Press CTRL-D to continue -----");
|
||||
addstr("----- Press CTRL-D to continue -----");
|
||||
#endif
|
||||
boldend();
|
||||
}
|
||||
|
11
rc.c
11
rc.c
@@ -1,4 +1,4 @@
|
||||
/* $Id: rc.c,v 1.8 2001/11/23 20:23:41 ukai Exp $ */
|
||||
/* $Id: rc.c,v 1.9 2001/11/23 20:50:59 ukai Exp $ */
|
||||
/*
|
||||
* Initialization file etc.
|
||||
*/
|
||||
@@ -89,6 +89,9 @@ static int rc_initialized = 0;
|
||||
#define CMT_PDROOT "/~user <20><>ɽ<EFBFBD><C9BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǥ<EFBFBD><C7A5>쥯<EFBFBD>ȥ<EFBFBD>"
|
||||
#define CMT_CGIBIN "/cgi-bin <20><>ɽ<EFBFBD><C9BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǥ<EFBFBD><C7A5>쥯<EFBFBD>ȥ<EFBFBD>"
|
||||
#define CMT_CONFIRM_QQ "q <20>Ǥν<C7A4>λ<EFBFBD><CEBB><EFBFBD>˳<EFBFBD>ǧ<EFBFBD><C7A7><EFBFBD><EFBFBD>"
|
||||
#ifdef EMACS_LIKE_LINEEDIT
|
||||
#define CMT_EMACS_LIKE_LINEEDIT "Emacs<63><73><EFBFBD>ι<EFBFBD><CEB9>Խ<EFBFBD><D4BD>ˤ<EFBFBD><CBA4><EFBFBD>"
|
||||
#endif
|
||||
#define CMT_SHOW_NUM "<22><><EFBFBD>ֹ<EFBFBD><D6B9><EFBFBD>ɽ<EFBFBD><C9BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
|
||||
#define CMT_MIMETYPES "<22><><EFBFBD>Ѥ<EFBFBD><D1A4><EFBFBD>mime.types"
|
||||
#define CMT_MAILCAP "<22><><EFBFBD>Ѥ<EFBFBD><D1A4><EFBFBD>mailcap"
|
||||
@@ -187,6 +190,9 @@ static int rc_initialized = 0;
|
||||
#define CMT_PDROOT "Directory corresponds to /~user"
|
||||
#define CMT_CGIBIN "Directory corresponds to /cgi-bin"
|
||||
#define CMT_CONFIRM_QQ "Confirm when quitting with q"
|
||||
#ifdef EMACS_LIKE_LINEEDIT
|
||||
#define CMT_EMACS_LIKE_LINEEDIT "Emacs-style line editing"
|
||||
#endif
|
||||
#define CMT_SHOW_NUM "Show line number"
|
||||
#define CMT_MIMETYPES "mime.types files"
|
||||
#define CMT_MAILCAP "mailcap files"
|
||||
@@ -387,6 +393,9 @@ struct param_ptr params3[] =
|
||||
{"save_hist", P_INT, PI_ONOFF, (void *) &SaveURLHist, CMT_SAVEHIST, NULL},
|
||||
#endif /* USE_HISTORY */
|
||||
{"confirm_qq", P_INT, PI_ONOFF, (void *) &confirm_on_quit, CMT_CONFIRM_QQ, NULL},
|
||||
#ifdef EMACS_LIKE_LINEEDIT
|
||||
{"emacs_like_lineedit", P_INT, PI_ONOFF, (void *) &emacs_like_lineedit, CMT_EMACS_LIKE_LINEEDIT, NULL },
|
||||
#endif
|
||||
{"wrap_search", P_INT, PI_ONOFF, (void *) &WrapDefault, CMT_WRAP, NULL},
|
||||
{"ignorecase_search", P_INT, PI_ONOFF, (void *) &IgnoreCase, CMT_IGNORE_CASE, NULL},
|
||||
#ifdef USE_MOUSE
|
||||
|
Reference in New Issue
Block a user