VteTerminal

Name

VteTerminal -- A terminal widget implementation.

Synopsis



struct      VteTerminalPrivate;
enum        VteTerminalEraseBinding;
struct      VteTerminal;
GtkWidget*  vte_terminal_new                (void);
void        vte_terminal_im_append_menuitems
                                            (VteTerminal *terminal,
                                             GtkMenuShell *menushell);
pid_t       vte_terminal_fork_command       (VteTerminal *terminal,
                                             const char *command,
                                             char **argv,
                                             char **envv);
pid_t       vte_terminal_fork_logged_command
                                            (VteTerminal *terminal,
                                             const char *command,
                                             char **argv,
                                             char **envv,
                                             gboolean lastlog,
                                             gboolean utmp,
                                             gboolean wtmp);
void        vte_terminal_feed               (VteTerminal *terminal,
                                             const char *data,
                                             glong length);
void        vte_terminal_feed_child         (VteTerminal *terminal,
                                             const char *data,
                                             glong length);
void        vte_terminal_copy_clipboard     (VteTerminal *terminal);
void        vte_terminal_paste_clipboard    (VteTerminal *terminal);
void        vte_terminal_copy_primary       (VteTerminal *terminal);
void        vte_terminal_paste_primary      (VteTerminal *terminal);
void        vte_terminal_set_size           (VteTerminal *terminal,
                                             glong columns,
                                             glong rows);
void        vte_terminal_set_audible_bell   (VteTerminal *terminal,
                                             gboolean is_audible);
gboolean    vte_terminal_get_audible_bell   (VteTerminal *terminal);
void        vte_terminal_set_visible_bell   (VteTerminal *terminal,
                                             gboolean is_visible);
gboolean    vte_terminal_get_visible_bell   (VteTerminal *terminal);
void        vte_terminal_set_allow_bold     (VteTerminal *terminal,
                                             gboolean allow_bold);
gboolean    vte_terminal_get_allow_bold     (VteTerminal *terminal);
void        vte_terminal_set_scroll_on_output
                                            (VteTerminal *terminal,
                                             gboolean scroll);
void        vte_terminal_set_scroll_on_keystroke
                                            (VteTerminal *terminal,
                                             gboolean scroll);
void        vte_terminal_set_color_bold     (VteTerminal *terminal,
                                             const GdkColor *bold);
void        vte_terminal_set_color_foreground
                                            (VteTerminal *terminal,
                                             const GdkColor *foreground);
void        vte_terminal_set_color_background
                                            (VteTerminal *terminal,
                                             const GdkColor *background);
void        vte_terminal_set_colors         (VteTerminal *terminal,
                                             const GdkColor *foreground,
                                             const GdkColor *background,
                                             const GdkColor *palette,
                                             glong palette_size);
void        vte_terminal_set_default_colors (VteTerminal *terminal);
void        vte_terminal_set_background_image
                                            (VteTerminal *terminal,
                                             GdkPixbuf *image);
void        vte_terminal_set_background_image_file
                                            (VteTerminal *terminal,
                                             const char *path);
void        vte_terminal_set_background_saturation
                                            (VteTerminal *terminal,
                                             double saturation);
void        vte_terminal_set_background_transparent
                                            (VteTerminal *terminal,
                                             gboolean transparent);
void        vte_terminal_set_cursor_blinks  (VteTerminal *terminal,
                                             gboolean blink);
void        vte_terminal_set_scrollback_lines
                                            (VteTerminal *terminal,
                                             glong lines);
void        vte_terminal_set_font           (VteTerminal *terminal,
                                             const PangoFontDescription *font_desc);
void        vte_terminal_set_font_from_string
                                            (VteTerminal *terminal,
                                             const char *name);
const PangoFontDescription* vte_terminal_get_font
                                            (VteTerminal *terminal);
gboolean    vte_terminal_get_using_xft      (VteTerminal *terminal);
gboolean    vte_terminal_get_has_selection  (VteTerminal *terminal);
void        vte_terminal_set_word_chars     (VteTerminal *terminal,
                                             const char *spec);
gboolean    vte_terminal_is_word_char       (VteTerminal *terminal,
                                             gunichar c);
void        vte_terminal_set_backspace_binding
                                            (VteTerminal *terminal,
                                             VteTerminalEraseBinding binding);
void        vte_terminal_set_delete_binding (VteTerminal *terminal,
                                             VteTerminalEraseBinding binding);
void        vte_terminal_set_mouse_autohide (VteTerminal *terminal,
                                             gboolean setting);
gboolean    vte_terminal_get_mouse_autohide (VteTerminal *terminal);
void        vte_terminal_reset              (VteTerminal *terminal,
                                             gboolean full,
                                             gboolean clear_history);
char*       vte_terminal_get_text           (VteTerminal *terminal,
                                             gboolean (*is_selected) (VteTerminal *terminal,glong column,glong row),
                                             GArray *attributes);
char*       vte_terminal_get_text_range     (VteTerminal *terminal,
                                             glong start_row,
                                             glong start_col,
                                             glong end_row,
                                             glong end_col,
                                             gboolean (*is_selected) (VteTerminal *terminal,glong column,glong row),
                                             GArray *attributes);
