.desktop files and encodings



It has come to my attention that we have a fairly serious
situation developing with respect to incompatibilities in
.desktop files. 


The problem is that KDE has switched over to a draft of a joint
.desktop file spec:

 http://webcvs.kde.org/cgi-bin/cvsweb.cgi/~checkout~/kdelibs/kio/DESKTOP_ENTRY_STANDARD?rev=1.9

However, unfortunately, the resulting files are incompatible
with the current GNOME files because:

 - The KDE files are encoding in UTF-8. (Making this the
   standard was informally discussed at the time, but is
   not part of the spec.)
 - The KDE files do not include any Version specification
 - There is no other method of determining the encoding

In the short term, any solution to this problem is going
to involve some bad hacks, like looking at the location
of the desktop file, checking for KDE-specific keys,
checking to see if the contents of the file are in UTF-8,
etc.


I'd like to propose the following change to the spec, which:

 - Adds a method for specifying the encoding of a .desktop
   file. (The 'Encoding' key).
 - Formalizes the current GNOME method of encoding the file
   which implementations may optionally support.
   (The 'Legacy-Mixed' encoding)
 - Describes which parts of the file are encoded with 
   according to the Encoding key, and which parts are
   restricted to ASCII.
 - Improves (I hope) the description of way that Name[<locale>]
   works.


We also need to work on getting this draft of the specification
turned into a real standard, which probably involves:

 - Getting the GNOME people to agree to what's in it, or, if
   not possible, to identify areas that need to be made optional.

 - Checking to see if it covers all keys currently in use.
   (Some GNOME desktop files seem to use a MultipleArgs= key;
   though I don't know what this is for)

 - Putting it onto freedesktop.org CVS and onto the web page.

Regards,
                                       Owen






[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]