<?xml version="1.0"?>
<!-- This file was automatically generated from C sources - DO NOT EDIT!
To affect the contents of this file, edit the original C definitions,
and/or use gtk-doc annotations.  -->
<repository version="1.2"
            xmlns="http://www.gtk.org/introspection/core/1.0"
            xmlns:c="http://www.gtk.org/introspection/c/1.0"
            xmlns:doc="http://www.gtk.org/introspection/doc/1.0"
            xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
  <include name="Gdk" version="3.0"/>
  <include name="Gtk" version="3.0"/>
  <include name="Pango" version="1.0"/>
  <include name="cairo" version="1.0"/>
  <package name="vte-2.91"/>
  <c:include name="vte/vte.h"/>
  <doc:format name="unknown"/>
  <namespace name="Vte"
             version="2.91"
             shared-library="libvte-2.91.so.2.13"
             c:identifier-prefixes="Vte"
             c:symbol-prefixes="vte">
    <enumeration name="Align"
                 version="0.76"
                 glib:type-name="VteAlign"
                 glib:get-type="vte_align_get_type"
                 c:type="VteAlign">
      <doc xml:space="preserve"
           filename="src/vte/vteenums.h"
           line="201">An enumeration type that can be used to specify how the terminal
uses extra allocated space.</doc>
      <member name="start"
              value="0"
              c:identifier="VTE_ALIGN_START"
              glib:nick="start"
              glib:name="VTE_ALIGN_START">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="203">align to left/top</doc>
      </member>
      <member name="center"
              value="1"
              c:identifier="VTE_ALIGN_CENTER"
              glib:nick="center"
              glib:name="VTE_ALIGN_CENTER">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="204">align to centre</doc>
      </member>
      <member name="end"
              value="2"
              c:identifier="VTE_ALIGN_END"
              glib:nick="end"
              glib:name="VTE_ALIGN_END">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="205">align to right/bottom</doc>
      </member>
    </enumeration>
    <function-macro name="CHECK_VERSION"
                    c:identifier="VTE_CHECK_VERSION"
                    introspectable="0">
      <doc xml:space="preserve"
           filename="src/vte/vteversion.h"
           line="61">Macro to check the library version at compile time.
It returns &lt;literal&gt;1&lt;/literal&gt; if the version of VTE is greater or
equal to the required one, and &lt;literal&gt;0&lt;/literal&gt; otherwise.</doc>
      <source-position filename="src/vte/vteversion.h" line="71"/>
      <parameters>
        <parameter name="major">
          <doc xml:space="preserve"
               filename="src/vte/vteversion.h"
               line="63">required major version</doc>
        </parameter>
        <parameter name="minor">
          <doc xml:space="preserve"
               filename="src/vte/vteversion.h"
               line="64">required minor version</doc>
        </parameter>
        <parameter name="micro">
          <doc xml:space="preserve"
               filename="src/vte/vteversion.h"
               line="65">required micro version</doc>
        </parameter>
      </parameters>
    </function-macro>
    <record name="CharAttributes"
            c:type="VteCharAttributes"
            deprecated="1"
            deprecated-version="0.68">
      <source-position filename="src/vte/vtedeprecated.h" line="213"/>
      <field name="row" readable="0" private="1">
        <type name="glong" c:type="long"/>
      </field>
      <field name="column" readable="0" private="1">
        <type name="glong" c:type="long"/>
      </field>
      <field name="fore" readable="0" private="1">
        <type name="Pango.Color" c:type="PangoColor"/>
      </field>
      <field name="back" readable="0" private="1">
        <type name="Pango.Color" c:type="PangoColor"/>
      </field>
      <field name="underline" readable="0" bits="1" private="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="strikethrough" readable="0" bits="1" private="1">
        <type name="guint" c:type="guint"/>
      </field>
      <field name="columns" readable="0" bits="4" private="1">
        <type name="guint" c:type="guint"/>
      </field>
    </record>
    <enumeration name="CursorBlinkMode"
                 glib:type-name="VteCursorBlinkMode"
                 glib:get-type="vte_cursor_blink_mode_get_type"
                 c:type="VteCursorBlinkMode">
      <doc xml:space="preserve"
           filename="src/vte/vteenums.h"
           line="30">An enumerated type which can be used to indicate the cursor blink mode
for the terminal.</doc>
      <member name="system"
              value="0"
              c:identifier="VTE_CURSOR_BLINK_SYSTEM"
              glib:nick="system"
              glib:name="VTE_CURSOR_BLINK_SYSTEM">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="32">Follow GTK+ settings for cursor blinking.</doc>
      </member>
      <member name="on"
              value="1"
              c:identifier="VTE_CURSOR_BLINK_ON"
              glib:nick="on"
              glib:name="VTE_CURSOR_BLINK_ON">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="33">Cursor blinks.</doc>
      </member>
      <member name="off"
              value="2"
              c:identifier="VTE_CURSOR_BLINK_OFF"
              glib:nick="off"
              glib:name="VTE_CURSOR_BLINK_OFF">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="34">Cursor does not blink.</doc>
      </member>
    </enumeration>
    <enumeration name="CursorShape"
                 glib:type-name="VteCursorShape"
                 glib:get-type="vte_cursor_shape_get_type"
                 c:type="VteCursorShape">
      <doc xml:space="preserve"
           filename="src/vte/vteenums.h"
           line="45">An enumerated type which can be used to indicate what should the terminal
draw at the cursor position.</doc>
      <member name="block"
              value="0"
              c:identifier="VTE_CURSOR_SHAPE_BLOCK"
              glib:nick="block"
              glib:name="VTE_CURSOR_SHAPE_BLOCK">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="47">Draw a block cursor.  This is the default.</doc>
      </member>
      <member name="ibeam"
              value="1"
              c:identifier="VTE_CURSOR_SHAPE_IBEAM"
              glib:nick="ibeam"
              glib:name="VTE_CURSOR_SHAPE_IBEAM">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="48">Draw a vertical bar on the left side of character.
This is similar to the default cursor for other GTK+ widgets.</doc>
      </member>
      <member name="underline"
              value="2"
              c:identifier="VTE_CURSOR_SHAPE_UNDERLINE"
              glib:nick="underline"
              glib:name="VTE_CURSOR_SHAPE_UNDERLINE">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="50">Draw a horizontal bar below the character.</doc>
      </member>
    </enumeration>
    <enumeration name="EraseBinding"
                 glib:type-name="VteEraseBinding"
                 glib:get-type="vte_erase_binding_get_type"
                 c:type="VteEraseBinding">
      <doc xml:space="preserve"
           filename="src/vte/vteenums.h"
           line="80">An enumerated type which can be used to indicate which string the terminal
should send to an application when the user presses the Delete or Backspace
keys.</doc>
      <member name="auto"
              value="0"
              c:identifier="VTE_ERASE_AUTO"
              glib:nick="auto"
              glib:name="VTE_ERASE_AUTO">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="82">For backspace, attempt to determine the right value from the terminal's IO settings.  For delete, use the control sequence.</doc>
      </member>
      <member name="ascii_backspace"
              value="1"
              c:identifier="VTE_ERASE_ASCII_BACKSPACE"
              glib:nick="ascii-backspace"
              glib:name="VTE_ERASE_ASCII_BACKSPACE">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="83">Send an ASCII backspace character (0x08).</doc>
      </member>
      <member name="ascii_delete"
              value="2"
              c:identifier="VTE_ERASE_ASCII_DELETE"
              glib:nick="ascii-delete"
              glib:name="VTE_ERASE_ASCII_DELETE">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="84">Send an ASCII delete character (0x7F).</doc>
      </member>
      <member name="delete_sequence"
              value="3"
              c:identifier="VTE_ERASE_DELETE_SEQUENCE"
              glib:nick="delete-sequence"
              glib:name="VTE_ERASE_DELETE_SEQUENCE">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="85">Send the "@@7" control sequence.</doc>
      </member>
      <member name="tty"
              value="4"
              c:identifier="VTE_ERASE_TTY"
              glib:nick="tty"
              glib:name="VTE_ERASE_TTY">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="86">Send terminal's "erase" setting.</doc>
      </member>
    </enumeration>
    <record name="EventContext"
            c:type="VteEventContext"
            disguised="1"
            opaque="1"
            version="0.76"
            glib:type-name="VteEventContext"
            glib:get-type="vte_event_context_get_type"
            c:symbol-prefix="event_context">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="7805">Provides context information for a context menu event.</doc>
      <source-position filename="src/vte/vteterminal.h" line="42"/>
      <method name="get_event"
              c:identifier="vte_event_context_get_event"
              version="0.76">
        <source-position filename="src/vte/vteterminal.h" line="670"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7828">the #GdkEvent that triggered the event, or %NULL if it was not
  triggered by an event</doc>
          <type name="Gdk.Event" c:type="GdkEvent*"/>
        </return-value>
        <parameters>
          <instance-parameter name="context" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7826">the #VteEventContext</doc>
            <type name="EventContext" c:type="const VteEventContext*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <bitfield name="FeatureFlags" version="0.62" c:type="VteFeatureFlags">
      <doc xml:space="preserve"
           filename="src/vte/vteenums.h"
           line="180">An enumeration type for features.</doc>
      <source-position filename="src/vte/vteenums.h" line="199"/>
      <member name="flag_bidi" value="1" c:identifier="VTE_FEATURE_FLAG_BIDI">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="182">whether VTE was built with bidirectional text support</doc>
      </member>
      <member name="flag_icu" value="2" c:identifier="VTE_FEATURE_FLAG_ICU">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="183">whether VTE was built with ICU support</doc>
      </member>
      <member name="flag_systemd"
              value="4"
              c:identifier="VTE_FEATURE_FLAG_SYSTEMD">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="184">whether VTE was built with systemd support</doc>
      </member>
      <member name="flag_sixel"
              value="8"
              c:identifier="VTE_FEATURE_FLAG_SIXEL">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="185">whether VTE was built with SIXEL support</doc>
      </member>
      <member name="flags_mask"
              value="-1"
              c:identifier="VTE_FEATURE_FLAGS_MASK">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="186">mask of all feature flags</doc>
      </member>
    </bitfield>
    <enumeration name="Format"
                 version="0.50"
                 glib:type-name="VteFormat"
                 glib:get-type="vte_format_get_type"
                 c:type="VteFormat">
      <doc xml:space="preserve"
           filename="src/vte/vteenums.h"
           line="165">An enumeration type that can be used to specify the format the selection
should be copied to the clipboard in.</doc>
      <member name="text"
              value="1"
              c:identifier="VTE_FORMAT_TEXT"
              glib:nick="text"
              glib:name="VTE_FORMAT_TEXT">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="167">Export as plain text</doc>
      </member>
      <member name="html"
              value="2"
              c:identifier="VTE_FORMAT_HTML"
              glib:nick="html"
              glib:name="VTE_FORMAT_HTML">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="168">Export as HTML formatted text</doc>
      </member>
    </enumeration>
    <function-macro name="IS_PTY" c:identifier="VTE_IS_PTY" introspectable="0">
      <source-position filename="src/vte/vtepty.h" line="51"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_PTY_CLASS"
                    c:identifier="VTE_IS_PTY_CLASS"
                    introspectable="0">
      <source-position filename="src/vte/vtepty.h" line="52"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_TERMINAL"
                    c:identifier="VTE_IS_TERMINAL"
                    introspectable="0">
      <source-position filename="src/vte/vteterminal.h" line="47"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="IS_TERMINAL_CLASS"
                    c:identifier="VTE_IS_TERMINAL_CLASS"
                    introspectable="0">
      <source-position filename="src/vte/vteterminal.h" line="48"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <constant name="MAJOR_VERSION" value="0" c:type="VTE_MAJOR_VERSION">
      <doc xml:space="preserve"
           filename="src/vte/vteversion.h"
           line="37">The major version number of the VTE library
(e.g. in version 3.1.4 this is 3).</doc>
      <source-position filename="src/vte/vteversion.h" line="43"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="MICRO_VERSION" value="1" c:type="VTE_MICRO_VERSION">
      <doc xml:space="preserve"
           filename="src/vte/vteversion.h"
           line="53">The micro version number of the VTE library
(e.g. in version 3.1.4 this is 4).</doc>
      <source-position filename="src/vte/vteversion.h" line="59"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="MINOR_VERSION" value="84" c:type="VTE_MINOR_VERSION">
      <doc xml:space="preserve"
           filename="src/vte/vteversion.h"
           line="45">The minor version number of the VTE library
(e.g. in version 3.1.4 this is 1).</doc>
      <source-position filename="src/vte/vteversion.h" line="51"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <function-macro name="PTY" c:identifier="VTE_PTY" introspectable="0">
      <source-position filename="src/vte/vtepty.h" line="49"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="PTY_CLASS"
                    c:identifier="VTE_PTY_CLASS"
                    introspectable="0">
      <source-position filename="src/vte/vtepty.h" line="50"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="PTY_GET_CLASS"
                    c:identifier="VTE_PTY_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/vte/vtepty.h" line="53"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <enumeration name="ProgressHint"
                 version="0.80"
                 glib:type-name="VteProgressHint"
                 glib:get-type="vte_progress_hint_get_type"
                 c:type="VteProgressHint">
      <doc xml:space="preserve"
           filename="src/vte/vteenums.h"
           line="322">An enum describing how to interpret progress state, for the
%VTE_TERMPROP_PROGRESS_HINT termprop.</doc>
      <member name="inactive"
              value="0"
              c:identifier="VTE_PROGRESS_HINT_INACTIVE"
              glib:nick="inactive"
              glib:name="VTE_PROGRESS_HINT_INACTIVE">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="324">no progress current</doc>
      </member>
      <member name="active"
              value="1"
              c:identifier="VTE_PROGRESS_HINT_ACTIVE"
              glib:nick="active"
              glib:name="VTE_PROGRESS_HINT_ACTIVE">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="325">progress is normal</doc>
      </member>
      <member name="error"
              value="2"
              c:identifier="VTE_PROGRESS_HINT_ERROR"
              glib:nick="error"
              glib:name="VTE_PROGRESS_HINT_ERROR">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="326">progress is aborted by an error</doc>
      </member>
      <member name="indeterminate"
              value="3"
              c:identifier="VTE_PROGRESS_HINT_INDETERMINATE"
              glib:nick="indeterminate"
              glib:name="VTE_PROGRESS_HINT_INDETERMINATE">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="327">progress is indeterminate</doc>
      </member>
      <member name="paused"
              value="4"
              c:identifier="VTE_PROGRESS_HINT_PAUSED"
              glib:nick="paused"
              glib:name="VTE_PROGRESS_HINT_PAUSED">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="328">progress is paused</doc>
      </member>
    </enumeration>
    <bitfield name="PropertyFlags"
              version="0.78"
              glib:type-name="VtePropertyFlags"
              glib:get-type="vte_property_flags_get_type"
              c:type="VtePropertyFlags">
      <doc xml:space="preserve"
           filename="src/vte/vteenums.h"
           line="236">A flags type.</doc>
      <member name="none"
              value="0"
              c:identifier="VTE_PROPERTY_FLAG_NONE"
              glib:nick="none"
              glib:name="VTE_PROPERTY_FLAG_NONE">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="238">no flags, default</doc>
      </member>
      <member name="ephemeral"
              value="1"
              c:identifier="VTE_PROPERTY_FLAG_EPHEMERAL"
              glib:nick="ephemeral"
              glib:name="VTE_PROPERTY_FLAG_EPHEMERAL">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="239">denotes an ephemeral termprop</doc>
      </member>
    </bitfield>
    <enumeration name="PropertyId"
                 version="0.78"
                 glib:type-name="VtePropertyId"
                 glib:get-type="vte_property_id_get_type"
                 c:type="VtePropertyId">
      <doc xml:space="preserve"
           filename="src/vte/vteenums.h"
           line="285">An enum containing the IDs of the always-installed termprops.</doc>
      <member name="current_directory_uri"
              value="0"
              c:identifier="VTE_PROPERTY_ID_CURRENT_DIRECTORY_URI"
              glib:nick="current-directory-uri"
              glib:name="VTE_PROPERTY_ID_CURRENT_DIRECTORY_URI">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="287">the ID of the %VTE_TERMPROP_CURRENT_DIRECTORY_URI termprop</doc>
      </member>
      <member name="current_file_uri"
              value="1"
              c:identifier="VTE_PROPERTY_ID_CURRENT_FILE_URI"
              glib:nick="current-file-uri"
              glib:name="VTE_PROPERTY_ID_CURRENT_FILE_URI">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="288">the ID of the %VTE_TERMPROP_CURRENT_FILE_URI termprop</doc>
      </member>
      <member name="xterm_title"
              value="2"
              c:identifier="VTE_PROPERTY_ID_XTERM_TITLE"
              glib:nick="xterm-title"
              glib:name="VTE_PROPERTY_ID_XTERM_TITLE">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="289">the ID of the %VTE_TERMPROP_XTERM_TITLE termprop</doc>
      </member>
      <member name="container_name"
              value="3"
              c:identifier="VTE_PROPERTY_ID_CONTAINER_NAME"
              glib:nick="container-name"
              glib:name="VTE_PROPERTY_ID_CONTAINER_NAME">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="290">the ID of the %VTE_TERMPROP_CONTAINER_NAME termprop</doc>
      </member>
      <member name="container_runtime"
              value="4"
              c:identifier="VTE_PROPERTY_ID_CONTAINER_RUNTIME"
              glib:nick="container-runtime"
              glib:name="VTE_PROPERTY_ID_CONTAINER_RUNTIME">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="291">the ID of the %VTE_TERMPROP_CONTAINER_RUNTIME termprop</doc>
      </member>
      <member name="container_uid"
              value="5"
              c:identifier="VTE_PROPERTY_ID_CONTAINER_UID"
              glib:nick="container-uid"
              glib:name="VTE_PROPERTY_ID_CONTAINER_UID">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="292">the ID of the %VTE_TERMPROP_CONTAINER_UID termprop</doc>
      </member>
      <member name="shell_precmd"
              value="6"
              c:identifier="VTE_PROPERTY_ID_SHELL_PRECMD"
              glib:nick="shell-precmd"
              glib:name="VTE_PROPERTY_ID_SHELL_PRECMD">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="293">the ID of the %VTE_TERMPROP_SHELL_PRECMD termprop</doc>
      </member>
      <member name="shell_preexec"
              value="7"
              c:identifier="VTE_PROPERTY_ID_SHELL_PREEXEC"
              glib:nick="shell-preexec"
              glib:name="VTE_PROPERTY_ID_SHELL_PREEXEC">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="294">the ID of the %VTE_TERMPROP_SHELL_PREEXEC termprop</doc>
      </member>
      <member name="shell_postexec"
              value="8"
              c:identifier="VTE_PROPERTY_ID_SHELL_POSTEXEC"
              glib:nick="shell-postexec"
              glib:name="VTE_PROPERTY_ID_SHELL_POSTEXEC">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="295">the ID of the %VTE_TERMPROP_SHELL_POSTEXEC termprop</doc>
      </member>
      <member name="progress_hint"
              value="9"
              c:identifier="VTE_PROPERTY_ID_PROGRESS_HINT"
              glib:nick="progress-hint"
              glib:name="VTE_PROPERTY_ID_PROGRESS_HINT">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="296">the ID of the %VTE_TERMPROP_PROGRESS_HINT termprop. Since: 0.80</doc>
      </member>
      <member name="progress_value"
              value="10"
              c:identifier="VTE_PROPERTY_ID_PROGRESS_VALUE"
              glib:nick="progress-value"
              glib:name="VTE_PROPERTY_ID_PROGRESS_VALUE">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="297">the ID of the %VTE_TERMPROP_PROGRESS_VALUE termprop. Since: 0.80</doc>
      </member>
      <member name="icon_color"
              value="11"
              c:identifier="VTE_PROPERTY_ID_ICON_COLOR"
              glib:nick="icon-color"
              glib:name="VTE_PROPERTY_ID_ICON_COLOR">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="298">the ID of the %VTE_TERMPROP_ICON_COLOR termprop. Since: 0.80</doc>
      </member>
      <member name="icon_image"
              value="12"
              c:identifier="VTE_PROPERTY_ID_ICON_IMAGE"
              glib:nick="icon-image"
              glib:name="VTE_PROPERTY_ID_ICON_IMAGE">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="299">the ID of the %VTE_TERMPROP_ICON_IMAGE termprop. Since: 0.80</doc>
      </member>
    </enumeration>
    <enumeration name="PropertyType"
                 version="0.78"
                 glib:type-name="VtePropertyType"
                 glib:get-type="vte_property_type_get_type"
                 c:type="VtePropertyType">
      <doc xml:space="preserve"
           filename="src/vte/vteenums.h"
           line="250">An enumeration type describing types of properties.</doc>
      <member name="valueless"
              value="0"
              c:identifier="VTE_PROPERTY_VALUELESS"
              glib:nick="valueless"
              glib:name="VTE_PROPERTY_VALUELESS">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="252">no value, use for signalling</doc>
      </member>
      <member name="bool"
              value="1"
              c:identifier="VTE_PROPERTY_BOOL"
              glib:nick="bool"
              glib:name="VTE_PROPERTY_BOOL">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="253">a bool</doc>
      </member>
      <member name="int"
              value="2"
              c:identifier="VTE_PROPERTY_INT"
              glib:nick="int"
              glib:name="VTE_PROPERTY_INT">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="254">a signed 64-bit integer</doc>
      </member>
      <member name="uint"
              value="3"
              c:identifier="VTE_PROPERTY_UINT"
              glib:nick="uint"
              glib:name="VTE_PROPERTY_UINT">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="255">an unsigned 64-bit integer</doc>
      </member>
      <member name="double"
              value="4"
              c:identifier="VTE_PROPERTY_DOUBLE"
              glib:nick="double"
              glib:name="VTE_PROPERTY_DOUBLE">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="256">a finite double-precision floating point number</doc>
      </member>
      <member name="rgb"
              value="5"
              c:identifier="VTE_PROPERTY_RGB"
              glib:nick="rgb"
              glib:name="VTE_PROPERTY_RGB">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="257">a color</doc>
      </member>
      <member name="rgba"
              value="6"
              c:identifier="VTE_PROPERTY_RGBA"
              glib:nick="rgba"
              glib:name="VTE_PROPERTY_RGBA">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="258">a color with alpha</doc>
      </member>
      <member name="string"
              value="7"
              c:identifier="VTE_PROPERTY_STRING"
              glib:nick="string"
              glib:name="VTE_PROPERTY_STRING">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="259">a string</doc>
      </member>
      <member name="data"
              value="8"
              c:identifier="VTE_PROPERTY_DATA"
              glib:nick="data"
              glib:name="VTE_PROPERTY_DATA">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="260">binary data</doc>
      </member>
      <member name="uuid"
              value="9"
              c:identifier="VTE_PROPERTY_UUID"
              glib:nick="uuid"
              glib:name="VTE_PROPERTY_UUID">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="261">a UUID</doc>
      </member>
      <member name="uri"
              value="10"
              c:identifier="VTE_PROPERTY_URI"
              glib:nick="uri"
              glib:name="VTE_PROPERTY_URI">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="262">a URI</doc>
      </member>
      <member name="image"
              value="11"
              c:identifier="VTE_PROPERTY_IMAGE"
              glib:nick="image"
              glib:name="VTE_PROPERTY_IMAGE">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="263">an image. Since: 0.80</doc>
      </member>
    </enumeration>
    <class name="Pty"
           c:symbol-prefix="pty"
           c:type="VtePty"
           parent="GObject.Object"
           glib:type-name="VtePty"
           glib:get-type="vte_pty_get_type"
           glib:type-struct="PtyClass">
      <source-position filename="src/vte/vtepty.h" line="56"/>
      <implements name="Gio.Initable"/>
      <constructor name="new_foreign_sync"
                   c:identifier="vte_pty_new_foreign_sync"
                   throws="1">
        <doc xml:space="preserve"
             filename="src/vtepty.cc"
             line="524">Creates a new #VtePty for the PTY master @fd.

No entry will be made in the lastlog, utmp or wtmp system files.

Note that the newly created #VtePty will take ownership of @fd
and close it on finalize.</doc>
        <source-position filename="src/vte/vtepty.h" line="67"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/vtepty.cc"
               line="537">a new #VtePty for @fd, or %NULL on error with @error filled in</doc>
          <type name="Pty" c:type="VtePty*"/>
        </return-value>
        <parameters>
          <parameter name="fd" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="526">a file descriptor to the PTY</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="527">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_sync" c:identifier="vte_pty_new_sync" throws="1">
        <doc xml:space="preserve"
             filename="src/vtepty.cc"
             line="476">Allocates a new pseudo-terminal.

You can later use fork() or the g_spawn_async() family of functions
to start a process on the PTY.

If using fork(), you MUST call vte_pty_child_setup() in the child.

If using g_spawn_async() and friends, you MUST either use
vte_pty_child_setup() directly as the child setup function, or call
vte_pty_child_setup() from your own child setup function supplied.

When using vte_terminal_spawn_sync() with a custom child setup
function, vte_pty_child_setup() will be called before the supplied
function; you must not call it again.

Also, you MUST pass the %G_SPAWN_DO_NOT_REAP_CHILD flag.

Note also that %G_SPAWN_STDOUT_TO_DEV_NULL, %G_SPAWN_STDERR_TO_DEV_NULL,
and %G_SPAWN_CHILD_INHERITS_STDIN are not supported, since stdin, stdout
and stderr of the child process will always be connected to the PTY.

Note that you should set the PTY's size using vte_pty_set_size() before
spawning the child process, so that the child process has the correct
size from the start instead of starting with a default size and then
shortly afterwards receiving a &lt;literal&gt;SIGWINCH&lt;/literal&gt; signal. You
should prefer using vte_terminal_pty_new_sync() which does this
automatically.</doc>
        <source-position filename="src/vte/vtepty.h" line="62"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/vtepty.cc"
               line="510">a new #VtePty, or %NULL on error with @error filled in</doc>
          <type name="Pty" c:type="VtePty*"/>
        </return-value>
        <parameters>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="478">flags from #VtePtyFlags</doc>
            <type name="PtyFlags" c:type="VtePtyFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="479">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="child_setup" c:identifier="vte_pty_child_setup">
        <source-position filename="src/vte/vtepty.h" line="75"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="pty" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="129">a #VtePty</doc>
            <type name="Pty" c:type="VtePty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="close"
              c:identifier="vte_pty_close"
              deprecated="1"
              deprecated-version="0.42">
        <doc xml:space="preserve"
             filename="src/vtepty.cc"
             line="276">Since 0.42 this is a no-op.</doc>
        <source-position filename="src/vte/vtedeprecated.h" line="105"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="pty" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="278">a #VtePty</doc>
            <type name="Pty" c:type="VtePty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_fd"
              c:identifier="vte_pty_get_fd"
              glib:get-property="fd">
        <source-position filename="src/vte/vtepty.h" line="72"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtepty.cc"
               line="557">the file descriptor of the PTY master in @pty. The
  file descriptor belongs to @pty and must not be closed or have
  its flags changed</doc>
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="pty" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="555">a #VtePty</doc>
            <type name="Pty" c:type="VtePty*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_size" c:identifier="vte_pty_get_size" throws="1">
        <doc xml:space="preserve"
             filename="src/vtepty.cc"
             line="202">Reads the pseudo terminal's window size.

If getting the window size failed, @error will be set to a #GIOError.</doc>
        <source-position filename="src/vte/vtepty.h" line="78"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtepty.cc"
               line="213">%TRUE on success, %FALSE on failure with @error filled in</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="pty" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="204">a #VtePty</doc>
            <type name="Pty" c:type="VtePty*"/>
          </instance-parameter>
          <parameter name="rows"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="205">a location to store the number of rows, or %NULL</doc>
            <type name="gint" c:type="int*"/>
          </parameter>
          <parameter name="columns"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="206">a location to store the number of columns, or %NULL</doc>
            <type name="gint" c:type="int*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_size" c:identifier="vte_pty_set_size" throws="1">
        <doc xml:space="preserve"
             filename="src/vtepty.cc"
             line="146">Attempts to resize the pseudo terminal's window size.  If successful, the