void        vte_terminal_get_cursor_position
                                            (VteTerminal *terminal,
                                             glong *column,
                                             glong *row);
void        vte_terminal_match_clear_all    (VteTerminal *terminal);
int         vte_terminal_match_add          (VteTerminal *terminal,
                                             const char *match);
char*       vte_terminal_match_check        (VteTerminal *terminal,
                                             glong column,
                                             glong row,
                                             int *tag);
void        vte_terminal_set_emulation      (VteTerminal *terminal,
                                             const char *emulation);
const char* vte_terminal_get_emulation      (VteTerminal *terminal);
void        vte_terminal_set_encoding       (VteTerminal *terminal,
                                             const char *codeset);
const char* vte_terminal_get_encoding       (VteTerminal *terminal);
const char* vte_terminal_get_status_line    (VteTerminal *terminal);
void        vte_terminal_get_padding        (VteTerminal *terminal,
                                             int *xpad,
                                             int *ypad);


GtkAdjustment* vte_terminal_get_adjustment  (VteTerminal *terminal);
glong       vte_terminal_get_char_ascent    (VteTerminal *terminal);
glong       vte_terminal_get_char_descent   (VteTerminal *terminal);
glong       vte_terminal_get_char_height    (VteTerminal *terminal);
glong       vte_terminal_get_char_width     (VteTerminal *terminal);
glong       vte_terminal_get_column_count   (VteTerminal *terminal);
const char* vte_terminal_get_icon_title     (VteTerminal *terminal);
glong       vte_terminal_get_row_count      (VteTerminal *terminal);
const char* vte_terminal_get_window_title   (VteTerminal *terminal);

Object Hierarchy


  GObject
   +----GtkObject
         +----GtkWidget
               +----VteTerminal

Signal Prototypes


"char-size-changed"
            void        user_function      (VteTerminal *vteterminal,
                                            guint arg1,
                                            guint arg2,
                                            gpointer user_data);
"child-exited"
            void        user_function      (VteTerminal *vteterminal,
                                            gpointer user_data);
"commit"    void        user_function      (VteTerminal *vteterminal,
                                            gchar *arg1,
                                            guint arg2,
                                            gpointer user_data);
"contents-changed"
            void        user_function      (VteTerminal *vteterminal,
                                            gpointer user_data);
"cursor-moved"
            void        user_function      (VteTerminal *vteterminal,
                                            gpointer user_data);
"deiconify-window"
            void        user_function      (VteTerminal *vteterminal,
                                            gpointer user_data);
"emulation-changed"
            void        user_function      (VteTerminal *vteterminal,
                                            gpointer user_data);
"encoding-changed"
            void        user_function      (VteTerminal *vteterminal,
                                            gpointer user_data);
"eof"       void        user_function      (VteTerminal *vteterminal,
                                            gpointer user_data);
"icon-title-changed"
            void        user_function      (VteTerminal *vteterminal,
                                            gpointer user_data);
"iconify-window"
            void        user_function      (VteTerminal *vteterminal,
                                            gpointer user_data);
"lower-window"
            void        user_function      (VteTerminal *vteterminal,
                                            gpointer user_data);
"maximize-window"
            void        user_function      (VteTerminal *vteterminal,
                                            gpointer user_data);
"move-window"
            void        user_function      (VteTerminal *vteterminal,
                                            guint arg1,
                                            guint arg2,
                                            gpointer user_data);
"raise-window"
            void        user_function      (VteTerminal *vteterminal,
                                            gpointer user_data);
"refresh-window"
            void        user_function      (VteTerminal *vteterminal,
                                            gpointer user_data);
"resize-window"
            void        user_function      (VteTerminal *vteterminal,
                                            guint arg1,
                                            guint arg2,
                                            gpointer user_data);
"restore-window"
            void        user_function      (VteTerminal *vteterminal,
                                            gpointer user_data);
"selection-changed"
            void        user_function      (VteTerminal *vteterminal,
                                            gpointer user_data);
"status-line-changed"
            void        user_function      (VteTerminal *vteterminal,
                                            gpointer user_data);
"window-title-changed"
            void        user_function      (VteTerminal *vteterminal,
                                            gpointer user_data);

Description

A VteTerminal is a terminal emulator implemented as a GTK2 widget.

Details

struct VteTerminalPrivate

struct VteTerminalPrivate;


enum VteTerminalEraseBinding

typedef enum {
	VTE_ERASE_AUTO,
	VTE_ERASE_ASCII_BACKSPACE,
	VTE_ERASE_ASCII_DELETE,
	VTE_ERASE_DELETE_SEQUENCE
} VteTerminalEraseBinding;

VTE_ERASE_AUTOFor backspace, attempt to determine the right value from the terminal's IO settings. For delete, use the control sequence.
VTE_ERASE_ASCII_BACKSPACESend an ASCII backspace character (0x08).
VTE_ERASE_ASCII_DELETESend an ASCII delete character (0x7F).
VTE_ERASE_DELETE_SEQUENCESend the "7" control sequence.


