Vte.Terminal.get_text_range

### Method

# Vte Terminalget_text_range

#### Declaration [src]

    char*
    vte_terminal_get_text_range (
      VteTerminal* terminal,
      glong start_row,
      glong start_col,
      glong end_row,
      glong end_col,
      VteSelectionFunc is_selected,
      gpointer user_data,
      GArray* attributes
    )

#### Description [src]

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

This method is unaware of BiDi. The columns passed in `start_col` and `end_row`, and 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`.

#### Parameters

`start_row` | `glong`
| First row to search for data.
`start_col` | `glong`
| First column to search for data.
`end_row` | `glong`
| Last row to search for data.
`end_col` | `glong`
| Last column to search for data.
`is_selected` | `VteSelectionFunc`
| A `VteSelectionFunc` callback.
| The argument can be `NULL`.
`user_data` | `gpointer`
| User data to be passed to the callback.
| The argument can be `NULL`.
| The data is owned by the caller of the function.
`attributes` | An array of `None`
| Location for storing text attributes. Deprecated: 0.68: Always pass `NULL` here.
| The argument will be set by the function.
| The argument can be set to `NULL`.
| The instance takes ownership of the data, and is responsible for freeing it.

#### Return value

Returns: | `char*`
| A newly allocated text string, or `NULL`.
| The caller of the method takes ownership of the data, and is responsible for freeing it.
| The return value can be `NULL`.
| The value is a NUL terminated UTF-8 string.