assorted updates. check for <sys/termios.h> include <sys/termios.h> if
authorNalin Dahyabhai <nalin@src.gnome.org>
Fri, 30 Apr 2004 01:16:53 +0000 (01:16 +0000)
committerNalin Dahyabhai <nalin@src.gnome.org>
Fri, 30 Apr 2004 01:16:53 +0000 (01:16 +0000)
* README: assorted updates.
* configure.in: check for <sys/termios.h>
* src/pty.c: include <sys/termios.h> if found (#141392).
* src/dumpkeys.c, src/mev.c, src/pty.c, src/ssfe.c, src/vte.c: do the same.
* doc/reference/vte-sections.txt: add several functions which are new but
which weren't in the generated docs before.
* doc/reference/vte-unused.txt: sort.

13 files changed:
ChangeLog
README
configure.in
doc/reference/tmpl/reaper.sgml
doc/reference/tmpl/vte.sgml
doc/reference/vte-sections.txt
src/Makefile.am
src/dumpkeys.c
src/mev.c
src/pty.c
src/ssfe.c
src/vte.c
src/vte.h

index 4eea2ea..0a01092 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2004-04-29 nalin
+       * README: assorted updates.
+       * configure.in: check for <sys/termios.h>
+       * src/pty.c: include <sys/termios.h> if found (#141392).
+       * src/dumpkeys.c, src/mev.c, src/pty.c, src/ssfe.c, src/vte.c: do the
+       same.
+       * doc/reference/vte-sections.txt: add several functions which are new
+       but which weren't in the generated docs.
+       * doc/reference/vte-unused.txt: sort.
+
 2004-04-29 nalin
        * src/vte.c(vte_terminal_scroll_region): remove stray debug printfs.
 
diff --git a/README b/README
index 10aefa3..9bd50fe 100644 (file)
--- a/README
+++ b/README
@@ -4,12 +4,15 @@
   libtermcap or curses or ncurses) to determine how to drive a terminal, why
   can't a terminal emulator use a termcap file to determine how to behave?"
 
+  Update: the answer is most likely "because applications which use curses
+  have more detailed information than that which is found in termcap".
+
 * What does VTE include?
 - VTE includes a library (libvte) which implements such a terminal emulator
-  widget for GTK+ 2.0, and a sample application (vte) which wraps that widget
-  in a GTK window.  Because I'm more concerned with whether or not it works,
-  all settings are hard-coded to whatever I needed to test the last time I
-  touched it.  If you actually want to use the widget to get work done, you
+  widget for GTK+ 2.2/2.4, and a sample application (vte) which wraps that
+  widget in a GTK window.  Because I'm more concerned with whether or not it
+  works, all settings are hard-coded to whatever I needed to test the last time
+  touched it.  If you actually want to use the widget to get work done, you
   should probably be using gnome-terminal.
 
 * How does it work?
 
 * What's missing?
 - Accessibility doesn't work quite right yet.
-- Mouse hilite tracking isn't implemented yet.
+- Mouse hilite tracking isn't implemented yet.  If you'll pardon the pun, for
+  certain applications we're terminally unusable without it.
+- No support for bidirectional text display.
+- No support for shaping.
 - Most control sequences are recognized, but many aren't implemented.  There
   are enough to run ls, vim, less, emacs and mutt, but more need to be
   implemented (ds, ff, hd, hu, i1, i3, iP, is, LF, LO, MC, ML, mm, mo, pf, pk,
   pl, pn, po, pO, ps, px, r1, r2, r3, RA, RF, rp, rs, RX, SA, SX, wi, several
   more from the XTerm set).
 - I'm not sure the widget implementation itself is correct.  There are many
-  changes in going from GTK+ 1.2 to 2.0, and examples of the proper way to do
+  changes in going from GTK+ 1.2 to 2.x, and examples of the proper way to do
   things is currently scarce, so some of it's guesswork.
 - An actual property interface needs to be retrofitted over the various options
   which are only presented as get/set accessors.
 
 * What's weird?
-- Relative cursor motion is weird.  When the character to the right of the
+- Relative cursor motion is weird.  When the character to the left of the
   cursor is a 3-byte UTF-8 sequence for a character which occupies two
   columns on the screen, three things may happen when the application sends
   the "cursor left" control sequence:
@@ -45,7 +51,8 @@
     application to emit a control sequence more than once for multi-column
     characters.
   * the cursor moves one "byte" to the left
-    This happens to work for a few locales, and is otherwise just broken.
+    This is what most OS kernels do when reading input using "cat".  It
+    happens to work for a few locales, and is otherwise just plain broken.
   Currently VTE follows the second convention.  More on this topic:
   http://czyborra.com/unicode/terminals.html
   http://mail.nl.linux.org/linux-utf8/1999-10/msg00014.html
index 1d3ccf1..52b2b8b 100644 (file)
@@ -234,7 +234,8 @@ AC_DEFINE(VTE_UTF8_BPC,6,[Maximum number of bytes used per UTF-8 character.])
 AC_DEFINE_UNQUOTED(PACKAGE,"$PACKAGE",[Package name.])
 
 # Check for headers.
-AC_CHECK_HEADERS(sys/select.h sys/un.h stropts.h termios.h wchar.h)
+AC_CHECK_HEADERS(sys/select.h sys/termios.h sys/un.h stropts.h termios.h wchar.h)
+AC_HEADER_TIOCGWINSZ
 
 # Check for PTY handling functions.
 AC_CHECK_FUNCS(cfmakeraw getpgid getpt grantpt unlockpt ptsname ptsname_r recvmsg)
index c37681b..6ba64e0 100644 (file)
@@ -41,3 +41,12 @@ Emitted when the #VteReaper object detects that a child of the current process h
 @Returns: 
 
 
+<!-- ##### FUNCTION vte_reaper_add_child ##### -->
+<para>
+
+</para>
+
+@pid: 
+@data: 
+
+
index 6e86307..5d407f0 100644 (file)
@@ -474,6 +474,24 @@ keys.
 @bold: 
 
 
+<!-- ##### FUNCTION vte_terminal_set_color_cursor ##### -->
+<para>
+
+</para>
+
+@terminal: 
+@cursor_background: 
+
+
+<!-- ##### FUNCTION vte_terminal_set_color_highlight ##### -->
+<para>
+
+</para>
+
+@terminal: 
+@highlight_background: 
+
+
 <!-- ##### FUNCTION vte_terminal_set_colors ##### -->
 <para>
 
@@ -586,6 +604,30 @@ keys.
 @name: 
 
 
+<!-- ##### FUNCTION vte_terminal_set_font_from_string_full ##### -->
+<para>
+
+</para>
+
+@terminal: 
+@name: 
+@antialias: 
+<!-- # Unused Parameters # -->
+@anti_alias: 
+
+
+<!-- ##### FUNCTION vte_terminal_set_font_full ##### -->
+<para>
+
+</para>
+
+@terminal: 
+@font_desc: 
+@antialias: 
+<!-- # Unused Parameters # -->
+@anti_alias: 
+
+
 <!-- ##### FUNCTION vte_terminal_get_font ##### -->
 <para>
 
@@ -768,6 +810,16 @@ keys.
 @cursor: 
 
 
+<!-- ##### FUNCTION vte_terminal_match_set_cursor_type ##### -->
+<para>
+
+</para>
+
+@terminal: 
+@tag: 
+@cursor_type: 
+
+
 <!-- ##### FUNCTION vte_terminal_set_emulation ##### -->
 <para>
 
@@ -786,6 +838,15 @@ keys.
 @Returns: 
 
 
+<!-- ##### FUNCTION vte_terminal_get_default_emulation ##### -->
+<para>
+
+</para>
+
+@terminal: 
+@Returns: 
+
+
 <!-- ##### FUNCTION vte_terminal_set_encoding ##### -->
 <para>
 
index 833b85c..cda5b87 100644 (file)
@@ -26,6 +26,8 @@ vte_terminal_set_color_bold
 vte_terminal_set_color_foreground
 vte_terminal_set_color_background
 vte_terminal_set_color_dim
+vte_terminal_set_color_cursor
+vte_terminal_set_color_highlight
 vte_terminal_set_colors
 vte_terminal_set_default_colors
 vte_terminal_set_background_image
@@ -38,6 +40,8 @@ vte_terminal_set_cursor_blinks
 vte_terminal_set_scrollback_lines
 vte_terminal_set_font
 vte_terminal_set_font_from_string
+vte_terminal_set_font_from_string_full
+vte_terminal_set_font_full
 vte_terminal_get_font
 vte_terminal_get_using_xft
 vte_terminal_get_has_selection
@@ -56,8 +60,10 @@ vte_terminal_match_add
 vte_terminal_match_remove
 vte_terminal_match_check
 vte_terminal_match_set_cursor
+vte_terminal_match_set_cursor_type
 vte_terminal_set_emulation
 vte_terminal_get_emulation
+vte_terminal_get_default_emulation
 vte_terminal_set_encoding
 vte_terminal_get_encoding
 vte_terminal_get_status_line
@@ -105,6 +111,7 @@ VTE_TERMINAL_ACCESSIBLE_GET_CLASS
 <TITLE>VteReaper</TITLE>
 VteReaper
 vte_reaper_get
+vte_reaper_add_child
 <SUBSECTION Standard>
 VTE_REAPER
 VTE_IS_REAPER
index 46cb487..b8f20f3 100644 (file)
@@ -92,10 +92,10 @@ libvte_la_SOURCES = \
 VERSION_REVISION=0
 # CURRENT must be incremented when an API or ABI change (addition or removal)
 # is made, and REVISION must be reset to 0 when this happens.
-VERSION_CURRENT=7
+VERSION_CURRENT=8
 # AGE must be incremented when an API or ABI addition is made, and REVISION
 # must be reset to 0 when this happens.
-VERSION_AGE=3
+VERSION_AGE=4
 libvte_la_LDFLAGS = @LDFLAGS@ -version-info $(VERSION_CURRENT):$(VERSION_REVISION):$(VERSION_AGE)
 libvte_la_LIBADD = @LIBS@ @VTE_LIBS@ @X_LIBS@
 
index 50519ab..9bdb479 100644 (file)
@@ -21,6 +21,9 @@
 #ifdef HAVE_SYS_SELECT_H
 #include <sys/select.h>
 #endif
+#ifdef HAVE_SYS_TERMIOS_H
+#include <sys/termios.h>
+#endif
 #include <sys/time.h>
 #include <sys/types.h>
 #include <unistd.h>
@@ -29,7 +32,9 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
+#ifdef HAVE_TERMIOS_H
 #include <termios.h>
+#endif
 #include <unistd.h>
 #include <glib.h>
 
index 2f00774..a9c7796 100644 (file)
--- a/src/mev.c
+++ b/src/mev.c
 #ident "$Id$"
 #include "../config.h"
 #include <sys/types.h>
+#ifdef HAVE_SYS_TERMIOS_H
+#include <sys/termios.h>
+#endif
 #include <sys/time.h>
 #include <stdio.h>
 #include <fcntl.h>
 #include <signal.h>
 #include <string.h>
+#ifdef HAVE_TERMIOS_H
 #include <termios.h>
+#endif
 #include <unistd.h>
 #include <glib.h>
 #include "caps.h"
index cf23dfb..5b6de3b 100644 (file)
--- a/src/pty.c
+++ b/src/pty.c
@@ -21,6 +21,9 @@
 #include <sys/types.h>
 #include <sys/ioctl.h>
 #include <sys/socket.h>
+#ifdef HAVE_SYS_TERMIOS_H
+#include <sys/termios.h>
+#endif
 #include <sys/uio.h>
 #include <sys/wait.h>
 #include <errno.h>
@@ -30,6 +33,9 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
+#ifdef HAVE_TERMIOS_H
+#include <termios.h>
+#endif
 #include <unistd.h>
 #ifdef HAVE_SYS_UN_H
 #include <sys/un.h>
index ee4f7ae..5d037f6 100644 (file)
 #endif
 
 #include <sys/types.h>
-#include <sys/time.h>
 #include <sys/ioctl.h>
+#ifdef HAVE_SYS_TERMIOS_H
+#include <sys/termios.h>
+#endif
+#include <sys/time.h>
 #include <errno.h>
 #include <fcntl.h>
 #include <signal.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
+#ifdef HAVE_TERMIOS_H
 #include <termios.h>
+#endif
 #include <time.h>
 #include <unistd.h>
 
index c7b04c1..da96b3d 100644 (file)
--- a/src/vte.c
+++ b/src/vte.c
@@ -24,6 +24,9 @@
 #include <sys/types.h>
 #include <sys/param.h>
 #include <sys/stat.h>
+#ifdef HAVE_SYS_TERMIOS_H
+#include <sys/termios.h>
+#endif
 #include <sys/time.h>
 #include <errno.h>
 #include <fcntl.h>
@@ -6428,7 +6431,7 @@ vte_terminal_set_color_background(VteTerminal *terminal,
 /**
  * vte_terminal_set_color_cursor
  * @terminal: a #VteTerminal
- * @background: the new color to use for the text cursor
+ * @cursor_background: the new color to use for the text cursor
  *
  * Sets the background color for text which is under the cursor.  If NULL, text
  * under the cursor will be drawn with foreground and background colors
@@ -6453,7 +6456,7 @@ vte_terminal_set_color_cursor(VteTerminal *terminal,
 /**
  * vte_terminal_set_color_highlight
  * @terminal: a #VteTerminal
- * @background: the new color to use for highlighted text
+ * @highlight_background: the new color to use for highlighted text
  *
  * Sets the background color for text which is highlighted.  If NULL,
  * highlighted text (which is usually highlighted because it is selected) will
@@ -10536,7 +10539,7 @@ vte_terminal_apply_metrics(VteTerminal *terminal,
  * vte_terminal_set_font_full:
  * @terminal: a #VteTerminal
  * @font_desc: The #PangoFontDescription of the desired font.
- * @anti_alias: Specify if anti aliasing of the fonts is to be used or not.
+ * @antialias: Specify if anti aliasing of the fonts is to be used or not.
  *
  * Sets the font used for rendering all text displayed by the terminal,
  * overriding any fonts set using gtk_widget_modify_font().  The terminal
@@ -10549,7 +10552,7 @@ vte_terminal_apply_metrics(VteTerminal *terminal,
 void
 vte_terminal_set_font_full(VteTerminal *terminal,
                           const PangoFontDescription *font_desc,
-                          VteTerminalAntiAlias anti_alias)
+                          VteTerminalAntiAlias antialias)
 {
        GtkWidget *widget;
        PangoFontDescription *desc;
@@ -10580,19 +10583,19 @@ vte_terminal_set_font_full(VteTerminal *terminal,
                }
 #endif
        }
-       terminal->pvt->fontantialias = anti_alias;
+       terminal->pvt->fontantialias = antialias;
 
        /* Free the old font description and save the new one. */
        if (terminal->pvt->fontdesc != NULL) {
                pango_font_description_free(terminal->pvt->fontdesc);
        }
        terminal->pvt->fontdesc = desc;
-       terminal->pvt->fontantialias = anti_alias;
+       terminal->pvt->fontantialias = antialias;
 
        /* Set the drawing font. */
        _vte_draw_set_text_font(terminal->pvt->draw,
                                terminal->pvt->fontdesc,
-                               anti_alias);
+                               antialias);
        vte_terminal_apply_metrics(terminal,
                                   _vte_draw_get_text_width(terminal->pvt->draw),
                                   _vte_draw_get_text_height(terminal->pvt->draw),
index df048ec..bf0ac1b 100644 (file)
--- a/src/vte.h
+++ b/src/vte.h
@@ -290,11 +290,11 @@ void vte_terminal_set_font(VteTerminal *terminal,
                           const PangoFontDescription *font_desc);
 void vte_terminal_set_font_full(VteTerminal *terminal,
                                const PangoFontDescription *font_desc,
-                               VteTerminalAntiAlias anti_alias);
+                               VteTerminalAntiAlias antialias);
 void vte_terminal_set_font_from_string(VteTerminal *terminal, const char *name);
 void vte_terminal_set_font_from_string_full(VteTerminal *terminal,
                                            const char *name,
-                                           VteTerminalAntiAlias anti_alias);
+                                           VteTerminalAntiAlias antialias);
 const PangoFontDescription *vte_terminal_get_font(VteTerminal *terminal);
 gboolean vte_terminal_get_using_xft(VteTerminal *terminal);
 void vte_terminal_set_allow_bold(VteTerminal *terminal, gboolean allow_bold);