xterm: Changes to 'debian-unstable'
256colres.h | 2
256colres.pl | 9
88colres.h | 2
88colres.pl | 10
INSTALL | 31
MANIFEST | 13
Makefile.in | 31
README | 4
Tekproc.c | 89 -
aclocal.m4 | 19
button.c | 15
cachedGCs.c | 45
charproc.c | 160 +-
configure | 2343 +++++++++++++++++-----------------
configure.in | 35
data.c | 6
data.h | 4
debian/changelog | 27
debian/control | 4
debian/patches/900_debian_xterm.diff | 20
debian/patches/901_xterm_manpage.diff | 6
debian/rules | 8
debian/xterm.install | 2
fontutils.c | 80 -
gen-pc-fkeys.pl | 308 +++-
icons/xterm-color_32x32.xcf |binary
icons/xterm-color_32x32.xpm | 46
icons/xterm-color_48x48.xcf |binary
icons/xterm-color_48x48.xpm | 61
icons/xterm_32x32.xcf |binary
icons/xterm_32x32.xpm | 95 +
icons/xterm_48x48.xcf |binary
icons/xterm_48x48.xpm | 53
input.c | 32
keysym2ucs.c | 54
main.c | 126 +
menu.c | 7
minstall.sh | 17
misc.c | 126 +
mkdirs.sh | 19
os2main.c | 100 -
ptydata.c | 4
ptyx.h | 19
resize.c | 23
resize.man | 4
run-tic.sh | 6
terminfo | 70 -
trace.c | 7
unicode/convmap.pl | 63
unicode/keysym.map | 2110 +++++++++++++++---------------
util.c | 236 ++-
uxterm.desktop | 10
version.h | 4
wcwidth.c | 90 -
xstrings.c | 29
xstrings.h | 22
xterm.desktop | 10
xterm.h | 37
xterm.log.html | 126 +
xterm.man | 82 +
xtermcfg.hin | 3
61 files changed, 4192 insertions(+), 2772 deletions(-)
New commits:
commit 3b08609210df4894f16f3d52be71249e688b82fd
Author: Julien Cristau <jcristau@debian.org>
Date: Mon Jun 18 14:19:13 2007 +0100
Install desktop files and icons, and update changelog.
* [debian/control] Build-dep on desktop-file-utils.
* [debian/xterm.install]Add usr/share/pixmaps and usr/share/applications.
* [debian/rules] Pass (hopefully) correct DESKTOP_FLAGS to configure,
run make install-desktop, call dh_desktop.
* [debian/changelog] Update, add entries for debian bugs fixed by the new
upstream release.
diff --git a/debian/changelog b/debian/changelog
index c6d1e40..034f366 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-xterm (226-1) UNRELEASED; urgency=low
+xterm (226-1) unstable; urgency=low
[ Branden Robinson ]
* Remove debian/NEWS; the events it attested to (like the "upcoming 7.0
@@ -8,10 +8,28 @@ xterm (226-1) UNRELEASED; urgency=low
* Configure with --with-tty-group=tty, to prevent security problems in case
of buggy build environment (closes: #349142).
* New upstream release.
+ + fix an infinite loop when showing a 2-column character in a
+ 1-column screen (closes: #426863).
+ + add XF86Paste and SunPaste to the default translations
+ (closes: #422521, patch by Bernhard R Link).
+ + improve permissions logic when closing pseudo-terminal
+ (closes: #12261, patch by Nathanael Nerode, analysis by Richard
+ Braakman).
+ + add a check in case someone tries to call the popup-menu() action
+ on a menu which is not initialized (closes: #426364).
+ + fix error-checking on internal font switching for "Selection" menu
+ entry (closes: #421523).
+ + amend select/paste change from patch #225 by limiting it to
+ non-UTF-8/non-KOI8-R encoding (closes: #420974).
+ + add workaround for groff ".URL" codes which are not present in
+ some commonly-used bitmap fonts (closes: #418324).
* Update reference to xlibs-data in xterm's description, refer to xbitmaps
instead.
+ * Build-depend on desktop-file-utils to install the new desktop files for
+ xterm and uxterm, and change debian/rules and debian/xterm.install to
+ install these files and the icons.
- -- Julien Cristau <jcristau@debian.org> Mon, 18 Jun 2007 11:33:39 +0100
+ -- Julien Cristau <jcristau@debian.org> Mon, 18 Jun 2007 14:02:22 +0100
xterm (225-1) unstable; urgency=low
diff --git a/debian/control b/debian/control
index a920812..ac7b51f 100644
--- a/debian/control
+++ b/debian/control
@@ -4,7 +4,7 @@ Priority: optional
Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
Uploaders: David MartÃnez Moreno <ender@debian.org>, David Nusinow <dnusinow@debian.org>, Julien Cristau <jcristau@debian.org>
Standards-Version: 3.7.2
-Build-Depends: libncurses5-dev | libncurses-dev, libxft-dev (>> 2.1.2), libxrender-dev (>> 1:0.9.0), libxaw7-dev, debhelper (>= 4.1.16), quilt, lynx
+Build-Depends: libncurses5-dev | libncurses-dev, libxft-dev (>> 2.1.2), libxrender-dev (>> 1:0.9.0), libxaw7-dev, debhelper (>= 4.1.16), quilt, lynx, desktop-file-utils
# Reasons for Build-Depends:
#
diff --git a/debian/rules b/debian/rules
index 6ca09ca..b79b47b 100755
--- a/debian/rules
+++ b/debian/rules
@@ -38,6 +38,9 @@ STAMP_DIR:=stampdir
DEBINSTALLTREE:=$(CURDIR)/debian/tmp
+DESKTOP_FLAGS = --vendor debian \
+ --dir=$(DEBINSTALLTREE)/usr/share/applications
+
# Set up the $(STAMP_DIR) directory.
.PHONY: stampdir
stampdir: $(STAMP_DIR)/stampdir
@@ -90,7 +93,7 @@ $(STAMP_DIR)/configure: $(STAMP_DIR)/patch
--prefix=/usr --exec-prefix=/usr --mandir=/usr/share/man \
--with-app-defaults=/etc/X11/app-defaults \
--disable-imake --enable-narrowproto --enable-exec-xterm \
- $(confflags)
+ $(confflags) DESKTOP_FLAGS="$(DESKTOP_FLAGS)"
touch $@
@@ -117,7 +120,7 @@ install: build
dh_clean -k
dh_installdirs
# General installation
- $(MAKE) install mandir=/usr/share/man/man1 libdir=/etc DESTDIR=$(DEBINSTALLTREE)
+ $(MAKE) install install-desktop mandir=/usr/share/man/man1 libdir=/etc DESTDIR=$(DEBINSTALLTREE)
## Install lxterm command and manual page.
install -m 755 debian/local/lxterm $(DEBINSTALLTREE)/usr/bin
@@ -137,6 +140,7 @@ install: build
dh_installchangelogs
dh_installmenu
dh_install --sourcedir=debian/tmp --list-missing
+ dh_desktop
# Lintian overrides.
cp debian/xterm.overrides $(CURDIR)/debian/xterm/usr/share/lintian/overrides/xterm
diff --git a/debian/xterm.install b/debian/xterm.install
index 7396f24..af07cd8 100644
--- a/debian/xterm.install
+++ b/debian/xterm.install
@@ -1,3 +1,5 @@
etc/X11/app-defaults/*
usr/bin/*
usr/share/man/man1/*
+usr/share/pixmaps
+usr/share/applications
commit ec32346285de0915f332b115743681b2f6b2925a
Author: Julien Cristau <jcristau@debian.org>
Date: Mon Jun 18 11:34:41 2007 +0100
Refer to xbitmaps instead of the obsolete xlibs-data in the description.
diff --git a/debian/changelog b/debian/changelog
index 53e6e58..c6d1e40 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -8,8 +8,10 @@ xterm (226-1) UNRELEASED; urgency=low
* Configure with --with-tty-group=tty, to prevent security problems in case
of buggy build environment (closes: #349142).
* New upstream release.
+ * Update reference to xlibs-data in xterm's description, refer to xbitmaps
+ instead.
- -- Julien Cristau <jcristau@debian.org> Sun, 17 Jun 2007 22:26:02 +0100
+ -- Julien Cristau <jcristau@debian.org> Mon, 18 Jun 2007 11:33:39 +0100
xterm (225-1) unstable; urgency=low
diff --git a/debian/control b/debian/control
index b441fb3..a920812 100644
--- a/debian/control
+++ b/debian/control
@@ -109,7 +109,7 @@ Description: X terminal emulator
A complete list of control sequences supported by the X terminal emulator
is provided in /usr/share/doc/xterm.
.
- The xterm program uses bitmap images provided by the xlibs-data package.
+ The xterm program uses bitmap images provided by the xbitmaps package.
.
Those interested in using koi8rxterm will likely want to install the
xfonts-cyrillic package as well.
commit 22a317a6db2f358f53c0d0bf40a085d16da43ee9
Author: Julien Cristau <jcristau@debian.org>
Date: Sun Jun 17 22:26:44 2007 +0100
New upstream release.
diff --git a/debian/changelog b/debian/changelog
index 8f52508..53e6e58 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-xterm (225-2) UNRELEASED; urgency=low
+xterm (226-1) UNRELEASED; urgency=low
[ Branden Robinson ]
* Remove debian/NEWS; the events it attested to (like the "upcoming 7.0
@@ -7,8 +7,9 @@ xterm (225-2) UNRELEASED; urgency=low
[ Julien Cristau ]
* Configure with --with-tty-group=tty, to prevent security problems in case
of buggy build environment (closes: #349142).
+ * New upstream release.
- -- Julien Cristau <jcristau@debian.org> Sat, 19 May 2007 13:33:59 +0200
+ -- Julien Cristau <jcristau@debian.org> Sun, 17 Jun 2007 22:26:02 +0100
xterm (225-1) unstable; urgency=low
diff --git a/debian/patches/900_debian_xterm.diff b/debian/patches/900_debian_xterm.diff
index 1dedaab..66fc2ea 100644
--- a/debian/patches/900_debian_xterm.diff
+++ b/debian/patches/900_debian_xterm.diff
@@ -25,8 +25,8 @@ This patch by Branden Robinson.
Index: termcap
===================================================================
---- termcap.orig 2007-03-25 03:34:05.000000000 +0200
-+++ termcap 2007-03-25 03:34:37.000000000 +0200
+--- termcap.orig 2007-06-17 22:24:53.000000000 +0100
++++ termcap 2007-06-17 22:24:57.000000000 +0100
@@ -73,6 +73,14 @@
:so=\E[7m:sr=\EM:st=\EH:te=\E[?1049l:ti=\E[?1049h:\
:ue=\E[24m:up=\E[A:us=\E[4m:ve=\E[?25h:vi=\E[?25l:
@@ -52,9 +52,9 @@ Index: termcap
# :tc=xterm-r6:
Index: terminfo
===================================================================
---- terminfo.orig 2007-03-25 03:34:05.000000000 +0200
-+++ terminfo 2007-03-25 03:34:37.000000000 +0200
-@@ -823,6 +823,13 @@
+--- terminfo.orig 2007-06-17 22:24:53.000000000 +0100
++++ terminfo 2007-06-17 22:24:57.000000000 +0100
+@@ -885,6 +885,13 @@
u8=\E[?1;2c,
u9=\E[c,
vpa=\E[%i%p1%dd,
@@ -68,7 +68,7 @@ Index: terminfo
#
# The xterm-new description has all of the features, but is not completely
# compatible with vt220. If you are using a Sun or PC keyboard, set the
-@@ -1602,5 +1609,6 @@
+@@ -1664,5 +1671,6 @@
# is widely used for a variety of incompatible terminal emulations including
# color_xterm and rxvt.
xterm|X11 terminal emulator,
@@ -78,8 +78,8 @@ Index: terminfo
# use=xterm-r6,
Index: XTerm.ad
===================================================================
---- XTerm.ad.orig 2007-03-25 03:34:05.000000000 +0200
-+++ XTerm.ad 2007-03-25 03:34:37.000000000 +0200
+--- XTerm.ad.orig 2007-06-17 22:24:53.000000000 +0100
++++ XTerm.ad 2007-06-17 22:24:57.000000000 +0100
@@ -116,6 +116,10 @@
*tek4014*font3: 6x13
*tek4014*fontSmall: 6x10
@@ -93,8 +93,8 @@ Index: XTerm.ad
! at startup because it is needed to make the layout work for the menubar:
Index: XTerm-col.ad
===================================================================
---- XTerm-col.ad.orig 2007-03-25 03:34:05.000000000 +0200
-+++ XTerm-col.ad 2007-03-25 03:34:37.000000000 +0200
+--- XTerm-col.ad.orig 2007-06-17 22:24:53.000000000 +0100
++++ XTerm-col.ad 2007-06-17 22:24:57.000000000 +0100
@@ -7,9 +7,9 @@
*VT100*boldColors: on
*VT100*dynamicColors: on
diff --git a/debian/patches/901_xterm_manpage.diff b/debian/patches/901_xterm_manpage.diff
index 188c2b1..d113188 100644
--- a/debian/patches/901_xterm_manpage.diff
+++ b/debian/patches/901_xterm_manpage.diff
@@ -7,9 +7,9 @@ This patch by Branden Robinson and David MartÃnez.
Index: xterm.man
===================================================================
---- xterm.man.orig 2007-03-25 03:34:05.000000000 +0200
-+++ xterm.man 2007-03-25 03:34:44.000000000 +0200
-@@ -4532,10 +4532,10 @@
+--- xterm.man.orig 2007-06-17 22:24:51.000000000 +0100
++++ xterm.man 2007-06-17 22:25:02.000000000 +0100
+@@ -4596,10 +4596,10 @@
.SH FILES
The actual pathnames given may differ on your system.
.TP 5
commit f4b276156792bf4cefdf71406ec0f3935957071a
Author: Julien Cristau <jcristau@debian.org>
Date: Sun Jun 17 22:12:37 2007 +0100
Import xterm 226.
diff --git a/256colres.h b/256colres.h
index a84acd5..4b98391 100644
--- a/256colres.h
+++ b/256colres.h
@@ -1,7 +1,7 @@
/*
* This header file was generated by ./256colres.pl
*/
-/* $XFree86: xc/programs/xterm/256colres.h,v 1.5 2002/10/05 17:57:11 dickey Exp $ */
+/* $XTermId: 256colres.h,v 1.11 2007/06/12 00:44:23 tom Exp $ */
#ifndef included_256colres_h
#define included_256colres_h
diff --git a/256colres.pl b/256colres.pl
index a6b995e..a943af5 100755
--- a/256colres.pl
+++ b/256colres.pl
@@ -1,5 +1,6 @@
#! /usr/bin/perl
# Author: Thomas E. Dickey
+# $XTermId: 256colres.pl,v 1.15 2007/06/08 23:58:37 tom Exp $
# $XFree86: xc/programs/xterm/256colres.pl,v 1.8 2002/10/05 17:57:11 dickey Exp $
# Construct a header file defining default resources for the 256-color model
@@ -9,11 +10,17 @@
# reproduction of the standard ANSI colors, but possibly more
# pleasing shades
+use strict;
+
+our ( $line1, $line2, $line3 );
+our ( $red, $green, $blue, $gray );
+our ( $level, $code, @steps );
+
print <<EOF;
/*
* This header file was generated by $0
*/
-/* \$XFree86\$ */
+/* \$XTermId\$ */
#ifndef included_256colres_h
#define included_256colres_h
diff --git a/88colres.h b/88colres.h
index 94f428b..fcad714 100644
--- a/88colres.h
+++ b/88colres.h
@@ -1,7 +1,7 @@
/*
* This header file was generated by ./88colres.pl
*/
-/* $XFree86: xc/programs/xterm/88colres.h,v 1.4 2002/10/05 17:57:11 dickey Exp $ */
+/* $XTermId: 88colres.h,v 1.11 2007/06/12 00:44:21 tom Exp $ */
#ifndef included_88colres_h
#define included_88colres_h
diff --git a/88colres.pl b/88colres.pl
index 30a1a18..3fc4cd8 100755
--- a/88colres.pl
+++ b/88colres.pl
@@ -1,6 +1,6 @@
#!/usr/bin/perl
# Author: Steve Wall
-# $XTermId: 88colres.pl,v 1.15 2005/09/18 23:48:11 tom Exp $
+# $XTermId: 88colres.pl,v 1.16 2007/06/08 23:57:23 tom Exp $
# $XFree86: xc/programs/xterm/88colres.pl,v 1.7 2005/09/18 23:48:11 dickey Exp $
# Made from 256colres.pl
@@ -11,11 +11,17 @@
# reproduction of the standard ANSI colors, but possibly more
# pleasing shades
+use strict;
+
+our ( $line1, $line2, $line3 );
+our ( $red, $green, $blue, $gray );
+our ( $level, $code, @steps );
+
print <<EOF;
/*
* This header file was generated by $0
*/
-/* \$XFree86\$ */
+/* \$XTermId\$ */
#ifndef included_88colres_h
#define included_88colres_h
diff --git a/INSTALL b/INSTALL
index fd93f92..70c89c8 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,4 +1,4 @@
--- $XTermId: INSTALL,v 1.113 2007/03/18 22:46:21 tom Exp $
+-- $XTermId: INSTALL,v 1.115 2007/06/17 13:44:39 tom Exp $
-- $XFree86: xc/programs/xterm/INSTALL,v 3.42 2006/02/13 01:14:57 dickey Exp $
-------------------------------------------------------------------------------
-- Copyright 1997-2006,2007 by Thomas E. Dickey
@@ -127,6 +127,15 @@ The options (in alphabetic order):
Do not compile-in code that sets the default value of the colorMode
resource to ``true''.
+ --disable-desktop disable install of xterm desktop files
+
+ Do not install the xterm desktop files, used in menus.
+ These use the icons installed in the --with-icondir option.
+ Use the environment variable $DESKTOP_FLAGS to supply options
+ required by desktop-file-install.
+
+ Note: If desktop-utils is not found they will not be installed anyway.
+
--disable-doublechars disable support for double-size chars
Do not compile-in code that supports font-manipulation needed to
@@ -254,6 +263,10 @@ The options (in alphabetic order):
Do not install xterm using setuid/setgid permissions. Drop setuid
permissions on startup.
+ --disable-sun-fkeys
+
+ Do not compile-in code to support Sun-style function keys.
+
--disable-tek4014 disable tek4014 emulation
Do not compile-in code to support Tektronix 4014 emulation.
@@ -487,6 +500,9 @@ The options (in alphabetic order):
/usr/local, you should use this option to customize the location to
match your system configuration.
+ Use --without-app-defaults or --with-app-defaults=no to disable the
+ feature.
+
--with-freetype-cflags -D/-I options for compiling with FreeType library
Override options provided by xft-config or freetype-config.
@@ -495,6 +511,19 @@ The options (in alphabetic order):
Override options provided by xft-config or freetype-config.
+ --with-icondir=DIR directory in which to install icon files (default: EPREFIX/share/pixmaps)
+
+ The X libraries may automatically search these locations:
+
+ $HOME/.icons
+ $XDG_DATA_DIRS/icons
+ /usr/share/pixmaps
+
+ See also
+ http://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html
+
+ Use --without-icondir or --with-icondir=no to disable the feature.
+
--with-neXtaw link with neXT Athena library
Look for, compile and link with the neXT Athena widget library.
diff --git a/MANIFEST b/MANIFEST
index 3bd259e..10ed0ba 100644
--- a/MANIFEST
+++ b/MANIFEST
@@ -1,4 +1,4 @@
-MANIFEST for xterm-225, version xterm-225
+MANIFEST for xterm-226, version xterm-226
--------------------------------------------------------------------------------
MANIFEST this file
256colres.h resource-definitions for 256-color mode
@@ -80,6 +80,7 @@ trace.c debugging trace functions for 'xterm'
trace.h interface of trace.c
util.c miscellaneous utility functions for 'xterm'
uxterm wrapper script to make unicode-xterm
+uxterm.desktop sample desktop file for uxterm
version.h version of xterm
vms.c VMS version of xterm's spawn(), etc.
vms.h system headers and definitions for vms.c
@@ -89,6 +90,7 @@ xcharmouse.h Jason Bacon's mouse-defs, cleaned up a little
xstrings.c a few common string functions
xstrings.h interface of xstrings.c
xterm.dat application defaults for VMS port of 'xterm'
+xterm.desktop sample desktop file for xterm.
xterm.h common includes, definitions and prototypes for 'xterm'
xterm.log.html changelog for xterm
xterm.man manual page for 'xterm'
@@ -99,6 +101,15 @@ xtermcap.h interface of xtermcap.c
xtermcfg.hin configure script: template for xtermcfg.h
xutf8.c JC's cleanup of UTF8
xutf8.h JC's cleanup of UTF8
+icons subdirectory
+icons/xterm-color_32x32.xcf gimp file for editing 32x32 icon
+icons/xterm-color_32x32.xpm 32x32 color icon
+icons/xterm-color_48x48.xcf gimp file for editing 48x48 icon
+icons/xterm-color_48x48.xpm 48x48 color icon
+icons/xterm_32x32.xcf gimp file, for editing 32x32 icon
+icons/xterm_32x32.xpm 32x32 monochrome icon
+icons/xterm_48x48.xcf gimp file, for editing 48x48 icon
+icons/xterm_48x48.xpm 48x48 monochrome icon
tektests subdirectory
tektests/aitest.tek tek4014 demo: draw a globe
tektests/dmerc.tek tek4014 demo: draws a Mercator projection with orbit
diff --git a/Makefile.in b/Makefile.in
index 4dbca16..1d174bb 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,4 +1,4 @@
-## $XTermId: Makefile.in,v 1.145 2007/03/24 00:09:52 tom Exp $
+## $XTermId: Makefile.in,v 1.148 2007/06/16 18:47:51 tom Exp $
##
## $XFree86: xc/programs/xterm/Makefile.in,v 3.56 2006/06/19 00:36:50 dickey Exp $ ##
##
@@ -65,6 +65,7 @@ bindir = @bindir@
libdir = @libdir@
mandir = @mandir@/man$(manext)
appsdir = @appsdir@
+icondir = @icondir@
#### End of system configuration section. ####
@@ -73,8 +74,9 @@ BINDIR = $(DESTDIR)$(bindir)
LIBDIR = $(DESTDIR)$(libdir)
MANDIR = $(DESTDIR)$(mandir)
APPSDIR = $(DESTDIR)$(appsdir)
+ICONDIR = $(DESTDIR)$(icondir)
-INSTALL_DIRS = $(BINDIR) $(APPSDIR) $(MANDIR)
+INSTALL_DIRS = $(BINDIR) $(APPSDIR) $(ICONDIR) $(MANDIR)
CLASS = XTerm
EXTRAHDR = @EXTRAHDRS@
@@ -209,6 +211,16 @@ install-full :: $(MANDIR)
@no_appsdir@ @sed -e s/XTerm/$(CLASS)/ $(srcdir)/UXTerm.ad >XTerm.tmp
@no_appsdir@ @$(INSTALL_DATA) XTerm.tmp $(APPSDIR)/UXTerm
@no_appsdir@ @rm -f XTerm.tmp
+@no_icondir@ @echo "... installed app-defaults"
+
+@no_icondir@install \
+@no_icondir@install-icon \
+@no_icondir@install-full :: $(ICONDIR)
+@no_icondir@ @$(INSTALL_DATA) $(srcdir)/icons/xterm-color_32x32.xpm $(ICONDIR)
+@no_icondir@ @$(INSTALL_DATA) $(srcdir)/icons/xterm-color_48x48.xpm $(ICONDIR)
+@no_icondir@ @$(INSTALL_DATA) $(srcdir)/icons/xterm_32x32.xpm $(ICONDIR)
+@no_icondir@ @$(INSTALL_DATA) $(srcdir)/icons/xterm_48x48.xpm $(ICONDIR)
+@no_icondir@ @echo "... installed icons"
install ::
@echo 'Completed installation of executables and documentation.'
@@ -249,6 +261,21 @@ uninstall-full ::
@no_appsdir@ -$(RM) $(APPSDIR)/$(CLASS)
@no_appsdir@ -$(RM) $(APPSDIR)/$(CLASS)-color
@no_appsdir@ -$(RM) $(APPSDIR)/UXTerm
+
+@no_icondir@uninstall \
+@no_icondir@uninstall-icon \
+@no_icondir@uninstall-full ::
+@no_icondir@ -$(RM) $(ICONDIR)/xterm-color_32x32.xpm
+@no_icondir@ -$(RM) $(ICONDIR)/xterm_48x48.xpm
+@no_icondir@ -$(RM) $(ICONDIR)/xterm-color_32x32.xpm
+@no_icondir@ -$(RM) $(ICONDIR)/xterm_48x48.xpm
+################################################################################
+# Desktop-utils does not provide an uninstall, and is not uniformly available.
+@desktop_utils@DESKTOP_FLAGS = @DESKTOP_FLAGS@
+@desktop_utils@install-desktop \
+@desktop_utils@install-full ::
+@desktop_utils@ desktop-file-install $(DESKTOP_FLAGS) xterm.desktop
+@desktop_utils@ desktop-file-install $(DESKTOP_FLAGS) uxterm.desktop
################################################################################
mostlyclean :
-$(RM) *$o *.[is] XtermLog.* .pure core *~ *.bak *.BAK *.out *.tmp
diff --git a/README b/README
index f098b04..76328f4 100644
--- a/README
+++ b/README
@@ -1,3 +1,7 @@
+-- $XTermId: README,v 1.3 2007/05/24 19:49:19 tom Exp $
+-- Below is the original README for xterm from 1991, for your amusement.
+-- For a better overview, see http://invisible-island.net/xterm/
+-------------------------------------------------------------------------------
Abandon All Hope, Ye Who Enter Here
diff --git a/Tekproc.c b/Tekproc.c
index 674c93c..8d2a97b 100644
--- a/Tekproc.c
+++ b/Tekproc.c
@@ -1,4 +1,4 @@
-/* $XTermId: Tekproc.c,v 1.155 2007/03/19 23:51:52 tom Exp $ */
+/* $XTermId: Tekproc.c,v 1.156 2007/05/28 19:08:33 tom Exp $ */
/*
* Warning, there be crufty dragons here.
@@ -956,20 +956,22 @@ TekExpose(Widget w,
void
TekRefresh(TekWidget tw)
{
- TekScreen *tekscr = TekScreenOf(tw);
- TScreen *screen = TScreenOf(term);
- static Cursor wait_cursor = None;
-
- if (wait_cursor == None)
- wait_cursor = make_colored_cursor(XC_watch,
- T_COLOR(screen, MOUSE_FG),
- T_COLOR(screen, MOUSE_BG));
- XDefineCursor(XtDisplay(tw), TWindow(tekscr), wait_cursor);
- XFlush(XtDisplay(tw));
- if (!setjmp(Tekjump))
- Tekparse(tw);
- XDefineCursor(XtDisplay(tw), TWindow(tekscr),
- (tekscr->TekGIN && GINcursor) ? GINcursor : tekscr->arrow);
+ if (tw != 0) {
+ TekScreen *tekscr = TekScreenOf(tw);
+ TScreen *screen = TScreenOf(term);
+ static Cursor wait_cursor = None;
+
+ if (wait_cursor == None)
+ wait_cursor = make_colored_cursor(XC_watch,
+ T_COLOR(screen, MOUSE_FG),
+ T_COLOR(screen, MOUSE_BG));
+ XDefineCursor(XtDisplay(tw), TWindow(tekscr), wait_cursor);
+ XFlush(XtDisplay(tw));
+ if (!setjmp(Tekjump))
+ Tekparse(tw);
+ XDefineCursor(XtDisplay(tw), TWindow(tekscr),
+ (tekscr->TekGIN && GINcursor) ? GINcursor : tekscr->arrow);
+ }
}
void
@@ -1843,38 +1845,41 @@ TekSimulatePageButton(TekWidget tw, Bool reset)
void
TekCopy(TekWidget tw)
{
- TekScreen *tekscr = TekScreenOf(tw);
- TScreen *screen = TScreenOf(term);
+ if (tw != 0) {
+ TekScreen *tekscr = TekScreenOf(tw);
+ TScreen *screen = TScreenOf(term);
- TekLink *Tp;
- char buf[32];
- char initbuf[5];
- int tekcopyfd;
+ TekLink *Tp;
+ char buf[32];
+ char initbuf[5];
+ int tekcopyfd;
- timestamp_filename(buf, "COPY");
- if (access(buf, F_OK) >= 0
- && access(buf, W_OK) < 0) {
- Bell(XkbBI_MinorError, 0);
- return;
- }
+ timestamp_filename(buf, "COPY");
+ if (access(buf, F_OK) >= 0
+ && access(buf, W_OK) < 0) {
+ Bell(XkbBI_MinorError, 0);
+ return;
+ }
#ifndef VMS
- if (access(".", W_OK) < 0) { /* can't write in directory */
- Bell(XkbBI_MinorError, 0);
- return;
- }
+ if (access(".", W_OK) < 0) { /* can't write in directory */
+ Bell(XkbBI_MinorError, 0);
+ return;
+ }
#endif
- if ((tekcopyfd = open_userfile(screen->uid, screen->gid, buf, False)) >= 0) {
- sprintf(initbuf, "%c%c%c%c",
- ANSI_ESC, (char) (tekscr->page.fontsize + '8'),
- ANSI_ESC, (char) (tekscr->page.linetype + '`'));
- write(tekcopyfd, initbuf, 4);
- Tp = &Tek0;
- do {
- write(tekcopyfd, Tp->data, Tp->count);
- Tp = Tp->next;
- } while (Tp);
- close(tekcopyfd);
+ tekcopyfd = open_userfile(screen->uid, screen->gid, buf, False);
+ if (tekcopyfd >= 0) {
+ sprintf(initbuf, "%c%c%c%c",
+ ANSI_ESC, (char) (tekscr->page.fontsize + '8'),
+ ANSI_ESC, (char) (tekscr->page.linetype + '`'));
+ write(tekcopyfd, initbuf, 4);
+ Tp = &Tek0;
+ do {
+ write(tekcopyfd, Tp->data, Tp->count);
+ Tp = Tp->next;
+ } while (Tp);
+ close(tekcopyfd);
+ }
}
}
diff --git a/aclocal.m4 b/aclocal.m4
index 9ea6d3e..9931f12 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1,4 +1,4 @@
-dnl $XTermId: aclocal.m4,v 1.242 2007/03/21 22:06:40 tom Exp $
+dnl $XTermId: aclocal.m4,v 1.244 2007/05/25 00:58:44 tom Exp $
dnl
dnl $XFree86: xc/programs/xterm/aclocal.m4,v 3.65 2006/06/19 00:36:50 dickey Exp $
dnl
@@ -783,7 +783,7 @@ AC_DEFUN([CF_HELP_MESSAGE],
[AC_DIVERT_HELP([$1])dnl
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_IMAKE_CFLAGS version: 28 updated: 2006/10/28 14:00:40
+dnl CF_IMAKE_CFLAGS version: 29 updated: 2007/05/24 20:53:19
dnl ---------------
dnl Use imake to obtain compiler flags. We could, in principle, write tests to
dnl get these, but if imake is properly configured there is no point in doing
@@ -820,11 +820,14 @@ if mkdir conftestdir; then
cat >fix_cflags.sed <<'CF_EOF'
s/\\//g
+s/[[ ]][[ ]]*/ /g
s/"//g
-s/\(-D[[a-zA-Z0-9_]][[a-zA-Z0-9_]]*\)=\([[^\\'"0-9 ]][[^ ]]*\([[ ]][[ ]]*[[^- ]][[^ ]]*\)*\)/\1='\\"\2\\"'/g
-s/\(-D[[a-zA-Z0-9_]][[a-zA-Z0-9_]]*\)=\([[^\\'"0-9 ]][[^ ]]*\)[[ ]]/\1='\\"\2\\"' /g
-s/\(-D[[a-zA-Z0-9_]][[a-zA-Z0-9_]]*\)=\([[^\\'"0-9 ]][[^ ]]*\)$/\1='\\"\2\\"'/g
-s/^IMAKE[[ ]]*/IMAKE_CFLAGS="/
+:pack
+s/\(=[[^ ]][[^ ]]*\) \([[^-]]\)/\1 \2/g
+t pack
+s/\(-D[[a-zA-Z0-9_]][[a-zA-Z0-9_]]*\)=\([[^\'0-9 ]][[^ ]]*\)/\1='\\"\2\\"'/g
+s/^IMAKE[[ ]]/IMAKE_CFLAGS="/
+s/ / /g
s/$/"/
CF_EOF
@@ -2194,7 +2197,7 @@ else
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_WITH_PATH version: 7 updated: 2006/08/03 15:20:08
+dnl CF_WITH_PATH version: 8 updated: 2007/05/13 13:16:35
dnl ------------
dnl Wrapper for AC_ARG_WITH to ensure that user supplies a pathname, not just
dnl defaulting to yes/no.
@@ -2208,7 +2211,9 @@ dnl
AC_DEFUN([CF_WITH_PATH],
[AC_ARG_WITH($1,[$2 ](default: ifelse($4,,empty,$4)),,
ifelse($4,,[withval="${$3}"],[withval="${$3-ifelse($5,,$4,$5)}"]))dnl
+if ifelse($5,,true,[test -n "$5"]) ; then
CF_PATH_SYNTAX(withval)
+fi
$3="$withval"
AC_SUBST($3)dnl
])dnl
diff --git a/button.c b/button.c
index 8fe65e3..9f469bc 100644
--- a/button.c
+++ b/button.c
@@ -1,4 +1,4 @@
-/* $XTermId: button.c,v 1.272 2007/03/19 23:42:48 tom Exp $ */
+/* $XTermId: button.c,v 1.274 2007/06/17 12:55:47 tom Exp $ */
/*
* Copyright 1999-2006,2007 by Thomas E. Dickey
@@ -1039,8 +1039,8 @@ struct _SelectionList {
Time time;
};
-static int
-DECtoASCII(int ch)
+static unsigned
+DECtoASCII(unsigned ch)
{
if (ch < 32) {
ch = "###########+++++##-##++++|######"[ch];
@@ -1087,7 +1087,7 @@ UTF8toLatin1(Char * s, unsigned len, unsigned long *result)
if (eqv == value)
eqv = '#';
*q++ = eqv;
- if (iswide(value))
+ if (iswide((wchar_t) value))
*q++ = ' ';
}
}
@@ -1611,7 +1611,8 @@ SelectionReceived(Widget w,
GettingSelection(dpy, *type, line, *length);
#if OPT_WIDE_CHARS
- if (*type == XA_UTF8_STRING(dpy)) {
+ if (*type == XA_UTF8_STRING(dpy) &&
+ !(screen->wide_chars || screen->c1_printable)) {
rc = Xutf8TextPropertyToTextList(dpy, &text_prop,
&text_list, &text_list_count);
if (text_list != NULL && text_list_count != 0) {
@@ -3492,7 +3493,7 @@ SaveText(TScreen * screen,
are in memory attached to the HIDDEN_CHAR */
if_OPT_WIDE_CHARS(screen, {
if (screen->utf8_mode != uFalse) {
- int ch;
+ unsigned ch;
int off;
for (off = OFF_FINAL; off < MAX_PTRS; off += 2) {
if ((ch = XTERM_CELLC(row, i, off)) == 0)
@@ -3507,7 +3508,7 @@ SaveText(TScreen * screen,
if (screen->utf8_mode != uFalse) {
lp = convertToUTF8(lp, (c != 0) ? c : ' ');
if_OPT_WIDE_CHARS(screen, {
- int ch;
+ unsigned ch;
int off;
for (off = OFF_FINAL; off < MAX_PTRS; off += 2) {
if ((ch = XTERM_CELLC(row, i, off)) == 0)
diff --git a/cachedGCs.c b/cachedGCs.c
index ca699fb..720b884 100644
--- a/cachedGCs.c
+++ b/cachedGCs.c
@@ -1,4 +1,4 @@
-/* $XTermId: cachedGCs.c,v 1.35 2007/03/21 23:21:50 tom Exp $ */
+/* $XTermId: cachedGCs.c,v 1.38 2007/06/09 00:08:39 tom Exp $ */
/************************************************************
@@ -245,26 +245,36 @@ tracePixel(XtermWidget xw, Pixel value)
#endif /* OPT_TRACE > 1 */
#endif /* OPT_TRACE */
+static CgsCache *
+allocCache(void **cache_pointer)
+{
+ if (*cache_pointer == 0) {
+ *cache_pointer = TypeCallocN(CgsCache, gcMAX);
+ TRACE(("allocCache %p\n", cache_pointer));
+ }
+ return *((CgsCache **) cache_pointer);
+}
+
/*
- * FIXME: move the cache into XtermWidget
+ * Returns the appropriate cache pointer.
*/
static CgsCache *
-myCache(XtermWidget xw GCC_UNUSED, VTwin * cgsWin GCC_UNUSED, CgsEnum cgsId)
+myCache(XtermWidget xw, VTwin * cgsWin, CgsEnum cgsId)
{
- static CgsCache *main_cache;
- CgsCache *my_cache;
CgsCache *result = 0;
- if (main_cache == 0)
- main_cache = (CgsCache *) calloc(gcMAX, sizeof(CgsCache));
- my_cache = main_cache;
if ((int) cgsId >= 0 && cgsId < gcMAX) {
-#ifndef NO_ACTIVE_ICON
- static CgsCache icon_cache[gcMAX];
+#ifdef NO_ACTIVE_ICON
+ (void) xw;
+ (void) cgsWin;
+#else
if (cgsWin == &(xw->screen.iconVwin))
- my_cache = icon_cache;
+ result = allocCache(&(xw->screen.icon_cgs_cache));
+ else
#endif
- result = my_cache + cgsId;
+ result = allocCache(&(xw->screen.main_cgs_cache));
+
+ result += cgsId;
if (result->data == 0) {
result->data = result->list;
}
@@ -803,3 +813,14 @@ freeCgs(XtermWidget xw, VTwin * cgsWin, CgsEnum cgsId)
}
return 0;
}
+
+#ifdef NO_LEAKS
+void
+noleaks_cachedCgs(XtermWidget xw)
+{
+#ifndef NO_ACTIVE_ICON
+ free(xw->screen.icon_cgs_cache);
+#endif
+ free(xw->screen.main_cgs_cache);
+}
+#endif
diff --git a/charproc.c b/charproc.c
index 1fba22b..1f22734 100644
--- a/charproc.c
+++ b/charproc.c
@@ -1,4 +1,4 @@
-/* $XTermId: charproc.c,v 1.784 2007/03/20 23:59:25 tom Exp $ */
+/* $XTermId: charproc.c,v 1.797 2007/06/17 12:52:35 tom Exp $ */
/* $XFree86: xc/programs/xterm/charproc.c,v 3.185 2006/06/20 00:42:38 dickey Exp $ */
@@ -116,6 +116,14 @@ in this Software without prior written authorization from The Open Group.
#include <X11/Xlocale.h>
#endif
+#if HAVE_X11_SUNKEYSYM_H
+#include <X11/Sunkeysym.h>
+#endif
+
+#if HAVE_X11_XF86KEYSYM_H
+#include <X11/XF86keysym.h>
+#endif
+
#include <stdio.h>
#include <ctype.h>
@@ -220,6 +228,18 @@ static char defaultTranslations[] =
Shift <KeyPress> Select:select-cursor-start() select-cursor-end(SELECT, CUT_BUFFER0) \n\
Shift <KeyPress> Insert:insert-selection(SELECT, CUT_BUFFER0) \n\
"
+#if OPT_EXTRA_PASTE
+#ifdef XF86XK_Paste
+"\
+ <KeyPress> XF86Paste:insert-selection(SELECT, CUT_BUFFER0) \n\
+"
+#endif
+#ifdef SunXK_Paste
+"\
+ <KeyPress> SunPaste:insert-selection(SELECT, CUT_BUFFER0) \n\
+"
+#endif
+#endif /* OPT_EXTRA_PASTE */
#if OPT_SHIFT_FONTS
"\
Shift~Ctrl <KeyPress> KP_Add:larger-vt-font() \n\
@@ -399,6 +419,7 @@ static XtActionsRec actionsList[] = {
static XtResource resources[] =
{
Bres(XtNallowSendEvents, XtCAllowSendEvents, screen.allowSendEvent0, False),
+ Bres(XtNallowTitleOps, XtCAllowTitleOps, screen.allowTitleOp0, True),
Bres(XtNallowWindowOps, XtCAllowWindowOps, screen.allowWindowOp0, True),
Bres(XtNaltIsNotMeta, XtCAltIsNotMeta, screen.alt_is_not_meta, False),
Bres(XtNaltSendsEscape, XtCAltSendsEscape, screen.alt_sends_esc, False),
@@ -550,6 +571,7 @@ static XtResource resources[] =
#if OPT_HIGHLIGHT_COLOR
Tres(XtNhighlightColor, XtCHighlightColor, HIGHLIGHT_BG, XtDefaultForeground),
Tres(XtNhighlightTextColor, XtCHighlightTextColor, HIGHLIGHT_FG, XtDefaultBackground),
+ Bres(XtNhighlightReverse, XtCHighlightReverse, screen.hilite_reverse, True),
#endif /* OPT_HIGHLIGHT_COLOR */
#if OPT_INPUT_METHOD
@@ -656,6 +678,8 @@ static XtResource resources[] =
Bres(XtNvt100Graphics, XtCVT100Graphics, screen.vt100_graphics, True),
Bres(XtNwideChars, XtCWideChars, screen.wide_chars, False),
Ires(XtNcombiningChars, XtCCombiningChars, screen.max_combining, 2),
+ Ires(XtNmkSamplePass, XtCMkSamplePass, misc.mk_samplepass, 256),
+ Ires(XtNmkSampleSize, XtCMkSampleSize, misc.mk_samplesize, 1024),
Ires(XtNutf8, XtCUtf8, screen.utf8_mode, uDefault),
Sres(XtNwideBoldFont, XtCWideBoldFont, misc.default_font.f_wb, DEFWIDEBOLDFONT),
Sres(XtNwideFont, XtCWideFont, misc.default_font.f_w, DEFWIDEFONT),
@@ -1214,7 +1238,7 @@ doparsing(XtermWidget xw, unsigned c, struct ParseState *sp)
}
#endif
- /* substitute combined character with precomposed character
+ /* substitute combined character with precomposed character
* only if it does not change the width of the base character
*/
if (precomposed != -1 && my_wcwidth(precomposed) == my_wcwidth(prev)) {
@@ -3266,13 +3290,8 @@ in_put(XtermWidget xw)
#endif
#if OPT_SESSION_MGT
} else if (resource.sessionMgt) {
- /*
- * When session management is enabled, we should not block since
- * session related events can arrive any time.
- */
- select_timeout.tv_sec = 1;
- select_timeout.tv_usec = 0;
- time_select = 1;
+ if (ice_fd >= 0)
+ FD_SET(ice_fd, &select_mask);
#endif
}
Reply to: