diff options
author | Todd C. Miller <millert@cvs.openbsd.org> | 1999-02-11 00:09:38 +0000 |
---|---|---|
committer | Todd C. Miller <millert@cvs.openbsd.org> | 1999-02-11 00:09:38 +0000 |
commit | 108187ab833d9ad9eb7b31c59913131ca545f039 (patch) | |
tree | 1ee69d745de9bd778dc7d95bdcd72c090916068b | |
parent | deede640d45cf7a8dd047a97f85ff8666e116dc2 (diff) |
Update to ncurses-4.2-990206:
suppress sc/rc capabilities from terminal description if they appear
in smcup/rmcup. This affects only scrolling optimization, to fix a
problem reported by several people with xterm's alternate screen,
though the problem is more general.
-rw-r--r-- | lib/libcurses/curs_addch.3tbl | 33 | ||||
-rw-r--r-- | lib/libcurses/curs_deleteln.3 | 6 | ||||
-rw-r--r-- | lib/libcurses/curses.h | 4 | ||||
-rw-r--r-- | lib/libcurses/terminfo.5tbl | 12 | ||||
-rw-r--r-- | lib/libcurses/tty/lib_mvcur.c | 18 |
5 files changed, 42 insertions, 31 deletions
diff --git a/lib/libcurses/curs_addch.3tbl b/lib/libcurses/curs_addch.3tbl index a6547e7521d..cd67028ef9a 100644 --- a/lib/libcurses/curs_addch.3tbl +++ b/lib/libcurses/curs_addch.3tbl @@ -1,5 +1,5 @@ '\" t -.\" $OpenBSD: curs_addch.3tbl,v 1.7 1999/01/18 19:07:11 millert Exp $ +.\" $OpenBSD: curs_addch.3tbl,v 1.8 1999/02/11 00:09:36 millert Exp $ .\" .\"*************************************************************************** .\" Copyright (c) 1998 Free Software Foundation, Inc. * @@ -29,7 +29,7 @@ .\" authorization. * .\"*************************************************************************** .\" -.\" $From: curs_addch.3x,v 1.15 1998/11/29 01:03:52 Rick.Ohnemus Exp $ +.\" $From: curs_addch.3x,v 1.16 1999/02/07 03:47:42 tom Exp $ .TH curs_addch 3 "" .SH NAME \fBaddch\fR, \fBwaddch\fR, \fBmvaddch\fR, \fBmvwaddch\fR, @@ -136,30 +136,19 @@ descriptions. .SH NOTES Note that \fBaddch\fR, \fBmvaddch\fR, \fBmvwaddch\fR, and \fBechochar\fR may be macros. -.SH EXTENSIONS -The following extended \fBcurses\fR features are available only on PC-clone -consoles and compatible terminals obeying the ANSI.SYS de-facto standard for -terminal control sequences. They are not part of XSI curses. - -The attribute A_ALTCHARSET actually forces literal display of PC ROM characters -including the high-half graphics. Your console driver may still capture or -translate a few (such as ESC) but this feature should give you access to the -card-suit characters, up and down-arrow, and most others in the range 0-32. -(In a terminfo entry designed for use with \fBncurses\fR, the high-half -characters are obtained using this attribute with an \fBacsc\fR string in -which the second of each pair is a high-half character.) - -Giving \fBwechochar\fR an argument with its high bit set will produce the -corresponding high-half ASCII graphic (SVr4 curses also has this feature but -does not document it). A control-character argument, however, will not -typically produce the corresponding graphic; characters such as CR, NL, FF and -TAB are typically interpreted by the console driver itself, and ESC will be -interpreted as the leader of a control sequence. .SH PORTABILITY All these functions are described in the XSI Curses standard, Issue 4. The defaults specified for forms-drawing characters apply in the POSIX locale. -The seven ACS symbols starting with \fBACS_S3\fR were not documented in +Some ACS symbols +(ACS_S3, +ACS_S7, +ACS_LEQUAL, +ACS_GEQUAL, +ACS_PI, +ACS_NEQUAL, +ACS_STERLING) +were not documented in any publicly released System V. However, many publicly available terminfos include \fBacsc\fR strings in which their key characters (pryz{|}) are embedded, and a second-hand list of their character descriptions has come diff --git a/lib/libcurses/curs_deleteln.3 b/lib/libcurses/curs_deleteln.3 index 526e1238595..b58e85909c1 100644 --- a/lib/libcurses/curs_deleteln.3 +++ b/lib/libcurses/curs_deleteln.3 @@ -1,4 +1,4 @@ -.\" $OpenBSD: curs_deleteln.3,v 1.5 1998/09/13 19:16:18 millert Exp $ +.\" $OpenBSD: curs_deleteln.3,v 1.6 1999/02/11 00:09:36 millert Exp $ .\" .\"*************************************************************************** .\" Copyright (c) 1998 Free Software Foundation, Inc. * @@ -28,7 +28,7 @@ .\" authorization. * .\"*************************************************************************** .\" -.\" $From: curs_deleteln.3x,v 1.4 1998/03/11 21:12:53 juergen Exp $ +.\" $From: curs_deleteln.3x,v 1.5 1999/02/07 03:58:20 tom Exp $ .TH curs_deleteln 3 "" .SH NAME \fBdeleteln\fR, \fBwdeleteln\fR, \fBinsdelln\fR, @@ -71,7 +71,7 @@ These functions are described in the XSI Curses standard, Issue 4. The standard specifies that they return \fBERR\fR on failure, but specifies no error conditions. .SH NOTES -Note that all but \fBwinsdelln\fR may be a macros. +Note that all but \fBwinsdelln\fR may be macros. These routines do not require a hardware line delete or insert feature in the terminal. In fact, they won't use hardware line delete/insert unless diff --git a/lib/libcurses/curses.h b/lib/libcurses/curses.h index fc0b7a85858..eabb2cee83f 100644 --- a/lib/libcurses/curses.h +++ b/lib/libcurses/curses.h @@ -1,4 +1,4 @@ -/* $OpenBSD: curses.h,v 1.17 1999/01/31 20:17:06 millert Exp $ */ +/* $OpenBSD: curses.h,v 1.18 1999/02/11 00:09:36 millert Exp $ */ /**************************************************************************** * Copyright (c) 1998 Free Software Foundation, Inc. * @@ -50,7 +50,7 @@ /* These are defined only in curses.h, and are used for conditional compiles */ #define NCURSES_VERSION_MAJOR 4 #define NCURSES_VERSION_MINOR 2 -#define NCURSES_VERSION_PATCH 990130 +#define NCURSES_VERSION_PATCH 990206 /* This is defined in more than one ncurses header, for identification */ #undef NCURSES_VERSION diff --git a/lib/libcurses/terminfo.5tbl b/lib/libcurses/terminfo.5tbl index 7110266ee87..a0601e624c6 100644 --- a/lib/libcurses/terminfo.5tbl +++ b/lib/libcurses/terminfo.5tbl @@ -33,7 +33,7 @@ .\"*************************************************************************** .\" .\" $From: terminfo.head,v 1.8 1998/03/11 21:12:53 juergen Exp $ -.\" $OpenBSD: terminfo.5tbl,v 1.3 1999/01/31 20:17:07 millert Exp $ +.\" $OpenBSD: terminfo.5tbl,v 1.4 1999/02/11 00:09:37 millert Exp $ .TH TERMINFO 5 "" "" "File Formats" .ds n 5 .ds d /usr/share/terminfo @@ -1623,7 +1623,7 @@ YI Set page length to #1 hundredth of an inch T} .TE .ad -.\" $Id: terminfo.5tbl,v 1.3 1999/01/31 20:17:07 millert Exp $ +.\" $From: terminfo.tail,v 1.28 1999/02/07 03:30:04 tom Exp $ .\" Beginning of terminfo.tail file .ps +1 .PP @@ -2808,6 +2808,14 @@ SVr4 curses does nothing with \fBncv\fR, ncurses recognizes it and optimizes the output in favor of colors. .PP .SS Miscellaneous +If the terminal requires other than a null (zero) character as a pad, then this +can be given as pad. +Only the first character of the pad string is used. +If the terminal does not have a pad character, specify npc. +Note that ncurses implements the termcap-compatible \fBPC\fR variable; +though the application may set this value to something other than +a null, ncurses will test \fBnpc\fR first and use napms if the terminal +has no pad character. .PP If the terminal can move up or down half a line, this can be indicated with diff --git a/lib/libcurses/tty/lib_mvcur.c b/lib/libcurses/tty/lib_mvcur.c index 9d15770f150..a096cb6b16d 100644 --- a/lib/libcurses/tty/lib_mvcur.c +++ b/lib/libcurses/tty/lib_mvcur.c @@ -1,4 +1,4 @@ -/* $OpenBSD: lib_mvcur.c,v 1.1 1999/01/18 19:10:26 millert Exp $ */ +/* $OpenBSD: lib_mvcur.c,v 1.2 1999/02/11 00:09:37 millert Exp $ */ /**************************************************************************** * Copyright (c) 1998 Free Software Foundation, Inc. * @@ -155,7 +155,7 @@ #include <term.h> #include <ctype.h> -MODULE_ID("$From: lib_mvcur.c,v 1.55 1998/12/05 02:04:48 tom Exp $") +MODULE_ID("$From: lib_mvcur.c,v 1.56 1999/02/01 12:04:15 tom Exp $") #define STRLEN(s) (s != 0) ? strlen(s) : 0 @@ -389,6 +389,20 @@ void _nc_mvcur_init(void) SP->_cursor_to_ll_length = STRLEN(cursor_to_ll); /* + * If save_cursor is used within enter_ca_mode, we should not use it for + * scrolling optimization, since the corresponding restore_cursor is not + * nested on the various terminals (vt100, xterm, etc.) which use this + * feature. + */ + if (save_cursor != 0 + && enter_ca_mode != 0 + && strstr(enter_ca_mode, save_cursor) != 0) { + T(("...suppressed sc/rc capability due to conflict with smcup/rmcup")); + save_cursor = 0; + restore_cursor = 0; + } + + /* * A different, possibly better way to arrange this would be to set * SP->_endwin = TRUE at window initialization time and let this be * called by doupdate's return-from-shellout code. |