struct VteTerminal

struct VteTerminal {

	/* Widget implementation stuffs. */
	GtkWidget widget;
	GtkAdjustment *adjustment;	/* Scrolling adjustment. */

	/* Metric and sizing data. */
	glong char_width, char_height;	/* dimensions of character cells */
	glong char_ascent, char_descent; /* important font metrics */
	glong row_count, column_count;	/* dimensions of the window */

	/* Titles. */
	char *window_title;
	char *icon_title;

};

GtkWidget widget 
GtkAdjustment *adjustmentScroll bar adjustments.
glong char_widthWidth of a narrow character cell.
glong char_heightHeight of a character cell.
glong char_ascent 
glong char_descent 
glong row_countNumber of visible rows.
glong column_countNumber of visible columns.
char *window_titleThe terminal's idea of what the window's title should be.
char *icon_titleThe terminal's idea of what the window's title should be when iconified.


vte_terminal_new ()

GtkWidget*  vte_terminal_new                (void);

Create a new terminal widget.

Returns : a new VteTerminal object


vte_terminal_im_append_menuitems ()

void        vte_terminal_im_append_menuitems
                                            (VteTerminal *terminal,
                                             GtkMenuShell *menushell);

Appends menu items for various input methods to the given menu. The user can select one of these items to modify the input method used by the terminal.

terminal : a VteTerminal
menushell : a GtkMenuShell


vte_terminal_fork_command ()

pid_t       vte_terminal_fork_command       (VteTerminal *terminal,
                                             const char *command,
                                             char **argv,
                                             char **envv);

Starts the specified command under a newly-alllocated control pseudo-terminal. TERM is automatically set to reflect the terminal widget's emulation setting.

terminal : a VteTerminal
command : the name of a binary to run
argv : the argument list to be passed to command
envv : a list of environment variables to be added to the environment before starting command
Returns : the ID of the new process


vte_terminal_fork_logged_command ()

pid_t       vte_terminal_fork_logged_command
                                            (VteTerminal *terminal,
                                             const char *command,
                                             char **argv,
                                             char **envv,
                                             gboolean lastlog,
                                             gboolean utmp,
                                             gboolean wtmp);

Starts the specified command under a newly-alllocated control pseudo-terminal. TERM is automatically set to reflect the terminal widget's emulation setting. If lastlog, utmp, or wtmp are TRUE, logs the session to the specified system log files.

terminal : a VteTerminal
command : the name of a binary to run
argv : the argument list to be passed to command
envv : a list of environment variables to be added to the environment before starting command
lastlog : TRUE if the session should be logged to the lastlog
utmp : TRUE if the session should be logged to the utmp/utmpx log
wtmp : TRUE if the session should be logged to the wtmp/wtmpx log
Returns : the ID of the new process


vte_terminal_feed ()

void        vte_terminal_feed               (VteTerminal *terminal,
                                             const char *data,
                                             glong length);

Interprets data as if it were data received from a child process. This can either be used to drive the terminal without a child process, or just to mess with your users.

terminal : a VteTerminal
data : a string
length : the length of the string


vte_terminal_feed_child ()

void        vte_terminal_feed_child         (VteTerminal *terminal,
                                             const char *data,
                                             glong length);

Sends a block of UTF-8 text to the child as if it were entered by the user at the keyboard.

terminal : a VteTerminal
data : data to send to the child
length : length of text


vte_terminal_copy_clipboard ()

void        vte_terminal_copy_clipboard     (VteTerminal *terminal);

Places the selected text in the terminal in the GDK_SELECTION_CLIPBOARD selection.

terminal : a VteTerminal


vte_terminal_paste_clipboard ()

void        vte_terminal_paste_clipboard    (VteTerminal *terminal);

Sends the contents of the GDK_SELECTION_CLIPBOARD selection to the terminal's child. If necessary, the data is converted from UTF-8 to the terminal's current encoding.

terminal : a VteTerminal


vte_terminal_copy_primary ()

void        vte_terminal_copy_primary       (VteTerminal *terminal);

Places the selected text in the terminal in the GDK_SELECTION_PRIMARY selection.

terminal : a VteTerminal


vte_terminal_paste_primary ()

void        vte_terminal_paste_primary      (VteTerminal *terminal);

Sends the contents of the GDK_SELECTION_PRIMARY selection to the terminal's child. If necessary, the data is converted from UTF-8 to the terminal's current encoding. The terminal will call also paste the GDK_SELECTION_PRIMARY selection when the user clicks with the the second mouse button.

terminal : a VteTerminal


vte_terminal_set_size ()

void        vte_terminal_set_size           (VteTerminal *terminal,
                                             glong columns,
                                             glong rows);

Attempts to change the terminal's size in terms of rows and columns. If the attempt succeeds, the widget will resize itself to the proper size.

terminal : a VteTerminal
columns : the desired number of columns
rows : the desired number of rows


vte_terminal_set_audible_bell ()

