From 4bb7b1ffc961a998d8c8e9acb5556e3f999c4285 Mon Sep 17 00:00:00 2001 From: Matthew Dillon Date: Tue, 15 Mar 2005 02:32:57 +0000 Subject: [PATCH] Support XTERM function key escape sequences. --- bin/mined/mined.h | 5 +++-- bin/mined/mined1.c | 22 +++++++++++++++++++--- 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/bin/mined/mined.h b/bin/mined/mined.h index 1db7e0e528..511d8040b0 100644 --- a/bin/mined/mined.h +++ b/bin/mined/mined.h @@ -33,7 +33,7 @@ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * [original code from minix codebase] - * $DragonFly: src/bin/mined/mined.h,v 1.3 2005/03/15 02:25:25 dillon Exp $* + * $DragonFly: src/bin/mined/mined.h,v 1.4 2005/03/15 02:32:57 dillon Exp $* */ /*========================================================================* * Mined.h * @@ -43,6 +43,7 @@ #define INTEL 1 #define CHIP INTEL #define ASSUME_CONS25 +#define ASSUME_XTERM #include #include @@ -325,7 +326,7 @@ _PROTOTYPE(char *basename, (char *path )); _PROTOTYPE(void load_file, (char *file )); _PROTOTYPE(int get_line, (int fd, char *buffer )); _PROTOTYPE(LINE *install_line, (char *buffer, int length )); -_PROTOTYPE(void main, (int argc, char *argv [])); +_PROTOTYPE(int main, (int argc, char *argv [])); _PROTOTYPE(void RD, (void)); _PROTOTYPE(void I, (void)); _PROTOTYPE(void XT, (void)); diff --git a/bin/mined/mined1.c b/bin/mined/mined1.c index 1c0ac4be75..1673767494 100644 --- a/bin/mined/mined1.c +++ b/bin/mined/mined1.c @@ -33,7 +33,7 @@ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * [original code from minix codebase] - * $DragonFly: src/bin/mined/mined1.c,v 1.3 2005/03/15 02:25:25 dillon Exp $* + * $DragonFly: src/bin/mined/mined1.c,v 1.4 2005/03/15 02:32:57 dillon Exp $* */ /* * Part one of the mined editor. @@ -1478,7 +1478,8 @@ int length; return new_line; } -void main(argc, argv) +int +main(argc, argv) int argc; char *argv[]; { @@ -1604,7 +1605,6 @@ int c; if (c == '[') { /* Start of ASCII escape sequence. */ c = getchar(); - printf("C = %c\n", c); #if (CHIP == M68000) #ifndef COMPAT if ((c >= '0') && (c <= '9')) ch = getchar(); @@ -1669,6 +1669,22 @@ int c; } return(I); } +#ifdef ASSUME_XTERM + if (c == 'O') { + /* Start of ASCII function key escape sequence. */ + switch (getchar()) { + case 'P': return(HLP); /* F1 */ + case 'Q': return(FS); /* F2 */ + case 'R': return(SF); /* F3 */ + case 'S': return(GR); /* F4 */ + case '2': + switch (getchar()) { + case 'R': return(SR); /* shift-F3 */ + } + break; + } + } +#endif #if (CHIP == M68000) #ifdef COMPAT if (c == 'O') { -- 2.41.0