freeride-devel
[Top][All Lists]
Advanced

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

Re: [FR-devel] user config files, pathing, etc.


From: Richard Kilmer
Subject: Re: [FR-devel] user config files, pathing, etc.
Date: Thu, 2 Jan 2003 17:07:17 -0500


On Thursday, January 2, 2003, at 03:39 PM, Laurent Julliard wrote:

Richard Kilmer wrote:

Hey all,

I ran into a funny problem with the way that properties files are persisted right now into the local USERPROFILE/HOME dir. I added a path to an additional directory to contain plugins (via the config/properties.yaml file). The path I defined was relative (../../somepath) and what was amusing was the way that the properties are persisted it created a directory structure in the USERPROFILE/../../somepath (which is BAD). Anyway, the way in which the current config files are stored was straightforward to implement, but I think leads to potential (or in my case real) problems. I am reviewing the current strategy, and my recommended change is that we change the user_filename to just keep the @@userdir and the deepest dir in the filespec so:

./plugins/rubyide_gui/appframe.yaml
is converted to
USERPROFILE/freeride/rubyide_gui/appframe.yaml
or on linux
HOME/.freeride/rubyide_gui/appframe.yaml

and

../../myotherplugins/test_plugin/properties.yaml
is converted to
USERPROFILE/rubyide/test_plugin/properties.yaml
or on linux
HOME/.freeride/test_plugin/properties.yaml

When I made the quick hack to handle user property files I thought of the ../.. problem but considered that it would take ages before sbdy actually uses it. I was obviously wrong :-))

I think your approach is fair. One of the drawback is that it limits the user directory to one level deep but this is probably acceptable for now.

Actually, the limit is that the names of the directories must be unique. So if you had two plugin directories:

/usr/local/freeride/plugins/...

~/my_cool_plugins/...

The actual subdirectories under the first and the second must be unique. This is also necessary because both of these directories are now added to the Ruby load path so a directory conflict will be a nasty issue there too. I think we just make this a requirement for plugins...to name the directory of the plugin as we specified before:

domain_<whatever> (ours being rubyide_<...>)

-rich




reply via email to

[Prev in Thread] Current Thread [Next in Thread]