OS kernel will send &lt;literal&gt;SIGWINCH&lt;/literal&gt; to the child process group.

If setting the window size failed, @error will be set to a #GIOError.</doc>
        <source-position filename="src/vte/vtepty.h" line="84"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtepty.cc"
               line="158">%TRUE on success, %FALSE on failure with @error filled in</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="pty" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="148">a #VtePty</doc>
            <type name="Pty" c:type="VtePty*"/>
          </instance-parameter>
          <parameter name="rows" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="149">the desired number of rows</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="columns" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="150">the desired number of columns</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_utf8" c:identifier="vte_pty_set_utf8" throws="1">
        <doc xml:space="preserve"
             filename="src/vtepty.cc"
             line="241">Tells the kernel whether the terminal is UTF-8 or not, in case it can make
use of the info.  Linux 2.6.5 or so defines IUTF8 to make the line
discipline do multibyte backspace correctly.</doc>
        <source-position filename="src/vte/vtepty.h" line="90"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtepty.cc"
               line="251">%TRUE on success, %FALSE on failure with @error filled in</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="pty" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="243">a #VtePty</doc>
            <type name="Pty" c:type="VtePty*"/>
          </instance-parameter>
          <parameter name="utf8" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="244">whether or not the pty is in UTF-8 mode</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="spawn_async"
              c:identifier="vte_pty_spawn_async"
              version="0.48"
              glib:finish-func="spawn_finish">
        <doc xml:space="preserve"
             filename="src/vtepty.cc"
             line="843">Like vte_pty_spawn_with_fds_async(), except that this function does not
allow passing file descriptors to the child process. See vte_pty_spawn_with_fds_async()
for more information.</doc>
        <source-position filename="src/vte/vtepty.h" line="95"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="pty" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="845">a #VtePty</doc>
            <type name="Pty" c:type="VtePty*"/>
          </instance-parameter>
          <parameter name="working_directory"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="846">the name of a directory the command should start
  in, or %NULL to use the current working directory</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="argv" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="848">child's argument vector</doc>
            <array c:type="char**">
              <type name="filename"/>
            </array>
          </parameter>
          <parameter name="envv"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="849">a list of environment
  variables to be added to the environment before starting the process, or %NULL</doc>
            <array c:type="char**">
              <type name="filename"/>
            </array>
          </parameter>
          <parameter name="spawn_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="851">flags from #GSpawnFlags</doc>
            <type name="GLib.SpawnFlags" c:type="GSpawnFlags"/>
          </parameter>
          <parameter name="child_setup"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="notified"
                     closure="5"
                     destroy="6">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="852">an extra child setup function to run in the child just before exec(), or %NULL</doc>
            <type name="GLib.SpawnChildSetupFunc"
                  c:type="GSpawnChildSetupFunc"/>
          </parameter>
          <parameter name="child_setup_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="notified">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="853">user data for @child_setup, or %NULL</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
          <parameter name="child_setup_data_destroy"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     destroy="5">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="854">a #GDestroyNotify for @child_setup_data, or %NULL</doc>
            <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
          </parameter>
          <parameter name="timeout" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="855">a timeout value in ms, -1 for the default timeout, or G_MAXINT to wait indefinitely</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="856">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="10">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="857">a #GAsyncReadyCallback, or %NULL</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="858">user data for @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="spawn_finish"
              c:identifier="vte_pty_spawn_finish"
              version="0.48"
              throws="1">
        <source-position filename="src/vte/vtepty.h" line="127"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtepty.cc"
               line="895">%TRUE on success, or %FALSE on error with @error filled in</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="pty" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="890">a #VtePty</doc>
            <type name="Pty" c:type="VtePty*"/>
          </instance-parameter>
          <parameter name="result" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="891">a #GAsyncResult</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
          <parameter name="child_pid"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="892">a location to store the child PID, or %NULL</doc>
            <type name="GLib.Pid" c:type="GPid*"/>
          </parameter>
        </parameters>
      </method>
      <method name="spawn_with_fds_async"
              c:identifier="vte_pty_spawn_with_fds_async"
              version="0.62">
        <doc xml:space="preserve"
             filename="src/vtepty.cc"
             line="720">Starts the specified command under the pseudo-terminal @pty.
The @argv and @envv lists should be %NULL-terminated.
The "TERM" environment variable is automatically set to a default value,
but can be overridden from @envv.
@pty_flags controls logging the session to the specified system log files.

Note also that %G_SPAWN_STDOUT_TO_DEV_NULL, %G_SPAWN_STDERR_TO_DEV_NULL,
and %G_SPAWN_CHILD_INHERITS_STDIN are not supported in @spawn_flags, since
stdin, stdout and stderr of the child process will always be connected to
the PTY. Also %G_SPAWN_LEAVE_DESCRIPTORS_OPEN is not supported; and
%G_SPAWN_DO_NOT_REAP_CHILD will always be added to @spawn_flags.

If @fds is not %NULL, the child process will map the file descriptors from
@fds according to @map_fds; @n_map_fds must be less or equal to @n_fds.
This function will take ownership of the file descriptors in @fds;
you must not use or close them after this call. All file descriptors in @fds
must have the FD_CLOEXEC flag set on them; it will be unset in the child process
before calling man:execve(2). Note also that no file descriptor may be mapped
to stdin, stdout, or stderr (file descriptors 0, 1, or 2), since these will be
assigned to the PTY. All open file descriptors apart from those mapped as above
will be closed when execve() is called.

Beginning with 0.60, and on linux only, and unless %VTE_SPAWN_NO_SYSTEMD_SCOPE is
passed in @spawn_flags, the newly created child process will be moved to its own
systemd user scope; and if %VTE_SPAWN_REQUIRE_SYSTEMD_SCOPE is passed, and creation
of the systemd user scope fails, the whole spawn will fail.
You can override the options used for the systemd user scope by
providing a systemd override file for 'vte-spawn-.scope' unit. See man:systemd.unit(5)
for further information.

See vte_pty_new(), and vte_terminal_watch_child() for more information.</doc>
        <source-position filename="src/vte/vtepty.h" line="109"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="pty" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="722">a #VtePty</doc>
            <type name="Pty" c:type="VtePty*"/>
          </instance-parameter>
          <parameter name="working_directory"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="723">the name of a directory the command should start
  in, or %NULL to use the current working directory</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="argv" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="725">child's argument vector</doc>
            <array c:type="const char* const*">
              <type name="filename"/>
            </array>
          </parameter>
          <parameter name="envv"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="726">a list of environment
  variables to be added to the environment before starting the process, or %NULL</doc>
            <array c:type="const char* const*">
              <type name="filename"/>
            </array>
          </parameter>
          <parameter name="fds"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="728">an array of file descriptors, or %NULL</doc>
            <array length="4" zero-terminated="0" c:type="const int*">
              <type name="gint" c:type="int"/>
            </array>
          </parameter>
          <parameter name="n_fds" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="729">the number of file descriptors in @fds, or 0 if @fds is %NULL</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="map_fds"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="730">an array of integers, or %NULL</doc>
            <array length="6" zero-terminated="0" c:type="const int*">
              <type name="gint" c:type="int"/>
            </array>
          </parameter>
          <parameter name="n_map_fds" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="731">the number of elements in @map_fds, or 0 if @map_fds is %NULL</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="spawn_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="732">flags from #GSpawnFlags</doc>
            <type name="GLib.SpawnFlags" c:type="GSpawnFlags"/>
          </parameter>
          <parameter name="child_setup"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="notified"
                     closure="9"
                     destroy="10">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="733">an extra child setup function to run in the child just before exec(), or %NULL</doc>
            <type name="GLib.SpawnChildSetupFunc"
                  c:type="GSpawnChildSetupFunc"/>
          </parameter>
          <parameter name="child_setup_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="notified">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="734">user data for @child_setup, or %NULL</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
          <parameter name="child_setup_data_destroy"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     destroy="9">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="735">a #GDestroyNotify for @child_setup_data, or %NULL</doc>
            <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
          </parameter>
          <parameter name="timeout" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="736">a timeout value in ms, -1 for the default timeout, or G_MAXINT to wait indefinitely</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="737">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="14">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="738">a #GAsyncReadyCallback, or %NULL</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtepty.cc"
                 line="739">user data for @callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <property name="fd"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_fd"
                default-value="-1">
        <doc xml:space="preserve"
             filename="src/vtepty.cc"
             line="440">The file descriptor of the PTY master.</doc>
        <type name="gint" c:type="gint"/>
      </property>
      <property name="flags"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                default-value="VTE_PTY_DEFAULT">
        <doc xml:space="preserve"
             filename="src/vtepty.cc"
             line="425">Flags.</doc>
        <type name="PtyFlags"/>
      </property>
    </class>
    <record name="PtyClass"
            c:type="VtePtyClass"
            disguised="1"
            opaque="1"
            glib:is-gtype-struct-for="Pty">
      <source-position filename="src/vte/vtepty.h" line="56"/>
    </record>
    <enumeration name="PtyError"
                 glib:type-name="VtePtyError"
                 glib:get-type="vte_pty_error_get_type"
                 c:type="VtePtyError"
                 glib:error-domain="vte-pty-error">
      <member name="pty_helper_failed"
              value="0"
              c:identifier="VTE_PTY_ERROR_PTY_HELPER_FAILED"
              glib:nick="pty-helper-failed"
              glib:name="VTE_PTY_ERROR_PTY_HELPER_FAILED">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="102">Obsolete. Deprecated: 0.42</doc>
      </member>
      <member name="pty98_failed"
              value="1"
              c:identifier="VTE_PTY_ERROR_PTY98_FAILED"
              glib:nick="pty98-failed"
              glib:name="VTE_PTY_ERROR_PTY98_FAILED">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="103">failure when using PTY98 to allocate the PTY</doc>
      </member>
      <function name="quark" c:identifier="vte_pty_error_quark">
        <doc xml:space="preserve"
             filename="src/vtepty.cc"
             line="457">Error domain for VTE PTY errors. Errors in this domain will be from the #VtePtyError
enumeration. See #GError for more information on error domains.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtepty.cc"
               line="463">the error domain for VTE PTY errors</doc>
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
    </enumeration>
    <bitfield name="PtyFlags"
              glib:type-name="VtePtyFlags"
              glib:get-type="vte_pty_flags_get_type"
              c:type="VtePtyFlags">
      <member name="no_lastlog"
              value="1"
              c:identifier="VTE_PTY_NO_LASTLOG"
              glib:nick="no-lastlog"
              glib:name="VTE_PTY_NO_LASTLOG">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="112">Unused. Deprecated: 0.38</doc>
      </member>
      <member name="no_utmp"
              value="2"
              c:identifier="VTE_PTY_NO_UTMP"
              glib:nick="no-utmp"
              glib:name="VTE_PTY_NO_UTMP">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="113">Unused. Deprecated: 0.38</doc>
      </member>
      <member name="no_wtmp"
              value="4"
              c:identifier="VTE_PTY_NO_WTMP"
              glib:nick="no-wtmp"
              glib:name="VTE_PTY_NO_WTMP">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="114">Unused. Deprecated: 0.38</doc>
      </member>
      <member name="no_helper"
              value="8"
              c:identifier="VTE_PTY_NO_HELPER"
              glib:nick="no-helper"
              glib:name="VTE_PTY_NO_HELPER">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="115">Unused. Deprecated: 0.38</doc>
      </member>
      <member name="no_fallback"
              value="16"
              c:identifier="VTE_PTY_NO_FALLBACK"
              glib:nick="no-fallback"
              glib:name="VTE_PTY_NO_FALLBACK">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="116">Unused. Deprecated: 0.38</doc>
      </member>
      <member name="no_session"
              value="32"
              c:identifier="VTE_PTY_NO_SESSION"
              glib:nick="no-session"
              glib:name="VTE_PTY_NO_SESSION">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="117">Do not start a new session for the child in
  vte_pty_child_setup(). See man:setsid(2) for more information. Since: 0.58</doc>
      </member>
      <member name="no_ctty"
              value="64"
              c:identifier="VTE_PTY_NO_CTTY"
              glib:nick="no-ctty"
              glib:name="VTE_PTY_NO_CTTY">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="119">Do not set the PTY as the controlling TTY for the child
  in vte_pty_child_setup(). See man:tty_ioctl(4) for more information. Since: 0.58</doc>
      </member>
      <member name="default"
              value="0"
              c:identifier="VTE_PTY_DEFAULT"
              glib:nick="default"
              glib:name="VTE_PTY_DEFAULT">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="121">the default flags</doc>
      </member>
    </bitfield>
    <constant name="REGEX_FLAGS_DEFAULT"
              value="1075314688"
              c:type="VTE_REGEX_FLAGS_DEFAULT">
      <source-position filename="src/vte/vteregex.h" line="45"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <record name="Regex"
            c:type="VteRegex"
            opaque="1"
            glib:type-name="VteRegex"
            glib:get-type="vte_regex_get_type"
            c:symbol-prefix="regex">
      <source-position filename="src/vte/vteregex.h" line="32"/>
      <constructor name="new_for_match"
                   c:identifier="vte_regex_new_for_match"
                   throws="1">
        <doc xml:space="preserve"
             filename="src/vteregex.cc"
             line="159">Compiles @pattern into a regex for use as a match regex
with vte_terminal_match_add_regex() or
vte_terminal_event_check_regex_simple().

See man:pcre2pattern(3) for information
about the supported regex language, and man:pcre2api(3) for
information about the supported @flags.

The regex will be compiled using &lt;literal&gt;PCRE2_UTF&lt;/literal&gt; and
possibly other flags, in addition to the flags supplied in @flags.</doc>
        <source-position filename="src/vte/vteregex.h" line="54"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/vteregex.cc"
               line="178">a newly created #VteRegex, or %NULL with @error filled in</doc>
          <type name="Regex" c:type="VteRegex*"/>
        </return-value>
        <parameters>
          <parameter name="pattern" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="161">a regex pattern string</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="pattern_length" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="162">the length of @pattern in bytes, or -1 if the
 string is NUL-terminated and the length is unknown</doc>
            <type name="gssize" c:type="gssize"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="164">PCRE2 compile flags</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_for_match_full"
                   c:identifier="vte_regex_new_for_match_full"
                   version="0.76"
                   throws="1">
        <doc xml:space="preserve"
             filename="src/vteregex.cc"
             line="108">Compiles @pattern into a regex for use as a match regex
with vte_terminal_match_add_regex() or
vte_terminal_event_check_regex_simple().

See man:pcre2pattern(3) for information
about the supported regex language, and man:pcre2api(3) for
information about the supported @flags and @extra_flags.

The regex will be compiled using &lt;literal&gt;PCRE2_UTF&lt;/literal&gt; and
possibly other flags, in addition to the flags supplied in @flags.

If regex compilation fails, @error will be set and @error_offset point
to error as an offset into @pattern.</doc>
        <source-position filename="src/vte/vteregex.h" line="60"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/vteregex.cc"
               line="132">a newly created #VteRegex, or %NULL</doc>
          <type name="Regex" c:type="VteRegex*"/>
        </return-value>
        <parameters>
          <parameter name="pattern" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="110">a regex pattern string</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="pattern_length" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="111">the length of @pattern in bytes, or -1 if the
 string is NUL-terminated and the length is unknown</doc>
            <type name="gssize" c:type="gssize"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="113">PCRE2 compile flags</doc>
            <type name="guint32" c:type="uint32_t"/>
          </parameter>
          <parameter name="extra_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="114">PCRE2 extra compile flags</doc>
            <type name="guint32" c:type="uint32_t"/>
          </parameter>
          <parameter name="error_offset"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="115">return location to store the error offset</doc>
            <type name="gsize" c:type="gsize*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_for_search"
                   c:identifier="vte_regex_new_for_search"
                   throws="1">
        <doc xml:space="preserve"
             filename="src/vteregex.cc"
             line="238">Compiles @pattern into a regex for use as a search regex
with vte_terminal_search_set_regex().

See man:pcre2pattern(3) for information
about the supported regex language, and man:pcre2api(3) for
information about the supported @flags.

The regex will be compiled using &lt;literal&gt;PCRE2_UTF&lt;/literal&gt; and
possibly other flags, in addition to the flags supplied in @flags.</doc>
        <source-position filename="src/vte/vteregex.h" line="68"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/vteregex.cc"
               line="256">a newly created #VteRegex, or %NULL with @error filled in</doc>
          <type name="Regex" c:type="VteRegex*"/>
        </return-value>
        <parameters>
          <parameter name="pattern" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="240">a regex pattern string</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="pattern_length" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="241">the length of @pattern in bytes, or -1 if the
 string is NUL-terminated and the length is unknown</doc>
            <type name="gssize" c:type="gssize"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="243">PCRE2 compile flags</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_for_search_full"
                   c:identifier="vte_regex_new_for_search_full"
                   version="0.76"
                   throws="1">
        <doc xml:space="preserve"
             filename="src/vteregex.cc"
             line="189">Compiles @pattern into a regex for use as a search regex
with vte_terminal_search_set_regex().

See man:pcre2pattern(3) for information
about the supported regex language, and man:pcre2api(3) for
information about the supported @flags and @extra_flags.

The regex will be compiled using &lt;literal&gt;PCRE2_UTF&lt;/literal&gt; and
possibly other flags, in addition to the flags supplied in @flags.

If regex compilation fails, @error will be set and @error_offset point
to error as an offset into @pattern.</doc>
        <source-position filename="src/vte/vteregex.h" line="74"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/vteregex.cc"
               line="211">a newly created #VteRegex, or %NULL</doc>
          <type name="Regex" c:type="VteRegex*"/>
        </return-value>
        <parameters>
          <parameter name="pattern" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="191">a regex pattern string</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="pattern_length" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="192">the length of @pattern in bytes, or -1 if the
 string is NUL-terminated and the length is unknown</doc>
            <type name="gssize" c:type="gssize"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="194">PCRE2 compile flags</doc>
            <type name="guint32" c:type="uint32_t"/>
          </parameter>
          <parameter name="extra_flags" transfer-ownership="none">
            <type name="guint32" c:type="uint32_t"/>
          </parameter>
          <parameter name="error_offset"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="195">return location to store the error offset</doc>
            <type name="gsize" c:type="gsize*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="jit" c:identifier="vte_regex_jit" throws="1">
        <doc xml:space="preserve"
             filename="src/vteregex.cc"
             line="267">If the platform supports JITing, JIT compiles @regex.</doc>
        <source-position filename="src/vte/vteregex.h" line="82"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vteregex.cc"
               line="275">%TRUE if JITing succeeded (or PCRE2 was built without
  JIT support), or %FALSE with @error filled in</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="regex" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="269">a #VteRegex</doc>
            <type name="Regex" c:type="VteRegex*"/>
          </instance-parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="270">PCRE2 JIT flags, or 0</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref" c:identifier="vte_regex_ref">
        <doc xml:space="preserve"
             filename="src/vteregex.cc"
             line="52">Increases the reference count of @regex by one.</doc>
        <source-position filename="src/vte/vteregex.h" line="48"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/vteregex.cc"
               line="58">@regex</doc>
          <type name="Regex" c:type="VteRegex*"/>
        </return-value>
        <parameters>
          <instance-parameter name="regex" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="54">a #VteRegex</doc>
            <type name="Regex" c:type="VteRegex*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="substitute"
              c:identifier="vte_regex_substitute"
              version="0.56"
              throws="1">
        <doc xml:space="preserve"
             filename="src/vteregex.cc"
             line="310">See man:pcre2api(3) and man:pcre2_substitute(3) for more information.</doc>
        <source-position filename="src/vte/vteregex.h" line="87"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/vteregex.cc"
               line="320">the substituted string, or %NULL
  if an error occurred</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="regex" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="312">a #VteRegex</doc>
            <type name="Regex" c:type="VteRegex*"/>
          </instance-parameter>
          <parameter name="subject" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="313">the subject string</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="replacement" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="314">the replacement string</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="315">PCRE2 match flags</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
        </parameters>
      </method>
      <method name="unref" c:identifier="vte_regex_unref">
        <doc xml:space="preserve"
             filename="src/vteregex.cc"
             line="68">Decreases the reference count of @regex by one, and frees @regex
if the refcount reaches zero.</doc>
        <source-position filename="src/vte/vteregex.h" line="51"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/vteregex.cc"
               line="75">%NULL</doc>
          <type name="Regex" c:type="VteRegex*"/>
        </return-value>
        <parameters>
          <instance-parameter name="regex" transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/vteregex.cc"
                 line="70">a #VteRegex</doc>
            <type name="Regex" c:type="VteRegex*"/>
          </instance-parameter>
        </parameters>
      </method>
    </record>
    <enumeration name="RegexError"
                 version="0.46"
                 glib:type-name="VteRegexError"
                 glib:get-type="vte_regex_error_get_type"
                 c:type="VteRegexError"
                 glib:error-domain="vte-regex-error">
      <doc xml:space="preserve"
           filename="src/vte/vteenums.h"
           line="145">An enum type for regex errors. In addition to the values listed above,