void        vte_terminal_set_audible_bell   (VteTerminal *terminal,
                                             gboolean is_audible);

Controls whether or not the terminal will beep when the child outputs the "bl" sequence.

terminal : a VteTerminal
is_audible : TRUE if the terminal should beep


vte_terminal_get_audible_bell ()

gboolean    vte_terminal_get_audible_bell   (VteTerminal *terminal);

Checks whether or not the terminal will beep when the child outputs the "bl" sequence.

terminal : a VteTerminal
Returns : TRUE if audible bell is enabled, FALSE if not


vte_terminal_set_visible_bell ()

void        vte_terminal_set_visible_bell   (VteTerminal *terminal,
                                             gboolean is_visible);

Controls whether or not the terminal will present a visible bell to the user when the child outputs the "bl" sequence. The terminal will clear itself to the default foreground color and then repaint itself.

terminal : a VteTerminal
is_visible : TRUE if the terminal should flash


vte_terminal_get_visible_bell ()

gboolean    vte_terminal_get_visible_bell   (VteTerminal *terminal);

Checks whether or not the terminal will present a visible bell to the user when the child outputs the "bl" sequence. The terminal will clear itself to the default foreground color and then repaint itself.

terminal : a VteTerminal
Returns : TRUE if visible bell is enabled, FALSE if not


vte_terminal_set_allow_bold ()

void        vte_terminal_set_allow_bold     (VteTerminal *terminal,
                                             gboolean allow_bold);

Controls whether or not the terminal will attempt to draw bold text by repainting text with a different offset.

terminal : a VteTerminal
allow_bold : TRUE if the terminal should attempt to draw bold text


vte_terminal_get_allow_bold ()

gboolean    vte_terminal_get_allow_bold     (VteTerminal *terminal);

Checks whether or not the terminal will attempt to draw bold text by repainting text with a one-pixel offset.

terminal : a VteTerminal
Returns : TRUE if bolding is enabled, FALSE if not


vte_terminal_set_scroll_on_output ()

void        vte_terminal_set_scroll_on_output
                                            (VteTerminal *terminal,
                                             gboolean scroll);

Controls whether or not the terminal will forcibly scroll to the bottom of the viewable history when the new data is received from the child.

terminal : a VteTerminal
scroll : TRUE if the terminal should scroll on output


vte_terminal_set_scroll_on_keystroke ()

void        vte_terminal_set_scroll_on_keystroke
                                            (VteTerminal *terminal,
                                             gboolean scroll);

Controls whether or not the terminal will forcibly scroll to the bottom of the viewable history when the user presses a key. Modifier keys do not trigger this behavior.

terminal : a VteTerminal
scroll : TRUE if the terminal should scroll on keystrokes


vte_terminal_set_color_bold ()

void        vte_terminal_set_color_bold     (VteTerminal *terminal,
                                             const GdkColor *bold);

Sets the color used to draw bold text in the default foreground color.

terminal : a VteTerminal
bold : the new bold color


vte_terminal_set_color_foreground ()

void        vte_terminal_set_color_foreground
                                            (VteTerminal *terminal,
                                             const GdkColor *foreground);

Sets the foreground color used to draw normal text

terminal : a VteTerminal
foreground : the new foreground color


vte_terminal_set_color_background ()

void        vte_terminal_set_color_background
                                            (VteTerminal *terminal,
                                             const GdkColor *background);

Sets the background color for text which does not have a specific background color assigned. Only has effect when no background image is set and when the terminal is not transparent.

terminal : a VteTerminal
background : the new background color


vte_terminal_set_colors ()

void        vte_terminal_set_colors         (VteTerminal *terminal,
                                             const GdkColor *foreground,
                                             const GdkColor *background,
                                             const GdkColor *palette,
                                             glong palette_size);

The terminal widget uses a 19-color model comprised of the default foreground and background colors, the bold foreground color, an eight color palette, and bold versions of the eight color palette.

palette_size must be either 0, 8, or 16. If foreground is NULL and palette_size is greater than 0, the new foreground color is taken from palette[7]. If background is NULL and palette_size is greater than 0, the new background color is taken from palette[0]. If palette_size is 8, the second 8-color palette is extrapolated from the new background color and the items in palette.

terminal : a VteTerminal
foreground : the new foreground color, or NULL
background : the new background color, or NULL
palette : the color palette
palette_size : the number of entries in palette


vte_terminal_set_default_colors ()

void        vte_terminal_set_default_colors (VteTerminal *terminal);

Reset the terminal palette to reasonable compiled-in defaults.

terminal : a VteTerminal


vte_terminal_set_background_image ()

void        vte_terminal_set_background_image
                                            (VteTerminal *terminal,
                                             GdkPixbuf *image);

Sets a background image for the widget. Text which would otherwise be drawn using the default background color will instead be drawn over the specified image. If necessary, the image will be tiled to cover the widget's entire visible area.

terminal : a VteTerminal
image : a GdkPixbuf to use, or NULL to cancel


vte_terminal_set_background_image_file ()

void        vte_terminal_set_background_image_file
                                            (VteTerminal *terminal,
                                             const char *path);

