Commit 2149ce6c authored by Nalin Dahyabhai's avatar Nalin Dahyabhai
Browse files

Skip lookups for padding information if we're pretty sure we're using a

* src/vte.c: Skip lookups for padding information if we're pretty sure we're
	using a monospaced font.
* src/vte.c: Fix from Brian Cameron for uninitialized GError in
	vte_wc_from_unichar().
* src/interpret.c, src/iso2022.c, src/pty.c, src/ring.h, src/table.c,
	src/table.h, src/trie.c, src/vte.c, src/vteaccess.c: Signed/unsigned
	int/size_t/gsize and pointer typecast warning fixes from Brian Cameron.
* src/vte.c: Avoid invalidating the cursor in the cursor blink timeout unless
	we have focus.
* src/pty.c, src/pty.h: Add vte_pty_close() and vte_pty_open_with_logging(),
	breaking the ABI but not the existing API.
* src/vte.c, src/vte.h: Add vte_terminal_fork_logged_command(), breaking the
	ABI but not the existing API.
* gnome-pty-helper/*: Swallow the pty helper bits of gnome-libs, but install
	into $pkglibdir instead of $sbindir so that existing packages don't
	suddenly start breaking.
* src/termcap.c(_vte_termcap_find_string_length): Fix signature to match the
	declaration in termcap.h.  From patch by Jacob Berkman.
* configure.in: Add $X_PRE_LIBS to the front of $X_LIBS, -lX11 and $X_EXTRA_LIBS
	to the end of $X_LIBS.  Remove some cruftiness and set CPPFLAGS when
	checking for Xft.  Check for the existence of wchar.h, because it might
	not exist.  Use an automake conditional to make compilation of the
	Python bindings non-critical.  From patch by Jacob Berkman.
* src/pty.c: Silence compiler warning when exec() fails.  From patch by Jacob
	Berkman.
* src/interpret.c, src/vte.c: Stop including langinfo.h since we don't call
	nl_langinfo() any more.  Adapted from patch by Jacob Berkman.
* src/caps.c: Fill in a couple of missing initializers.
* src/vte.c, src/vte.h: Add accessor functions for use in language bindings,
	breaking the ABI but not the API.
* python/vte.defs: Add defs for the new accessor functions.
* python/vte-demo.py: Add a scrollbar to the sample window, handle more of the
	options the C version handles.  Stop expecting additional arguments with
	a signal that doesn't include any.
* python/Makefile.am: We only have one target, so don't bother with
	target-specific primaries if we can avoid it (#92252).
* vte.pc.in: Note build dependencies on ATK, Pango, and PangoX.
parent 8b212c6c
2002-09-10 Jacob Berkman <jacob@ximian.com>
2002-09-11 nalin
* src/vte.c: Skip lookups for padding information if we're pretty sure
we're using a monospaced font.
2002-09-10 nalin
* src/vte.c: Fix from Brian Cameron for uninitialized GError in
vte_wc_from_unichar().
* src/interpret.c, src/iso2022.c, src/pty.c, src/ring.h, src/table.c,
src/table.h, src/trie.c, src/vte.c, src/vteaccess.c: Signed/unsigned
int/size_t/gsize and pointer typecast warning fixes from Brian Cameron.
* src/vte.c: Avoid invalidating the cursor in the cursor blink
timeout unless we have focus.
2002-09-10 Jacob Berkman <jacob@ximian.com>
* configure.in (ALL_LINGUAS: remove es until the file really gets
added. also it wasn't added alphabetically
......@@ -7,6 +19,39 @@
* configure.in: Added "es" to ALL_LINGUAS
2002-09-10 nalin
* src/pty.c, src/pty.h: Add vte_pty_close() and
vte_pty_open_with_logging(), breaking the ABI.
* src/vte.c, src/vte.h: Add vte_terminal_fork_logged_command(), breaking
the ABI.
* gnome-pty-helper/*: Swallow the pty helper bits of gnome-libs,
but install into $pkglibdir instead of $sbindir so that existing
packages don't suddenly start breaking.
* src/termcap.c(_vte_termcap_find_string_length): Fix signature to
match the declaration in termcap.h. From patch by Jacob Berkman.
2002-09-06 nalin
* configure.in: Add $X_PRE_LIBS to the front of $X_LIBS, -lX11 and
$X_EXTRA_LIBS to the end of $X_LIBS. Remove some cruftiness and set
CPPFLAGS when checking for Xft. Check for the existence of wchar.h,
because it might not exist. Use an automake conditional to make
compilation of the Python bindings non-critical. From patch by
Jacob Berkman.
* src/pty.c: Silence compiler warning when exec() fails. From patch
by Jacob Berkman.
* src/interpret.c, src/vte.c: Stop including langinfo.h since we don't
call nl_langinfo() any more. Adapted from patch by Jacob Berkman.
* src/caps.c: Fill in a couple of missing initializers.
* src/vte.c, src/vte.h: Add accessor functions for use in language
bindings.
* python/vte.defs: Add defs for the new accessor functions.
* python/vte-demo.py: Add a scrollbar to the sample window, handle
more of the options the C version handles. Stop expecting additional
arguments with a signal that doesn't include any.
* python/Makefile.am: We only have one target, so don't bother with
target-specific primaries if we can avoid it (#92252).
* vte.pc.in: Note build dependencies on ATK, Pango, and PangoX.
2002-09-05 nalin
* src/caps.c, src/caps.h, src/debug.c, src/debug.h, src/interpret.c,
src/iso2022.c, src/iso2022.h, src/pty.c, src/reaper.c, src/ring.c,
......
This entire tree is "some highly unsupported crackrock". Please contact me
directly if you intend to hack on it.
This entire tree is "some highly unsupported crackrock", yet it seems to have
reached some degree of stability. Please contact me directly if you intend to
hack on it.
Thanks,
......
SUBDIRS = src python termcaps po doc
SUBDIRS = src gnome-pty-helper python termcaps po doc
EXTRA_DIST = HACKING vte.spec vte.pc.in
pkgconfigdir = $(libdir)/pkgconfig
......
0.9: gnome-pty-helper integration, with lastlog/utmp/wtmp logging
0.8: iso-2022 substitutions
0.7: faster rendering
0.6: faster input parsing
0.5: internal wchar_t -> gunichar migration
0.4: (later than should have been) Xft2, python
0.3: accessibility peer
prehistory
......@@ -19,7 +19,7 @@
illustrates more or less what the widget sees after it filters incoming data.
* What's missing?
- Accessibility isn't completed yet.
- Accessibility may not work yet.
- Mouse hilite tracking isn't implemented yet.
- Extending the selection using shift+click pays attention to whether or not
the existing selection was done word-at-a-time or line-at-a-time, but
......
AC_INIT(configure.in)
AC_INIT(vte.pc.in)
VERSION=`grep ^Version: $srcdir/vte.spec | awk '{print $NF}'`
AM_INIT_AUTOMAKE(vte,$VERSION)
AC_ISC_POSIX
AC_PROG_CC
AC_STDC_HEADERS
AM_PROG_CC_STDC
AM_MAINTAINER_MODE
AM_PROG_LIBTOOL
ALL_LINGUAS="da de fr nl no pt_BR sv vi"
AM_GLIB_GNU_GETTEXT
......@@ -12,57 +19,59 @@ AC_EGREP_CPP(glibc,
#endif
],
AC_DEFINE(_GNU_SOURCE,1,[Use all features.]))
# AC_SYS_LARGEFILE
# On some OSs, AC_PATH_XTRA doesn't work right(?), so let the user specify
# X_PRE_LIBS and X_EXTRA_LIBS to add even more libraries, and add -lX11 to
# the list of libraries for grins.
AC_PATH_XTRA
PKG_CHECK_MODULES(GLIB,[glib-2.0 gobject-2.0])
PKG_CHECK_MODULES(GTK, [glib-2.0 gobject-2.0 gdk-pixbuf-2.0 gtk+-2.0 pangox])
X_LIBS="$X_PRE_LIBS $X_LIBS -lX11 $X_EXTRA_LIBS"
PKG_CHECK_MODULES(GOBJECT,[glib-2.0 gobject-2.0])
savelibs="$LIBS"
LIBS="$X_LIBS $LIBS"
if pkg-config --exists pangoxft '>=' 1.1.0 ; then
havexft=1
AC_DEFINE(HAVE_XFT2,1,[Whether we have Xft version 2])
PKG_CHECK_MODULES(XFT,[xft])
PKG_CHECK_MODULES(VTE,[glib-2.0 gobject-2.0 gdk-pixbuf-2.0 gtk+-2.0 pangox fontconfig xft])
else
savelibs="$LIBS"
LIBS="$GTK_LIBS"
AC_CHECK_FUNC(XftDrawString32,
[AC_CHECK_HEADER(X11/Xft/Xft.h, havexft=1)])
LIBS="$savelibs"
PKG_CHECK_MODULES(VTE,[glib-2.0 gobject-2.0 gdk-pixbuf-2.0 gtk+-2.0 pangox])
fi
LIBS="$savelibs"
# Check whether the combination of X and GLib/Pango/GTK+ libraries includes
# Xft somewhere.
savecppflags="$CPPFLAGS"
savelibs="$LIBS"
CPPFLAGS="$VTE_CFLAGS $X_CFLAGS $CPPFLAGS"
LIBS="$VTE_LIBS $X_LIBS"
AC_CHECK_FUNC(XftDrawString32,[AC_DEFINE(HAVE_XFT,1,[Whether or not Xft is available.])])
CPPFLAGS="$savecppflags"
LIBS="$savelibs"
# Define macros to disable accidental use of deprecated functionality.
AC_DEFINE(G_DISABLE_DEPRECATED,1,[Disable deprecated glib features.])
AC_DEFINE(GDK_DISABLE_DEPRECATED,1,[Disable deprecated gdk features.])
AC_DEFINE(GDK_PIXBUF_DISABLE_DEPRECATED,1,[Disable deprecated gdk-pixbuf features.])
AC_DEFINE(GTK_DISABLE_DEPRECATED,1,[Disable deprecated gtk features.])
AC_DEFINE(PANGO_DISABLE_DEPRECATED,1,[Disable deprecated pango features.])
AC_DEFINE(VTE_UTF8_BPC,6,[Maximum number of bytes used per UTF-8 character.])
AC_DEFINE_UNQUOTED(PACKAGE,"$PACKAGE",[Package name.])
AC_CHECK_FUNCS(getpt grantpt unlockpt ptsname ptsname_r)
AC_CHECK_HEADERS(termios.h)
AC_CHECK_HEADERS(stropts.h)
# Double-check that the GTK libraries pulled in Xft functionality, then use
# the GTK CFLAGS to find the Xft headers.
savelibs="$LIBS"
LIBS="$GTK_LIBS"
havexft=0
AC_CHECK_FUNC(XftDrawString32,havexft=1)
LIBS="$savelibs"
if test x$havexft = x1 ; then
AC_DEFINE(HAVE_XFT, 1, [Whether not Xft is available.])
fi
AM_MAINTAINER_MODE
AC_CHECK_HEADERS(sys/un.h stropts.h termios.h wchar.h)
if test x$USE_MAINTAINER_MODE != x ; then
if test x$USE_MAINTAINER_MODE != xno ; then
if test x$GCC = xyes ; then
CFLAGS="${CFLAGS} -std=c99"
CFLAGS="${CFLAGS} -Wall"
CFLAGS="${CFLAGS} -Wunused"
CFLAGS="${CFLAGS} -Wuninitialized"
CFLAGS="${CFLAGS} -Waggregate-return"
CFLAGS="${CFLAGS} -Wcast-align"
CFLAGS="${CFLAGS} -Wimplicit"
CFLAGS="${CFLAGS} -Wstrict-prototypes"
CFLAGS="${CFLAGS} -Wmissing-prototypes"
CFLAGS="${CFLAGS} -Wmissing-declarations"
CFLAGS="${CFLAGS} -Wcast-align"
CFLAGS="${CFLAGS} -Wmissing-prototypes"
CFLAGS="${CFLAGS} -Wpointer-arith"
CFLAGS="${CFLAGS} -Wstrict-prototypes"
CFLAGS="${CFLAGS} -Wuninitialized"
#CFLAGS="${CFLAGS} −Wsign−compare"
#CFLAGS="${CFLAGS} −Wunused-value"
fi
VTE_DEBUG=1
fi
......@@ -99,11 +108,22 @@ else
fi
AC_SUBST(PYTHONREV)
AC_SUBST(PYTHONMODULES)
AM_CONDITIONAL(BUILD_PYTHON_BINDINGS, test "x$PYTHONMODULES" '!=' "x")
mylibdir=`eval echo $libdir`
mydatadir=`eval echo $datadir`
if test x$exec_prefix = xNONE ; then
if test x$prefix = xNONE ; then
mylibdir=` echo $mylibdir | sed s,NONE,$ac_default_prefix,g`
else
mylibdir=` echo $mylibdir | sed s,NONE,$prefix,g`
fi
fi
if test x$prefix = xNONE ; then
mydatadir=`echo $mydatadir | sed s,NONE,$ac_default_prefix,g`
fi
AC_DEFINE_UNQUOTED(PKGLIBDIR,"$mylibdir/$PACKAGE",
[The location where package-specific helpers can be found.])
AC_DEFINE_UNQUOTED(DATADIR,"$mydatadir",
[The location where arch-independent package-specific data can be found.])
AC_DEFINE_UNQUOTED(LOCALEDIR,"$mydatadir/locale",
......@@ -112,6 +132,11 @@ AC_DEFINE_UNQUOTED(LOCALEDIR,"$mydatadir/locale",
GETTEXT_PACKAGE=vte
AC_SUBST(GETTEXT_PACKAGE)
AC_ARG_ENABLE(gnome-pty-helper, [ --enable-gnome-pty-helper Build a setuid helper for opening ptys [default=yes]], enable_gnome_pty_helper="$enableval", enable_gnome_pty_helper=yes)
if test "$enable_gnome_pty_helper" != no; then
AC_CONFIG_SUBDIRS(gnome-pty-helper)
fi
################################################################################
# This is a check for gtk-doc which you can insert into your configure.in.
......@@ -164,6 +189,7 @@ AM_CONDITIONAL(ENABLE_GTK_DOC, test x$enable_gtk_doc = xyes)
################################################################################
AM_CONFIG_HEADER(config.h)
AC_OUTPUT([
Makefile
src/Makefile
......
## Process this file with automake to produce Makefile.in
# This is a blank Makefile.am for using gtk-doc.
# Copy this to your project's API docs directory and modify the variables to
# suit your project. See the GTK+ Makefiles in gtk+/docs/reference for examples
# of using the various options.
MAINTAINERCLEANFILES = html/*
# This file was adapted from the sample Makefile.am included with gtk-doc.
# See the GTK+ Makefiles in gtk+/docs/reference for examples of using the
# various options.
# The name of the module, e.g. 'glib'.
DOC_MODULE=vte
......@@ -46,8 +47,8 @@ extra_files =
# CFLAGS and LDFLAGS for compiling scan program. Only needed if your app/lib
# contains GtkObjects/GObjects and you want to document signals and properties.
GTKDOC_CFLAGS = @GTK_CFLAGS@ -I$(srcdir)/../../src
GTKDOC_LIBS = @GTK_LIBS@ ../../src/libvte.la
GTKDOC_CFLAGS = @VTE_CFLAGS@ -I$(srcdir)/../../src
GTKDOC_LIBS = @VTE_LIBS@ ../../src/libvte.la
GTKDOC_CC=$(LIBTOOL) --mode=compile $(CC)
GTKDOC_LD=$(LIBTOOL) --mode=link $(CC)
......
<!-- ##### SECTION ./tmpl/caps.sgml:Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION ./tmpl/caps.sgml:See_Also ##### -->
<para>
</para>
<!-- ##### SECTION ./tmpl/caps.sgml:Short_Description ##### -->
Global structures which contain terminal capability names and Xterm control
sequence definitions.
<!-- ##### SECTION ./tmpl/caps.sgml:Title ##### -->
caps
<!-- ##### SECTION ./tmpl/debug.sgml:Long_Description ##### -->
<para>
Functions in libvte will only output debugging information if the library was
configured with --enable-maintainer-mode.
</para>
<!-- ##### SECTION ./tmpl/debug.sgml:See_Also ##### -->
<para>
</para>
<!-- ##### SECTION ./tmpl/debug.sgml:Short_Description ##### -->
Facilities for enabling debugging message output from libvte.
<!-- ##### SECTION ./tmpl/debug.sgml:Title ##### -->
debug
<!-- ##### SECTION ./tmpl/iso2022.sgml:Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION ./tmpl/iso2022.sgml:See_Also ##### -->
<para>
</para>
<!-- ##### SECTION ./tmpl/iso2022.sgml:Short_Description ##### -->
A state machine for converting #gunichar strings with embedded ISO-2022 control
sequences into plain #gunichar strings.
<!-- ##### SECTION ./tmpl/iso2022.sgml:Title ##### -->
iso2022
<!-- ##### SECTION ./tmpl/marshal.sgml:Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION ./tmpl/marshal.sgml:See_Also ##### -->
<para>
</para>
<!-- ##### SECTION ./tmpl/marshal.sgml:Short_Description ##### -->
Signal marshalers.
<!-- ##### SECTION ./tmpl/marshal.sgml:Title ##### -->
marshal
<!-- ##### SECTION ./tmpl/ring.sgml:Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION ./tmpl/ring.sgml:See_Also ##### -->
<para>
</para>
<!-- ##### SECTION ./tmpl/ring.sgml:Short_Description ##### -->
<!-- ##### SECTION ./tmpl/ring.sgml:Title ##### -->
ring
<!-- ##### SECTION ./tmpl/table.sgml:Long_Description ##### -->
<para>
This control sequence parser uses a tree of tables, similar in design to that
used by Xterm, but generated dynamically at run-time using data from the system
termcap database.
</para>
<!-- ##### SECTION ./tmpl/table.sgml:See_Also ##### -->
<para>
</para>
<!-- ##### SECTION ./tmpl/table.sgml:Short_Description ##### -->
The tree-of-tables sequence parser.
<!-- ##### SECTION ./tmpl/table.sgml:Title ##### -->
table
<!-- ##### SECTION ./tmpl/termcap.sgml:Long_Description ##### -->
<para>
</para>
<!-- ##### SECTION ./tmpl/termcap.sgml:See_Also ##### -->
<para>
</para>
<!-- ##### SECTION ./tmpl/termcap.sgml:Short_Description ##### -->
A set of functions for parsing the system termcap database.
<!-- ##### SECTION ./tmpl/termcap.sgml:Title ##### -->
termcap
<!-- ##### SECTION ./tmpl/trie.sgml:Long_Description ##### -->
<para>
This control sequence parser uses a tree of nodes and attempts to find the
control sequence which best matches a given chunk of data.
</para>
<!-- ##### SECTION ./tmpl/trie.sgml:See_Also ##### -->
<para>
</para>
<!-- ##### SECTION ./tmpl/trie.sgml:Short_Description ##### -->
The trie sequence parser.
<!-- ##### SECTION ./tmpl/trie.sgml:Title ##### -->
trie
<!-- ##### MACRO VTE_CAP_APC ##### -->
<para>
</para>
<!-- ##### MACRO VTE_CAP_CSI ##### -->
<para>
</para>
<!-- ##### MACRO VTE_CAP_ESC ##### -->
<para>
</para>
<!-- ##### MACRO VTE_CAP_OSC ##### -->
<para>
</para>
<!-- ##### MACRO VTE_CAP_PM ##### -->
<para>
</para>
<!-- ##### MACRO VTE_CAP_ST ##### -->
<para>
</para>
<!-- ##### MACRO VTE_IS_TERMINAL_ERASE_BINDING ##### -->
<para>
</para>
@obj:
<!-- ##### MACRO VTE_TYPE_TERMINAL_ERASE_BINDING ##### -->
<para>
</para>
<!-- ##### ENUM VteDebugFlags ##### -->
<para>
</para>
@VTE_DEBUG_MISC:
@VTE_DEBUG_PARSE:
@VTE_DEBUG_IO:
@VTE_DEBUG_UPDATES:
@VTE_DEBUG_EVENTS:
@VTE_DEBUG_SIGNALS:
@VTE_DEBUG_SELECTION:
@VTE_DEBUG_SUBSTITUTION:
@VTE_DEBUG_RING:
@VTE_DEBUG_PTY:
<!-- ##### STRUCT VteRing ##### -->
<para>
</para>
@free:
@user_data:
@array:
@delta:
@length:
@max:
<!-- ##### USER_FUNCTION VteRingFreeFunc ##### -->
<para>
</para>
@freeing:
@data:
<!-- ##### FUNCTION vte_capability_init ##### -->
<para>
</para>
<!-- ##### FUNCTION vte_debug_on ##### -->
<para>
</para>
@flags:
@Returns:
<!-- ##### FUNCTION vte_debug_parse_string ##### -->
<para>
</para>
@string:
<!-- ##### FUNCTION vte_iso2022_free ##### -->
<para>
</para>
@p:
<!-- ##### FUNCTION vte_iso2022_substitute ##### -->
<para>
</para>
@state:
@instring:
@length:
@outstring:
@specials:
@Returns:
<!-- ##### FUNCTION vte_ring_append ##### -->
<para>
</para>
@ring:
@data:
<!-- ##### FUNCTION vte_ring_at ##### -->
<para>
</para>
@ring:
@Param2:
@Returns:
@__ring:
@__position:
<!-- ##### FUNCTION vte_ring_contains ##### -->
<para>
</para>
@ring:
@Param2:
@Returns:
@__ring:
@__position:
<!-- ##### FUNCTION vte_ring_delta ##### -->
<para>
</para>
@ring:
@Returns:
@__ring:
<!-- ##### FUNCTION vte_ring_free ##### -->
<para>
</para>
@ring:
@free_elements:
<!-- ##### MACRO vte_ring_index ##### -->
<para>
</para>
@ring:
@cast:
@position:
@__ring:
@__cast:
@__position:
<!-- ##### FUNCTION vte_ring_insert ##### -->
<para>
</para>
@ring:
@Param2:
@data:
@position:
<!-- ##### FUNCTION vte_ring_length ##### -->
<para>
</para>
@ring:
@Returns:
@__ring:
<!-- ##### FUNCTION vte_ring_new ##### -->
<para>
</para>
@Param1:
@free:
@data:
@Returns:
@max_elements: