![]() |
![]() |
![]() |
GtkSourceView 2 Reference Manual | ![]() |
---|---|---|---|---|
Top | Description | Object Hierarchy | Properties |
GtkSourceLanguageManagerGtkSourceLanguageManager — Object which provides access to GtkSourceLanguages |
#include <gtksourceview/gtksourcelanguagemanager.h> GtkSourceLanguageManager; GtkSourceLanguageManager * gtk_source_language_manager_new (void); GtkSourceLanguageManager * gtk_source_language_manager_get_default (void); void gtk_source_language_manager_set_search_path (GtkSourceLanguageManager *lm, gchar **dirs); const gchar * const * gtk_source_language_manager_get_search_path (GtkSourceLanguageManager *lm); const gchar * const * gtk_source_language_manager_get_language_ids (GtkSourceLanguageManager *lm); GtkSourceLanguage * gtk_source_language_manager_get_language (GtkSourceLanguageManager *lm, const gchar *id); GtkSourceLanguage * gtk_source_language_manager_guess_language (GtkSourceLanguageManager *lm, const gchar *filename, const gchar *content_type);
GtkSourceLanguageManager is an object which processes language description
files and creates and stores GtkSourceLanguage objects, and provides API to
access them.
Use gtk_source_language_manager_get_default()
to retrieve the default
instance of GtkSourceLanguageManager, and
gtk_source_language_manager_guess_language()
to get a GtkSourceLanguage for
given file name and content type.
GtkSourceLanguageManager * gtk_source_language_manager_new (void);
Creates a new language manager. If you do not need more than one language
manager or a private language manager instance then use
gtk_source_language_manager_get_default()
instead.
Returns : |
a GtkSourceLanguageManager. |
GtkSourceLanguageManager * gtk_source_language_manager_get_default (void);
Returns the default GtkSourceLanguageManager instance.
Returns : |
a GtkSourceLanguageManager. Return value is owned by GtkSourceView library and must not be unref'ed. |
void gtk_source_language_manager_set_search_path (GtkSourceLanguageManager *lm, gchar **dirs);
Sets the list of directories where the lm
looks for
language files.
If dirs
is NULL
, the search path is reset to default.
At the moment this function can be called only before the language files are loaded for the first time. In practice to set a custom search path for a GtkSourceLanguageManager, you have to call this function right after creating it.
|
a GtkSourceLanguageManager. |
|
a NULL -terminated array of strings or NULL .
|
const gchar * const * gtk_source_language_manager_get_search_path (GtkSourceLanguageManager *lm);
Gets the list directories where lm
looks for language files.
|
a GtkSourceLanguageManager. |
Returns : |
NULL -terminated array containg a list of language files directories.
The array is owned by lm and must not be modified.
|
const gchar * const * gtk_source_language_manager_get_language_ids (GtkSourceLanguageManager *lm);
Returns the ids of the available languages.
|
a GtkSourceLanguageManager |
Returns : |
a NULL -terminated array of string containing the ids of the
available languages or NULL if no language is available. The array
is owned by lm and must not be modified.
|
GtkSourceLanguage * gtk_source_language_manager_get_language (GtkSourceLanguageManager *lm, const gchar *id);
Gets the GtkSourceLanguage identified by the given id
in the language
manager.
|
a GtkSourceLanguageManager. |
|
a language id. |
Returns : |
a GtkSourceLanguage, or NULL if there is no language
identified by the given id . Return value is owned by lm and should not
be freed.
|
GtkSourceLanguage * gtk_source_language_manager_guess_language (GtkSourceLanguageManager *lm, const gchar *filename, const gchar *content_type);
Picks a GtkSourceLanguage for given file name and content type,
according to the information in lang files. Either filename
or
content_type
may be NULL
. This function can be used as follows:
GtkSourceLanguage *lang; lang = gtk_source_language_manager_guess_language (filename, NULL); gtk_source_buffer_set_language (buffer, lang);
or
GtkSourceLanguage *lang = NULL; gboolean result_uncertain; gchar *content_type; content_type = g_content_type_guess (filename, NULL, 0, &result_uncertain); if (result_uncertain) { g_free (content_type); content_type = NULL; } lang = gtk_source_language_manager_guess_language (manager, filename, content_type); gtk_source_buffer_set_language (buffer, lang); g_free (content_type);
etc. Use gtk_source_language_get_mime_types()
and gtk_source_language_get_globs()
if you need full control over file -> language mapping.
|
a GtkSourceLanguageManager. |
|
a filename in Glib filename encoding, or NULL .
|
|
a content type (as in GIO API), or NULL .
|
Returns : |
a GtkSourceLanguage, or NULL if there is no suitable language
for given filename and/or content_type . Return value is owned by lm
and should not be freed.
|
Since 2.4