gnome-mime

Name

gnome-mime -- Routines to determine the MIME type of a file

Synopsis


#include <gnome-vfs-mime.h>


GList*      gnome_uri_list_extract_filenames
                                            (const gchar *uri_list);
GList*      gnome_uri_list_extract_uris     (const gchar *uri_list);
void        gnome_uri_list_free_strings     (GList *list);

Description

The routines in gnome-mime provide a way to obtain the MIME (Multipurpose Internet Mail Extension) type of a given file and some utility functions.

There are two different methods for getting the MIME type of a particular file: Using only the filename to find the corresponding MIME type by matching the name against a database of known extensions and regular expressions; Or obtaining the MIME type by peeking at the contents of the file. Generally it should be faster using the former method, because the routines only do in-memory operations, while the latter method needs to do possibly time-expensive disk operations to obtain the necessary information.

The routines that classify a file only by its name, look at the *.mime files in the $gnome_prefix/share/mime-info/ directory and in ~/.gnome/mime-info/ to build the extension database. This gives the user the possibility to extend and/or override the system defaults.

Applications wanting to make additional MIME types available only need to install their files in one of these directories.

The file $gnome_prefix/share/mime-info/gnome.mime contains the defaults for Gnome and is read first. In addition, ~/.gnome/mime-info/user.mime is the last file to be read and thus makes it possible to set system-wide defaults and still gives the user a chance to override them. However, there is currently no determined order in which the other files in these directories will be read, nor is there any way to override system defaults, yet.

The gnome_mime_type_from_magic() function looks at the $gnome_prefix/etc/mime-magic file to determine the MIME type of a given file (This database in usually kept in a pre-processed, easily readable format in $gnome_prefix/etc/mime-magic.dat).

Details

gnome_uri_list_extract_filenames ()

GList*      gnome_uri_list_extract_filenames
                                            (const gchar *uri_list);

Extract local files from a uri-list and return a list. Note that unlike the gnome_uri_list_extract_uris function, this will only return local files and not any other urls.

uri_list : an uri-list in the standard format
Returns : a GList containing strings allocated with g_malloc. You should use gnome_uri_list_free_strings to free the returned list.


gnome_uri_list_extract_uris ()

GList*      gnome_uri_list_extract_uris     (const gchar *uri_list);

Extract URIs from a uri-list and return a list

uri_list : an uri-list in the standard format.
Returns : a GList containing strings allocated with g_malloc. You should use gnome_uri_list_free_strings to free the returned list


gnome_uri_list_free_strings ()

void        gnome_uri_list_free_strings     (GList *list);

Releases all of the resources allocated by list.