gnome-mime(5)
NAME
gnome-mime - configuration files
DESCRIPTION
The GNOME system uses MIME types to classify content. Each MIME type
on the GNOME system has a number of attributes attached to it. Some of
these attributes have a special meaning to the GNOME system.
MIME type of files
There are two ways of classifying a file in the GNOME system: by matching their extension or a regular expression with their name or by its
content. GNOME applications use one of those two methods depending on
speed contraints and the specific setup. The MIME types available on
the system can be configured at runtime by putting special files in
either the GNOME MIME directory (${prefix}/share/mime-info) or the user
~/.gnome/mime-info directory.
MIME type definition files.
The routines that classify a file by its name, use the contents of all
of the files with the extension .mime from the ${prefix}/share/mimeinfo directory and the ~/.gnome/mime-info to build the database for
filename matching. The latter is supported to enable users to provide
their mime types to extend the system defaults.
Application that wish to install their own MIME types only need to
install a file in this directory.
The file ${prefix}/share/mime-info/gnome.mime is special, as it contains the defaults for gnome, and is read first. In addition, the file
~/.gnome/mime-info/user.mime is read last. This will guarantee that
there is a way to set system defaults, and there is a way for the user
to override them. There is currently no way to tell anything about the
order of the other files in those directories, nor is there anyway to
override system defaults yet.
The format is the following:
- mime-type-name
- ext[,priority]: ext1 ext2 ext3
ext[,priority]: ext4
regex[,priority]: regex1
regex[,priority]: regex2 - where "mime-type-name" is a valid MIME type. For example "text/plain".
- For example, for a vCalendar application, this file would be installed:
- ------ calendar.mime ------application/v-calendar:
- ext: vcf
- ----------------------------
MIME key information
To add keys to a MIME type, it is necessary to install a file with the
extension .keys in the ${prefix}/share/mime-info directory or in the
~/.gnome/mime-info directory. The former is for system-provided mimeinformation and the latter is to enable the user to extend the actions
as provided by the system.
The file ${prefix}/share/mime-info/gnome.keys is special, as it
contains the defaults for gnome, and is read first. In addition, the
file ~/.gnome/mime-info/user.keys is read last. This will guarantee
that there is a way to set system defaults, and there is a way for the
user to override them. There is currently no way to tell anything
about the order of the other files in those directories, nor is there
anyway to override system defaults yet.
The .keys files have the following format:
- mime-type-match:
- [\[LANG\]]key=value
- Above, the key is the key that is being defined and value is the value we bind to it. The optional [LANG] represents a language in which this definition is valid. If this part is specified, then the definition will only be valid if LANG matches the setting of the environment variable LANG. The LANG setting is used to provide keys which can be displayed to the user in a localized way.
- This is an example to bind the key open to all of the mime-types matching image/* and the icon-filename key is bound to the /opt/gimp/share/xcf.png value:
- image/*:
- open=gimp %f
- image/x-xcf:
- icon-filename=/opt/gimp/share/xcf.png
- This will make the GIMP the handler for the open action. Files of type xcf would use the filename pointed in the icon-filename key.
- %f gets interpolated with the file name or the list of file names that matched this mime-type.
- As you can see from the example above, a .keys file does not need to provide all of the values, it can just provide or override some of the actions.
- User defined bindings in .keys file will take precedence over system installed files.
Special key used by the GNOME system
The following keys are currently used in the GNOME desktop:
- open
- Open the file with this command.
- icon-filename
The filename with the icon that should be used to represent files of this type.- view
Command to view the file contents.- ascii-view
A command that should be used to do an ascii-rendering of the file. Used as a fallback by the filemanager if a view action does not exist.- fm-open
file-manager open. If present, the file manager will use this action instead of the value in open to perform this action (the filemanager for example will open archive files as if they were directories by using the VFS).- fm-view
file-manager view. If present, invoking the view opertion on the file manager will use the value defined here instead of the value in "view".- fm-ascii-view
Fallback operation for the file manager as well.- Those keys are also queried on the metadata (except in the cases where the lookup would be too expensive).
AUTHOR
- This manual page has been written by Miguel de Icaza (miguel@gnu.org)