## GtkSourceUtils

GtkSourceUtils — Utility functions

## Functions

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

## 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