any PCRE2 error values may occur.</doc>
      <member name="incompatible"
              value="2147483646"
              c:identifier="VTE_REGEX_ERROR_INCOMPATIBLE"
              glib:nick="incompatible"
              glib:name="VTE_REGEX_ERROR_INCOMPATIBLE">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="147">The PCRE2 library was built without
  Unicode support which is required for VTE</doc>
      </member>
      <member name="not_supported"
              value="2147483647"
              c:identifier="VTE_REGEX_ERROR_NOT_SUPPORTED"
              glib:nick="not-supported"
              glib:name="VTE_REGEX_ERROR_NOT_SUPPORTED">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="149">Regexes are not supported because VTE was
  built without PCRE2 support</doc>
      </member>
      <function name="quark" c:identifier="vte_regex_error_quark">
        <return-value transfer-ownership="none">
          <type name="GLib.Quark" c:type="GQuark"/>
        </return-value>
      </function>
    </enumeration>
    <constant name="SPAWN_NO_PARENT_ENVV"
              value="33554432"
              c:type="VTE_SPAWN_NO_PARENT_ENVV">
      <doc xml:space="preserve"
           filename="src/vtepty.cc"
           line="90">Use this as a spawn flag (together with flags from #GSpawnFlags) in
vte_pty_spawn_async().

Normally, the spawned process inherits the environment from the parent
process; when this flag is used, only the environment variables passed
to vte_pty_spawn_async() etc. are passed to the child process.</doc>
      <source-position filename="src/vte/vtepty.h" line="31"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="SPAWN_NO_SYSTEMD_SCOPE"
              value="67108864"
              c:type="VTE_SPAWN_NO_SYSTEMD_SCOPE"
              version="0.60">
      <doc xml:space="preserve"
           filename="src/vtepty.cc"
           line="101">Use this as a spawn flag (together with flags from #GSpawnFlags) in
vte_pty_spawn_async().

Prevents vte_pty_spawn_async() etc. from moving the newly created child
process to a systemd user scope.</doc>
      <source-position filename="src/vte/vtepty.h" line="32"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <constant name="SPAWN_REQUIRE_SYSTEMD_SCOPE"
              value="134217728"
              c:type="VTE_SPAWN_REQUIRE_SYSTEMD_SCOPE"
              version="0.60">
      <doc xml:space="preserve"
           filename="src/vtepty.cc"
           line="113">Use this as a spawn flag (together with flags from #GSpawnFlags) in
vte_pty_spawn_async().

Requires vte_pty_spawn_async() etc. to move the newly created child
process to a systemd user scope; if that fails, the whole spawn fails.

This is supported on Linux only.</doc>
      <source-position filename="src/vte/vtepty.h" line="33"/>
      <type name="gint" c:type="gint"/>
    </constant>
    <callback name="SelectionFunc"
              c:type="VteSelectionFunc"
              deprecated="1"
              deprecated-version="0.76">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="4872">Specifies the type of a selection function used to check whether
a cell has to be selected or not.</doc>
      <source-position filename="src/vte/vtedeprecated.h" line="141"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4882">%TRUE if cell has to be selected; %FALSE if otherwise.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="terminal" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="4874">terminal in which the cell is.</doc>
          <type name="Terminal" c:type="VteTerminal*"/>
        </parameter>
        <parameter name="column" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="4875">column in which the cell is.</doc>
          <type name="glong" c:type="glong"/>
        </parameter>
        <parameter name="row" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="4876">row in which the cell is.</doc>
          <type name="glong" c:type="glong"/>
        </parameter>
        <parameter name="data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1"
                   closure="3">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="4877">user data.</doc>
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <function-macro name="TERMINAL"
                    c:identifier="VTE_TERMINAL"
                    introspectable="0">
      <source-position filename="src/vte/vteterminal.h" line="45"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="TERMINAL_CLASS"
                    c:identifier="VTE_TERMINAL_CLASS"
                    introspectable="0">
      <source-position filename="src/vte/vteterminal.h" line="46"/>
      <parameters>
        <parameter name="klass">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="TERMINAL_GET_CLASS"
                    c:identifier="VTE_TERMINAL_GET_CLASS"
                    introspectable="0">
      <source-position filename="src/vte/vteterminal.h" line="49"/>
      <parameters>
        <parameter name="obj">
        </parameter>
      </parameters>
    </function-macro>
    <constant name="TERMPROP_CONTAINER_NAME"
              value="vte.container.name"
              c:type="VTE_TERMPROP_CONTAINER_NAME"
              version="0.78">
      <doc xml:space="preserve"
           filename="src/vte/vteglobals.h"
           line="122">A %VTE_PROPERTY_STRING termprop that stores the name of the
container.</doc>
      <source-position filename="src/vte/vteglobals.h" line="130"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TERMPROP_CONTAINER_RUNTIME"
              value="vte.container.runtime"
              c:type="VTE_TERMPROP_CONTAINER_RUNTIME"
              version="0.78">
      <doc xml:space="preserve"
           filename="src/vte/vteglobals.h"
           line="132">A %VTE_PROPERTY_STRING termprop that stores the runtime of the
container.</doc>
      <source-position filename="src/vte/vteglobals.h" line="140"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TERMPROP_CONTAINER_UID"
              value="vte.container.uid"
              c:type="VTE_TERMPROP_CONTAINER_UID"
              version="0.78">
      <doc xml:space="preserve"
           filename="src/vte/vteglobals.h"
           line="142">A %VTE_PROPERTY_UINT termprop that stores the user ID of the
container.</doc>
      <source-position filename="src/vte/vteglobals.h" line="150"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TERMPROP_CURRENT_DIRECTORY_URI"
              value="vte.cwd"
              c:type="VTE_TERMPROP_CURRENT_DIRECTORY_URI"
              version="0.78">
      <doc xml:space="preserve"
           filename="src/vte/vteglobals.h"
           line="80">A %VTE_PROPERTY_URI termprop that stores the current directory
URI as set by OSC 7.
Use this with vte_terminal_ref_termprop_uri() instead of using
vte_terminal_get_current_directory_uri().

Note that this termprop is not settable via the termprop OSC.</doc>
      <source-position filename="src/vte/vteglobals.h" line="92"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TERMPROP_CURRENT_FILE_URI"
              value="vte.cwf"
              c:type="VTE_TERMPROP_CURRENT_FILE_URI"
              version="0.78">
      <doc xml:space="preserve"
           filename="src/vte/vteglobals.h"
           line="94">A %VTE_PROPERTY_URI termprop that stores the current file URI
as set by OSC 6.
Use this with vte_terminal_ref_termprop_uri() instead of using
vte_terminal_get_current_file_uri().

Note that this termprop is not settable via the termprop OSC.</doc>
      <source-position filename="src/vte/vteglobals.h" line="106"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TERMPROP_ICON_COLOR"
              value="vte.icon.color"
              c:type="VTE_TERMPROP_ICON_COLOR">
      <source-position filename="src/vte/vteglobals.h" line="230"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TERMPROP_ICON_IMAGE"
              value="vte.icon.image"
              c:type="VTE_TERMPROP_ICON_IMAGE"
              version="0.80">
      <doc xml:space="preserve"
           filename="src/vte/vteglobals.h"
           line="232">A %VTE_PROPERTY_IMAGE termprop to specify an image for use
as a favicon.

Applications should prefer to use this termprop, if set, over
the %VTE_TERMPROP_ICON_COLOR color.

Note that in this vte version, this termprop is always unset.</doc>
      <source-position filename="src/vte/vteglobals.h" line="245"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TERMPROP_NAME_PREFIX"
              value="vte.ext."
              c:type="VTE_TERMPROP_NAME_PREFIX"
              version="0.78">
      <doc xml:space="preserve"
           filename="src/vte/vteglobals.h"
           line="45">The string prefix that any termprop's name must start with to be installed
by vte_install_termprop().</doc>
      <source-position filename="src/vte/vteglobals.h" line="53"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TERMPROP_PROGRESS_HINT"
              value="vte.progress.hint"
              c:type="VTE_TERMPROP_PROGRESS_HINT"
              version="0.80">
      <doc xml:space="preserve"
           filename="src/vte/vteglobals.h"
           line="183">A %VTE_PROPERTY_INT termprop that stores a hint how to interpret
the %VTE_TERMPROP_PROGRESS_VALUE termprop value. If set, this
termprop's value will be from the #VteProgressHint enumeration.
An unset termprop should be treated as if it had value
%VTE_PROGRESS_HINT_ACTIVE if the %VTE_TERMPROP_PROGRESS_VALUE
termprop has a value

Note that this termprop never will have the value
%VTE_PROGRESS_HINT_INACTIVE.

The value of this termprop should be ignored unless the
%VTE_TERMPROP_PROGRESS_VALUE termprop has a value.

Note that before version 0.82, this termprop could not be set by
the termprop OSC, but instead only by OSC 9 ; 4 (ConEmu progress).</doc>
      <source-position filename="src/vte/vteglobals.h" line="204"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TERMPROP_PROGRESS_VALUE"
              value="vte.progress.value"
              c:type="VTE_TERMPROP_PROGRESS_VALUE"
              version="0.80">
      <doc xml:space="preserve"
           filename="src/vte/vteglobals.h"
           line="206">A %VTE_PROPERTY_UINT termprop that stores the progress of the running
command as a value between 0 and 100.

Note that before version 0.82, this termprop could not be set by
the termprop OSC, but instead only by OSC 9 ; 4 (ConEmu progress).</doc>
      <source-position filename="src/vte/vteglobals.h" line="217"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TERMPROP_SHELL_POSTEXEC"
              value="vte.shell.postexec"
              c:type="VTE_TERMPROP_SHELL_POSTEXEC"
              version="0.78">
      <doc xml:space="preserve"
           filename="src/vte/vteglobals.h"
           line="172">An ephemeral %VTE_PROPERTY_UINT termprop that signals that the shell
has executed the commands entered at the prompt and these commands
have returned. The termprop value is the exit code.</doc>
      <source-position filename="src/vte/vteglobals.h" line="181"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TERMPROP_SHELL_PRECMD"
              value="vte.shell.precmd"
              c:type="VTE_TERMPROP_SHELL_PRECMD"
              version="0.78">
      <doc xml:space="preserve"
           filename="src/vte/vteglobals.h"
           line="152">A %VTE_PROPERTY_VALUELESS termprop that signals that the shell
is going to prompt.</doc>
      <source-position filename="src/vte/vteglobals.h" line="160"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TERMPROP_SHELL_PREEXEC"
              value="vte.shell.preexec"
              c:type="VTE_TERMPROP_SHELL_PREEXEC"
              version="0.78">
      <doc xml:space="preserve"
           filename="src/vte/vteglobals.h"
           line="162">A %VTE_PROPERTY_VALUELESS termprop that signals that the shell
is preparing to execute the command entered at the prompt.</doc>
      <source-position filename="src/vte/vteglobals.h" line="170"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TERMPROP_XTERM_TITLE"
              value="xterm.title"
              c:type="VTE_TERMPROP_XTERM_TITLE"
              version="0.78">
      <doc xml:space="preserve"
           filename="src/vte/vteglobals.h"
           line="108">A %VTE_PROPERTY_STRING termprop that stores the xterm window title
as set by OSC 0 and OSC 2.
Use this with vte_terminal_get_termprop_string() instead of using
vte_terminal_get_window_title().

Note that this termprop is not settable via the termprop OSC.</doc>
      <source-position filename="src/vte/vteglobals.h" line="120"/>
      <type name="utf8" c:type="gchar*"/>
    </constant>
    <constant name="TEST_FLAGS_ALL"
              value="18446744073709551615"
              c:type="VTE_TEST_FLAGS_ALL">
      <source-position filename="src/vte/vteglobals.h" line="37"/>
      <type name="guint64" c:type="guint64"/>
    </constant>
    <constant name="TEST_FLAGS_NONE" value="0" c:type="VTE_TEST_FLAGS_NONE">
      <source-position filename="src/vte/vteglobals.h" line="36"/>
      <type name="guint64" c:type="guint64"/>
    </constant>
    <class name="Terminal"
           c:symbol-prefix="terminal"
           c:type="VteTerminal"
           parent="Gtk.Widget"
           glib:type-name="VteTerminal"
           glib:get-type="vte_terminal_get_type"
           glib:type-struct="TerminalClass">
      <source-position filename="src/vte/vteterminal.h" line="147"/>
      <implements name="Atk.ImplementorIface"/>
      <implements name="Gtk.Buildable"/>
      <implements name="Gtk.Scrollable"/>
      <constructor name="new" c:identifier="vte_terminal_new">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3334">Creates a new terminal widget.</doc>
        <source-position filename="src/vte/vteterminal.h" line="154"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3339">a new #VteTerminal object</doc>
          <type name="Terminal" c:type="GtkWidget*"/>
        </return-value>
      </constructor>
      <virtual-method name="bell">
        <source-position filename="src/vte/vteterminal.h" line="117"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="char_size_changed">
        <source-position filename="src/vte/vteterminal.h" line="81"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="char_width" transfer-ownership="none">
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="char_height" transfer-ownership="none">
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="child_exited">
        <source-position filename="src/vte/vteterminal.h" line="79"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="status" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="commit">
        <source-position filename="src/vte/vteterminal.h" line="87"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="text" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="contents_changed">
        <source-position filename="src/vte/vteterminal.h" line="85"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="copy_clipboard"
                      invoker="copy_clipboard"
                      deprecated="1"
                      deprecated-version="0.50">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3347">Places the selected text in the terminal in the #GDK_SELECTION_CLIPBOARD
selection.</doc>
        <doc-deprecated xml:space="preserve">Use vte_terminal_copy_clipboard_format() with %VTE_FORMAT_TEXT
  instead.</doc-deprecated>
        <source-position filename="src/vte/vteterminal.h" line="114"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3349">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="cursor_moved">
        <source-position filename="src/vte/vteterminal.h" line="86"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="decrease_font_size">
        <source-position filename="src/vte/vteterminal.h" line="103"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="deiconify_window">
        <source-position filename="src/vte/vteterminal.h" line="89"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="encoding_changed">
        <source-position filename="src/vte/vteterminal.h" line="80"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="eof">
        <source-position filename="src/vte/vteterminal.h" line="78"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="icon_title_changed">
        <source-position filename="src/vte/vteterminal.h" line="83"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="iconify_window">
        <source-position filename="src/vte/vteterminal.h" line="90"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="increase_font_size">
        <source-position filename="src/vte/vteterminal.h" line="102"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="lower_window">
        <source-position filename="src/vte/vteterminal.h" line="92"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="maximize_window">
        <source-position filename="src/vte/vteterminal.h" line="95"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="move_window">
        <source-position filename="src/vte/vteterminal.h" line="97"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="x" transfer-ownership="none">
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="y" transfer-ownership="none">
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="paste_clipboard" invoker="paste_clipboard">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3424">Sends the contents of the #GDK_SELECTION_CLIPBOARD selection to the
terminal's child. It's called on paste menu item, or when
user presses Shift+Insert.</doc>
        <source-position filename="src/vte/vteterminal.h" line="115"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3426">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="raise_window">
        <source-position filename="src/vte/vteterminal.h" line="91"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="refresh_window">
        <source-position filename="src/vte/vteterminal.h" line="93"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="resize_window">
        <source-position filename="src/vte/vteterminal.h" line="96"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="width" transfer-ownership="none">
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="restore_window">
        <source-position filename="src/vte/vteterminal.h" line="94"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="selection_changed">
        <source-position filename="src/vte/vteterminal.h" line="84"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="setup_context_menu">
        <source-position filename="src/vte/vteterminal.h" line="126"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="context" transfer-ownership="none">
            <type name="EventContext" c:type="const VteEventContext*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="termprop_changed">
        <source-position filename="src/vte/vteterminal.h" line="133"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="termprops_changed">
        <source-position filename="src/vte/vteterminal.h" line="129"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="props" transfer-ownership="none">
            <type name="gint" c:type="const int*"/>
          </parameter>
          <parameter name="n_props" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="text_deleted">
        <source-position filename="src/vte/vteterminal.h" line="109"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="text_inserted">
        <source-position filename="src/vte/vteterminal.h" line="108"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="text_modified">
        <source-position filename="src/vte/vteterminal.h" line="107"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="text_scrolled">
        <source-position filename="src/vte/vteterminal.h" line="110"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="delta" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="window_title_changed">
        <source-position filename="src/vte/vteterminal.h" line="82"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <method name="copy_clipboard"
              c:identifier="vte_terminal_copy_clipboard"
              deprecated="1"
              deprecated-version="0.50">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3347">Places the selected text in the terminal in the #GDK_SELECTION_CLIPBOARD
selection.</doc>
        <doc-deprecated xml:space="preserve">Use vte_terminal_copy_clipboard_format() with %VTE_FORMAT_TEXT
  instead.</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="109"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3349">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="copy_clipboard_format"
              c:identifier="vte_terminal_copy_clipboard_format"
              version="0.50">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3370">Places the selected text in the terminal in the #GDK_SELECTION_CLIPBOARD
selection in the form specified by @format.

For all formats, the selection data (see #GtkSelectionData) will include the
text targets (see gtk_target_list_add_text_targets() and
gtk_selection_data_targets_includes_text()). For %VTE_FORMAT_HTML,
the selection will also include the "text/html" target, which when requested,
returns the HTML data in UTF-16 with a U+FEFF BYTE ORDER MARK character at
the start.</doc>
        <source-position filename="src/vte/vteterminal.h" line="219"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3372">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="format" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3373">a #VteFormat</doc>
            <type name="Format" c:type="VteFormat"/>
          </parameter>
        </parameters>
      </method>
      <method name="copy_primary" c:identifier="vte_terminal_copy_primary">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3403">Places the selected text in the terminal in the #GDK_SELECTION_PRIMARY
selection.</doc>
        <source-position filename="src/vte/vteterminal.h" line="227"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3405">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="dup_termprop_string"
              c:identifier="vte_terminal_dup_termprop_string"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8217">Returns the value of a %VTE_PROPERTY_STRING termprop, or %NULL if
  @prop is unset, or @prop is not a registered property.</doc>
        <source-position filename="src/vte/vteterminal.h" line="742"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8226">the property's value, or %NULL</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8219">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8220">a termprop name</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="size"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8221">a location to store the string length, or %NULL</doc>
            <type name="gsize" c:type="size_t*"/>
          </parameter>
        </parameters>
      </method>
      <method name="dup_termprop_string_by_id"
              c:identifier="vte_terminal_dup_termprop_string_by_id"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8192">Like vte_terminal_dup_termprop_string() except that it takes the termprop
by ID. See that function for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="747"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8201">the property's value, or %NULL</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8194">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8195">a termprop ID</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="size"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8196">a location to store the string length, or %NULL</doc>
            <type name="gsize" c:type="size_t*"/>
          </parameter>
        </parameters>
      </method>
      <method name="dup_termprop_uuid"
              c:identifier="vte_terminal_dup_termprop_uuid"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8359">Returns the value of a %VTE_PROPERTY_UUID termprop as a #VteUuid, or %NULL if
  @prop is unset, or @prop is not a registered property.</doc>
        <source-position filename="src/vte/vteterminal.h" line="770"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8367">the property's value as a #VteUuid, or %NULL</doc>
          <type name="Uuid" c:type="VteUuid*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8361">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8362">a termprop name</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="dup_termprop_uuid_by_id"
              c:identifier="vte_terminal_dup_termprop_uuid_by_id"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8337">Like vte_terminal_dup_termprop_uuid() except that it takes the termprop
by ID. See that function for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="774"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8345">the property's value as a #VteUuid, or %NULL</doc>
          <type name="Uuid" c:type="VteUuid*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8339">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8340">a termprop ID</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="event_check_gregex_simple"
              c:identifier="vte_terminal_event_check_gregex_simple"
              version="0.44"
              deprecated="1"
              deprecated-version="0.46">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3948">This function does nothing.</doc>
        <doc-deprecated xml:space="preserve">Use vte_terminal_event_check_regex_simple() instead.</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="70"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3959">%FALSE</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3950">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="event" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3951">a #GdkEvent</doc>
            <type name="Gdk.Event" c:type="GdkEvent*"/>
          </parameter>
          <parameter name="regexes" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3952">an array of #GRegex</doc>
            <array length="2" zero-terminated="0" c:type="GRegex**">
              <type name="GLib.Regex" c:type="GRegex*"/>
            </array>
          </parameter>
          <parameter name="n_regexes"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3953">number of items in @regexes</doc>
            <type name="gsize" c:type="gsize"/>
          </parameter>
          <parameter name="match_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3954">the #GRegexMatchFlags to use when matching the regexes</doc>
            <type name="GLib.RegexMatchFlags" c:type="GRegexMatchFlags"/>
          </parameter>
          <parameter name="matches"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3955">a location to store the matches</doc>
            <array length="2" zero-terminated="0" c:type="char**">
              <type name="utf8" c:type="char*"/>
            </array>
          </parameter>
        </parameters>
      </method>
      <method name="event_check_regex_array"
              c:identifier="vte_terminal_event_check_regex_array"
              shadows="event_check_regex_simple"
              version="0.62">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3660">Like vte_terminal_event_check_regex_simple(), but returns an array of strings,
containing the matching text (or %NULL if no match) corresponding to each of the
regexes in @regexes.

You must free each string and the array; but note that this is *not* a %NULL-terminated
string array, and so you must *not* use g_strfreev() on it.</doc>
        <source-position filename="src/vte/vteterminal.h" line="496"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3676">a newly allocated array of strings,
  or %NULL if none of the regexes matched</doc>
          <array length="4" zero-terminated="0" c:type="char**">
            <type name="utf8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3662">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="event" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3663">a #GdkEvent</doc>
            <type name="Gdk.Event" c:type="GdkEvent*"/>
          </parameter>
          <parameter name="regexes" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3664">an array of #VteRegex</doc>
            <array length="2" zero-terminated="0" c:type="VteRegex**">
              <type name="Regex" c:type="VteRegex*"/>
            </array>
          </parameter>
          <parameter name="n_regexes" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3665">number of items in @regexes</doc>
            <type name="gsize" c:type="gsize"/>
          </parameter>
          <parameter name="match_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3666">PCRE2 match flags, or 0</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
          <parameter name="n_matches"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3667">number of items in @matches, which is always equal to @n_regexes</doc>
            <type name="gsize" c:type="gsize*"/>
          </parameter>
        </parameters>
      </method>
      <method name="event_check_regex_simple"
              c:identifier="vte_terminal_event_check_regex_simple"
              shadowed-by="event_check_regex_array"
              version="0.46"
              introspectable="0">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3713">Checks each regex in @regexes if the text in and around the position of
the event matches the regular expressions.  If a match exists, the matched
text is stored in @matches at the position of the regex in @regexes; otherwise
%NULL is stored there.  Each non-%NULL element of @matches should be freed with
g_free().

Note that the regexes in @regexes should have been created using the
&lt;literal&gt;PCRE2_MULTILINE&lt;/literal&gt; flag.</doc>
        <source-position filename="src/vte/vteterminal.h" line="503"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3731">%TRUE iff any of the regexes produced a match</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3715">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="event" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3716">a #GdkEvent</doc>
            <type name="Gdk.Event" c:type="GdkEvent*"/>
          </parameter>
          <parameter name="regexes" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3717">an array of #VteRegex</doc>
            <array length="2" zero-terminated="0" c:type="VteRegex**">
              <type name="Regex" c:type="VteRegex*"/>
            </array>
          </parameter>
          <parameter name="n_regexes"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3718">number of items in @regexes</doc>
            <type name="gsize" c:type="gsize"/>
          </parameter>
          <parameter name="match_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3719">PCRE2 match flags, or 0</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
          <parameter name="matches"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3720">a location to store the matches</doc>
            <array length="2" zero-terminated="0" c:type="char**">
              <type name="utf8" c:type="char*"/>
            </array>
          </parameter>
        </parameters>
      </method>
      <method name="feed" c:identifier="vte_terminal_feed">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4785">Interprets @data as if it were data received from a child process.</doc>
        <source-position filename="src/vte/vteterminal.h" line="208"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4787">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4788">a string in the terminal's current encoding</doc>
            <array length="1" zero-terminated="0" c:type="const char*">
              <type name="guint8"/>
            </array>
          </parameter>
          <parameter name="length" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4789">the length of the string, or -1 to use the full length or a nul-terminated string</doc>
            <type name="gssize" c:type="gssize"/>
          </parameter>
        </parameters>
      </method>
      <method name="feed_child" c:identifier="vte_terminal_feed_child">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4813">Sends a block of UTF-8 text to the child as if it were entered by the user
at the keyboard.</doc>
        <source-position filename="src/vte/vteterminal.h" line="212"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4815">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="text"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4816">data to send to the child</doc>
            <array length="1" zero-terminated="0" c:type="const char*">
              <type name="guint8"/>
            </array>
          </parameter>
          <parameter name="length" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4817">length of @text in bytes, or -1 if @text is NUL-terminated</doc>
            <type name="gssize" c:type="gssize"/>
          </parameter>
        </parameters>
      </method>
      <method name="feed_child_binary"
              c:identifier="vte_terminal_feed_child_binary"
              deprecated="1"
              deprecated-version="0.60">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4842">Sends a block of binary data to the child.</doc>
        <doc-deprecated xml:space="preserve">Don't send binary data. Use vte_terminal_feed_child() instead to send
  UTF-8 text</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="193"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4844">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4845">data to send to the child</doc>
            <array length="1" zero-terminated="0" c:type="const guint8*">
              <type name="guint8"/>
            </array>
          </parameter>
          <parameter name="length" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4846">length of @data</doc>
            <type name="gsize" c:type="gsize"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_allow_bold"
              c:identifier="vte_terminal_get_allow_bold"
              glib:get-property="allow-bold"
              deprecated="1"
              deprecated-version="0.60">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5278">Checks whether or not the terminal will attempt to draw bold text,
by using a bold font variant.</doc>
        <doc-deprecated xml:space="preserve">There's probably no reason for this feature to exist.</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="189"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="5285">%TRUE if bolding is enabled, %FALSE if not</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5280">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_allow_hyperlink"
              c:identifier="vte_terminal_get_allow_hyperlink"
              glib:get-property="allow-hyperlink"
              version="0.50">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5327">Checks whether or not hyperlinks (OSC 8 escape sequence) are allowed.</doc>
        <source-position filename="src/vte/vteterminal.h" line="379"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="5333">%TRUE if hyperlinks are enabled, %FALSE if not</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5329">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_audible_bell"
              c:identifier="vte_terminal_get_audible_bell"
              glib:get-property="audible-bell">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5374">Checks whether or not the terminal will beep when the child outputs the
"bl" sequence.</doc>
        <source-position filename="src/vte/vteterminal.h" line="281"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="5381">%TRUE if audible bell is enabled, %FALSE if not</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5376">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_bold_is_bright"
              c:identifier="vte_terminal_get_bold_is_bright"
              glib:get-property="bold-is-bright"
              version="0.52">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5444">Checks whether the SGR 1 attribute also switches to the bright counterpart
of the first 8 palette colors, in addition to making them bold (legacy behavior)
or if SGR 1 only enables bold and leaves the color intact.</doc>
        <source-position filename="src/vte/vteterminal.h" line="373"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="5452">%TRUE if bold also enables bright, %FALSE if not</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5446">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_cell_height_scale"
              c:identifier="vte_terminal_get_cell_height_scale"
              glib:get-property="cell-height-scale"
              version="0.52">
        <source-position filename="src/vte/vteterminal.h" line="269"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6392">the terminal's cell height scale</doc>
          <type name="gdouble" c:type="double"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6390">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_cell_width_scale"
              c:identifier="vte_terminal_get_cell_width_scale"
              glib:get-property="cell-width-scale"
              version="0.52">
        <source-position filename="src/vte/vteterminal.h" line="263"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6442">the terminal's cell width scale</doc>
          <type name="gdouble" c:type="double"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6440">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_char_height"
              c:identifier="vte_terminal_get_char_height">
        <source-position filename="src/vte/vteterminal.h" line="572"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="5499">the height of a character cell

Note that this method should rather be called vte_terminal_get_cell_height,
because the return value takes cell-height-scale into account.</doc>
          <type name="glong" c:type="glong"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5497">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_char_width" c:identifier="vte_terminal_get_char_width">
        <source-position filename="src/vte/vteterminal.h" line="570"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="5521">the width of a character cell

Note that this method should rather be called vte_terminal_get_cell_width,
because the return value takes cell-width-scale into account.</doc>
          <type name="glong" c:type="glong"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5519">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_cjk_ambiguous_width"
              c:identifier="vte_terminal_get_cjk_ambiguous_width"
              glib:get-property="cjk-ambiguous-width">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5539">Returns whether ambiguous-width characters are narrow or wide.
(Note that when using a non-UTF-8 encoding set via vte_terminal_set_encoding(),
the width of ambiguous-width characters is fixed and determined by the encoding
itself.)</doc>
        <source-position filename="src/vte/vteterminal.h" line="560"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="5548">1 if ambiguous-width characters are narrow, or 2 if they are wide</doc>
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5541">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_color_background_for_draw"
              c:identifier="vte_terminal_get_color_background_for_draw"
              version="0.54">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7346">Returns the background colour, as used by @terminal when
drawing the background, which may be different from
the color set by vte_terminal_set_color_background().

Note: you must only call this function while handling the
GtkWidget::draw signal.

This function is rarely useful. One use for it is if you disable
drawing the background (see vte_terminal_set_clear_background())
and then need to draw the background yourself.</doc>
        <source-position filename="src/vte/vteterminal.h" line="591"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7348">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="color"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7349">a location to store a #GdkRGBA color</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_column_count"
              c:identifier="vte_terminal_get_column_count">
        <source-position filename="src/vte/vteterminal.h" line="576"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="5866">the number of columns</doc>
          <type name="glong" c:type="glong"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5864">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_context_menu"
              c:identifier="vte_terminal_get_context_menu"
              glib:get-property="context-menu"
              version="0.76">
        <attribute name="org.gtk.Method.get_property" value="context-menu"/>
        <source-position filename="src/vte/vteterminal.h" line="662"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7787">the context menu, or %NULL</doc>
          <type name="Gtk.Widget" c:type="GtkWidget*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7785">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_context_menu_model"
              c:identifier="vte_terminal_get_context_menu_model"
              glib:get-property="context-menu-model"
              version="0.76">
        <attribute name="org.gtk.Method.get_property"
                   value="context-menu-model"/>
        <source-position filename="src/vte/vteterminal.h" line="655"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7732">the context menu model, or %NULL</doc>
          <type name="Gio.MenuModel" c:type="GMenuModel*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7730">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_current_directory_uri"
              c:identifier="vte_terminal_get_current_directory_uri"
              glib:get-property="current-directory-uri"
              deprecated="1"
              deprecated-version="0.78">
        <doc-deprecated xml:space="preserve">Use the %VTE_TERMPROP_CURRENT_FILE_URI_STRING termprop.</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="221"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="5885">the URI of the current directory of the
  process running in the terminal, or %NULL</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5883">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_current_file_uri"
              c:identifier="vte_terminal_get_current_file_uri"
              glib:get-property="current-file-uri"
              deprecated="1"
              deprecated-version="0.78">
        <doc-deprecated xml:space="preserve">Use the %VTE_TERMPROP_CURRENT_FILE_URI_STRING termprop.</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="225"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="5903">the URI of the current file the
  process running in the terminal is operating on, or %NULL if
  not set</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5901">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_cursor_blink_mode"
              c:identifier="vte_terminal_get_cursor_blink_mode"
              glib:get-property="cursor-blink-mode">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5918">Returns the currently set cursor blink mode.</doc>
        <source-position filename="src/vte/vteterminal.h" line="346"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="5924">cursor blink mode.</doc>
          <type name="CursorBlinkMode" c:type="VteCursorBlinkMode"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5920">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_cursor_position"
              c:identifier="vte_terminal_get_cursor_position">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4313">Reads the location of the insertion cursor and returns it.  The row
coordinate is absolute.

This method is unaware of BiDi. The returned column is logical column.</doc>
        <source-position filename="src/vte/vteterminal.h" line="449"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4315">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="column"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4316">a location to store the column, or %NULL</doc>
            <type name="glong" c:type="glong*"/>
          </parameter>
          <parameter name="row"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4317">a location to store the row, or %NULL</doc>
            <type name="glong" c:type="glong*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_cursor_shape"
              c:identifier="vte_terminal_get_cursor_shape"
              glib:get-property="cursor-shape">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5964">Returns the currently set cursor shape.</doc>
        <source-position filename="src/vte/vteterminal.h" line="353"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="5970">cursor shape.</doc>
          <type name="CursorShape" c:type="VteCursorShape"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5966">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_enable_a11y"
              c:identifier="vte_terminal_get_enable_a11y"
              glib:get-property="enable-a11y"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6034">Checks whether the terminal communicates with a11y backends</doc>
        <source-position filename="src/vte/vteterminal.h" line="407"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6040">%TRUE if a11y is enabled, %FALSE if not</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6036">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_enable_bidi"
              c:identifier="vte_terminal_get_enable_bidi"
              glib:get-property="enable-bidi"
              version="0.58">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6081">Checks whether the terminal performs bidirectional text rendering.</doc>
        <source-position filename="src/vte/vteterminal.h" line="414"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6087">%TRUE if BiDi is enabled, %FALSE if not</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6083">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_enable_fallback_scrolling"
              c:identifier="vte_terminal_get_enable_fallback_scrolling"
              glib:get-property="enable-fallback-scrolling"
              version="0.64">
        <source-position filename="src/vte/vteterminal.h" line="301"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7137">%TRUE if fallback scrolling is enabled</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7135">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_enable_legacy_osc777"
              c:identifier="vte_terminal_get_enable_legacy_osc777"
              glib:get-property="enable-legacy-osc777"
              version="0.78">
        <source-position filename="src/vte/vteterminal.h" line="648"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7684">%TRUE iff legacy OSC 777 is enabled</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7681">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_enable_shaping"
              c:identifier="vte_terminal_get_enable_shaping"
              glib:get-property="enable-shaping"
              version="0.58">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6128">Checks whether the terminal shapes Arabic text.</doc>
        <source-position filename="src/vte/vteterminal.h" line="420"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6134">%TRUE if Arabic shaping is enabled, %FALSE if not</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6130">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_enable_sixel"
              c:identifier="vte_terminal_get_enable_sixel"
              glib:get-property="enable-sixel"
              version="0.62">
        <source-position filename="src/vte/vteterminal.h" line="613"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7431">%FALSE</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7429">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_encoding"
              c:identifier="vte_terminal_get_encoding"
              glib:get-property="encoding"
              deprecated="1"
              deprecated-version="0.54">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6175">Determines the name of the encoding in which the terminal expects data to be
encoded, or %NULL if UTF-8 is in use.</doc>
        <doc-deprecated xml:space="preserve">Support for non-UTF-8 is deprecated.</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="139"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6182">the current encoding for the terminal</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6177">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_font" c:identifier="vte_terminal_get_font">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6242">Queries the terminal for information about the fonts which will be
used to draw text in the terminal.  The actual font takes the font scale
into account, this is not reflected in the return value, the unscaled
font is returned.</doc>
        <source-position filename="src/vte/vteterminal.h" line="367"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6251">a #PangoFontDescription describing the font the
terminal uses to render text at the default font scale of 1.0.</doc>
          <type name="Pango.FontDescription"
                c:type="const PangoFontDescription*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6244">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_font_options"
              c:identifier="vte_terminal_get_font_options"
              glib:get-property="font-options"
              version="0.74">
        <source-position filename="src/vte/vteterminal.h" line="257"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6298">the terminal's font options, or %NULL</doc>
          <type name="cairo.FontOptions" c:type="const cairo_font_options_t*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6296">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_font_scale"
              c:identifier="vte_terminal_get_font_scale"
              glib:get-property="font-scale">
        <source-position filename="src/vte/vteterminal.h" line="251"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6349">the terminal's font scale</doc>
          <type name="gdouble" c:type="gdouble"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6347">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_geometry_hints"
              c:identifier="vte_terminal_get_geometry_hints"
              deprecated="1"
              deprecated-version="0.52">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6494">Fills in some @hints from @terminal's geometry. The hints
filled are those covered by the %GDK_HINT_RESIZE_INC,
%GDK_HINT_MIN_SIZE and %GDK_HINT_BASE_SIZE flags.

See gtk_window_set_geometry_hints() for more information.

@terminal must be realized (see gtk_widget_get_realized()).</doc>
        <source-position filename="src/vte/vtedeprecated.h" line="115"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6496">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="hints"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6497">a #GdkGeometry to fill in</doc>
            <type name="Gdk.Geometry" c:type="GdkGeometry*"/>
          </parameter>
          <parameter name="min_rows" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6498">the minimum number of rows to request</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="min_columns" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6499">the minimum number of columns to request</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_has_selection"
              c:identifier="vte_terminal_get_has_selection">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6590">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.</doc>
        <source-position filename="src/vte/vteterminal.h" line="383"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6598">%TRUE if part of the text in the terminal is selected.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6592">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_icon_title"
              c:identifier="vte_terminal_get_icon_title"
              glib:get-property="icon-title"
              deprecated="1"
              deprecated-version="0.54">
        <source-position filename="src/vte/vtedeprecated.h" line="129"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6684">%NULL</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6682">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_input_enabled"
              c:identifier="vte_terminal_get_input_enabled"
              glib:get-property="input-enabled">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6694">Returns whether the terminal allow user input.</doc>
        <source-position filename="src/vte/vteterminal.h" line="583"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6696">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_mouse_autohide"
              c:identifier="vte_terminal_get_mouse_autohide">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6738">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().</doc>
        <source-position filename="src/vte/vteterminal.h" line="427"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6747">%TRUE if autohiding is enabled, %FALSE if not</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6740">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_pty"
              c:identifier="vte_terminal_get_pty"
              glib:get-property="pty">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6813">Returns the #VtePty of @terminal.</doc>
        <source-position filename="src/vte/vteterminal.h" line="566"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6819">a #VtePty, or %NULL</doc>
          <type name="Pty" c:type="VtePty*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6815">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_rewrap_on_resize"
              c:identifier="vte_terminal_get_rewrap_on_resize"
              glib:get-property="rewrap-on-resize"
              deprecated="1"
              deprecated-version="0.58">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6834">Checks whether or not the terminal will rewrap its contents upon resize.</doc>
        <source-position filename="src/vte/vtedeprecated.h" line="181"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6840">%TRUE if rewrapping is enabled, %FALSE if not</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6836">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_row_count" c:identifier="vte_terminal_get_row_count">
        <source-position filename="src/vte/vteterminal.h" line="574"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6887">the number of rows</doc>
          <type name="glong" c:type="glong"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6884">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_scroll_on_insert"
              c:identifier="vte_terminal_get_scroll_on_insert"
              glib:get-property="scroll-on-insert"
              version="0.76">
        <source-position filename="src/vte/vteterminal.h" line="289"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6989">whether or not the terminal will forcibly scroll to the bottom of
the viewable history when the new data is received from the child.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6987">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_scroll_on_keystroke"
              c:identifier="vte_terminal_get_scroll_on_keystroke"
              glib:get-property="scroll-on-keystroke"
              version="0.52">
        <source-position filename="src/vte/vteterminal.h" line="296"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7038">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.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7036">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_scroll_on_output"
              c:identifier="vte_terminal_get_scroll_on_output"
              glib:get-property="scroll-on-output"
              version="0.52">
        <source-position filename="src/vte/vteterminal.h" line="291"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7086">whether or not the terminal will forcibly scroll to the bottom of
the viewable history when the new data is received from the child.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7084">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_scroll_unit_is_pixels"
              c:identifier="vte_terminal_get_scroll_unit_is_pixels"
              glib:get-property="scroll-unit-is-pixels"
              version="0.66">
        <source-position filename="src/vte/vteterminal.h" line="307"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7185">%TRUE if the scroll unit is pixels; or %FALSE if the unit is lines</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7183">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_scrollback_lines"
              c:identifier="vte_terminal_get_scrollback_lines"
              glib:get-property="scrollback-lines"
              version="0.52">
        <source-position filename="src/vte/vteterminal.h" line="360"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6942">length of the scrollback buffer used by the terminal.
A negative value means "infinite scrollback".</doc>
          <type name="glong" c:type="glong"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6940">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_termprop_bool"
              c:identifier="vte_terminal_get_termprop_bool"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7904">For a %VTE_PROPERTY_BOOL termprop, sets @value to @prop's value,
  or to %FALSE if @prop is unset, or @prop is not a registered property.</doc>
        <source-position filename="src/vte/vteterminal.h" line="682"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7913">%TRUE iff the termprop is set</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7906">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7907">a termprop name</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="valuep"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7908">a location to store the value, or %NULL</doc>
            <type name="gboolean" c:type="gboolean*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_bool_by_id"
              c:identifier="vte_terminal_get_termprop_bool_by_id"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7879">Like vte_terminal_get_termprop_bool() except that it takes the termprop
by ID. See that function for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="687"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7888">%TRUE iff the termprop is set</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7881">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7882">a termprop ID</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="valuep"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7883">a location to store the value, or %NULL</doc>
            <type name="gboolean" c:type="gboolean*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_data"
              c:identifier="vte_terminal_get_termprop_data"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8267">Returns the value of a %VTE_PROPERTY_DATA termprop, or %NULL if
  @prop is unset, or @prop is not a registered property.</doc>
        <source-position filename="src/vte/vteterminal.h" line="752"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8276">the property's value, or %NULL</doc>
          <array length="1" zero-terminated="0" c:type="const uint8_t*">
            <type name="guint8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8269">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8270">a termprop name</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="size"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8271">a location to store the size of the data</doc>
            <type name="gsize" c:type="size_t*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_data_by_id"
              c:identifier="vte_terminal_get_termprop_data_by_id"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8242">Like vte_terminal_get_termprop_data() except that it takes the termprop
by ID. See that function for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="757"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8251">the property's value, or %NULL</doc>
          <array length="1" zero-terminated="0" c:type="const uint8_t*">
            <type name="guint8"/>
          </array>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8244">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8245">a termprop ID</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="size"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8246">a location to store the size of the data</doc>
            <type name="gsize" c:type="size_t*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_double"
              c:identifier="vte_terminal_get_termprop_double"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8065">For a %VTE_PROPERTY_DOUBLE termprop, sets @value to @prop's value,
  which is finite; or to 0.0 if @prop is unset, or @prop is not a
  registered property.</doc>
        <source-position filename="src/vte/vteterminal.h" line="712"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8075">%TRUE iff the termprop is set</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8067">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8068">a termprop name</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="valuep"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8069">a location to store the value, or %NULL</doc>
            <type name="gdouble" c:type="double*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_double_by_id"
              c:identifier="vte_terminal_get_termprop_double_by_id"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8040">Like vte_terminal_get_termprop_double() except that it takes the termprop
by ID. See that function for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="717"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8049">%TRUE iff the termprop is set</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8042">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8043">a termprop ID</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="valuep"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8044">a location to store the value, or %NULL</doc>
            <type name="gdouble" c:type="double*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_enum"
              c:identifier="vte_terminal_get_termprop_enum"
              version="0.82">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8731">See vte_properties_get_property_enum() for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="834"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8740">%TRUE iff the property was set and could be parsed a
  a value of the enumeration type</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8733">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8734">a property name of a %VTE_PROPERTY_STRING property</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="gtype" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8735">a #GType of an enum type</doc>
            <type name="GType" c:type="GType"/>
          </parameter>
          <parameter name="valuep"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8736">a location to store the value, or %NULL</doc>
            <type name="gint64" c:type="int64_t*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_enum_by_id"
              c:identifier="vte_terminal_get_termprop_enum_by_id"
              version="0.82">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8702">Like vte_terminal_get_termprop_enum() except that it takes the property
by ID. See that function for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="840"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8712">%TRUE iff the property was set and could be parsed a
  a value of enumeration type @type</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8704">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8705">a property ID of a %VTE_PROPERTY_STRING property</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="gtype" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8706">a #GType of an enum type</doc>
            <type name="GType" c:type="GType"/>
          </parameter>
          <parameter name="valuep"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8707">a location to store the value, or %NULL</doc>
            <type name="gint64" c:type="int64_t*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_flags"
              c:identifier="vte_terminal_get_termprop_flags"
              version="0.82">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8790">See vte_properties_get_property_flags() for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="846"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8799">%TRUE iff the property was set and could be parsed a
  a value of the flags type</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8792">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="gtype" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8793">a #GType of a flags type</doc>
            <type name="GType" c:type="GType"/>
          </parameter>
          <parameter name="ignore_unknown_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8794">whether to ignore unknown flags</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="valuep"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8795">a location to store the value, or %NULL</doc>
            <type name="guint64" c:type="uint64_t*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_flags_by_id"
              c:identifier="vte_terminal_get_termprop_flags_by_id"
              version="0.82">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8759">Like vte_terminal_get_termprop_flags() except that it takes the property
by ID. See that function for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="853"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8769">%TRUE iff the property was set and could be parsed a
  a value of flags type @type</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8761">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="gtype" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8762">a #GType of a flags type</doc>
            <type name="GType" c:type="GType"/>
          </parameter>
          <parameter name="ignore_unknown_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8763">whether to ignore unknown flags</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="valuep"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8764">a location to store the value, or %NULL</doc>
            <type name="guint64" c:type="uint64_t*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_int"
              c:identifier="vte_terminal_get_termprop_int"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7954">For a %VTE_PROPERTY_INT termprop, sets @value to @prop's value,
or to 0 if @prop is unset, or if @prop is not a registered property.

If only a subset or range of values are acceptable for the given property,
the caller must validate the returned value and treat any out-of-bounds
value as if the termprop had no value; in particular it *must not* clamp
the values to the expected range.</doc>
        <source-position filename="src/vte/vteterminal.h" line="692"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7968">%TRUE iff the termprop is set</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7956">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7957">a termprop name</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="valuep"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7958">a location to store the value, or %NULL</doc>
            <type name="gint64" c:type="int64_t*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_int_by_id"
              c:identifier="vte_terminal_get_termprop_int_by_id"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7929">Like vte_terminal_get_termprop_int() except that it takes the termprop
by ID. See that function for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="697"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7938">%TRUE iff the termprop is set</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7931">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7932">a termprop ID</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="valuep"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7933">a location to store the value, or %NULL</doc>
            <type name="gint64" c:type="int64_t*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_rgba"
              c:identifier="vte_terminal_get_termprop_rgba"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8116">Stores the value of a %VTE_PROPERTY_RGB or %VTE_PROPERTY_RGBA termprop in @color and
returns %TRUE if the termprop is set, or stores rgb(0,0,0) or rgba(0,0,0,1) in @color
and returns %FALSE if the termprop is unset.</doc>
        <source-position filename="src/vte/vteterminal.h" line="722"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8126">%TRUE iff the termprop is set</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8118">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8119">a termprop name</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="color"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8120">a #GdkRGBA to fill in</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_rgba_by_id"
              c:identifier="vte_terminal_get_termprop_rgba_by_id"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8091">Like vte_terminal_get_termprop_rgba() except that it takes the termprop
by ID. See that function for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="727"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8100">%TRUE iff the termprop is set</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8093">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8094">a termprop ID</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="color"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8095">a #GdkRGBA to fill in</doc>
            <type name="Gdk.RGBA" c:type="GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_string"
              c:identifier="vte_terminal_get_termprop_string"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8167">Returns the value of a %VTE_PROPERTY_STRING termprop, or %NULL if
  @prop is unset, or @prop is not a registered property.</doc>
        <source-position filename="src/vte/vteterminal.h" line="732"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8176">the property's value, or %NULL</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8169">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8170">a termprop name</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="size"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8171">a location to store the string length, or %NULL</doc>
            <type name="gsize" c:type="size_t*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_string_by_id"
              c:identifier="vte_terminal_get_termprop_string_by_id"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8142">Like vte_terminal_get_termprop_string() except that it takes the termprop
by ID. See that function for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="737"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8151">the property's value, or %NULL</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8144">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8145">a termprop ID</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="size"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8146">a location to store the string length, or %NULL</doc>
            <type name="gsize" c:type="size_t*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_uint"
              c:identifier="vte_terminal_get_termprop_uint"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8010">For a %VTE_PROPERTY_UINT termprop, sets @value to @prop's value,
or to 0 if @prop is unset, or @prop is not a registered property.

If only a subset or range of values are acceptable for the given property,
the caller must validate the returned value and treat any out-of-bounds
value as if the termprop had no value; in particular it *must not* clamp
the values to the expected range.</doc>
        <source-position filename="src/vte/vteterminal.h" line="702"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8024">%TRUE iff the termprop is set</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8012">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8013">a termprop name</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="valuep"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8014">a location to store the value, or %NULL</doc>
            <type name="guint64" c:type="uint64_t*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_uint_by_id"
              c:identifier="vte_terminal_get_termprop_uint_by_id"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7985">Like vte_terminal_get_termprop_uint() except that it takes the termprop
by ID. See that function for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="707"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7994">%TRUE iff the termprop is set</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7987">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7988">a termprop ID</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="valuep"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7989">a location to store the value, or %NULL</doc>
            <type name="guint64" c:type="uint64_t*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_value"
              c:identifier="vte_terminal_get_termprop_value"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8595">Returns %TRUE with the value of @prop stored in @value (if not %NULL) if,
  the termprop has a value, or %FALSE if @prop is unset, or @prop is not
  a registered property; in that case @value will not be set.

The value type returned depends on the termprop type:
* A %VTE_PROPERTY_VALUELESS termprop stores no value, and returns %FALSE
  from this function.
* A %VTE_PROPERTY_BOOL termprop stores a %G_TYPE_BOOLEAN value.
* A %VTE_PROPERTY_INT termprop stores a %G_TYPE_INT64 value.
* A %VTE_PROPERTY_UINT termprop stores a %G_TYPE_UINT64 value.
* A %VTE_PROPERTY_DOUBLE termprop stores a %G_TYPE_DOUBLE value.
* A %VTE_PROPERTY_RGB termprop stores a boxed #GdkRGBA value with alpha 1.0 on gtk3,
   and nothing on gtk4.
* A %VTE_PROPERTY_RGBA termprop stores a boxed #GdkRGBA value on gtk3,
   and nothing on gtk4.
* A %VTE_PROPERTY_STRING termprop stores a %G_TYPE_STRING value.
* A %VTE_PROPERTY_DATA termprop stores a boxed #GBytes value.
* A %VTE_PROPERTY_UUID termprop stores a boxed #VteUuid value.
* A %VTE_PROPERTY_URI termprop stores a boxed #GUri value.
* A %VTE_PROPERTY_IMAGE termprop stores a boxed #cairo_surface_t value on gtk3,
    and a boxed #GdkTexture on gtk4</doc>
        <source-position filename="src/vte/vteterminal.h" line="816"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8623">%TRUE iff the property has a value, with @gvalue containig
  the property's value.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8597">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8598">a termprop name</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="gvalue"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8599">a #GValue to be filled in, or %NULL</doc>
            <type name="GObject.Value" c:type="GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_termprop_value_by_id"
              c:identifier="vte_terminal_get_termprop_value_by_id"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8569">Like vte_terminal_get_termprop_value() except that it takes the termprop
by ID. See that function for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="821"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8578">%TRUE iff the property has a value, with @gvalue containig
  the property's value.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8571">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8572">a termprop ID</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="gvalue"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="none"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8573">a #GValue to be filled in</doc>
            <type name="GObject.Value" c:type="GValue*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_text"
              c:identifier="vte_terminal_get_text"
              deprecated="1"
              deprecated-version="0.76">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4968">Extracts a view of the visible part of the terminal.

This method is unaware of BiDi. The columns returned in @attributes are
logical columns.

Note: since 0.68, passing a non-%NULL @attributes parameter is deprecated. Starting with
0.72, passing a non-%NULL @attributes parameter will make this function itself return %NULL.
Since 0.72, passing a non-%NULL @is_selected parameter will make this function itself return %NULL.</doc>
        <doc-deprecated xml:space="preserve">Use vte_terminal_get_text_format() instead</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="149"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="4984">a newly allocated text string, or %NULL.</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4970">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="is_selected"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="call"
                     closure="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4971">a #VteSelectionFunc callback. Deprecated: 0.44: Always pass %NULL here.</doc>
            <type name="SelectionFunc" c:type="VteSelectionFunc"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4972">user data to be passed to the callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
          <parameter name="attributes"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="full"
                     nullable="1"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4973">location for storing text attributes. Deprecated: 0.68: Always pass %NULL here.</doc>
            <array zero-terminated="0" name="GLib.Array" c:type="GArray*">
              <type name="CharAttributes"/>
            </array>
          </parameter>
        </parameters>
      </method>
      <method name="get_text_blink_mode"
              c:identifier="vte_terminal_get_text_blink_mode"
              glib:get-property="text-blink-mode"
              version="0.52">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5231">Checks whether or not the terminal will allow blinking text.</doc>
        <source-position filename="src/vte/vteterminal.h" line="276"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="5237">the blinking setting</doc>
          <type name="TextBlinkMode" c:type="VteTextBlinkMode"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5233">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_text_format"
              c:identifier="vte_terminal_get_text_format"
              version="0.76">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4925">Returns text from the visible part of the terminal in the specified format.

This method is unaware of BiDi. The columns returned in @attributes are
logical columns.</doc>
        <source-position filename="src/vte/vteterminal.h" line="436"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="4935">a newly allocated text string, or %NULL.</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4927">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="format" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4928">the #VteFormat to use</doc>
            <type name="Format" c:type="VteFormat"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_text_include_trailing_spaces"
              c:identifier="vte_terminal_get_text_include_trailing_spaces"
              deprecated="1"
              deprecated-version="0.56">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4999">Extracts a view of the visible part of the terminal.

This method is unaware of BiDi. The columns returned in @attributes are
logical columns.

Note: since 0.68, passing a non-%NULL @array parameter is deprecated. Starting with
0.72, passing a non-%NULL @array parameter will make this function itself return %NULL.
Since 0.72, passing a non-%NULL @is_selected parameter will make this function itself return %NULL.</doc>
        <doc-deprecated xml:space="preserve">Use vte_terminal_get_text_format() instead.</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="169"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="5015">a newly allocated text string, or %NULL.</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5001">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="is_selected"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="call"
                     closure="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5002">a #VteSelectionFunc callback. Deprecated: 0.44: Always pass %NULL here.</doc>
            <type name="SelectionFunc" c:type="VteSelectionFunc"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5003">user data to be passed to the callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
          <parameter name="attributes"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="full"
                     nullable="1"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5004">location for storing text attributes. Deprecated: 0.68: Always pass %NULL here.</doc>
            <array zero-terminated="0" name="GLib.Array" c:type="GArray*">
              <type name="CharAttributes"/>
            </array>
          </parameter>
        </parameters>
      </method>
      <method name="get_text_range"
              c:identifier="vte_terminal_get_text_range"
              deprecated="1"
              deprecated-version="0.76">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5028">Extracts a view of the visible part of the terminal. The
entire scrollback buffer is scanned, so it is possible to read the entire
contents of the buffer using this function.

This method is unaware of BiDi. The columns passed in @start_col and @end_row,
and returned in @attributes are logical columns.

Since 0.68, passing a non-%NULL @array parameter is deprecated.
Since 0.72, passing a non-%NULL @array parameter will make this function
  itself return %NULL.
Since 0.72, passing a non-%NULL @is_selected function will make this function
  itself return %NULL.</doc>
        <doc-deprecated xml:space="preserve">Use vte_terminal_get_text_range_format() instead</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="158"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="5052">a newly allocated text string, or %NULL.</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5030">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="start_row" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5031">first row to search for data</doc>
            <type name="glong" c:type="glong"/>
          </parameter>
          <parameter name="start_col" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5032">first column to search for data</doc>
            <type name="glong" c:type="glong"/>
          </parameter>
          <parameter name="end_row" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5033">last row to search for data</doc>
            <type name="glong" c:type="glong"/>
          </parameter>
          <parameter name="end_col" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5034">last column to search for data</doc>
            <type name="glong" c:type="glong"/>
          </parameter>
          <parameter name="is_selected"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="call"
                     closure="5">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5035">a #VteSelectionFunc callback. Deprecated: 0.44: Always pass %NULL here</doc>
            <type name="SelectionFunc" c:type="VteSelectionFunc"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5036">user data to be passed to the callback</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
          <parameter name="attributes"
                     direction="out"
                     caller-allocates="1"
                     transfer-ownership="full"
                     nullable="1"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5037">location for storing text attributes. Deprecated: 0.68: Always pass %NULL here.</doc>
            <array zero-terminated="0" name="GLib.Array" c:type="GArray*">
              <type name="CharAttributes"/>
            </array>
          </parameter>
        </parameters>
      </method>
      <method name="get_text_range_format"
              c:identifier="vte_terminal_get_text_range_format"
              version="0.72">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5145">Returns the specified range of text in the specified format.</doc>
        <source-position filename="src/vte/vteterminal.h" line="440"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="5157">a newly allocated string, or %NULL.</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5147">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="format" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5148">the #VteFormat to use</doc>
            <type name="Format" c:type="VteFormat"/>
          </parameter>
          <parameter name="start_row" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5149">the first row of the range</doc>
            <type name="glong" c:type="long"/>
          </parameter>
          <parameter name="start_col" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5150">the first column of the range</doc>
            <type name="glong" c:type="long"/>
          </parameter>
          <parameter name="end_row" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5151">the last row of the range</doc>
            <type name="glong" c:type="long"/>
          </parameter>
          <parameter name="end_col" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5152">the last column of the range</doc>
            <type name="glong" c:type="long"/>
          </parameter>
          <parameter name="length"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5153">a pointer to a #gsize to store the string length</doc>
            <type name="gsize" c:type="gsize*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_text_selected"
              c:identifier="vte_terminal_get_text_selected"
              version="0.70">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6613">Gets the currently selected text in the format specified by @format.
Since 0.72, this function also supports %VTE_FORMAT_HTML format.</doc>
        <source-position filename="src/vte/vteterminal.h" line="386"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6621">a newly allocated string containing the selected text, or %NULL if there is no selection or the format is not supported</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6615">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="format" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6616">the #VteFormat to use</doc>
            <type name="Format" c:type="VteFormat"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_text_selected_full"
              c:identifier="vte_terminal_get_text_selected_full"
              version="0.72">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6640">Gets the currently selected text in the format specified by @format.</doc>
        <source-position filename="src/vte/vteterminal.h" line="390"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6648">a newly allocated string containing the selected text, or %NULL if there is no selection or the format is not supported</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6642">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="format" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6643">the #VteFormat to use</doc>
            <type name="Format" c:type="VteFormat"/>
          </parameter>
          <parameter name="length"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6644">a pointer to a #gsize to store the string length</doc>
            <type name="gsize" c:type="gsize*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_window_title"
              c:identifier="vte_terminal_get_window_title"
              glib:get-property="window-title"
              deprecated="1"
              deprecated-version="0.78">
        <doc-deprecated xml:space="preserve">Use the %VTE_TERMPROP_XTERM_TITLE termprop.</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="217"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7206">the window title, or %NULL</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7204">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_word_char_exceptions"
              c:identifier="vte_terminal_get_word_char_exceptions"
              glib:get-property="word-char-exceptions"
              version="0.40">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7218">Returns the set of characters which will be considered parts of a word
when doing word-wise selection, in addition to the default which only
considers alphanumeric characters part of a word.

If %NULL, a built-in set is used.</doc>
        <source-position filename="src/vte/vteterminal.h" line="240"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7228">a string, or %NULL</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7220">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_xalign"
              c:identifier="vte_terminal_get_xalign"
              glib:get-property="xalign"
              version="0.76">
        <source-position filename="src/vte/vteterminal.h" line="620"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7492">the horizontal alignment of @terminal within its allocation</doc>
          <type name="Align" c:type="VteAlign"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7490">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_xfill"
              c:identifier="vte_terminal_get_xfill"
              glib:get-property="xfill"
              version="0.76">
        <source-position filename="src/vte/vteterminal.h" line="634"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7588">the horizontal fillment of @terminal within its allocation</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7586">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_yalign"
              c:identifier="vte_terminal_get_yalign"
              glib:get-property="yalign"
              version="0.76">
        <source-position filename="src/vte/vteterminal.h" line="627"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7539">the vertical alignment of @terminal within its allocation</doc>
          <type name="Align" c:type="VteAlign"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7537">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_yfill"
              c:identifier="vte_terminal_get_yfill"
              glib:get-property="yfill"
              version="0.76">
        <source-position filename="src/vte/vteterminal.h" line="641"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7636">the vertical fillment of @terminal within its allocation</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7634">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="hyperlink_check_event"
              c:identifier="vte_terminal_hyperlink_check_event"
              version="0.50">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3629">Returns a nonempty string: the target of the explicit hyperlink (printed using the OSC 8
escape sequence) at the position of the event, or %NULL.

Proper use of the escape sequence should result in URI-encoded URIs with a proper scheme
like "http://", "https://", "file://", "mailto:" etc. This is, however, not enforced by VTE.
The caller must tolerate the returned string potentially not being a valid URI.</doc>
        <source-position filename="src/vte/vteterminal.h" line="456"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3641">a newly allocated string containing the target of the hyperlink,
 or %NULL</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3631">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="event" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3632">a #GdkEvent</doc>
            <type name="Gdk.Event" c:type="GdkEvent*"/>
          </parameter>
        </parameters>
      </method>
      <method name="match_add_gregex"
              c:identifier="vte_terminal_match_add_gregex"
              deprecated="1"
              deprecated-version="0.46">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3495">This function does nothing since version 0.60.</doc>
        <doc-deprecated xml:space="preserve">Use vte_terminal_match_add_regex() instead.</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="40"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3503">-1</doc>
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3497">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="gregex" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3498">a #GRegex</doc>
            <type name="GLib.Regex" c:type="GRegex*"/>
          </parameter>
          <parameter name="gflags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3499">the #GRegexMatchFlags to use when matching the regex</doc>
            <type name="GLib.RegexMatchFlags" c:type="GRegexMatchFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="match_add_regex"
              c:identifier="vte_terminal_match_add_regex"
              version="0.46">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3517">Adds the regular expression @regex 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.

Note that @regex should have been created using the &lt;literal&gt;PCRE2_MULTILINE&lt;/literal&gt;
flag.</doc>
        <source-position filename="src/vte/vteterminal.h" line="471"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3530">an integer associated with this expression</doc>
          <type name="gint" c:type="int"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3519">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="regex" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3520">a #VteRegex</doc>
            <type name="Regex" c:type="VteRegex*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3521">PCRE2 match flags, or 0</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
        </parameters>
      </method>
      <method name="match_check"
              c:identifier="vte_terminal_match_check"
              deprecated="1"
              deprecated-version="0.46">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3557">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.</doc>
        <doc-deprecated xml:space="preserve">Use vte_terminal_match_check_event() instead.</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="62"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3573">a newly allocated string which matches one of the previously
  set regular expressions</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3559">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="column" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3560">the text column</doc>
            <type name="glong" c:type="glong"/>
          </parameter>
          <parameter name="row" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3561">the text row</doc>
            <type name="glong" c:type="glong"/>
          </parameter>
          <parameter name="tag"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3562">a location to store the tag, or %NULL</doc>
            <type name="gint" c:type="int*"/>
          </parameter>
        </parameters>
      </method>
      <method name="match_check_event"
              c:identifier="vte_terminal_match_check_event">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3596">Checks if the text in and around the position of the event 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.</doc>
        <source-position filename="src/vte/vteterminal.h" line="491"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3611">a newly allocated string which matches one of the previously
  set regular expressions, or %NULL if there is no match</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3598">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="event" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3599">a #GdkEvent</doc>
            <type name="Gdk.Event" c:type="GdkEvent*"/>
          </parameter>
          <parameter name="tag"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3600">a location to store the tag, or %NULL</doc>
            <type name="gint" c:type="int*"/>
          </parameter>
        </parameters>
      </method>
      <method name="match_remove" c:identifier="vte_terminal_match_remove">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4060">Removes the regular expression which is associated with the given @tag from
the list of expressions which the terminal will highlight when the user
moves the mouse cursor over matching text.</doc>
        <source-position filename="src/vte/vteterminal.h" line="480"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4062">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4063">the tag of the regex to remove</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="match_remove_all"
              c:identifier="vte_terminal_match_remove_all">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4082">Clears the list of regular expressions the terminal uses to highlight text
when the user moves the mouse cursor.</doc>
        <source-position filename="src/vte/vteterminal.h" line="483"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4084">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="match_set_cursor"
              c:identifier="vte_terminal_match_set_cursor"
              deprecated="1"
              deprecated-version="0.40">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3977">Sets which cursor the terminal will use if the pointer is over the pattern
specified by @tag.  The terminal keeps a reference to @cursor.</doc>
        <doc-deprecated xml:space="preserve">Use vte_terminal_match_set_cursor_name() instead.</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="48"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3979">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3980">the tag of the regex which should use the specified cursor</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="cursor"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3981">the #GdkCursor which the terminal should use when the pattern is
  highlighted, or %NULL to use the standard cursor</doc>
            <type name="Gdk.Cursor" c:type="GdkCursor*"/>
          </parameter>
        </parameters>
      </method>
      <method name="match_set_cursor_name"
              c:identifier="vte_terminal_match_set_cursor_name">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4035">Sets which cursor the terminal will use if the pointer is over the pattern
specified by @tag.</doc>
        <source-position filename="src/vte/vteterminal.h" line="476"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4037">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4038">the tag of the regex which should use the specified cursor</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="cursor_name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4039">the name of the cursor</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="match_set_cursor_type"
              c:identifier="vte_terminal_match_set_cursor_type"
              deprecated="1"
              deprecated-version="0.54">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4007">Sets which cursor the terminal will use if the pointer is over the pattern
specified by @tag.</doc>
        <doc-deprecated xml:space="preserve">Use vte_terminal_match_set_cursor_name() instead.</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="55"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4009">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="tag" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4010">the tag of the regex which should use the specified cursor</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="cursor_type" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4011">a #GdkCursorType</doc>
            <type name="Gdk.CursorType" c:type="GdkCursorType"/>
          </parameter>
        </parameters>
      </method>
      <method name="paste_clipboard"
              c:identifier="vte_terminal_paste_clipboard">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3424">Sends the contents of the #GDK_SELECTION_CLIPBOARD selection to the
terminal's child. It's called on paste menu item, or when
user presses Shift+Insert.</doc>
        <source-position filename="src/vte/vteterminal.h" line="222"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3426">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="paste_primary" c:identifier="vte_terminal_paste_primary">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3471">Sends the contents of the #GDK_SELECTION_PRIMARY selection to the terminal's
child. The terminal will call also paste the
#GDK_SELECTION_PRIMARY selection when the user clicks with the the second
mouse button.</doc>
        <source-position filename="src/vte/vteterminal.h" line="229"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3473">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="paste_text"
              c:identifier="vte_terminal_paste_text"
              version="0.68">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3445">Sends @text to the terminal's child as if retrived from the clipboard,
this differs from vte_terminal_feed_child() in that it may process
@text before passing it to the child (e.g. apply bracketed mode)</doc>
        <source-position filename="src/vte/vteterminal.h" line="224"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3447">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="text" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="3448">a string to paste</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="pty_new_sync"
              c:identifier="vte_terminal_pty_new_sync"
              throws="1">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4345">Creates a new #VtePty, sets the emulation property
from #VteTerminal:emulation, and sets the size using
@terminal's size.

See vte_pty_new() for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="157"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="4358">a new #VtePty</doc>
          <type name="Pty" c:type="VtePty*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4347">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4348">flags from #VtePtyFlags</doc>
            <type name="PtyFlags" c:type="VtePtyFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4349">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref_termprop_data_bytes"
              c:identifier="vte_terminal_ref_termprop_data_bytes"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8315">Returns the value of a %VTE_PROPERTY_DATA termprop as a #GBytes, or %NULL if
  @prop is unset, or @prop is not a registered property.</doc>
        <source-position filename="src/vte/vteterminal.h" line="762"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8323">the property's value as a #GBytes, or %NULL</doc>
          <type name="GLib.Bytes" c:type="GBytes*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8317">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8318">a termprop name</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref_termprop_data_bytes_by_id"
              c:identifier="vte_terminal_ref_termprop_data_bytes_by_id"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8292">Like vte_terminal_ref_termprop_data_bytes() except that it takes the termprop
by ID. See that function for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="766"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8300">the property's value as a #GBytes, or %NULL</doc>
          <type name="GLib.Bytes" c:type="GBytes*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8294">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8295">a termprop ID</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref_termprop_image_pixbuf"
              c:identifier="vte_terminal_ref_termprop_image_pixbuf"
              version="0.80">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8499">Returns the value of a %VTE_PROPERTY_IMAGE termprop as a #GdkPixbuf, or %NULL if
  @prop is unset, or @prop is not a registered property.</doc>
        <source-position filename="src/vte/vteterminal.h" line="796"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8507">the property's value as a #GdkPixbuf, or %NULL</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8501">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8502">a termprop name</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref_termprop_image_pixbuf_by_id"
              c:identifier="vte_terminal_ref_termprop_image_pixbuf_by_id"
              version="0.80">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8477">Like vte_terminal_ref_termprop_image_pixbuf() except that it takes the
termprop by ID. See that function for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="800"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8485">the property's value as a #GdkPixbuf, or %NULL</doc>
          <type name="GdkPixbuf.Pixbuf" c:type="GdkPixbuf*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8479">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8480">a termprop ID</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref_termprop_image_surface"
              c:identifier="vte_terminal_ref_termprop_image_surface"
              version="0.80">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8447">Returns the value of a %VTE_PROPERTY_IMAGE termprop as a #cairo_surface_t,
  or %NULL if @prop is unset, or @prop is not a registered property.

The surface will be a %CAIRO_SURFACE_TYPE_IMAGE with format
%CAIRO_FORMAT_ARGB32 or %CAIRO_FORMAT_RGB24.

Note that the returned surface is owned by @terminal and its contents
must not be modified.</doc>
        <source-position filename="src/vte/vteterminal.h" line="786"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8461">the property's value as a #cairo_surface_t, or %NULL</doc>
          <type name="cairo.Surface" c:type="cairo_surface_t*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8449">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8450">a termprop name</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref_termprop_image_surface_by_id"
              c:identifier="vte_terminal_ref_termprop_image_surface_by_id"
              version="0.80">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8425">Like vte_terminal_ref_termprop_image_surface() except that it takes the
termprop by ID. See that function for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="790"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8433">the property's value as a #cairo_surface_t, or %NULL</doc>
          <type name="cairo.Surface" c:type="cairo_surface_t*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8427">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8428">a termprop ID</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref_termprop_uri"
              c:identifier="vte_terminal_ref_termprop_uri"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8403">Returns the value of a %VTE_PROPERTY_URI termprop as a #GUri, or %NULL if
  @prop is unset, or @prop is not a registered property.</doc>
        <source-position filename="src/vte/vteterminal.h" line="778"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8411">the property's value as a #GUri, or %NULL</doc>
          <type name="GLib.Uri" c:type="GUri*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8405">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8406">a termprop name</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref_termprop_uri_by_id"
              c:identifier="vte_terminal_ref_termprop_uri_by_id"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8381">Like vte_terminal_ref_termprop_uri() except that it takes the termprop
by ID. See that function for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="782"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8389">the property's value as a #GUri, or %NULL</doc>
          <type name="GLib.Uri" c:type="GUri*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8383">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8384">a termprop ID</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref_termprop_variant"
              c:identifier="vte_terminal_ref_termprop_variant"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8662">Returns the value of @prop as a #GVariant, or %NULL if
  @prop unset, or @prop is not a registered property.

The #GVariantType of the returned #GVariant depends on the termprop type:
* A %VTE_PROPERTY_VALUELESS termprop returns a %G_VARIANT_TYPE_UNIT variant.
* A %VTE_PROPERTY_BOOL termprop returns a %G_VARIANT_TYPE_BOOLEAN variant.
* A %VTE_PROPERTY_INT termprop returns a %G_VARIANT_TYPE_INT64 variant.
* A %VTE_PROPERTY_UINT termprop returns a %G_VARIANT_TYPE_UINT64 variant.
* A %VTE_PROPERTY_DOUBLE termprop returns a %G_VARIANT_TYPE_DOUBLE variant.
* A %VTE_PROPERTY_RGB or %VTE_PROPERTY_RGBA termprop returns a "(ddddv)"
  tuple containing the red, green, blue, and alpha (1.0 for %VTE_PROPERTY_RGB)
  components of the color and a variant of unspecified contents
* A %VTE_PROPERTY_STRING termprop returns a %G_VARIANT_TYPE_STRING variant.
* A %VTE_PROPERTY_DATA termprop returns a "ay" variant (which is *not* a bytestring!).
* A %VTE_PROPERTY_UUID termprop returns a %G_VARIANT_TYPE_STRING variant
  containing a string representation of the UUID in simple form.
* A %VTE_PROPERTY_URI termprop returns a %G_VARIANT_TYPE_STRING variant
  containing a string representation of the URI
* A %VTE_PROPERTY_IMAGE termprop returns %NULL since an image has no
  variant representation.</doc>
        <source-position filename="src/vte/vteterminal.h" line="826"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8688">a floating #GVariant, or %NULL</doc>
          <type name="GLib.Variant" c:type="GVariant*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8664">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8665">a termprop name</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="ref_termprop_variant_by_id"
              c:identifier="vte_terminal_ref_termprop_variant_by_id"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8640">Like vte_terminal_ref_termprop_variant() except that it takes the termprop
by ID. See that function for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="830"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="8648">a floating #GVariant, or %NULL</doc>
          <type name="GLib.Variant" c:type="GVariant*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8642">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8643">a termprop ID</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="reset" c:identifier="vte_terminal_reset">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5180">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.</doc>
        <source-position filename="src/vte/vteterminal.h" line="431"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5182">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="clear_tabstops" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5183">whether to reset tabstops</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
          <parameter name="clear_history" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5184">whether to empty the terminal's scrollback buffer</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="reset_termprop"
              c:identifier="vte_terminal_reset_termprop"
              version="0.84">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8849">Resets the termprop @prop to its default value.</doc>
        <source-position filename="src/vte/vteterminal.h" line="860"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8851">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8852">a termprop name</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="reset_termprop_by_id"
              c:identifier="vte_terminal_reset_termprop_by_id"
              version="0.84">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="8820">Like vte_terminal_reset_termprop() except that it takes the termprop
by ID. See that function for more information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="864"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8822">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="prop" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="8823">a termprop ID</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="search_find_next"
              c:identifier="vte_terminal_search_find_next">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4123">Searches the next string matching the search regex set with
vte_terminal_search_set_regex().</doc>
        <source-position filename="src/vte/vteterminal.h" line="552"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="4130">%TRUE if a match was found</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4125">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="search_find_previous"
              c:identifier="vte_terminal_search_find_previous">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4101">Searches the previous string matching the search regex set with
vte_terminal_search_set_regex().</doc>
        <source-position filename="src/vte/vteterminal.h" line="550"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="4108">%TRUE if a match was found</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4103">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="search_get_gregex"
              c:identifier="vte_terminal_search_get_gregex"
              deprecated="1"
              deprecated-version="0.46">
        <doc-deprecated xml:space="preserve">use vte_terminal_search_get_regex() instead.</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="85"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="4220">%NULL</doc>
          <type name="GLib.Regex" c:type="GRegex*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4218">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="search_get_regex"
              c:identifier="vte_terminal_search_get_regex"
              version="0.46">
        <source-position filename="src/vte/vteterminal.h" line="543"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="4179">the search #VteRegex regex set in @terminal, or %NULL</doc>
          <type name="Regex" c:type="VteRegex*"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4177">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="search_get_wrap_around"
              c:identifier="vte_terminal_search_get_wrap_around">
        <source-position filename="src/vte/vteterminal.h" line="548"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="4260">whether searching will wrap around</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4258">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="search_set_gregex"
              c:identifier="vte_terminal_search_set_gregex"
              deprecated="1"
              deprecated-version="0.46">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4199">This function does nothing since version 0.60.</doc>
        <doc-deprecated xml:space="preserve">use vte_terminal_search_set_regex() instead.</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="79"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4201">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="gregex"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4202">a #GRegex, or %NULL</doc>
            <type name="GLib.Regex" c:type="GRegex*"/>
          </parameter>
          <parameter name="gflags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4203">flags from #GRegexMatchFlags</doc>
            <type name="GLib.RegexMatchFlags" c:type="GRegexMatchFlags"/>
          </parameter>
        </parameters>
      </method>
      <method name="search_set_regex"
              c:identifier="vte_terminal_search_set_regex"
              version="0.46">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4145">Sets the regex to search for. Unsets the search regex when passed %NULL.

Note that @regex should have been created using the
&lt;literal&gt;PCRE2_MULTILINE&lt;/literal&gt; flag.</doc>
        <source-position filename="src/vte/vteterminal.h" line="539"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4147">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="regex"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4148">a #VteRegex, or %NULL</doc>
            <type name="Regex" c:type="VteRegex*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4149">PCRE2 match flags, or 0</doc>
            <type name="guint32" c:type="guint32"/>
          </parameter>
        </parameters>
      </method>
      <method name="search_set_wrap_around"
              c:identifier="vte_terminal_search_set_wrap_around">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4234">Sets whether search should wrap around to the beginning of the
terminal content when reaching its end.</doc>
        <source-position filename="src/vte/vteterminal.h" line="545"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4236">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="wrap_around" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4237">whether search should wrap</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="select_all" c:identifier="vte_terminal_select_all">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4275">Selects all text within the terminal (not including the scrollback buffer).</doc>
        <source-position filename="src/vte/vteterminal.h" line="231"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4277">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_allow_bold"
              c:identifier="vte_terminal_set_allow_bold"
              glib:set-property="allow-bold"
              deprecated="1"
              deprecated-version="0.60">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5302">Controls whether or not the terminal will attempt to draw bold text,
by using a bold font variant.</doc>
        <doc-deprecated xml:space="preserve">There's probably no reason for this feature to exist.</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="185"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5304">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="allow_bold" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5305">%TRUE if the terminal should attempt to draw bold text</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_allow_hyperlink"
              c:identifier="vte_terminal_set_allow_hyperlink"
              glib:set-property="allow-hyperlink"
              version="0.50">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5350">Controls whether or not hyperlinks (OSC 8 escape sequence) are allowed.</doc>
        <source-position filename="src/vte/vteterminal.h" line="376"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5352">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="allow_hyperlink" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5353">%TRUE if the terminal should allow hyperlinks</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_audible_bell"
              c:identifier="vte_terminal_set_audible_bell"
              glib:set-property="audible-bell">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5396">Controls whether or not the terminal will beep when the child outputs the
"bl" sequence.</doc>
        <source-position filename="src/vte/vteterminal.h" line="278"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5398">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="is_audible" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5399">%TRUE if the terminal should beep</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_backspace_binding"
              c:identifier="vte_terminal_set_backspace_binding"
              glib:set-property="backspace-binding">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5419">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.</doc>
        <source-position filename="src/vte/vteterminal.h" line="396"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5421">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="binding" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5422">a #VteEraseBinding for the backspace key</doc>
            <type name="EraseBinding" c:type="VteEraseBinding"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_bold_is_bright"
              c:identifier="vte_terminal_set_bold_is_bright"
              glib:set-property="bold-is-bright"
              version="0.52">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5469">Sets whether the SGR 1 attribute also switches to the bright counterpart
of the first 8 palette colors, in addition to making them bold (legacy behavior)
or if SGR 1 only enables bold and leaves the color intact.</doc>
        <source-position filename="src/vte/vteterminal.h" line="370"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5471">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="bold_is_bright" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5472">%TRUE if bold should also enable bright</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_cell_height_scale"
              c:identifier="vte_terminal_set_cell_height_scale"
              glib:set-property="cell-height-scale"
              version="0.52">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6410">Sets the terminal's cell height scale to @scale.

This can be used to increase the line spacing. (The font's height is not affected.)
Valid values go from 1.0 (default) to 2.0 ("double spacing").</doc>
        <source-position filename="src/vte/vteterminal.h" line="266"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6412">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="scale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6413">the cell height scale</doc>
            <type name="gdouble" c:type="double"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_cell_width_scale"
              c:identifier="vte_terminal_set_cell_width_scale"
              glib:set-property="cell-width-scale"
              version="0.52">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6460">Sets the terminal's cell width scale to @scale.

This can be used to increase the letter spacing. (The font's width is not affected.)
Valid values go from 1.0 (default) to 2.0.</doc>
        <source-position filename="src/vte/vteterminal.h" line="260"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6462">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="scale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6463">the cell width scale</doc>
            <type name="gdouble" c:type="double"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_cjk_ambiguous_width"
              c:identifier="vte_terminal_set_cjk_ambiguous_width"
              glib:set-property="cjk-ambiguous-width">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5563">This setting controls whether ambiguous-width characters are narrow or wide.
(Note that when using a non-UTF-8 encoding set via vte_terminal_set_encoding(),
the width of ambiguous-width characters is fixed and determined by the encoding
itself.)</doc>
        <source-position filename="src/vte/vteterminal.h" line="557"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5565">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5566">either 1 (narrow) or 2 (wide)</doc>
            <type name="gint" c:type="int"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_clear_background"
              c:identifier="vte_terminal_set_clear_background"
              version="0.52">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7319">Sets whether to paint the background with the background colour.
The default is %TRUE.

This function is rarely useful. One use for it is to add a background
image to the terminal.</doc>
        <source-position filename="src/vte/vteterminal.h" line="588"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7321">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="setting" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7322">whether to clear the background</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_color_background"
              c:identifier="vte_terminal_set_color_background">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5588">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.</doc>
        <source-position filename="src/vte/vteterminal.h" line="317"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5590">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="background" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5591">the new background color</doc>
            <type name="Gdk.RGBA" c:type="const GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_color_bold" c:identifier="vte_terminal_set_color_bold">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5615">Sets the color used to draw bold text in the default foreground color.
If @bold is %NULL then the default color is used.</doc>
        <source-position filename="src/vte/vteterminal.h" line="311"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5617">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="bold"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5618">the new bold color or %NULL</doc>
            <type name="Gdk.RGBA" c:type="const GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_color_cursor"
              c:identifier="vte_terminal_set_color_cursor">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5642">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
reversed.</doc>
        <source-position filename="src/vte/vteterminal.h" line="320"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5644">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="cursor_background"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5645">the new color to use for the text cursor, or %NULL</doc>
            <type name="Gdk.RGBA" c:type="const GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_color_cursor_foreground"
              c:identifier="vte_terminal_set_color_cursor_foreground"
              version="0.44">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5670">Sets the foreground color for text which is under the cursor.  If %NULL, text
under the cursor will be drawn with foreground and background colors
reversed.</doc>
        <source-position filename="src/vte/vteterminal.h" line="323"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5672">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="cursor_foreground"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5673">the new color to use for the text cursor, or %NULL</doc>
            <type name="Gdk.RGBA" c:type="const GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_color_foreground"
              c:identifier="vte_terminal_set_color_foreground">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5700">Sets the foreground color used to draw normal text.</doc>
        <source-position filename="src/vte/vteterminal.h" line="314"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5702">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="foreground" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5703">the new foreground color</doc>
            <type name="Gdk.RGBA" c:type="const GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_color_highlight"
              c:identifier="vte_terminal_set_color_highlight">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5723">Sets the background color for text which is highlighted.  If %NULL,
it is unset.  If neither highlight background nor highlight foreground are set,
highlighted text (which is usually highlighted because it is selected) will
be drawn with foreground and background colors reversed.</doc>
        <source-position filename="src/vte/vteterminal.h" line="326"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5725">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="highlight_background"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5726">the new color to use for highlighted text, or %NULL</doc>
            <type name="Gdk.RGBA" c:type="const GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_color_highlight_foreground"
              c:identifier="vte_terminal_set_color_highlight_foreground">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5752">Sets the foreground color for text which is highlighted.  If %NULL,
it is unset.  If neither highlight background nor highlight foreground are set,
highlighted text (which is usually highlighted because it is selected) will
be drawn with foreground and background colors reversed.</doc>
        <source-position filename="src/vte/vteterminal.h" line="329"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5754">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="highlight_foreground"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5755">the new color to use for highlighted text, or %NULL</doc>
            <type name="Gdk.RGBA" c:type="const GdkRGBA*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_colors" c:identifier="vte_terminal_set_colors">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5781">@palette specifies the new values for the 256 palette colors: 8 standard colors,
their 8 bright counterparts, 6x6x6 color cube, and 24 grayscale colors.
Omitted entries will default to a hardcoded value.

@palette_size must be 0, 8, 16, 232 or 256.

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].</doc>
        <source-position filename="src/vte/vteterminal.h" line="332"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5783">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="foreground"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5784">the new foreground color, or %NULL</doc>
            <type name="Gdk.RGBA" c:type="const GdkRGBA*"/>
          </parameter>
          <parameter name="background"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5785">the new background color, or %NULL</doc>
            <type name="Gdk.RGBA" c:type="const GdkRGBA*"/>
          </parameter>
          <parameter name="palette"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5786">the color palette</doc>
            <array length="3" zero-terminated="0" c:type="const GdkRGBA*">
              <type name="Gdk.RGBA"/>
            </array>
          </parameter>
          <parameter name="palette_size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5787">the number of entries in @palette</doc>
            <type name="gsize" c:type="gsize"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_context_menu"
              c:identifier="vte_terminal_set_context_menu"
              glib:set-property="context-menu"
              version="0.76">
        <attribute name="org.gtk.Method.set_property" value="context-menu"/>
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7750">Sets @menu as the context menu in @terminal.
Use %NULL to unset the current menu.

Note that a menu model set with vte_terminal_set_context_menu_model()
takes precedence over a menu set using this function.</doc>
        <source-position filename="src/vte/vteterminal.h" line="658"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7752">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="menu"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7753">a menu</doc>
            <type name="Gtk.Widget" c:type="GtkWidget*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_context_menu_model"
              c:identifier="vte_terminal_set_context_menu_model"
              glib:set-property="context-menu-model"
              version="0.76">
        <attribute name="org.gtk.Method.set_property"
                   value="context-menu-model"/>
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7702">Sets @model as the context menu model in @terminal.
Use %NULL to unset the current menu model.</doc>
        <source-position filename="src/vte/vteterminal.h" line="651"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7704">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="model"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7705">a #GMenuModel</doc>
            <type name="Gio.MenuModel" c:type="GMenuModel*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_cursor_blink_mode"
              c:identifier="vte_terminal_set_cursor_blink_mode"
              glib:set-property="cursor-blink-mode">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5940">Sets whether or not the cursor will blink. Using %VTE_CURSOR_BLINK_SYSTEM
will use the #GtkSettings::gtk-cursor-blink setting.</doc>
        <source-position filename="src/vte/vteterminal.h" line="343"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5942">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="mode" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5943">the #VteCursorBlinkMode to use</doc>
            <type name="CursorBlinkMode" c:type="VteCursorBlinkMode"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_cursor_shape"
              c:identifier="vte_terminal_set_cursor_shape"
              glib:set-property="cursor-shape">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5986">Sets the shape of the cursor drawn.</doc>
        <source-position filename="src/vte/vteterminal.h" line="350"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5988">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="shape" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5989">the #VteCursorShape to use</doc>
            <type name="CursorShape" c:type="VteCursorShape"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_default_colors"
              c:identifier="vte_terminal_set_default_colors">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5844">Reset the terminal palette to reasonable compiled-in default color.</doc>
        <source-position filename="src/vte/vteterminal.h" line="339"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5846">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_delete_binding"
              c:identifier="vte_terminal_set_delete_binding"
              glib:set-property="delete-binding">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6009">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.</doc>
        <source-position filename="src/vte/vteterminal.h" line="399"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6011">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="binding" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6012">a #VteEraseBinding for the delete key</doc>
            <type name="EraseBinding" c:type="VteEraseBinding"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_enable_a11y"
              c:identifier="vte_terminal_set_enable_a11y"
              glib:set-property="enable-a11y"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6057">Controls whether or not the terminal will communicate with a11y backends.</doc>
        <source-position filename="src/vte/vteterminal.h" line="404"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6059">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="enable_a11y" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6060">%TRUE to enable a11y support</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_enable_bidi"
              c:identifier="vte_terminal_set_enable_bidi"
              glib:set-property="enable-bidi"
              version="0.58">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6104">Controls whether or not the terminal will perform bidirectional text rendering.</doc>
        <source-position filename="src/vte/vteterminal.h" line="411"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6106">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="enable_bidi" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6107">%TRUE to enable BiDi support</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_enable_fallback_scrolling"
              c:identifier="vte_terminal_set_enable_fallback_scrolling"
              glib:set-property="enable-fallback-scrolling"
              version="0.64">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7104">Controls whether the terminal uses scroll events to scroll the history
if the event was not otherwise consumed by it.

This function is rarely useful, except when the terminal is added to a
#GtkScrolledWindow, to perform kinetic scrolling (while vte itself does
not, yet, implement kinetic scrolling by itself).</doc>
        <source-position filename="src/vte/vteterminal.h" line="298"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7106">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="enable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7107">whether to enable fallback scrolling</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_enable_legacy_osc777"
              c:identifier="vte_terminal_set_enable_legacy_osc777"
              glib:set-property="enable-legacy-osc777"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7654">Sets whether legacy OSC 777 sequences are translated to
their corresponding termprops.</doc>
        <source-position filename="src/vte/vteterminal.h" line="644"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7656">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="enable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7657">whether to enable legacy OSC 777</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_enable_shaping"
              c:identifier="vte_terminal_set_enable_shaping"
              glib:set-property="enable-shaping"
              version="0.58">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6151">Controls whether or not the terminal will shape Arabic text.</doc>
        <source-position filename="src/vte/vteterminal.h" line="417"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6153">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="enable_shaping" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6154">%TRUE to enable Arabic shaping</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_enable_sixel"
              c:identifier="vte_terminal_set_enable_sixel"
              glib:set-property="enable-sixel"
              version="0.62">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7406">Set whether to enable SIXEL images.</doc>
        <source-position filename="src/vte/vteterminal.h" line="609"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7408">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="enabled" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7409">whether to enable SIXEL images</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_encoding"
              c:identifier="vte_terminal_set_encoding"
              glib:set-property="encoding"
              deprecated="1"
              deprecated-version="0.54"
              throws="1">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6199">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. If @codeset is %NULL, it uses "UTF-8".

Note: Support for non-UTF-8 is deprecated and may get removed altogether.
Instead of this function, you should use a wrapper like luit(1) when
spawning the child process.</doc>
        <doc-deprecated xml:space="preserve">Support for non-UTF-8 is deprecated.</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="133"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="6213">%TRUE if the encoding could be changed to the specified one,
 or %FALSE with @error set to %G_CONVERT_ERROR_NO_CONVERSION.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6201">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="codeset"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6202">target charset, or %NULL to use UTF-8</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_font" c:identifier="vte_terminal_set_font">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6268">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 attempt to resize itself to keep the same number of rows
and columns.  The font scale is applied to the specified font.</doc>
        <source-position filename="src/vte/vteterminal.h" line="364"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6270">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="font_desc"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6271">a #PangoFontDescription for the desired font, or %NULL</doc>
            <type name="Pango.FontDescription"
                  c:type="const PangoFontDescription*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_font_options"
              c:identifier="vte_terminal_set_font_options"
              glib:set-property="font-options"
              version="0.74">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6316">Sets the terminal's font options to @options.

Note that on GTK4, the terminal by default uses font options
with %CAIRO_HINT_METRICS_ON set; to override that, use this
function to set a #cairo_font_options_t that has
%CAIRO_HINT_METRICS_OFF set.</doc>
        <source-position filename="src/vte/vteterminal.h" line="254"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6318">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="font_options"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6319">the font options, or %NULL</doc>
            <type name="cairo.FontOptions"
                  c:type="const cairo_font_options_t*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_font_scale"
              c:identifier="vte_terminal_set_font_scale"
              glib:set-property="font-scale">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6365">Sets the terminal's font scale to @scale.</doc>
        <source-position filename="src/vte/vteterminal.h" line="248"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6367">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="scale" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6368">the font scale</doc>
            <type name="gdouble" c:type="gdouble"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_geometry_hints_for_window"
              c:identifier="vte_terminal_set_geometry_hints_for_window"
              deprecated="1"
              deprecated-version="0.52">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6558">Sets @terminal as @window's geometry widget. See
gtk_window_set_geometry_hints() for more information.

@terminal must be realized (see gtk_widget_get_realized()).</doc>
        <source-position filename="src/vte/vtedeprecated.h" line="122"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6560">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="window" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6561">a #GtkWindow</doc>
            <type name="Gtk.Window" c:type="GtkWindow*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_input_enabled"
              c:identifier="vte_terminal_set_input_enabled"
              glib:set-property="input-enabled">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6714">Enables or disables user input. When user input is disabled,
the terminal's child will not receive any key press, or mouse button
press or motion events sent to it.</doc>
        <source-position filename="src/vte/vteterminal.h" line="580"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6716">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="enabled" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6717">whether to enable user input</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_mouse_autohide"
              c:identifier="vte_terminal_set_mouse_autohide">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6762">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().</doc>
        <source-position filename="src/vte/vteterminal.h" line="424"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6764">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="setting" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6765">whether the mouse pointer should autohide</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_pty"
              c:identifier="vte_terminal_set_pty"
              glib:set-property="pty">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6787">Sets @pty as the PTY to use in @terminal.
Use %NULL to unset the PTY.</doc>
        <source-position filename="src/vte/vteterminal.h" line="563"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6789">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="pty"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6790">a #VtePty, or %NULL</doc>
            <type name="Pty" c:type="VtePty*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_rewrap_on_resize"
              c:identifier="vte_terminal_set_rewrap_on_resize"
              glib:set-property="rewrap-on-resize"
              deprecated="1"
              deprecated-version="0.58">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6857">Controls whether or not the terminal will rewrap its contents, including
the scrollback history, whenever the terminal's width changes.</doc>
        <source-position filename="src/vte/vtedeprecated.h" line="177"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6859">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="rewrap" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6860">%TRUE if the terminal should rewrap on resize</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_scroll_on_insert"
              c:identifier="vte_terminal_set_scroll_on_insert"
              glib:set-property="scroll-on-insert"
              version="0.76">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6960">Controls whether or not the terminal will forcibly scroll to the bottom of
the viewable history when text is inserted, e.g. by a paste.</doc>
        <source-position filename="src/vte/vteterminal.h" line="286"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6962">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="scroll" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6963">whether the terminal should scroll on insert</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_scroll_on_keystroke"
              c:identifier="vte_terminal_set_scroll_on_keystroke"
              glib:set-property="scroll-on-keystroke"
              version="0.52">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7008">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.</doc>
        <source-position filename="src/vte/vteterminal.h" line="293"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7010">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="scroll" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7011">whether the terminal should scroll on keystrokes</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_scroll_on_output"
              c:identifier="vte_terminal_set_scroll_on_output"
              glib:set-property="scroll-on-output"
              version="0.52">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7057">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.</doc>
        <source-position filename="src/vte/vteterminal.h" line="283"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7059">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="scroll" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7060">whether the terminal should scroll on output</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_scroll_unit_is_pixels"
              c:identifier="vte_terminal_set_scroll_unit_is_pixels"
              glib:set-property="scroll-unit-is-pixels"
              version="0.66">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7154">Controls whether the terminal's scroll unit is lines or pixels.

This function is rarely useful, except when the terminal is added to a
#GtkScrolledWindow.</doc>
        <source-position filename="src/vte/vteterminal.h" line="304"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7156">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="enable" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7157">whether to use pixels as scroll unit</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_scrollback_lines"
              c:identifier="vte_terminal_set_scrollback_lines"
              glib:set-property="scrollback-lines">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="6902">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.

A negative value means "infinite scrollback".

Using a large scrollback buffer (roughly 1M+ lines) may lead to performance
degradation or exhaustion of system resources, and is therefore not recommended.

Note that this setting only affects the normal screen buffer.
No scrollback is allowed on the alternate screen buffer.</doc>
        <source-position filename="src/vte/vteterminal.h" line="357"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6904">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="lines" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="6905">the length of the history buffer</doc>
            <type name="glong" c:type="glong"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_size" c:identifier="vte_terminal_set_size">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5206">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.</doc>
        <source-position filename="src/vte/vteterminal.h" line="244"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5208">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="columns" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5209">the desired number of columns</doc>
            <type name="glong" c:type="glong"/>
          </parameter>
          <parameter name="rows" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5210">the desired number of rows</doc>
            <type name="glong" c:type="glong"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_suppress_legacy_signals"
              c:identifier="vte_terminal_set_suppress_legacy_signals"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7385">Suppress emissions of signals and property notifications
that are deprecated.</doc>
        <source-position filename="src/vte/vteterminal.h" line="595"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7387">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_text_blink_mode"
              c:identifier="vte_terminal_set_text_blink_mode"
              glib:set-property="text-blink-mode"
              version="0.52">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="5254">Controls whether or not the terminal will allow blinking text.</doc>
        <source-position filename="src/vte/vteterminal.h" line="273"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5256">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="text_blink_mode" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="5257">the #VteTextBlinkMode to use</doc>
            <type name="TextBlinkMode" c:type="VteTextBlinkMode"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_word_char_exceptions"
              c:identifier="vte_terminal_set_word_char_exceptions"
              version="0.40">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7246">With this function you can provide a set of characters which will
be considered parts of a word when doing word-wise selection, in
addition to the default which only considers alphanumeric characters
part of a word.

The characters in @exceptions must be non-alphanumeric, each character
must occur only once, and if @exceptions contains the character
U+002D HYPHEN-MINUS, it must be at the start of the string.

Use %NULL to reset the set of exception characters to the default.</doc>
        <source-position filename="src/vte/vteterminal.h" line="237"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7248">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="exceptions" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7249">a string of ASCII punctuation characters, or %NULL</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_xalign"
              c:identifier="vte_terminal_set_xalign"
              glib:set-property="xalign"
              version="0.76">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7460">Sets the horizontal alignment of @terminal within its allocation.

Note: %VTE_ALIGN_START_FILL is not supported, and will be treated
  like %VTE_ALIGN_START.</doc>
        <source-position filename="src/vte/vteterminal.h" line="616"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7462">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="align" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7463">alignment value from #VteAlign</doc>
            <type name="Align" c:type="VteAlign"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_xfill"
              c:identifier="vte_terminal_set_xfill"
              glib:set-property="xfill"
              version="0.76">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7557">Sets the horizontal fillment of @terminal within its allocation.

Note: %VTE_FILL_START_FILL is not supported, and will be treated
  like %VTE_FILL_START.</doc>
        <source-position filename="src/vte/vteterminal.h" line="630"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7559">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="fill" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7560">fillment value from #VteFill</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_yalign"
              c:identifier="vte_terminal_set_yalign"
              glib:set-property="yalign"
              version="0.76">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7510">Sets the vertical alignment of @terminal within its allocation.</doc>
        <source-position filename="src/vte/vteterminal.h" line="623"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7512">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="align" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7513">alignment value from #VteAlign</doc>
            <type name="Align" c:type="VteAlign"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_yfill"
              c:identifier="vte_terminal_set_yfill"
              glib:set-property="yfill"
              version="0.76">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7606">Sets the vertical fillment of @terminal within its allocation.
Note that yfill is only supported with yalign set to
%VTE_ALIGN_START, and is ignored for all other yalign values.</doc>
        <source-position filename="src/vte/vteterminal.h" line="637"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7608">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="fill" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7609">fillment value from #VteFill</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="spawn_async"
              c:identifier="vte_terminal_spawn_async"
              version="0.48">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4736">A convenience function that wraps creating the #VtePty and spawning
the child process on it. Like vte_terminal_spawn_with_fds_async(),
except that this function does not allow passing file descriptors to
the child process. See vte_terminal_spawn_with_fds_async() for more
information.</doc>
        <source-position filename="src/vte/vteterminal.h" line="172"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4738">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="pty_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4739">flags from #VtePtyFlags</doc>
            <type name="PtyFlags" c:type="VtePtyFlags"/>
          </parameter>
          <parameter name="working_directory"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4740">the name of a directory the command should start
  in, or %NULL to use the current working directory</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="argv" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4742">child's argument vector</doc>
            <array c:type="char**">
              <type name="filename"/>
            </array>
          </parameter>
          <parameter name="envv"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4743">a list of environment
  variables to be added to the environment before starting the process, or %NULL</doc>
            <array c:type="char**">
              <type name="filename"/>
            </array>
          </parameter>
          <parameter name="spawn_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4745">flags from #GSpawnFlags</doc>
            <type name="GLib.SpawnFlags" c:type="GSpawnFlags"/>
          </parameter>
          <parameter name="child_setup"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="notified"
                     closure="6"
                     destroy="7">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4746">an extra child setup function to run in the child just before exec(), or %NULL</doc>
            <type name="GLib.SpawnChildSetupFunc"
                  c:type="GSpawnChildSetupFunc"/>
          </parameter>
          <parameter name="child_setup_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="notified">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4747">user data for @child_setup, or %NULL</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
          <parameter name="child_setup_data_destroy"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     destroy="6">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4748">a #GDestroyNotify for @child_setup_data, or %NULL</doc>
            <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
          </parameter>
          <parameter name="timeout" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4749">a timeout value in ms, -1 for the default timeout, or G_MAXINT to wait indefinitely</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4750">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="11">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4751">a #VteTerminalSpawnAsyncCallback, or %NULL</doc>
            <type name="TerminalSpawnAsyncCallback"
                  c:type="VteTerminalSpawnAsyncCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4752">user data for @callback, or %NULL</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="spawn_sync"
              c:identifier="vte_terminal_spawn_sync"
              deprecated="1"
              deprecated-version="0.48"
              throws="1">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4425">Starts the specified command under a newly-allocated controlling
pseudo-terminal.  The @argv and @envv lists should be %NULL-terminated.
The "TERM" environment variable is automatically set to a default value,
but can be overridden from @envv.
@pty_flags controls logging the session to the specified system log files.

Note that %G_SPAWN_DO_NOT_REAP_CHILD will always be added to @spawn_flags.

Note also that %G_SPAWN_STDOUT_TO_DEV_NULL, %G_SPAWN_STDERR_TO_DEV_NULL,
and %G_SPAWN_CHILD_INHERITS_STDIN are not supported in @spawn_flags, since
stdin, stdout and stderr of the child process will always be connected to
the PTY.

Note that all open file descriptors will be closed in the child. If you want
to keep some file descriptor open for use in the child process, you need to
use a child setup function that unsets the FD_CLOEXEC flag on that file
descriptor.

See vte_pty_new(), g_spawn_async() and vte_terminal_watch_child() for more information.

Beginning with 0.52, sets PWD to @working_directory in order to preserve symlink components.
The caller should also make sure that symlinks were preserved while constructing the value of @working_directory,
e.g. by using vte_terminal_get_current_directory_uri(), g_get_current_dir() or get_current_dir_name().</doc>
        <doc-deprecated xml:space="preserve">Use vte_terminal_spawn_async() instead.</doc-deprecated>
        <source-position filename="src/vte/vtedeprecated.h" line="91"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="4465">%TRUE on success, or %FALSE on error with @error filled in</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4427">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="pty_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4428">flags from #VtePtyFlags</doc>
            <type name="PtyFlags" c:type="VtePtyFlags"/>
          </parameter>
          <parameter name="working_directory"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4429">the name of a directory the command should start
  in, or %NULL to use the current working directory</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="argv" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4431">child's argument vector</doc>
            <array c:type="char**">
              <type name="filename"/>
            </array>
          </parameter>
          <parameter name="envv"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4432">a list of environment
  variables to be added to the environment before starting the process, or %NULL</doc>
            <array c:type="char**">
              <type name="filename"/>
            </array>
          </parameter>
          <parameter name="spawn_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4434">flags from #GSpawnFlags</doc>
            <type name="GLib.SpawnFlags" c:type="GSpawnFlags"/>
          </parameter>
          <parameter name="child_setup"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="call"
                     closure="6">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4435">an extra child setup function to run in the child just before exec(), or %NULL</doc>
            <type name="GLib.SpawnChildSetupFunc"
                  c:type="GSpawnChildSetupFunc"/>
          </parameter>
          <parameter name="child_setup_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4436">user data for @child_setup</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
          <parameter name="child_pid"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4437">a location to store the child PID, or %NULL</doc>
            <type name="GLib.Pid" c:type="GPid*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4438">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="spawn_with_fds_async"
              c:identifier="vte_terminal_spawn_with_fds_async"
              version="0.62">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4617">A convenience function that wraps creating the #VtePty and spawning
the child process on it. See vte_pty_new_sync(), vte_pty_spawn_with_fds_async(),
and vte_pty_spawn_finish() for more information.

When the operation is finished successfully, @callback will be called
with the child #GPid, and a %NULL #GError. The child PID will already be
watched via vte_terminal_watch_child().

When the operation fails, @callback will be called with a -1 #GPid,
and a non-%NULL #GError containing the error information.

Note that %G_SPAWN_STDOUT_TO_DEV_NULL, %G_SPAWN_STDERR_TO_DEV_NULL,
and %G_SPAWN_CHILD_INHERITS_STDIN are not supported in @spawn_flags, since
stdin, stdout and stderr of the child process will always be connected to
the PTY.

If @fds is not %NULL, the child process will map the file descriptors from
@fds according to @map_fds; @n_map_fds must be less or equal to @n_fds.
This function will take ownership of the file descriptors in @fds;
you must not use or close them after this call.

Note that all  open file descriptors apart from those mapped as above
will be closed in the child. (If you want to keep some other file descriptor
open for use in the child process, you need to use a child setup function
that unsets the FD_CLOEXEC flag on that file descriptor manually.)

Beginning with 0.60, and on linux only, and unless %VTE_SPAWN_NO_SYSTEMD_SCOPE is
passed in @spawn_flags, the newly created child process will be moved to its own
systemd user scope; and if %VTE_SPAWN_REQUIRE_SYSTEMD_SCOPE is passed, and creation
of the systemd user scope fails, the whole spawn will fail.
You can override the options used for the systemd user scope by
providing a systemd override file for 'vte-spawn-.scope' unit. See man:systemd.unit(5)
for further information.

Note that if @terminal has been destroyed before the operation is called,
@callback will be called with a %NULL @terminal; you must not do anything
in the callback besides freeing any resources associated with @user_data,
but taking care not to access the now-destroyed #VteTerminal. Note that
in this case, if spawning was successful, the child process will be aborted
automatically.

Beginning with 0.52, sets PWD to @working_directory in order to preserve symlink components.
The caller should also make sure that symlinks were preserved while constructing the value of @working_directory,
e.g. by using vte_terminal_get_current_directory_uri(), g_get_current_dir() or get_current_dir_name().</doc>
        <source-position filename="src/vte/vteterminal.h" line="187"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4619">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="pty_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4620">flags from #VtePtyFlags</doc>
            <type name="PtyFlags" c:type="VtePtyFlags"/>
          </parameter>
          <parameter name="working_directory"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4621">the name of a directory the command should start
  in, or %NULL to use the current working directory</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="argv" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4623">child's argument vector</doc>
            <array c:type="const char* const*">
              <type name="filename"/>
            </array>
          </parameter>
          <parameter name="envv"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4624">a list of environment
  variables to be added to the environment before starting the process, or %NULL</doc>
            <array c:type="const char* const*">
              <type name="filename"/>
            </array>
          </parameter>
          <parameter name="fds"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4626">an array of file descriptors, or %NULL</doc>
            <array length="5" zero-terminated="0" c:type="const int*">
              <type name="gint" c:type="int"/>
            </array>
          </parameter>
          <parameter name="n_fds" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4627">the number of file descriptors in @fds, or 0 if @fds is %NULL</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="map_fds"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4628">an array of integers, or %NULL</doc>
            <array length="7" zero-terminated="0" c:type="const int*">
              <type name="gint" c:type="int"/>
            </array>
          </parameter>
          <parameter name="n_map_fds" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4629">the number of elements in @map_fds, or 0 if @map_fds is %NULL</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="spawn_flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4630">flags from #GSpawnFlags</doc>
            <type name="GLib.SpawnFlags" c:type="GSpawnFlags"/>
          </parameter>
          <parameter name="child_setup"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="notified"
                     closure="10"
                     destroy="11">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4631">an extra child setup function to run in the child just before exec(), or %NULL</doc>
            <type name="GLib.SpawnChildSetupFunc"
                  c:type="GSpawnChildSetupFunc"/>
          </parameter>
          <parameter name="child_setup_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="notified">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4632">user data for @child_setup, or %NULL</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
          <parameter name="child_setup_data_destroy"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     destroy="10">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4633">a #GDestroyNotify for @child_setup_data, or %NULL</doc>
            <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
          </parameter>
          <parameter name="timeout" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4634">a timeout value in ms, -1 for the default timeout, or G_MAXINT to wait indefinitely</doc>
            <type name="gint" c:type="int"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4635">a #GCancellable, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="15">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4636">a #VteTerminalSpawnAsyncCallback, or %NULL</doc>
            <type name="TerminalSpawnAsyncCallback"
                  c:type="VteTerminalSpawnAsyncCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4637">user data for @callback, or %NULL</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="unselect_all" c:identifier="vte_terminal_unselect_all">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4294">Clears the current selection.</doc>
        <source-position filename="src/vte/vteterminal.h" line="233"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4296">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="watch_child" c:identifier="vte_terminal_watch_child">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="4389">Watches @child_pid. When the process exists, the #VteTerminal::child-exited
signal will be called with the child's exit status.

Prior to calling this function, a #VtePty must have been set in @terminal
using vte_terminal_set_pty().
When the child exits, the terminal's #VtePty will be set to %NULL.

Note: g_child_watch_add() or g_child_watch_add_full() must not have
been called for @child_pid, nor a #GSource for it been created with
g_child_watch_source_new().

Note: when using the g_spawn_async() family of functions,
the %G_SPAWN_DO_NOT_REAP_CHILD flag MUST have been passed.</doc>
        <source-position filename="src/vte/vteterminal.h" line="163"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4391">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="child_pid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="4392">a #GPid</doc>
            <type name="GLib.Pid" c:type="GPid"/>
          </parameter>
        </parameters>
      </method>
      <method name="write_contents_sync"
              c:identifier="vte_terminal_write_contents_sync"
              throws="1">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="7280">Write contents of the current contents of @terminal (including any
scrollback history) to @stream according to @flags.

If @cancellable is not %NULL, then the operation can be cancelled by triggering
the cancellable object from another thread. If the operation was cancelled,
the error %G_IO_ERROR_CANCELLED will be returned in @error.

This is a synchronous operation and will make the widget (and input
processing) during the write operation, which may take a long time
depending on scrollback history and @stream availability for writing.</doc>
        <source-position filename="src/vte/vteterminal.h" line="599"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="7299">%TRUE on success, %FALSE if there was an error</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="terminal" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7282">a #VteTerminal</doc>
            <type name="Terminal" c:type="VteTerminal*"/>
          </instance-parameter>
          <parameter name="stream" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7283">a #GOutputStream to write to</doc>
            <type name="Gio.OutputStream" c:type="GOutputStream*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7284">a set of #VteWriteFlags</doc>
            <type name="WriteFlags" c:type="VteWriteFlags"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="7285">a #GCancellable object, or %NULL</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <property name="allow-bold"
                deprecated="1"
                deprecated-version="0.60"
                writable="1"
                transfer-ownership="none"
                setter="set_allow_bold"
                getter="get_allow_bold"
                default-value="TRUE">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2134">Controls whether or not the terminal will attempt to draw bold text,
by using a bold font variant.</doc>
        <doc-deprecated xml:space="preserve">There's probably no reason for this feature to exist.</doc-deprecated>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="allow-hyperlink"
                version="0.50"
                writable="1"
                transfer-ownership="none"
                setter="set_allow_hyperlink"
                getter="get_allow_hyperlink"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2147">Controls whether or not hyperlinks (OSC 8 escape sequence) are recognized and displayed.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="audible-bell"
                writable="1"
                transfer-ownership="none"
                setter="set_audible_bell"
                getter="get_audible_bell"
                default-value="TRUE">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2159">Controls whether or not the terminal will beep when the child outputs the
"bl" sequence.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="backspace-binding"
                writable="1"
                transfer-ownership="none"
                setter="set_backspace_binding"
                default-value="VTE_ERASE_AUTO">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2170">Controls what string or control sequence the terminal sends to its child
when the user presses the backspace key.</doc>
        <type name="EraseBinding"/>
      </property>
      <property name="bold-is-bright"
                version="0.52"
                writable="1"
                transfer-ownership="none"
                setter="set_bold_is_bright"
                getter="get_bold_is_bright"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2182">Whether the SGR 1 attribute also switches to the bright counterpart
of the first 8 palette colors, in addition to making them bold (legacy behavior)
or if SGR 1 only enables bold and leaves the color intact.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="cell-height-scale"
                version="0.52"
                writable="1"
                transfer-ownership="none"
                setter="set_cell_height_scale"
                getter="get_cell_height_scale"
                default-value="1.000000">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2196">Scale factor for the cell height, to increase line spacing. (The font's height is not affected.)</doc>
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="cell-width-scale"
                version="0.52"
                writable="1"
                transfer-ownership="none"
                setter="set_cell_width_scale"
                getter="get_cell_width_scale"
                default-value="1.000000">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2210">Scale factor for the cell width, to increase letter spacing. (The font's width is not affected.)</doc>
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="cjk-ambiguous-width"
                writable="1"
                transfer-ownership="none"
                setter="set_cjk_ambiguous_width"
                getter="get_cjk_ambiguous_width"
                default-value="1">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2224">This setting controls whether ambiguous-width characters are narrow or wide.
(Note that when using a non-UTF-8 encoding set via vte_terminal_set_encoding(),
the width of ambiguous-width characters is fixed and determined by the encoding
itself.)

This setting only takes effect the next time the terminal is reset, either
via escape sequence or with vte_terminal_reset().</doc>
        <type name="gint" c:type="gint"/>
      </property>
      <property name="context-menu"
                version="0.76"
                writable="1"
                transfer-ownership="none"
                setter="set_context_menu"
                getter="get_context_menu">
        <attribute name="org.gtk.Property.get"
                   value="vte_terminal_get_context_menu"/>
        <attribute name="org.gtk.Property.set"
                   value="vte_terminal_set_context_menu"/>
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2254">The menu used for context menus. Note that context menu model set with the
#VteTerminal::context-menu-model property or vte_terminal_set_context_menu_model()
takes precedence over this.</doc>
        <type name="Gtk.Menu"/>
      </property>
      <property name="context-menu-model"
                version="0.76"
                writable="1"
                transfer-ownership="none"
                setter="set_context_menu_model"
                getter="get_context_menu_model">
        <attribute name="org.gtk.Property.get"
                   value="vte_terminal_get_context_menu_model"/>
        <attribute name="org.gtk.Property.set"
                   value="vte_terminal_set_context_menu_model"/>
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2240">The menu model used for context menus. If non-%NULL, the context menu is
generated from this model, and overrides a context menu set with the
#VteTerminal::context-menu property or vte_terminal_set_context_menu().</doc>
        <type name="Gio.MenuModel"/>
      </property>
      <property name="current-directory-uri"
                deprecated="1"
                deprecated-version="0.78"
                transfer-ownership="none"
                getter="get_current_directory_uri"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2586">The current directory URI, or %NULL if unset.</doc>
        <doc-deprecated xml:space="preserve">Use the %VTE_TERMPROP_CURRENT_DIRECTORY_URI termprop.</doc-deprecated>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="current-file-uri"
                deprecated="1"
                deprecated-version="0.78"
                transfer-ownership="none"
                getter="get_current_file_uri"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2598">The current file URI, or %NULL if unset.</doc>
        <doc-deprecated xml:space="preserve">Use the %VTE_TERMPROP_CURRENT_FILE_URI termprop.</doc-deprecated>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="cursor-blink-mode"
                writable="1"
                transfer-ownership="none"
                setter="set_cursor_blink_mode"
                getter="get_cursor_blink_mode"
                default-value="VTE_CURSOR_BLINK_SYSTEM">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2272">Sets whether or not the cursor will blink. Using %VTE_CURSOR_BLINK_SYSTEM
will use the #GtkSettings:gtk-cursor-blink setting.</doc>
        <type name="CursorBlinkMode"/>
      </property>
      <property name="cursor-shape"
                writable="1"
                transfer-ownership="none"
                setter="set_cursor_shape"
                getter="get_cursor_shape"
                default-value="VTE_CURSOR_SHAPE_BLOCK">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2284">Controls the shape of the cursor.</doc>
        <type name="CursorShape"/>
      </property>
      <property name="delete-binding"
                writable="1"
                transfer-ownership="none"
                setter="set_delete_binding"
                default-value="VTE_ERASE_AUTO">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2295">Controls what string or control sequence the terminal sends to its child
when the user presses the delete key.</doc>
        <type name="EraseBinding"/>
      </property>
      <property name="enable-a11y"
                version="0.78"
                writable="1"
                transfer-ownership="none"
                setter="set_enable_a11y"
                getter="get_enable_a11y"
                default-value="TRUE">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2307">Controls whether or not a11y is enabled for the widget.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="enable-bidi"
                version="0.58"
                writable="1"
                transfer-ownership="none"
                setter="set_enable_bidi"
                getter="get_enable_bidi"
                default-value="TRUE">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2319">Controls whether or not the terminal will perform bidirectional text rendering.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="enable-fallback-scrolling"
                writable="1"
                transfer-ownership="none"
                setter="set_enable_fallback_scrolling"
                getter="get_enable_fallback_scrolling"
                default-value="TRUE">
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="enable-legacy-osc777"
                version="0.78"
                writable="1"
                transfer-ownership="none"
                setter="set_enable_legacy_osc777"
                getter="get_enable_legacy_osc777"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2691">Whether legacy OSC 777 sequences are translated to
their corresponding termprops.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="enable-shaping"
                version="0.58"
                writable="1"
                transfer-ownership="none"
                setter="set_enable_shaping"
                getter="get_enable_shaping"
                default-value="TRUE">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2331">Controls whether or not the terminal will shape Arabic text.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="enable-sixel"
                version="0.62"
                writable="1"
                transfer-ownership="none"
                setter="set_enable_sixel"
                getter="get_enable_sixel"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2343">Controls whether SIXEL image support is enabled.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="encoding"
                deprecated="1"
                deprecated-version="0.54"
                writable="1"
                transfer-ownership="none"
                setter="set_encoding"
                getter="get_encoding"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2387">Controls 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 is defined by the
application's locale settings.</doc>
        <doc-deprecated xml:space="preserve">Instead of using this, you should use a tool like
  luit(1) when support for non-UTF-8 is required</doc-deprecated>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="font-desc" writable="1" transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2403">Specifies 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 attempt to resize itself to keep the same number of rows
and columns.</doc>
        <type name="Pango.FontDescription"/>
      </property>
      <property name="font-options"
                version="0.74"
                writable="1"
                transfer-ownership="none"
                setter="set_font_options"
                getter="get_font_options">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2356">The terminal's font options, or %NULL to use the default font options.

Note that on GTK4, the terminal by default uses font options
with %CAIRO_HINT_METRICS_ON set; to override that, use this
function to set a #cairo_font_options_t that has
%CAIRO_HINT_METRICS_OFF set.</doc>
        <type name="cairo.FontOptions"/>
      </property>
      <property name="font-scale"
                writable="1"
                transfer-ownership="none"
                setter="set_font_scale"
                getter="get_font_scale"
                default-value="1.000000">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2375">The terminal's font scale.</doc>
        <type name="gdouble" c:type="gdouble"/>
      </property>
      <property name="hyperlink-hover-uri"
                version="0.50"
                transfer-ownership="none"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2610">The currently hovered hyperlink URI, or %NULL if unset.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="icon-title"
                deprecated="1"
                deprecated-version="0.54"
                transfer-ownership="none"
                getter="get_icon_title"
                default-value="NULL">
        <doc-deprecated xml:space="preserve">This property is always %NULL.</doc-deprecated>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="input-enabled"
                writable="1"
                transfer-ownership="none"
                setter="set_input_enabled"
                getter="get_input_enabled"
                default-value="TRUE">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2427">Controls whether the terminal allows user input. When user input is disabled,
key press and mouse button press and motion events are not sent to the
terminal's child.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="pointer-autohide"
                writable="1"
                transfer-ownership="none"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2439">Controls 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.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="pty"
                writable="1"
                transfer-ownership="none"
                setter="set_pty"
                getter="get_pty">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2451">The PTY object for the terminal.</doc>
        <type name="Pty"/>
      </property>
      <property name="rewrap-on-resize"
                deprecated="1"
                deprecated-version="0.58"
                writable="1"
                transfer-ownership="none"
                setter="set_rewrap_on_resize"
                getter="get_rewrap_on_resize"
                default-value="TRUE">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2461">Controls whether or not the terminal will rewrap its contents, including
the scrollback buffer, whenever the terminal's width changes.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="scroll-on-insert"
                version="0.76"
                writable="1"
                transfer-ownership="none"
                setter="set_scroll_on_insert"
                getter="get_scroll_on_insert"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2495">Controls whether or not the terminal will forcibly scroll to the bottom of
the viewable history when the text is inserted (e.g. by a paste).</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="scroll-on-keystroke"
                writable="1"
                transfer-ownership="none"
                setter="set_scroll_on_keystroke"
                getter="get_scroll_on_keystroke"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2510">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.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="scroll-on-output"
                writable="1"
                transfer-ownership="none"
                setter="set_scroll_on_output"
                getter="get_scroll_on_output"
                default-value="TRUE">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2522">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.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="scroll-unit-is-pixels"
                version="0.66"
                writable="1"
                transfer-ownership="none"
                setter="set_scroll_unit_is_pixels"
                getter="get_scroll_unit_is_pixels"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2547">Controls whether the terminal's GtkAdjustment values unit is lines
or pixels. This can be enabled when the terminal is the child of a
GtkScrolledWindow to fix some bugs with its kinetic scrolling.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="scrollback-lines"
                writable="1"
                transfer-ownership="none"
                setter="set_scrollback_lines"
                getter="get_scrollback_lines"
                default-value="512">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2474">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 on the alternate screen buffer.

Note that any value greater or equal to %G_MAXINT is interpreted as unlimited
scrollback, i.e. like `-1` when passed to vte_terminal_set_scrollback_lines(),
and the value of this property for unlimited scrollback is %G_MAXUINT.</doc>
        <type name="guint" c:type="guint"/>
      </property>
      <property name="text-blink-mode"
                version="0.52"
                writable="1"
                transfer-ownership="none"
                setter="set_text_blink_mode"
                getter="get_text_blink_mode"
                default-value="VTE_TEXT_BLINK_ALWAYS">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2561">Controls whether or not the terminal will allow blinking text.</doc>
        <type name="TextBlinkMode"/>
      </property>
      <property name="window-title"
                deprecated="1"
                deprecated-version="0.78"
                transfer-ownership="none"
                getter="get_window_title"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2574">The terminal's title.</doc>
        <doc-deprecated xml:space="preserve">Use the %VTE_TERMPROP_XTERM_TITLE termprop.</doc-deprecated>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="word-char-exceptions"
                version="0.40"
                transfer-ownership="none"
                getter="get_word_char_exceptions"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2622">The set of characters which will be considered parts of a word
when doing word-wise selection, in addition to the default which only
considers alphanumeric characters part of a word.

If %NULL, a built-in set is used.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="xalign"
                version="0.76"
                writable="1"
                transfer-ownership="none"
                setter="set_xalign"
                getter="get_xalign"
                default-value="VTE_ALIGN_START">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2638">The horizontal alignment of @terminal within its allocation.</doc>
        <type name="Align"/>
      </property>
      <property name="xfill"
                version="0.76"
                writable="1"
                transfer-ownership="none"
                setter="set_xfill"
                getter="get_xfill"
                default-value="TRUE">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2664">The horizontal fillment of @terminal within its allocation.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="yalign"
                version="0.76"
                writable="1"
                transfer-ownership="none"
                setter="set_yalign"
                getter="get_yalign"
                default-value="VTE_ALIGN_START">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2651">The vertical alignment of @terminal within its allocation</doc>
        <type name="Align"/>
      </property>
      <property name="yfill"
                version="0.76"
                writable="1"
                transfer-ownership="none"
                setter="set_yfill"
                getter="get_yfill"
                default-value="TRUE">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2676">The vertical fillment of @terminal within its allocation.
Note that #VteTerminal:yfill=%TRUE is only supported with
#VteTerminal:yalign=%VTE_ALIGN_START, and is ignored for
all other yalign values.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <field name="widget">
        <type name="Gtk.Widget" c:type="GtkWidget"/>
      </field>
      <field name="_unused_padding" readable="0" private="1">
        <array zero-terminated="0" fixed-size="1">
          <type name="gpointer" c:type="gpointer*"/>
        </array>
      </field>
      <glib:signal name="bell" when="last">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2081">This signal is emitted when the a child sends a bell request to the
terminal.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="char-size-changed" when="last">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1583">Emitted whenever the cell size changes, e.g. due to a change in
font, font-scale or cell-width/height-scale.

Note that this signal should rather be called "cell-size-changed".</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="1586">the new character cell width</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="1587">the new character cell height</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="child-exited" when="last">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1400">This signal is emitted when the terminal detects that a child
watched using vte_terminal_watch_child() has exited.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="status" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="1403">the child's exit status</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="commit" when="last">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1561">Emitted whenever the terminal receives input from the user and
prepares to send it to the child process.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="text" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="1564">a string of text</doc>
            <type name="utf8" c:type="gchar*"/>
          </parameter>
          <parameter name="size" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="1565">the length of that string of text</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="contents-changed" when="last">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1626">Emitted whenever the visible appearance of the terminal has changed.
Used primarily by #VteTerminalAccessible.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="copy-clipboard" when="last" action="1">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1963">Emitted whenever vte_terminal_copy_clipboard() is called.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="current-directory-uri-changed"
                   when="last"
                   deprecated="1"
                   deprecated-version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1464">Emitted when the current directory URI is modified.</doc>
        <doc-deprecated xml:space="preserve">Use the #VteTerminal:termprop-changed signal
  for the %VTE_TERMPROP_CURRENT_DIRECTORY_URI termprop.</doc-deprecated>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="current-file-uri-changed"
                   when="last"
                   deprecated="1"
                   deprecated-version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1487">Emitted when the current file URI is modified.</doc>
        <doc-deprecated xml:space="preserve">Use the #VteTerminal:termprop-changed signal
  for the %VTE_TERMPROP_CURRENT_FILE_URI termprop.</doc-deprecated>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="cursor-moved" when="last">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1646">Emitted whenever the cursor moves to a new character cell.  Used
primarily by #VteTerminalAccessible.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="decrease-font-size" when="last">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1876">Emitted when the user hits the '-' key while holding the Control key.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="deiconify-window"
                   when="last"
                   deprecated="1"
                   deprecated-version="0.60">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1666">Never emitted.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="encoding-changed" when="last">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1540">Emitted whenever the terminal's current encoding has changed.

Note: support for non-UTF-8 is deprecated.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="eof" when="last">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1379">Emitted when the terminal receives an end-of-file from a child which
is running in the terminal.  This signal is frequently (but not
always) emitted with a #VteTerminal::child-exited signal.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="hyperlink-hover-uri-changed"
                   when="last"
                   version="0.50">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1510">Emitted when the hovered hyperlink changes.

@uri and @bbox are owned by VTE, must not be modified, and might
change after the signal handlers returns.

The signal is not re-emitted when the bounding box changes for the
same hyperlink. This might change in a future VTE version without notice.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="object" transfer-ownership="none">
            <type name="utf8" c:type="gchar*"/>
          </parameter>
          <parameter name="p0" transfer-ownership="none">
            <type name="Gdk.Rectangle"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="icon-title-changed"
                   when="last"
                   deprecated="1"
                   deprecated-version="0.54">
        <doc-deprecated xml:space="preserve">This signal is never emitted.</doc-deprecated>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="iconify-window"
                   when="last"
                   deprecated="1"
                   deprecated-version="0.60">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1687">Never emitted.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="increase-font-size" when="last">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1857">Emitted when the user hits the '+' key while holding the Control key.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="lower-window"
                   when="last"
                   deprecated="1"
                   deprecated-version="0.60">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1729">Never emitted.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="maximize-window"
                   when="last"
                   deprecated="1"
                   deprecated-version="0.60">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1792">Never emitted.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="move-window"
                   when="last"
                   deprecated="1"
                   deprecated-version="0.60">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1834">Never emitted.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="x" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="1837">the terminal's desired location, X coordinate</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="y" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="1838">the terminal's desired location, Y coordinate</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="paste-clipboard" when="last" action="1">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1982">Emitted whenever vte_terminal_paste_clipboard() is called.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="raise-window"
                   when="last"
                   deprecated="1"
                   deprecated-version="0.60">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1708">Never emitted.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="refresh-window"
                   when="last"
                   deprecated="1"
                   deprecated-version="0.60">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1750">Never emitted.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="resize-window" when="last">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1813">Emitted at the child application's request.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="width" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="1816">the desired number of columns</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="height" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="1817">the desired number of rows</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="restore-window"
                   when="last"
                   deprecated="1"
                   deprecated-version="0.60">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1771">Never emitted.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="selection-changed" when="last">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1607">Emitted whenever the contents of terminal's selection changes.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="setup-context-menu" when="last">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2101">Emitted with non-%NULL context before @terminal shows a context menu.
The handler may set either a menu model using
vte_terminal_set_context_menu_model(), or a menu using
vte_terminal_set_context_menu(), which will then be used as context
menu, or keep a previously set context menu or context menu model,
but update the menu and/or its #GAction:s visibility and sensitivity.
If neither a menu model nor a menu are set, a context menu
will not be shown.

Note that @context is only valid during the signal emission; you may
not retain it to call methods on it afterwards.

Also emitted with %NULL context after the context menu has been dismissed.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="context"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="2104">the context</doc>
            <type name="EventContext"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="termprop-changed"
                   when="last"
                   detailed="1"
                   version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2001">The "termprop-changed" signal is emitted when a termprop
has changed or been reset.

The handler may use the vte_terminal_get_termprop_*()
functions (and their by-ID variants), to retrieve the value of
any termprop (not just @name); but it must *not* call *any*
other API on @terminal, including API of its parent classes.

This signal supports detailed connections, so e.g. subscribing
to "termprop-changed::name" only runs the callback when the
termprop "name" has changed.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="2004">the name of the changed property</doc>
            <type name="utf8" c:type="gchar*"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="termprops-changed" when="last" version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2036">Emitted when termprops have changed. @props is an array containing
the IDs of the terminal properties that may have changed since
the last emission of this signal, in an undefined order.
Note that emission of this signal is delayed from the receipt of the
OSC sequences, and a termprop may have been changed more than once
inbetween signal emissions, but only the value set last is retrievable.

The default handler for this signal emits the "termprop-changed"
signal for each changed property. Returning %TRUE from a handler
running before the default will prevent this.

The handler may use the vte_terminal_get_termprop_*()
functions (and their by-ID variants), to retrieve the value of
any termprop, as well as call vte_terminal_reset_termprop()
(and its by-ID variant) to reset any termprop, or emit the
VteTerminal::termprop-changed signal; but it must *not*
call *any* other API on @terminal, including API of its parent classes.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="2060">%TRUE to stop further handlers being invoked for this signal,
  or %FALSE to continue signal emission</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="props" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="2039">an array of termprop IDs</doc>
            <array length="1" zero-terminated="0" c:type="gpointer">
              <type name="gint"/>
            </array>
          </parameter>
          <parameter name="n_props" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vtegtk.cc"
                 line="2040">the length of the @keys array</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="text-deleted"
                   when="last"
                   deprecated="1"
                   deprecated-version="0.66">
        <doc-deprecated xml:space="preserve">This signal is never emitted.</doc-deprecated>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="text-inserted"
                   when="last"
                   deprecated="1"
                   deprecated-version="0.66">
        <doc-deprecated xml:space="preserve">This signal is never emitted.</doc-deprecated>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="text-modified"
                   when="last"
                   deprecated="1"
                   deprecated-version="0.66">
        <doc-deprecated xml:space="preserve">This signal is never emitted.</doc-deprecated>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
      <glib:signal name="text-scrolled"
                   when="last"
                   deprecated="1"
                   deprecated-version="0.66">
        <doc-deprecated xml:space="preserve">This signal is never emitted.</doc-deprecated>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="delta" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="window-title-changed"
                   when="last"
                   deprecated="1"
                   deprecated-version="0.78">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="1422">Emitted when the #VteTerminal:window-title property is modified.</doc>
        <doc-deprecated xml:space="preserve">Use the #VteTerminal:termprop-changed signal
  for the %VTE_TERMPROP_XTERM_TITLE termprop.</doc-deprecated>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="TerminalClass"
            c:type="VteTerminalClass"
            glib:is-gtype-struct-for="Terminal">
      <doc xml:space="preserve"
           filename="src/vte/vteterminal.h"
           line="66">All of these fields should be considered read-only, except for derived classes.</doc>
      <source-position filename="src/vte/vteterminal.h" line="147"/>
      <field name="parent_class">
        <type name="Gtk.WidgetClass" c:type="GtkWidgetClass"/>
      </field>
      <field name="eof">
        <callback name="eof">
          <source-position filename="src/vte/vteterminal.h" line="78"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="child_exited">
        <callback name="child_exited">
          <source-position filename="src/vte/vteterminal.h" line="79"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
            <parameter name="status" transfer-ownership="none">
              <type name="gint" c:type="int"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="encoding_changed">
        <callback name="encoding_changed">
          <source-position filename="src/vte/vteterminal.h" line="80"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="char_size_changed">
        <callback name="char_size_changed">
          <source-position filename="src/vte/vteterminal.h" line="81"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
            <parameter name="char_width" transfer-ownership="none">
              <type name="guint" c:type="guint"/>
            </parameter>
            <parameter name="char_height" transfer-ownership="none">
              <type name="guint" c:type="guint"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="window_title_changed">
        <callback name="window_title_changed">
          <source-position filename="src/vte/vteterminal.h" line="82"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="icon_title_changed">
        <callback name="icon_title_changed">
          <source-position filename="src/vte/vteterminal.h" line="83"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="selection_changed">
        <callback name="selection_changed">
          <source-position filename="src/vte/vteterminal.h" line="84"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="contents_changed">
        <callback name="contents_changed">
          <source-position filename="src/vte/vteterminal.h" line="85"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="cursor_moved">
        <callback name="cursor_moved">
          <source-position filename="src/vte/vteterminal.h" line="86"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="commit">
        <callback name="commit">
          <source-position filename="src/vte/vteterminal.h" line="87"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
            <parameter name="text" transfer-ownership="none">
              <type name="utf8" c:type="const gchar*"/>
            </parameter>
            <parameter name="size" transfer-ownership="none">
              <type name="guint" c:type="guint"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="deiconify_window">
        <callback name="deiconify_window">
          <source-position filename="src/vte/vteterminal.h" line="89"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="iconify_window">
        <callback name="iconify_window">
          <source-position filename="src/vte/vteterminal.h" line="90"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="raise_window">
        <callback name="raise_window">
          <source-position filename="src/vte/vteterminal.h" line="91"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="lower_window">
        <callback name="lower_window">
          <source-position filename="src/vte/vteterminal.h" line="92"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="refresh_window">
        <callback name="refresh_window">
          <source-position filename="src/vte/vteterminal.h" line="93"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="restore_window">
        <callback name="restore_window">
          <source-position filename="src/vte/vteterminal.h" line="94"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="maximize_window">
        <callback name="maximize_window">
          <source-position filename="src/vte/vteterminal.h" line="95"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="resize_window">
        <callback name="resize_window">
          <source-position filename="src/vte/vteterminal.h" line="96"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
            <parameter name="width" transfer-ownership="none">
              <type name="guint" c:type="guint"/>
            </parameter>
            <parameter name="height" transfer-ownership="none">
              <type name="guint" c:type="guint"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="move_window">
        <callback name="move_window">
          <source-position filename="src/vte/vteterminal.h" line="97"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
            <parameter name="x" transfer-ownership="none">
              <type name="guint" c:type="guint"/>
            </parameter>
            <parameter name="y" transfer-ownership="none">
              <type name="guint" c:type="guint"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="increase_font_size">
        <callback name="increase_font_size">
          <source-position filename="src/vte/vteterminal.h" line="102"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="decrease_font_size">
        <callback name="decrease_font_size">
          <source-position filename="src/vte/vteterminal.h" line="103"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="text_modified">
        <callback name="text_modified">
          <source-position filename="src/vte/vteterminal.h" line="107"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="text_inserted">
        <callback name="text_inserted">
          <source-position filename="src/vte/vteterminal.h" line="108"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="text_deleted">
        <callback name="text_deleted">
          <source-position filename="src/vte/vteterminal.h" line="109"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="text_scrolled">
        <callback name="text_scrolled">
          <source-position filename="src/vte/vteterminal.h" line="110"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
            <parameter name="delta" transfer-ownership="none">
              <type name="gint" c:type="gint"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="copy_clipboard">
        <callback name="copy_clipboard">
          <source-position filename="src/vte/vteterminal.h" line="114"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="src/vtegtk.cc"
                   line="3349">a #VteTerminal</doc>
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="paste_clipboard">
        <callback name="paste_clipboard">
          <source-position filename="src/vte/vteterminal.h" line="115"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="src/vtegtk.cc"
                   line="3426">a #VteTerminal</doc>
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="bell">
        <callback name="bell">
          <source-position filename="src/vte/vteterminal.h" line="117"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="_extra_padding" readable="0" private="1">
        <array zero-terminated="0" fixed-size="3">
          <type name="gpointer" c:type="gpointer"/>
        </array>
      </field>
      <field name="setup_context_menu">
        <callback name="setup_context_menu">
          <source-position filename="src/vte/vteterminal.h" line="126"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
            <parameter name="context" transfer-ownership="none">
              <type name="EventContext" c:type="const VteEventContext*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="termprops_changed">
        <callback name="termprops_changed">
          <source-position filename="src/vte/vteterminal.h" line="129"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
            <parameter name="props" transfer-ownership="none">
              <type name="gint" c:type="const int*"/>
            </parameter>
            <parameter name="n_props" transfer-ownership="none">
              <type name="gint" c:type="int"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="termprop_changed">
        <callback name="termprop_changed">
          <source-position filename="src/vte/vteterminal.h" line="133"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="terminal" transfer-ownership="none">
              <type name="Terminal" c:type="VteTerminal*"/>
            </parameter>
            <parameter name="prop" transfer-ownership="none">
              <type name="utf8" c:type="const char*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="_padding" readable="0" private="1">
        <array zero-terminated="0" fixed-size="10">
          <type name="gpointer" c:type="gpointer"/>
        </array>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="TerminalClassPrivate" c:type="VteTerminalClassPrivate*"/>
      </field>
    </record>
    <record name="TerminalClassPrivate"
            c:type="VteTerminalClassPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="src/vte/vteterminal.h" line="53"/>
    </record>
    <callback name="TerminalSpawnAsyncCallback"
              c:type="VteTerminalSpawnAsyncCallback"
              version="0.48">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="4601">Callback for vte_terminal_spawn_async().

On success, @pid contains the PID of the spawned process, and @error
is %NULL.
On failure, @pid is -1 and @error contains the error information.</doc>
      <source-position filename="src/vte/vteterminal.h" line="166"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="terminal" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="4603">the #VteTerminal</doc>
          <type name="Terminal" c:type="VteTerminal*"/>
        </parameter>
        <parameter name="pid" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="4604">a #GPid</doc>
          <type name="GLib.Pid" c:type="GPid"/>
        </parameter>
        <parameter name="error"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="4605">a #GError, or %NULL</doc>
          <type name="GLib.Error" c:type="GError*"/>
        </parameter>
        <parameter name="user_data"
                   transfer-ownership="none"
                   nullable="1"
                   allow-none="1"
                   closure="3">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="4606">user data that was passed to vte_terminal_spawn_async</doc>
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <enumeration name="TextBlinkMode"
                 version="0.52"
                 glib:type-name="VteTextBlinkMode"
                 glib:get-type="vte_text_blink_mode_get_type"
                 c:type="VteTextBlinkMode">
      <doc xml:space="preserve"
           filename="src/vte/vteenums.h"
           line="61">An enumerated type which can be used to indicate whether the terminal allows
the text contents to be blinked.</doc>
      <member name="never"
              value="0"
              c:identifier="VTE_TEXT_BLINK_NEVER"
              glib:nick="never"
              glib:name="VTE_TEXT_BLINK_NEVER">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="63">Do not blink the text.</doc>
      </member>
      <member name="focused"
              value="1"
              c:identifier="VTE_TEXT_BLINK_FOCUSED"
              glib:nick="focused"
              glib:name="VTE_TEXT_BLINK_FOCUSED">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="64">Allow blinking text only if the terminal is focused.</doc>
      </member>
      <member name="unfocused"
              value="2"
              c:identifier="VTE_TEXT_BLINK_UNFOCUSED"
              glib:nick="unfocused"
              glib:name="VTE_TEXT_BLINK_UNFOCUSED">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="65">Allow blinking text only if the terminal is unfocused.</doc>
      </member>
      <member name="always"
              value="3"
              c:identifier="VTE_TEXT_BLINK_ALWAYS"
              glib:nick="always"
              glib:name="VTE_TEXT_BLINK_ALWAYS">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="66">Allow blinking text. This is the default.</doc>
      </member>
    </enumeration>
    <record name="Uuid"
            c:type="VteUuid"
            opaque="1"
            version="0.78"
            glib:type-name="VteUuid"
            glib:get-type="vte_uuid_get_type"
            c:symbol-prefix="uuid">
      <doc xml:space="preserve"
           filename="src/vteuuid.cc"
           line="95">An object representing an UUID.</doc>
      <source-position filename="src/vte/vteuuid.h" line="31"/>
      <constructor name="new_from_string"
                   c:identifier="vte_uuid_new_from_string"
                   version="0.78">
        <doc xml:space="preserve"
             filename="src/vteuuid.cc"
             line="153">Creates a new UUID from its string representation @str.</doc>
        <source-position filename="src/vte/vteuuid.h" line="47"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="src/vteuuid.cc"
               line="161">a new UUID, or %NULL is
  @str is not a valid UUID string representation</doc>
          <type name="Uuid" c:type="VteUuid*"/>
        </return-value>
        <parameters>
          <parameter name="str" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteuuid.cc"
                 line="155">a string</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="len" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteuuid.cc"
                 line="156">the length of @str, or -1 is @str is NUL terminated</doc>
            <type name="gssize" c:type="gssize"/>
          </parameter>
          <parameter name="fmt" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteuuid.cc"
                 line="157">flags from #VteUuidFormat for which fmt(s) to accept</doc>
            <type name="UuidFormat" c:type="VteUuidFormat"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_v4" c:identifier="vte_uuid_new_v4" version="0.78">
        <doc xml:space="preserve"
             filename="src/vteuuid.cc"
             line="103">Creates a new random UUID.</doc>
        <source-position filename="src/vte/vteuuid.h" line="39"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/vteuuid.cc"
               line="108">a new v4 UUID</doc>
          <type name="Uuid" c:type="VteUuid*"/>
        </return-value>
      </constructor>
      <method name="dup" c:identifier="vte_uuid_dup" version="0.78">
        <doc xml:space="preserve"
             filename="src/vteuuid.cc"
             line="182">Creates a copy of @uuid.</doc>
        <source-position filename="src/vte/vteuuid.h" line="52"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/vteuuid.cc"
               line="188">a new copy of @@uuid</doc>
          <type name="Uuid" c:type="VteUuid*"/>
        </return-value>
        <parameters>
          <instance-parameter name="uuid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteuuid.cc"
                 line="184">a #VteUuid</doc>
            <type name="Uuid" c:type="const VteUuid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="equal" c:identifier="vte_uuid_equal" version="0.78">
        <doc xml:space="preserve"
             filename="src/vteuuid.cc"
             line="288">Compares @uuid and @other for equality.</doc>
        <source-position filename="src/vte/vteuuid.h" line="68"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vteuuid.cc"
               line="294">%TRUE iff @uuid and @other are equal</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="uuid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteuuid.cc"
                 line="290">a #VteUuid</doc>
            <type name="Uuid" c:type="const VteUuid*"/>
          </instance-parameter>
          <parameter name="other" transfer-ownership="none">
            <type name="Uuid" c:type="const VteUuid*"/>
          </parameter>
        </parameters>
      </method>
      <method name="free" c:identifier="vte_uuid_free" version="0.78">
        <doc xml:space="preserve"
             filename="src/vteuuid.cc"
             line="205">Frees @uuid.</doc>
        <source-position filename="src/vte/vteuuid.h" line="55"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="uuid" transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/vteuuid.cc"
                 line="207">a #VteUuid</doc>
            <type name="Uuid" c:type="VteUuid*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="free_to_string"
              c:identifier="vte_uuid_free_to_string"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vteuuid.cc"
             line="225">Frees @uuid and returns its string representation, see
vte_uuid_to_string() for more information.</doc>
        <source-position filename="src/vte/vteuuid.h" line="58"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/vteuuid.cc"
               line="234">a string representation of @uuid</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="uuid" transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="src/vteuuid.cc"
                 line="227">a #VteUuid</doc>
            <type name="Uuid" c:type="VteUuid*"/>
          </instance-parameter>
          <parameter name="fmt" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteuuid.cc"
                 line="228">a #VteUuidFormat</doc>
            <type name="UuidFormat" c:type="VteUuidFormat"/>
          </parameter>
          <parameter name="len" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteuuid.cc"
                 line="229">a location to store the length of the returned string, or %NULL</doc>
            <type name="gsize" c:type="gsize*"/>
          </parameter>
        </parameters>
      </method>
      <method name="new_v5" c:identifier="vte_uuid_new_v5" version="0.78">
        <doc xml:space="preserve"
             filename="src/vteuuid.cc"
             line="123">Creates a new UUID for @ns and @str.</doc>
        <source-position filename="src/vte/vteuuid.h" line="42"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/vteuuid.cc"
               line="131">a new v5 UUID</doc>
          <type name="Uuid" c:type="VteUuid*"/>
        </return-value>
        <parameters>
          <instance-parameter name="ns"
                              transfer-ownership="none"
                              nullable="1"
                              allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vteuuid.cc"
                 line="125">the namespace #VteUuid</doc>
            <type name="Uuid" c:type="const VteUuid*"/>
          </instance-parameter>
          <parameter name="data" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteuuid.cc"
                 line="126">string data</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="len" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteuuid.cc"
                 line="127">the length of @data, or -1 if @str is NUL terminated</doc>
            <type name="gssize" c:type="gssize"/>
          </parameter>
        </parameters>
      </method>
      <method name="to_string"
              c:identifier="vte_uuid_to_string"
              version="0.78">
        <doc xml:space="preserve"
             filename="src/vteuuid.cc"
             line="256">Returns the string representation of @uuid.</doc>
        <source-position filename="src/vte/vteuuid.h" line="63"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="src/vteuuid.cc"
               line="264">a string representation of @uuid</doc>
          <type name="utf8" c:type="char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="uuid" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteuuid.cc"
                 line="258">a #VteUuid</doc>
            <type name="Uuid" c:type="const VteUuid*"/>
          </instance-parameter>
          <parameter name="fmt" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteuuid.cc"
                 line="259">a #VteUuidFormat</doc>
            <type name="UuidFormat" c:type="VteUuidFormat"/>
          </parameter>
          <parameter name="len"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="src/vteuuid.cc"
                 line="260">a location to store the length of the returned string, or %NULL</doc>
            <type name="gsize" c:type="gsize*"/>
          </parameter>
        </parameters>
      </method>
      <function name="validate_string"
                c:identifier="vte_uuid_validate_string"
                version="0.78">
        <doc xml:space="preserve"
             filename="src/vteuuid.cc"
             line="313">Checks whether @str is a valid string representation of an UUID.</doc>
        <source-position filename="src/vte/vteuuid.h" line="72"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vteuuid.cc"
               line="321">%TRUE iff @str is a valid string representation</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="str" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteuuid.cc"
                 line="316">a string</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
          <parameter name="len" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteuuid.cc"
                 line="317">the length of @str, or -1 is @str is NUL terminated</doc>
            <type name="gssize" c:type="gssize"/>
          </parameter>
          <parameter name="fmt" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="src/vteuuid.cc"
                 line="315">a #VteUuidFormat</doc>
            <type name="UuidFormat" c:type="VteUuidFormat"/>
          </parameter>
        </parameters>
      </function>
    </record>
    <bitfield name="UuidFormat"
              glib:type-name="VteUuidFormat"
              glib:get-type="vte_uuid_format_get_type"
              c:type="VteUuidFormat">
      <member name="simple"
              value="1"
              c:identifier="VTE_UUID_FORMAT_SIMPLE"
              glib:nick="simple"
              glib:name="VTE_UUID_FORMAT_SIMPLE">
      </member>
      <member name="braced"
              value="2"
              c:identifier="VTE_UUID_FORMAT_BRACED"
              glib:nick="braced"
              glib:name="VTE_UUID_FORMAT_BRACED">
      </member>
      <member name="urn"
              value="4"
              c:identifier="VTE_UUID_FORMAT_URN"
              glib:nick="urn"
              glib:name="VTE_UUID_FORMAT_URN">
      </member>
      <member name="any"
              value="7"
              c:identifier="VTE_UUID_FORMAT_ANY"
              glib:nick="any"
              glib:name="VTE_UUID_FORMAT_ANY">
      </member>
    </bitfield>
    <enumeration name="WriteFlags"
                 glib:type-name="VteWriteFlags"
                 glib:get-type="vte_write_flags_get_type"
                 c:type="VteWriteFlags">
      <doc xml:space="preserve"
           filename="src/vte/vteenums.h"
           line="134">A flag type to determine how terminal contents should be written
to an output stream.</doc>
      <member name="default"
              value="0"
              c:identifier="VTE_WRITE_DEFAULT"
              glib:nick="default"
              glib:name="VTE_WRITE_DEFAULT">
        <doc xml:space="preserve"
             filename="src/vte/vteenums.h"
             line="136">Write contents as UTF-8 text.  This is the default.</doc>
      </member>
    </enumeration>
    <function name="get_encoding_supported"
              c:identifier="vte_get_encoding_supported"
              version="0.60"
              deprecated="1"
              deprecated-version="0.60">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="3298">Queries whether the legacy encoding @encoding is supported.

If ICU support is not available, this function always returns %FALSE.

Note that UTF-8 is always supported; you can select it by
passing %NULL to vte_terminal_set_encoding().</doc>
      <source-position filename="src/vte/vtedeprecated.h" line="203"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3309">%TRUE iff the legacy encoding @encoding is supported</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="encoding" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3300">the name of the legacy encoding</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="get_encodings"
              c:identifier="vte_get_encodings"
              version="0.60"
              deprecated="1"
              deprecated-version="0.60">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="3263">Gets the list of supported legacy encodings.

If ICU support is not available, this returns an empty vector.
Note that UTF-8 is always supported; you can select it by
passing %NULL to vte_terminal_set_encoding().</doc>
      <source-position filename="src/vte/vtedeprecated.h" line="199"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3273">the list of supported encodings; free with
  g_strfreev()</doc>
        <array c:type="char**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="include_aliases" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3265">whether to include alias names</doc>
          <type name="gboolean" c:type="gboolean"/>
        </parameter>
      </parameters>
    </function>
    <function name="get_feature_flags"
              c:identifier="vte_get_feature_flags"
              version="0.62">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="3124">Gets features VTE was compiled with.</doc>
      <source-position filename="src/vte/vteglobals.h" line="34"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3129">flags from #VteFeatureFlags</doc>
        <type name="FeatureFlags" c:type="VteFeatureFlags"/>
      </return-value>
    </function>
    <function name="get_features"
              c:identifier="vte_get_features"
              version="0.40">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="3083">Gets a list of features vte was compiled with.</doc>
      <source-position filename="src/vte/vteglobals.h" line="31"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3088">a string with features</doc>
        <type name="utf8" c:type="const char*"/>
      </return-value>
    </function>
    <function name="get_major_version"
              c:identifier="vte_get_major_version"
              version="0.40">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="3151">Returns the major version of the VTE library at runtime.
Contrast this with %VTE_MAJOR_VERSION which represents
the version of the VTE library that the code was compiled
with.</doc>
      <source-position filename="src/vte/vteversion.h" line="77"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3159">the major version</doc>
        <type name="guint" c:type="guint"/>
      </return-value>
    </function>
    <function name="get_micro_version"
              c:identifier="vte_get_micro_version"
              version="0.40">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="3187">Returns the micro version of the VTE library at runtime.
Contrast this with %VTE_MICRO_VERSION which represents
the version of the VTE library that the code was compiled
with.</doc>
      <source-position filename="src/vte/vteversion.h" line="83"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3195">the micro version</doc>
        <type name="guint" c:type="guint"/>
      </return-value>
    </function>
    <function name="get_minor_version"
              c:identifier="vte_get_minor_version"
              version="0.40">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="3169">Returns the minor version of the VTE library at runtime.
Contrast this with %VTE_MINOR_VERSION which represents
the version of the VTE library that the code was compiled
with.</doc>
      <source-position filename="src/vte/vteversion.h" line="80"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3177">the minor version</doc>
        <type name="guint" c:type="guint"/>
      </return-value>
    </function>
    <function name="get_termprops"
              c:identifier="vte_get_termprops"
              version="0.78">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="3000">Gets the names of the installed termprops in an unspecified order.</doc>
      <source-position filename="src/vte/vteglobals.h" line="65"/>
      <return-value transfer-ownership="container" nullable="1">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3006">the names of the installed
  termprops, or %NULL if there are no termprops</doc>
        <array length="0" zero-terminated="0" c:type="const char**">
          <type name="utf8"/>
        </array>
      </return-value>
      <parameters>
        <parameter name="length"
                   direction="out"
                   caller-allocates="0"
                   transfer-ownership="full"
                   optional="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3002">a location to store the length of the returned array</doc>
          <type name="gsize" c:type="gsize*"/>
        </parameter>
      </parameters>
    </function>
    <function name="get_test_flags"
              c:identifier="vte_get_test_flags"
              version="0.78"
              introspectable="0">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="3243">Gets the test flags; see vte_set_test_flags() for more information.
Note that on non-debug builds, this always returns 0.</doc>
      <source-position filename="src/vte/vteglobals.h" line="43"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3249">the test flags</doc>
        <type name="guint64" c:type="guint64"/>
      </return-value>
    </function>
    <function name="get_user_shell" c:identifier="vte_get_user_shell">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="3205">Gets the user's shell, or %NULL. In the latter case, the
system default (usually "/bin/sh") should be used.</doc>
      <source-position filename="src/vte/vteglobals.h" line="28"/>
      <return-value transfer-ownership="full">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3211">a newly allocated string with the
  user's shell, or %NULL</doc>
        <type name="filename" c:type="char*"/>
      </return-value>
    </function>
    <function name="install_termprop"
              c:identifier="vte_install_termprop"
              version="0.78">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="2931">Installs a new terminal property that can be set by the application.

@name must follow the rules for termprop names as laid out above; it
must have at least 4 components, the first two of which must be "vte",
and "ext". Use the %VTE_TERMPROP_NAME_PREFIX macro which defines this
name prefix.

You should use an identifier for your terminal as the first component
after the prefix, as a namespace marker.

It is a programming error to call this function with a @name that does
not meet these requirements.

It is a programming error to call this function after any #VteTerminal
instances have been created.

It is a programming error to call this function if the named termprop
is already installed with a different type or flags.</doc>
      <source-position filename="src/vte/vteglobals.h" line="56"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2956">an ID for the termprop</doc>
        <type name="gint" c:type="int"/>
      </return-value>
      <parameters>
        <parameter name="name" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="2933">a namespaced property name</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
        <parameter name="type" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="2934">a #VtePropertyType to use for the property</doc>
          <type name="PropertyType" c:type="VtePropertyType"/>
        </parameter>
        <parameter name="flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="2935">flags from #VtePropertyFlags</doc>
          <type name="PropertyFlags" c:type="VtePropertyFlags"/>
        </parameter>
      </parameters>
    </function>
    <function name="install_termprop_alias"
              c:identifier="vte_install_termprop_alias"
              version="0.78">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="2976">Installs a new terminal property @name as an alias for the terminal
property @target_name.</doc>
      <source-position filename="src/vte/vteglobals.h" line="61"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="2984">the ID for the termprop @target_name</doc>
        <type name="gint" c:type="int"/>
      </return-value>
      <parameters>
        <parameter name="name" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="2978">a namespaced property name</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
        <parameter name="target_name" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="2979">the target property name</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="pty_error_quark"
              c:identifier="vte_pty_error_quark"
              moved-to="PtyError.quark">
      <doc xml:space="preserve"
           filename="src/vtepty.cc"
           line="457">Error domain for VTE PTY errors. Errors in this domain will be from the #VtePtyError
enumeration. See #GError for more information on error domains.</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/vtepty.cc"
             line="463">the error domain for VTE PTY errors</doc>
        <type name="GLib.Quark" c:type="GQuark"/>
      </return-value>
    </function>
    <function name="query_termprop"
              c:identifier="vte_query_termprop"
              version="0.78">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="3018">Gets the property type of the termprop. For properties installed by
vte_install_termprop(), the name starts with "vte.ext.".

For an alias termprop (see vte_install_termprop_alias()), @resolved_name
will be name of the alias' target termprop; otherwise it will be @name.</doc>
      <source-position filename="src/vte/vteglobals.h" line="68"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3032">%TRUE iff the termprop exists, and then @prop, @type and
  @flags will be filled in</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="name" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3020">a termprop name</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
        <parameter name="resolved_name"
                   direction="out"
                   caller-allocates="0"
                   transfer-ownership="none"
                   optional="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3021">a location to store the termprop's name</doc>
          <type name="utf8" c:type="const char**"/>
        </parameter>
        <parameter name="prop"
                   direction="out"
                   caller-allocates="0"
                   transfer-ownership="full"
                   optional="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3022">a location to store the termprop's ID</doc>
          <type name="gint" c:type="int*"/>
        </parameter>
        <parameter name="type"
                   direction="out"
                   caller-allocates="0"
                   transfer-ownership="full"
                   optional="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3023">a location to store the termprop's type as a #VtePropertyType</doc>
          <type name="PropertyType" c:type="VtePropertyType*"/>
        </parameter>
        <parameter name="flags"
                   direction="out"
                   caller-allocates="0"
                   transfer-ownership="full"
                   optional="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3024">a location to store the termprop's flags as a #VtePropertyFlags</doc>
          <type name="PropertyFlags" c:type="VtePropertyFlags*"/>
        </parameter>
      </parameters>
    </function>
    <function name="query_termprop_by_id"
              c:identifier="vte_query_termprop_by_id"
              version="0.78">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="3052">Like vte_query_termprop() except that it takes the termprop by ID.
See that function for more information.

For an alias termprop (see vte_install_termprop_alias()), @resolved_name
will be name of the alias' target termprop; otherwise it will be @name.</doc>
      <source-position filename="src/vte/vteglobals.h" line="75"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/vtegtk.cc"
             line="3065">%TRUE iff the termprop exists, and then @name, @type and
  @flags will be filled in</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="prop" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3054">a termprop ID</doc>
          <type name="gint" c:type="int"/>
        </parameter>
        <parameter name="name"
                   direction="out"
                   caller-allocates="0"
                   transfer-ownership="none"
                   optional="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3055">a location to store the termprop's name</doc>
          <type name="utf8" c:type="const char**"/>
        </parameter>
        <parameter name="type"
                   direction="out"
                   caller-allocates="0"
                   transfer-ownership="full"
                   optional="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3056">a location to store the termprop's type as a #VtePropertyType</doc>
          <type name="PropertyType" c:type="VtePropertyType*"/>
        </parameter>
        <parameter name="flags"
                   direction="out"
                   caller-allocates="0"
                   transfer-ownership="full"
                   optional="1"
                   allow-none="1">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3057">a location to store the termprop's flags as a #VtePropertyFlags</doc>
          <type name="PropertyFlags" c:type="VtePropertyFlags*"/>
        </parameter>
      </parameters>
    </function>
    <function name="regex_error_quark"
              c:identifier="vte_regex_error_quark"
              moved-to="RegexError.quark">
      <return-value transfer-ownership="none">
        <type name="GLib.Quark" c:type="GQuark"/>
      </return-value>
    </function>
    <function name="set_test_flags"
              c:identifier="vte_set_test_flags"
              version="0.54"
              introspectable="0">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="3226">Sets test flags. This function is only useful for implementing
unit tests for vte itself; it is a no-op in non-debug builds.</doc>
      <source-position filename="src/vte/vteglobals.h" line="40"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="flags" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vtegtk.cc"
               line="3228">flags</doc>
          <type name="guint64" c:type="guint64"/>
        </parameter>
      </parameters>
    </function>
    <function name="uuid_validate_string"
              c:identifier="vte_uuid_validate_string"
              moved-to="Uuid.validate_string"
              version="0.78">
      <doc xml:space="preserve"
           filename="src/vteuuid.cc"
           line="313">Checks whether @str is a valid string representation of an UUID.</doc>
      <source-position filename="src/vte/vteuuid.h" line="72"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="src/vteuuid.cc"
             line="321">%TRUE iff @str is a valid string representation</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="str" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vteuuid.cc"
               line="316">a string</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
        <parameter name="len" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vteuuid.cc"
               line="317">the length of @str, or -1 is @str is NUL terminated</doc>
          <type name="gssize" c:type="gssize"/>
        </parameter>
        <parameter name="fmt" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="src/vteuuid.cc"
               line="315">a #VteUuidFormat</doc>
          <type name="UuidFormat" c:type="VteUuidFormat"/>
        </parameter>
      </parameters>
    </function>
    <docsection name="vte-pty">
      <doc xml:space="preserve"
           filename="src/vtepty.cc"
           line="19">The terminal widget uses these functions to start commands with new controlling
pseudo-terminals and to resize pseudo-terminals.</doc>
    </docsection>
    <docsection name="vte-terminal">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="19">A VteTerminal is a terminal emulator implemented as a GTK widget.

Note that altough #VteTerminal implements the #GtkScrollable interface,
you should not place a #VteTerminal inside a #GtkScrolledWindow
container, since they are incompatible. Instead, pack the terminal in
a horizontal #GtkBox together with a #GtkScrollbar which uses the
#GtkAdjustment returned from gtk_scrollable_get_vadjustment().</doc>
    </docsection>
    <docsection name="vte-termprops">
      <doc xml:space="preserve"
           filename="src/vtegtk.cc"
           line="2731">A terminal property ("termprop") is a variable in #VteTerminal.  It can be
assigned a value (or no value) via an OSC sequence; and the value can
be observed by the application embedding the #VteTerminal.

When a termprop value changes, a change notification is delivered
asynchronously to the #VteTerminal via the #VteTerminal:termprops-changed
signal, which will receive the IDs of the termprops that were changed since
the last emission of the signal.  Its default handler will emit the
#VteTerminal:termprop-changed detailed signal for each changed property
separately.  Note that since the emission of these signals is delayed
to an unspecified time after the change, when changing a termprop multiple
times in succession, only the last change may be visible to the
#VteTerminal, with intermediate value changes being unobservable.
However, a call to one of the vte_terminal_get_termprop*() functions
will always deliver the current value, even if no change notification
for it has been dispatched yet.

Also note that when setting the value of a termprop to the same value it
already had, or resetting a termprop that already had no value, vte tries
to avoid emitting an unnecessary change notification for that termprop;
however that is not an API guarantee.

All change notifications for termprops changed from a single OSC sequence
are emitted at the same time; notifications for termprop changes from
a series of OSC sequences may or may not be emitted at the same time.

An termprop installed with the %VTE_PROPERTY_FLAG_EPHEMERAL is called an
ephemeral termprop. Ephemeral termprops can be set and reset using the
same OSC sequences as other termprops; the only difference is that their
values can only be observed during the emission of the
#VteTerminal:termprops-changed and #VteTerminal:termprop-changed signals
that follow them changing their value, and their values will be reset
after the signal emission.

The OSC sequence to change termprop values has the following syntax:
```
OSC              = INTRODUCER, CONTROL_STRING, ST;
INTRODUCER       = ( U+001B, U+005D ) | U+009D;
ST               = ( U+001B, U+005C ) | U+009C;
CONTROL_STRING   = SELECTOR, { ";", STATEMENT };
SELECTOR         = "666";
STATEMENT        = SET_STATEMENT | RESET_STATEMENT | SIGNAL_STATEMENT | QUERY_STATEMENT;
SET_STATEMENT    = KEY, "=", VALUE;
QUERY_STATEMENT  = KEY, "?";
SIGNAL_STATEMENT = KEY, "!";
RESET_STATEMENT  = KEY | KEY, ".";
```

Note that there is a limit on the total length of the `CONTROL_STRING` of 4096
unicode codepoints between the `INTRODUCER` and the `ST`, excluding both.

A `SET_STATEMENT` consists of the name of a termprop, followed by an equal
sign ('=') and the new value of the termprop.  The syntax of the value
depends on the type of the termprop; if the value is not valid for the type,
the set-statement behaves identical to a reset-statement.  If the name does not
refer to a registered termprop, the set-statement is ignored.

A `RESET_STATEMENT` consists of just the name of the termprop, or a prefix
of termprop names ending with a '.'. When given the name of a registered termprop,
it will reset the termprop to having no value set.  If the name does not refer to
a registered termprop, the reset-statement is ignored. Since 0.80, it may also be
given a prefix of termprop names ending with a '.', which resets all registered
termprops whose name starts with the given prefix.

A `SIGNAL_STATEMENT` consists of the name of a valueless termprop, followed by
an exclamation mark ('!').  If the name does not refer to a registered termprop,
or to a termprop that is not valueless, the signal-statement is ignored.
See below for more information about valueless termprops.

A `QUERY_STATEMENT` consists of the name of a termprop, followed by a question
mark ('?').  This will cause the terminal to respond with one or more OSC sequences
using the same syntax as above, that may each contain none or more statements,
for none or some of termprops being queried.  If the queried termprop has a value,
there may be a set-statement for that termprop and that value; if the termprop
has no value, there may be a reset-statement for that termprop.
Note that this is reserved for future extension; currently, for security reasons,
the terminal will respond with exactly one such OSC sequence containing zero
statements.  If the name does not refer to a registered termprop, there
nevertheless will be an OSC response.

Termprop names (`KEY`) must follow this syntax:
```
KEY            = KEY_COMPONENT, { ".", KEY_COMPONENT };
KEY_COMPONENT  = KEY_IDENTIFIER, { "-", KEY_IDENTIFIER };
KEY_IDENTIFIER = LETTER, { LETTER }, [ DIGIT, { DIGIT } ];
LETTER         = "a" | ... | "z";
DIGIT          = "0" | ... | "9";
```

Or in words, the key must consist of two or more components, each of which
consists of a sequence of one or more identifier separated with a dash ('-'),
each identifier starting with a lowercase letter followed by zero or more
lowercase letters 'a' ... 'z', followed by zero or more digits '0' ... '9'.

There are multiple types of termprops supported.

* A termprop of type %VTE_PROPERTY_VALUELESS has no value, and its use
  is solely for the side-effect of emitting the change signal. It may be
  raised (that is, cause the change signal to be emitted) by using
  a signal-statement as detailed above, and unraised (that is, cancel
  a pending change signal emission for it) by using a reset-statement.
  A set-statement has no effect for this property type.

* A termprop of type %VTE_PROPERTY_BOOL is a boolean property, and
  takes the strings "0", "false", "False", and "FALSE" to denote the %FALSE
  value, and "1", "true", "True", and "TRUE" to denote the %TRUE value.

* A termprop of type %VTE_PROPERTY_INT is an 64-bit signed integer,
  and takes a string of digits and an optional leading minus sign, that,
  when converted to a number must be between -9223372036854775808 and
  9223372036854775807.

* A termprop of type %VTE_PROPERTY_UINT is a 64-bit unsigned integer,
  and takes a string of digits that, when converted to a number, must be
  between 0 and 18446744073709551615.

* A termprop of type %VTE_PROPERTY_DOUBLE is a finite double-precision
  floating-point number, and takes a string specifying the floating-point
  number in fixed or scientific format, with no leading or trailing
  whitespace.

* A termprop of type %VTE_PROPERTY_RGBA or %VTE_PROPERTY_RGBA is a color,
  and takes a string in the CSS color format, accepting colors in either
  hex format, rgb, rgba, hsl, or hsla format, or a named color.  Termprops
  of type %VTE_PROPERTY_RGB will always have an alpha value of 1.0, while
  termprops of type %VTE_PROPERTY_RGBA will have the alpha value as specified
  in the set-statement.  See the CSS spec and man:XParseColor(3) for more
  information on the syntax of the termprop value.

* A termprop of type %VTE_PROPERTY_STRING is a string.
  Note that due to the OSC syntax, the value string must not contain
  semicolons (';') nor any C0 or C1 control characters.  Instead, escape
  sequences '\s' for semicolon, and '\n' for LF are provided; and therefore
  backslashes need to be escaped too, using '\\'.
  The maximum size after unescaping is 1024 unicode codepoints.

* A termprop of type %VTE_PROPERTY_DATA is binary data, and takes
  a string that is base64-encoded in the default alphabet as per RFC 4648.
  The maximum size of the data after base64 decoding is 2048 bytes.

* A termprop of type %VTE_PROPERTY_UUID is a UUID, and takes a
  string representation of an UUID in simple, braced, or URN form.
  See RFC 4122 for more information.

* A termprop of type %VTE_PROPERTY_URI is a URI, and takes a
  string representation of an URI. See the #GUri documentation
  for more information.
  Note that due to the OSC syntax, the value string must not contain
  semicolons (';') nor any C0 or C1 control characters.  Instead,
  use percent-encoding.  Also, any non-UTF-8 characters must be
  percent-encoded as well. However, the data after percent-decoding
  is not required to be UTF-8.
  Note that data: URIs are not permitted; use a %VTE_PROPERTY_DATA
  termprop instead.
  The maximum size of an URI is limited only by the length limit of
  the OSC control string.
  Note that currently termprops of this type cannot be created
  via the API, and not set via OSC 666; only built-in termprops of this
  type are available and can only be set via their own special
  OSC numbers.

* A termprop of type %VTE_PROPERTY_IMAGE is an image.
  Note that currently termprops of this type cannot be created
  via the API, and not set, but can be reset, via OSC 666, only
  built-in termprops of this type are available, and they can
  only be set via their own special sequence. Since: 0.80

Note that any values any termprop has must be treated as *untrusted*.

Note that %VTE_PROPERTY_STRING, %VTE_PROPERTY_DATA, and
%VTE_PROPERTY_URI types are not intended to transfer arbitrary binary
data, and may not be used to either transfer image data, file upload of
arbitrary file data, clipboard data, as a general free-form protocol,
or for textual user notifications.  Also you must never feed the data
received, or any derivation thereof, back to the terminal, in full or
in part. Also note that %VTE_TERMPROP_STRING and %VTE_TERMPROP_DATA
termprops must not to be used when the data fits one of the other
termprop types (e.g. a string termprop may not be used for a number).

If you do perform any further parsing on the contents of a termprop value,
you must do so in the strictest way possible, and treat any errors by
performing the same action as if the termprop had been reset to having
no value at all.

Note also that when the terminal is reset (by RIS, DECSTR, or DECSR) all
termprops are reset to having no value.

It is a programming error to call any of the vte_terminal_*_termprop*()
functions for a termprop that is not of the type specified by the function
name.  However, is permissible to call these functions for a name that
is not a registered termprop, in which case they will return the same
as if a termprop of that name existed but had no value.</doc>
    </docsection>
    <docsection name="vte-version">
      <doc xml:space="preserve"
           filename="src/vte/vteversion.h"
           line="30">These macros enable compile time checks of the library version.</doc>
    </docsection>
  </namespace>
</repository>
