well-known user folders, a proposal

Stanislav Brabec sbrabec at suse.cz
Thu Feb 22 06:04:32 PST 2007


Alexander Larsson wrote: 
> On Thu, 2007-02-22 at 14:07 +0100, Stanislav Brabec wrote:

> It will make scripts slighly more complicated, yes. But it tried to make
> it as easy as possible. I think its a small price to pay. At least if we
> fix all such bugs we'll get a consistently translated system, whereas

> XDG_DESKTOP_DIR="$HOME/Desktop"

It implies to use localized name for "Desktop", isn't it? I guess it
will be not so easy to provide migration from ~/Desktop to say
"~/Pracovní plocha", if user already has home directory from current
version.

> The way it works in my proposal you won't get two sets of dirs though.

And at least for ~/Desktop you will.

And if you will not propose to migrate ~/Desktop, the code for special
translation has to be kept in GNOME file selector anyways.

> But I see no harm in allowing you to specify some other 
> encoding, then we'd just convert to that before creating the directory.

What happens if user will migrate later to UTF-8? They will see "bad
UTF-8". After calling of convmv or utf8ize these directories will loose
their "special" flag.

>the english-on-disk case can *never* become fully consistent (i.e. we
> can never translate in terminal, or when filenames are displayed/entered
> in the ui).

There are already similar inconsistencies and nobody complains: If you
use G_FILENAME_ENCODING=, Nautilus tries to show file name in the
current locale, but you don't have any feedback, which locale is used.
If you will try to type it in the terminal, you will fail.

The same problem can be found with .desktop files - displayed name is
different from real name.

I guess we don't need full consistency between Nautilus and terminal.
It's enough to use correct name in DnD.

-

I can imagine a different way using overlay directory somewhere in
XDG_DATA_DIR and XDG_HOME_DIR with desktop files.
If will need a small fix of Nautilus (now it complains, that
Desktop.desktop is not a directory).

Pictures.desktop:
[Desktop Entry]
Type=Directory
Encoding=UTF-8
Name=Pictures
Name[cs]=Obrázky
Icon=pictures-folder
MimeType=image/jpeg;image/png;image/x-dcraw;image/gif;

This will allow sysadmin to define additional directories, translated to
custom languages.

Note the MimeType entry. It can allow to automatically guess default
directory. (Maybe new keyword, like "MimeTypeStorage" would be better.)

Imagine a typesetting studio. Admin will define directory "Postscripts"
with MimeType=

Another use of overlay directory would be definition of immutable icons
of desktop (I read it somewhere as a feature request). Possible new
keyword: "Immutable".

Plus: Easy to implement, most parts of code are already present.
Application don't have to learn about directories, but they can select
proper directory by MIME type.

Con: Inconsistency of names. But you can define additional
language-specific overlay directory and my spec will fall back to yours.

-- 
Best Regards / S pozdravem,

Stanislav Brabec
software developer
---------------------------------------------------------------------
SUSE LINUX, s. r. o.                          e-mail: sbrabec at suse.cz
Lihovarská 1060/12                            tel: +420 284 028 966
190 00 Praha 9                                fax: +420 284 028 951
Czech Republic                                http://www.suse.cz/




More information about the xdg mailing list