Sets a background image for the widget. If specified by vte_terminal_set_background_saturation, the terminal will make its in-memory copy of the image darker for its own use.

This is a convenience wrapper for vte_terminal_set_background_image(). If your application intends to create multiple terminal widgets using the same background, performing this step yourself and just using vte_terminal_set_background_image() will reduce memory consumption.

terminal : a VteTerminal
path : path to an image file


vte_terminal_set_background_saturation ()

void        vte_terminal_set_background_saturation
                                            (VteTerminal *terminal,
                                             double saturation);

If a background image has been set using vte_terminal_set_background_image(), vte_terminal_set_background_image_file(), or vte_terminal_set_background_transparent(), the terminal will adjust the brightness of the image before drawing the image. To do so, the terminal will create a copy of the background image (or snapshot of the root window) and modify its pixel values.

If your application intends to create multiple terminal widgets with the same settings, performing this step yourself and just using vte_terminal_set_background_image() will save memory.

terminal : a VteTerminal
saturation : TRUE if the terminal should fake transparency


vte_terminal_set_background_transparent ()

void        vte_terminal_set_background_transparent
                                            (VteTerminal *terminal,
                                             gboolean transparent);

Sets the terminal's background image to the pixmap stored in the root window, adjusted so that if there are no windows below your application, the widget will appear to be transparent.

terminal : a VteTerminal
transparent : TRUE if the terminal should fake transparency


vte_terminal_set_cursor_blinks ()

void        vte_terminal_set_cursor_blinks  (VteTerminal *terminal,
                                             gboolean blink);

Sets whether or not the cursor will blink. The length of the blinking cycle is controlled by the "gtk-cursor-blink-time" GTK+ setting.

terminal : a VteTerminal
blink : TRUE if the cursor should blink


vte_terminal_set_scrollback_lines ()

void        vte_terminal_set_scrollback_lines
                                            (VteTerminal *terminal,
                                             glong lines);

Sets the length of the scrollback buffer used by the terminal. The size of the scrollback buffer will be set to the larger of this value and the number of visible rows the widget can display, so 0 can safely be used to disable scrollback. Note that this setting only affects the normal screen buffer. For terminal types which have an alternate screen buffer, no scrollback is allowed.

terminal : a VteTerminal
lines : the length of the history buffer


vte_terminal_set_font ()

void        vte_terminal_set_font           (VteTerminal *terminal,
                                             const PangoFontDescription *font_desc);

Sets the font used for rendering all text displayed by the terminal, overriding any fonts set using gtk_widget_modify_font(). The terminal will immediately attempt to load the desired font, retrieve its metrics, and attempts to resize itself to keep the same number of rows and columns.

terminal : a VteTerminal
font_desc : The PangoFontDescription of the desired font.


vte_terminal_set_font_from_string ()

void        vte_terminal_set_font_from_string
                                            (VteTerminal *terminal,
                                             const char *name);

A convenience function which converts name into a PangoFontDescription and passes it to vte_terminal_set_font().

terminal : a VteTerminal
name : A string describing the font.


vte_terminal_get_font ()

const PangoFontDescription* vte_terminal_get_font
                                            (VteTerminal *terminal);

Queries the terminal for information about the fonts which will be used to draw text in the terminal.

terminal : a VteTerminal
Returns : a PangoFontDescription describing the font the terminal is currently using to render text.


vte_terminal_get_using_xft ()

gboolean    vte_terminal_get_using_xft      (VteTerminal *terminal);

A VteTerminal can use Xft, Pango, or Xlib to draw text. This function allows an application to determine which mode the widget is in. This setting cannot be changed by the caller, but in practice usually matches the behavior of GTK+ itself.

terminal : a VteTerminal
Returns : TRUE if the terminal is using Xft to render, FALSE if the terminal is using Pango or Xlib.


vte_terminal_get_has_selection ()

gboolean    vte_terminal_get_has_selection  (VteTerminal *terminal);

Checks if the terminal currently contains selected text. Note that this is different from determining if the terminal is the owner of any GtkClipboard items.

terminal : a VteTerminal
Returns : TRUE if part of the text in the terminal is selected.


vte_terminal_set_word_chars ()

void        vte_terminal_set_word_chars     (VteTerminal *terminal,
                                             const char *spec);

When the user double-clicks to start selection, the terminal will extend the selection on word boundaries. It will treat characters included in spec as parts of words, and all other characters as word separators. Ranges of characters can be specified by separating them with a hyphen.

As a special case, if spec is NULL or the empty string, the terminal will treat all graphic non-punctuation characters as word characters.

terminal : a VteTerminal
spec : a specification


vte_terminal_is_word_char ()

gboolean    vte_terminal_is_word_char       (VteTerminal *terminal,
                                             gunichar c);

Checks if a particular character is considered to be part of a word or not, based on the values last passed to vte_terminal_set_word_chars().

terminal : a VteTerminal
c : a candidate Unicode code point
Returns : TRUE if the character is considered to be part of a word


vte_terminal_set_backspace_binding ()

