## GtkSourceUtils

GtkSourceUtils — Utility functions

## Functions

gchar * | gtk_source_utils_unescape_search_text ()
gchar * | gtk_source_utils_escape_search_text ()
gchar * | gtk_source_utils_get_bracket_matched_message ()

## Includes

    #include <gtksourceview/gtksource.h>

## Description

Utility functions.

## Functions

### gtk_source_utils_unescape_search_text ()

    gchar *
    gtk_source_utils_unescape_search_text (const gchar *text);

Use this function before `gtk_source_search_settings_set_search_text()`, to unescape the following sequences of characters: `\n`, `\r`, `\t` and `\\`. The purpose is to easily write those characters in a search entry.

Note that unescaping the search text is not needed for regular expression searches.

See also: `gtk_source_utils_escape_search_text()`.

#### Parameters

text | the text to unescape. |

#### Returns

the unescaped `text` .

Since: 3.10

### gtk_source_utils_escape_search_text ()

    gchar *
    gtk_source_utils_escape_search_text (const gchar *text);

Use this function to escape the following characters: `\n`, `\r`, `\t` and `\`.

For a regular expression search, use `g_regex_escape_string()` instead.

One possible use case is to take the GtkTextBuffer's selection and put it in a search entry. The selection can contain tabulations, newlines, etc. So it's better to escape those special characters to better fit in the search entry.

See also: `gtk_source_utils_unescape_search_text()`.

Warning: the escape and unescape functions are not reciprocal! For example, escape (unescape (\)) = \\. So avoid cycles such as: search entry -> unescape -> search settings -> escape -> search entry. The original search entry text may be modified.

#### Parameters

text | the text to escape. |

#### Returns

the escaped `text` .

Since: 3.10

### gtk_source_utils_get_bracket_matched_message ()

    gchar *
    gtk_source_utils_get_bracket_matched_message
                                   (GtkTextIter *iter,
                                    GtkSourceBracketMatchType state);

This function is intended to be used inside a “bracket-matched” signal handler. Pass to this function the `iter` and `state` values as received in the signal handler, and a string description will be returned.

#### Parameters

iter | the GtkTextIter. |
state | the GtkSourceBracketMatchType. |

#### Returns

a string intended to be shown in the UI, that describes a bracket matching. `NULL` is returned on `GTK_SOURCE_BRACKET_MATCH_NONE`.

[transfer full][nullable]

Since: 299.0