-- sale, use or other dealings in this Software without prior written --
-- authorization. --
-------------------------------------------------------------------------------
--- $Id: NEWS,v 1.1638 2011/01/22 21:23:29 tom Exp $
+-- $Id: NEWS,v 1.1641 2011/02/05 23:40:07 tom Exp $
-------------------------------------------------------------------------------
This is a log of changes that ncurses has gone through since Zeyd started
Changes through 1.9.9e did not credit all contributions;
it is not possible to add this information.
+20110205
+ + add xterm-utf8 entry as a demo of the U8 feature -TD
+ + add U8 feature to denote entries for terminal emulators which do not
+ support VT100 SI/SO when processing UTF-8 encoding -TD
+ + improve the NCURSES_NO_UTF8_ACS feature by adding a check for an
+ extended terminfo capability U8 (prompted by mailing list
+ discussion).
+
20110122
+ start documenting interface changes for upcoming 5.8 release.
+ correct limit-checks in derwin().
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
-# $Id: dist.mk,v 1.792 2011/01/22 19:47:14 tom Exp $
+# $Id: dist.mk,v 1.794 2011/02/05 17:25:08 tom Exp $
# Makefile for creating ncurses distributions.
#
# This only needs to be used directly as a makefile by developers, but
# These define the major/minor/patch versions of ncurses.
NCURSES_MAJOR = 5
NCURSES_MINOR = 7
-NCURSES_PATCH = 20110122
+NCURSES_PATCH = 20110205
# We don't append the patch to the version, since this only applies to releases
VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
'\" t
.\"***************************************************************************
-.\" Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
+.\" Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
.\" copy of this software and associated documentation files (the *
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: ncurses.3x,v 1.101 2010/12/04 18:38:55 tom Exp $
+.\" $Id: ncurses.3x,v 1.103 2011/02/05 23:21:29 tom Exp $
.hy 0
.TH ncurses 3X ""
.de bP
When setting this variable, you should set it to a nonzero value.
Setting it to zero (or to a nonnumber)
disables the special check for "linux" and "screen".
+.IP
+As an alternative to the environment variable,
+ncurses checks for an extended terminfo capability \fBU8\fP.
+This is a numeric capability which can be compiled using \fBtic\ \-x\fP.
+For example
+.RS 5
+.sp
+.nf
+# linux console, if patched to provide working
+# VT100 shift-in/shift-out, with corresponding font.
+linux-vt100|linux console with VT100 line-graphics,
+ U8#0, use=linux,
+.sp
+# uxterm with vt100Graphics resource set to false
+xterm-utf8|xterm relying on UTF-8 line-graphics,
+ U8#1, use=xterm,
+.fi
+.RE
+.IP
+The name "U8" is chosen to be two characters,
+to permit it to be used by applications that use ncurses'
+termcap interface.
.TP 5
NCURSES_TRACE
During initialization, the \fBncurses\fR debugging library
# Report bugs and new terminal descriptions to
# bug-ncurses@gnu.org
#
-# $Revision: 1.381 $
-# $Date: 2010/12/11 23:39:36 $
+# $Revision: 1.382 $
+# $Date: 2011/02/05 23:41:18 $
#
# The original header is preserved below for reference. It is noted that there
# is a "newer" version which differs in some cosmetic details (but actually
#
linux-basic|linux console,
am, bce, eo, mir, msgr, xenl, xon,
- it#8, ncv#18,
+ it#8, ncv#18, U8#1,
acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
bel=^G, clear=\E[H\E[J, cr=^M, csr=\E[%i%p1%d;%p2%dr,
cub=\E[%p1%dD, cub1=^H, cud=\E[%p1%dB, cud1=^J,
putty|PuTTY terminal emulator,
am, bce, bw, ccc, hs, mir, msgr, xenl, xon, XT,
- colors#8, it#8, ncv#22, pairs#64,
+ colors#8, it#8, ncv#22, pairs#64, U8#1,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
clear=\E[H\E[J, cnorm=\E[?25h, cr=^M,
xterm|xterm terminal emulator (X Window System),
use=xterm-new,
+# This entry assumes that xterm's handling of VT100 SI/SO is disabled by
+# setting the vt100Graphics resource to false.
+xterm-utf8|xterm with no VT100 line-drawing in UTF-8 mode,
+ U8#1, use=xterm,
+
# These entries allow access to the X titlebar and icon name as a status line.
# Note that twm (and possibly window managers descended from it such as tvtwm,
# ctwm, and vtwm) track windows by icon-name; thus, you don't want to mess
# tested with screen 3.09.08
screen|VT 100/ANSI X3.64 virtual terminal,
OTbs, OTpt, am, km, mir, msgr, xenl, G0,
- colors#8, cols#80, it#8, lines#24, ncv@, pairs#64,
+ colors#8, cols#80, it#8, lines#24, ncv@, pairs#64, U8#1,
acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
clear=\E[H\E[J, cnorm=\E[34h\E[?25h, cr=^M,
# * suppress ncv in screen entry, allowing underline -Alejandro R. Sedeno
# * also suppress ncv in konsole-base -TD
#
+# 2011-02-05
+# * add U8 feature to denote entries for terminal emulators which do not
+# support VT100 SI/SO when processing UTF-8 encoding -TD
+# * add xterm-utf8 as a demo of the U8 feature -TD
+#
######## SHANTIH! SHANTIH! SHANTIH!
/****************************************************************************
- * Copyright (c) 1999-2006,2010 Free Software Foundation, Inc. *
+ * Copyright (c) 1999-2010,2011 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#include <tic.h>
-MODULE_ID("$Id: free_ttype.c,v 1.14 2010/01/23 17:57:43 tom Exp $")
+MODULE_ID("$Id: free_ttype.c,v 1.15 2011/02/06 01:08:31 tom Exp $")
NCURSES_EXPORT(void)
_nc_free_termtype(TERMTYPE *ptr)
{
int oldflag = _nc_user_definable;
+ START_TRACE();
T((T_CALLED("use_extended_names(%d)"), flag));
_nc_user_definable = flag;
returnBool(oldflag);
/****************************************************************************
- * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2010,2011 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#include <locale.h>
#endif
-MODULE_ID("$Id: lib_setup.c,v 1.132 2010/12/20 00:26:35 tom Exp $")
+MODULE_ID("$Id: lib_setup.c,v 1.135 2011/02/06 01:04:21 tom Exp $")
/****************************************************************************
*
NCURSES_EXPORT(int)
_nc_locale_breaks_acs(TERMINAL * termp)
{
+ const char *env_name = "NCURSES_NO_UTF8_ACS";
char *env;
+ int value;
+ int result = 0;
- if ((env = getenv("NCURSES_NO_UTF8_ACS")) != 0) {
- return atoi(env);
+ if ((env = getenv(env_name)) != 0) {
+ result = _nc_getenv_num(env_name);
+ } else if ((value = tigetnum("U8")) >= 0) {
+ result = value; /* use extension feature */
} else if ((env = getenv("TERM")) != 0) {
- if (strstr(env, "linux"))
- return 1; /* always broken */
- if (strstr(env, "screen") != 0
- && ((env = getenv("TERMCAP")) != 0
- && strstr(env, "screen") != 0)
- && strstr(env, "hhII00") != 0) {
+ if (strstr(env, "linux")) {
+ result = 1; /* always broken */
+ } else if (strstr(env, "screen") != 0
+ && ((env = getenv("TERMCAP")) != 0
+ && strstr(env, "screen") != 0)
+ && strstr(env, "hhII00") != 0) {
if (CONTROL_N(enter_alt_charset_mode) ||
CONTROL_O(enter_alt_charset_mode) ||
CONTROL_N(set_attributes) ||
- CONTROL_O(set_attributes))
- return 1;
+ CONTROL_O(set_attributes)) {
+ result = 1;
+ }
}
}
- return 0;
+ return result;
}
NCURSES_EXPORT(int)