void        vte_terminal_set_backspace_binding
                                            (VteTerminal *terminal,
                                             VteTerminalEraseBinding binding);

Modifies the terminal's backspace key binding, which controls what string or control sequence the terminal sends to its child when the user presses the backspace key.

terminal : a VteTerminal
binding : a VteTerminalEraseBinding for the backspace key


vte_terminal_set_delete_binding ()

void        vte_terminal_set_delete_binding (VteTerminal *terminal,
                                             VteTerminalEraseBinding binding);

Modifies the terminal's delete key binding, which controls what string or control sequence the terminal sends to its child when the user presses the delete key.

terminal : a VteTerminal
binding : a VteTerminalEraseBinding for the delete key


vte_terminal_set_mouse_autohide ()

void        vte_terminal_set_mouse_autohide (VteTerminal *terminal,
                                             gboolean setting);

Changes the value of the terminal's mouse autohide setting. When autohiding is enabled, the mouse cursor will be hidden when the user presses a key and shown when the user moves the mouse. This setting can be read using vte_terminal_get_mouse_autohide().

terminal : a VteTerminal
setting : TRUE if the autohide should be enabled


vte_terminal_get_mouse_autohide ()

gboolean    vte_terminal_get_mouse_autohide (VteTerminal *terminal);

Determines the value of the terminal's mouse autohide setting. When autohiding is enabled, the mouse cursor will be hidden when the user presses a key and shown when the user moves the mouse. This setting can be changed using vte_terminal_set_mouse_autohide().

terminal : a VteTerminal
Returns : TRUE if autohiding is enabled, FALSE if not.


vte_terminal_reset ()

void        vte_terminal_reset              (VteTerminal *terminal,
                                             gboolean full,
                                             gboolean clear_history);

Resets as much of the terminal's internal state as possible, discarding any unprocessed input data, resetting character attributes, cursor state, national character set state, status line, terminal modes (insert/delete), selection state, and encoding.

terminal : a VteTerminal
full : TRUE to reset tabstops
clear_history : TRUE to empty the terminal's scrollback buffer


vte_terminal_get_text ()

char*       vte_terminal_get_text           (VteTerminal *terminal,
                                             gboolean (*is_selected) (VteTerminal *terminal,glong column,glong row),
                                             GArray *attributes);

Extracts a view of the visible part of the string. If is_selected is not NULL, characters will only be read if is_selected returns TRUE after being passed the column and row, respectively. A vte_char_attributes structure is added to attributes for each byte added to the returned string detailing the character's position, colors, and other characteristics.

terminal : a VteTerminal
is_selected : a callback
attributes : location for storing text attributes
Returns : a text string which must be freed by the caller.


vte_terminal_get_text_range ()

char*       vte_terminal_get_text_range     (VteTerminal *terminal,
                                             glong start_row,
                                             glong start_col,
                                             glong end_row,
                                             glong end_col,
                                             gboolean (*is_selected) (VteTerminal *terminal,glong column,glong row),
                                             GArray *attributes);

Extracts a view of the visible part of the string. If is_selected is not NULL, characters will only be read if is_selected returns TRUE after being passed the column and row, respectively. A vte_char_attributes structure is added to attributes for each byte added to the returned string detailing the character's position, colors, and other characteristics. The entire scrollback buffer is scanned, so it is possible to read the entire contents of the buffer using this function.

terminal : a VteTerminal
start_row : first row to search for data
start_col : first column to search for data
end_row : last row to search for data
end_col : last column to search for data
is_selected : a callback
attributes : location for storing text attributes
Returns : a text string which must be freed by the caller.


vte_terminal_get_cursor_position ()

void        vte_terminal_get_cursor_position
                                            (VteTerminal *terminal,
                                             glong *column,
                                             glong *row);

Reads the location of the insertion cursor and returns it. The row coordinate is absolute.

terminal : a VteTerminal
column : long which will hold the column
row : long which will hold the row


vte_terminal_match_clear_all ()

void        vte_terminal_match_clear_all    (VteTerminal *terminal);

Clears the list of regular expressions the terminal uses to highlight text when the user moves the mouse cursor.

terminal : a VteTerminal


vte_terminal_match_add ()

int         vte_terminal_match_add          (VteTerminal *terminal,
                                             const char *match);

Adds a regular expression to the list of matching expressions. When the user moves the mouse cursor over a section of displayed text which matches this expression, the text will be highlighted.

terminal : a VteTerminal
match : a regular expression
Returns : an integer associated with this expression


vte_terminal_match_check ()

char*       vte_terminal_match_check        (VteTerminal *terminal,
                                             glong column,
                                             glong row,
                                             int *tag);

Checks if the text in and around the specified position matches any of the regular expressions previously set using vte_terminal_match_add(). If a match exists, the text string is returned and if tag is not NULL, the number associated with the matched regular expression will be stored in tag.

If more than one regular expression has been set with vte_terminal_match_add(), then expressions are checked in the order in which they were added.

terminal : a VteTerminal
column : the text column
row : the text row
tag : pointer to an integer
Returns : a string which matches one of the previously set regular expressions, and which must be freed by the caller.


