Re: A Few Standard Folders [Re: Structure in $HOME]



What about this solution:

There exists somewhere a directory which is used to define the different
"My*" folders. To define a new My* folder, you put in this
definition directory a desktop entry that
a) points to the real directory somewhere
b) can be localized in regular manner
c) can contain metadata about this folder. For example, what kind of
mimetypes should be saved here if downloaded.
d) has a pretty icon

No GConf keys or anything. Drop a new desktop entry here, and you are
done.

KDE has a directory that is used in a similar way. It looks something like
this:

.kde/share/apps/konqsidebartng/entries/bookmarks.desktop
.kde/share/apps/konqsidebartng/entries/history.desktop
.kde/share/apps/konqsidebartng/entries/home.desktop
.kde/share/apps/konqsidebartng/entries/mplayer.desktop
.kde/share/apps/konqsidebartng/entries/remote.desktop
.kde/share/apps/konqsidebartng/entries/root.desktop
.kde/share/apps/konqsidebartng/entries/services.desktop

This defines the shortcuts in their file dialog, similar to what you also
have in Win2000. Unfortunately, there also exists (or existed) further
preferences elsewhere so this defintion is not self contained. I see no
reason why it couldn't be though.

home.desktop above looks like this (truncated)

[Desktop Entry]
Encoding=UTF-8
Type=Link
URL=file:$HOME
Icon=folder_home
Name=Home Directory
Name[af]=huis gids
...lots of i18n
Comment[zu]=Lencwadi inemininingwane yamafayela akho ayimfihlo
Open=false
X-KDE-TreeModule=Directory
X-KDE-KonqSidebarModule=konqsidebar_tree

I think this is preferable to using GConf. It could be shared with KDE,
and adding to it could be as easy as dragging an icon. I think it is big
advantage that the different "My* folders" are decoupled from the real
location, because that makes it possible to mount such folders on the
desktop, even if you want them to be somewhere else.

For example, in a corporate environment, you would perhaps need "My time
reports" for your weekly reports, and this directory could be on a
different host.

Claes




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