pub type GBookmarkFile = _GBookmarkFile;Expand description
GBookmarkFile:
GBookmarkFile lets you parse, edit or create files containing bookmarks.
Bookmarks refer to a URI, along with some meta-data about the resource pointed by the URI like its MIME type, the application that is registering the bookmark and the icon that should be used to represent the bookmark. The data is stored using the Desktop Bookmark Specification.
The syntax of the bookmark files is described in detail inside the
Desktop Bookmark Specification, here is a quick summary: bookmark
files use a sub-class of the XML Bookmark Exchange Language
specification, consisting of valid UTF-8 encoded XML, under the
<xbel> root element; each bookmark is stored inside a
<bookmark> element, using its URI: no relative paths can
be used inside a bookmark file. The bookmark may have a user defined
title and description, to be used instead of the URI. Under the
<metadata> element, with its owner attribute set to
http://freedesktop.org, is stored the meta-data about a resource
pointed by its URI. The meta-data consists of the resource’s MIME
type; the applications that have registered a bookmark; the groups
to which a bookmark belongs to; a visibility flag, used to set the
bookmark as “private” to the applications and groups that has it
registered; the URI and MIME type of an icon, to be used when
displaying the bookmark inside a GUI.
Here is an example of a bookmark file: bookmarks.xbel
A bookmark file might contain more than one bookmark; each bookmark is accessed through its URI.
The important caveat of bookmark files is that when you add a new bookmark you must also add the application that is registering it, using [method@GLib.BookmarkFile.add_application] or [method@GLib.BookmarkFile.set_application_info]. If a bookmark has no applications then it won’t be dumped when creating the on disk representation, using [method@GLib.BookmarkFile.to_data] or [method@GLib.BookmarkFile.to_file].
Since: 2.12
Aliased Type§
pub struct GBookmarkFile { /* private fields */ }