vte_terminal_set_emulation ()

void        vte_terminal_set_emulation      (VteTerminal *terminal,
                                             const char *emulation);

Sets what type of terminal the widget attempts to emulate by scanning for control sequences defined in the system's termcap file. Unless you are interested in this feature, always use "xterm".

terminal : a VteTerminal
emulation : the name of a terminal description


vte_terminal_get_emulation ()

const char* vte_terminal_get_emulation      (VteTerminal *terminal);

Queries the terminal for its current emulation, as last set by a call to vte_terminal_set_emulation().

terminal : a VteTerminal
Returns : the name of the terminal type the widget is attempting to emulate


vte_terminal_set_encoding ()

void        vte_terminal_set_encoding       (VteTerminal *terminal,
                                             const char *codeset);

Changes the encoding the terminal will expect data from the child to be encoded with. For certain terminal types, applications executing in the terminal can change the encoding. The default encoding is defined by the application's locale settings.

terminal : a VteTerminal
codeset : a valid gconv target


vte_terminal_get_encoding ()

const char* vte_terminal_get_encoding       (VteTerminal *terminal);

Determines the name of the encoding in which the terminal expects data to be encoded.

terminal : a VteTerminal
Returns : the current encoding for the terminal.


vte_terminal_get_status_line ()

const char* vte_terminal_get_status_line    (VteTerminal *terminal);

Some terminal emulations specify a status line which is separate from the main display area, and define a means for applications to move the cursor to the status line and back.

terminal : a VteTerminal
Returns : the current contents of the terminal's status line. For terminals like "xterm", this will usually be the empty string. The string must not be modified or freed by the caller.


vte_terminal_get_padding ()

void        vte_terminal_get_padding        (VteTerminal *terminal,
                                             int *xpad,
                                             int *ypad);

Determines the amount of additional space the widget is using to pad the edges of its visible area. This is necessary for cases where characters in the selected font don't themselves include a padding area and the text itself would be contiguous with the window border. Applications which use the widget's row_count, column_count, char_height, and char_width fields to set geometry hints using gtk_window_set_geometry_hints() will need to add this value to the base size. The values returned in xpad and ypad are the total padding used in each direction, and do not need to be doubled.

terminal : a VteTerminal
xpad : address in which to store left/right-edge padding
ypad : address in which to store top/bottom-edge ypadding


vte_terminal_get_adjustment ()

GtkAdjustment* vte_terminal_get_adjustment  (VteTerminal *terminal);

An accessor function provided for the benefit of language bindings.

terminal : a VteTerminal
Returns : the contents of terminal's adjustment field


vte_terminal_get_char_ascent ()

glong       vte_terminal_get_char_ascent    (VteTerminal *terminal);

An accessor function provided for the benefit of language bindings.

terminal : a VteTerminal
Returns : the contents of terminal's char_ascent field


vte_terminal_get_char_descent ()

glong       vte_terminal_get_char_descent   (VteTerminal *terminal);

An accessor function provided for the benefit of language bindings.

terminal : a VteTerminal
Returns : the contents of terminal's char_descent field


vte_terminal_get_char_height ()

glong       vte_terminal_get_char_height    (VteTerminal *terminal);

An accessor function provided for the benefit of language bindings.

terminal : a VteTerminal
Returns : the contents of terminal's char_height field


vte_terminal_get_char_width ()

glong       vte_terminal_get_char_width     (VteTerminal *terminal);

An accessor function provided for the benefit of language bindings.

terminal : a VteTerminal
Returns : the contents of terminal's char_width field


vte_terminal_get_column_count ()

glong       vte_terminal_get_column_count   (VteTerminal *terminal);

An accessor function provided for the benefit of language bindings.

terminal : a VteTerminal
Returns : the contents of terminal's column_count field


vte_terminal_get_icon_title ()

const char* vte_terminal_get_icon_title     (VteTerminal *terminal);

An accessor function provided for the benefit of language bindings.

terminal : a VteTerminal
Returns : the contents of terminal's icon_title field


vte_terminal_get_row_count ()

glong       vte_terminal_get_row_count      (VteTerminal *terminal);

An accessor function provided for the benefit of language bindings.

terminal : a VteTerminal
Returns : the contents of terminal's row_count field


vte_terminal_get_window_title ()

const char* vte_terminal_get_window_title   (VteTerminal *terminal);

An accessor function provided for the benefit of language bindings.

terminal : a VteTerminal
Returns : the contents of terminal's window_title field

Signals

The "char-size-changed" signal

void        user_function                  (VteTerminal *vteterminal,
                                            guint arg1,
                                            guint arg2,
                                            gpointer user_data);

Emitted whenever selection of a new font causes the values of the char_width or char_height fields to change.

vteterminal :the object which received the signal.
arg1 :the new character cell width.
arg2 :the new character cell height.
user_data :user data set when the signal handler was connected.


The "child-exited" signal

void        user_function                  (VteTerminal *vteterminal,
                                            gpointer user_data);

This signal is emitted when the terminal detects that a child started using vte_terminal_fork_command() has exited.

vteterminal :the object which received the signal.
user_data :user data set when the signal handler was connected.


The "commit" signal

void        user_function                  (VteTerminal *vteterminal,
                                            gchar *arg1,
                                            guint arg2,
                                            gpointer user_data);

Emitted whenever the terminal receives input from the user and prepares to send it to the child process. The signal is emitted even when there is no child process.

vteterminal :the object which received the signal.
arg1 :a string of text.
arg2 :the length of that string of text.
user_data :user data set when the signal handler was connected.


The "contents-changed" signal

void        user_function                  (VteTerminal *vteterminal,
                                            gpointer user_data);

Emitted whenever the visible appearance of the terminal has changed. Used primarily by VteTerminalAccessible.

vteterminal :the object which received the signal.
user_data :user data set when the signal handler was connected.


The "cursor-moved" signal

void        user_function                  (VteTerminal *vteterminal,
                                            gpointer user_data);

Emitted whenever the cursor moves to a new character cell. Used primarily by VteTerminalAccessible.

vteterminal :the object which received the signal.
user_data :user data set when the signal handler was connected.


The "deiconify-window" signal

void        user_function                  (VteTerminal *vteterminal,
                                            gpointer user_data);

Emitted at the child application's request.

vteterminal :the object which received the signal.
user_data :user data set when the signal handler was connected.


The "emulation-changed" signal

void        user_function                  (VteTerminal *vteterminal,
                                            gpointer user_data);

vteterminal :the object which received the signal.
user_data :user data set when the signal handler was connected.


The "encoding-changed" signal

void        user_function                  (VteTerminal *vteterminal,
                                            gpointer user_data);

vteterminal :the object which received the signal.
user_data :user data set when the signal handler was connected.


The "eof" signal

void        user_function                  (VteTerminal *vteterminal,
                                            gpointer user_data);

vteterminal :the object which received the signal.
user_data :user data set when the signal handler was connected.


The "icon-title-changed" signal

void        user_function                  (VteTerminal *vteterminal,
                                            gpointer user_data);

Emitted when the terminal's icon_title field is modified.

vteterminal :the object which received the signal.
user_data :user data set when the signal handler was connected.


The "iconify-window" signal

void        user_function                  (VteTerminal *vteterminal,
                                            gpointer user_data);

Emitted at the child application's request.

vteterminal :the object which received the signal.
user_data :user data set when the signal handler was connected.


The "lower-window" signal

void        user_function                  (VteTerminal *vteterminal,
                                            gpointer user_data);

Emitted at the child application's request.

vteterminal :the object which received the signal.
user_data :user data set when the signal handler was connected.


The "maximize-window" signal

void        user_function                  (VteTerminal *vteterminal,
                                            gpointer user_data);

Emitted at the child application's request.

vteterminal :the object which received the signal.
user_data :user data set when the signal handler was connected.


The "move-window" signal

void        user_function                  (VteTerminal *vteterminal,
                                            guint arg1,
                                            guint arg2,
                                            gpointer user_data);

Emitted at the child application's request.

vteterminal :the object which received the signal.
arg1 :the terminal's desired location, X coordinate.
arg2 :the terminal's desired location, Y coordinate.
user_data :user data set when the signal handler was connected.


The "raise-window" signal

void        user_function                  (VteTerminal *vteterminal,
                                            gpointer user_data);

Emitted at the child application's request.

vteterminal :the object which received the signal.
user_data :user data set when the signal handler was connected.


The "refresh-window" signal

void        user_function                  (VteTerminal *vteterminal,
                                            gpointer user_data);

Emitted at the child application's request.

vteterminal :the object which received the signal.
user_data :user data set when the signal handler was connected.


The "resize-window" signal

void        user_function                  (VteTerminal *vteterminal,
                                            guint arg1,
                                            guint arg2,
                                            gpointer user_data);

Emitted at the child application's request.

vteterminal :the object which received the signal.
arg1 :the desired width in pixels.
arg2 :the desired height in pixels.
user_data :user data set when the signal handler was connected.


The "restore-window" signal

void        user_function                  (VteTerminal *vteterminal,
                                            gpointer user_data);

Emitted at the child application's request.

vteterminal :the object which received the signal.
user_data :user data set when the signal handler was connected.


The "selection-changed" signal

void        user_function                  (VteTerminal *vteterminal,
                                            gpointer user_data);

Emitted whenever the contents of terminal's selection changes.

vteterminal :the object which received the signal.
user_data :user data set when the signal handler was connected.


The "status-line-changed" signal

void        user_function                  (VteTerminal *vteterminal,
                                            gpointer user_data);

Emitted whenever the contents of the status line are modified or cleared.

vteterminal :the object which received the signal.
user_data :user data set when the signal handler was connected.


The "window-title-changed" signal

void        user_function                  (VteTerminal *vteterminal,
                                            gpointer user_data);

Emitted when the terminal's window_title field is modified.

vteterminal :the object which received the signal.
user_data :user data set when the signal handler was connected.