KDevelop4 project file

mwoehlke mwoehlke at tibco.com
Thu Jul 20 16:43:23 UTC 2006


Adam Treat wrote:
> The project files are now in INI style format, it is true.  This is because we 
> now use the KConfig framework for project settings too.  This has the benefit 
> that we can use KConfigXT and that all settings are saved in the exact same 
> way. [snip]
> 
> The advantages to this are numerous:
> 
> *  Plugin developers don't have to worry about whether settings belong in the 
> project or in the regular config.  Settings are settings.  When a project is 
> opened then settings are given a project scope.  When a project is not opened 
> then settings are given a regular scope.
> 
> *  Users don't have to wonder how to find a particular setting... "Is it in 
> the project config or is it in the regular config"... there is only one place 
> to get/set settings.  The config dialog.
>
> *  All settings can be configured on an individual project basis.  A project 
> manager could finally define AStyle settings for the whole project, for 
> instance.  And developers who work on more than one project might have AStyle 
> settings for each different project.

I can already imagine the headache this is going to create. "Oh, but I 
wanted that setting to apply to ALL projects! You mean I have to close 
my active project, make the change, and then wait five minutes while my 
project re-opens?". It seems like we need to provide a way for the 
configure dialog to let us pick to apply settings to the project, or 
globally.

For the sake of argument, what about providing a way to specify that a 
setting is always-global or always-project-local? However, I admit that 
a setting that only makes sense in a project could have a default value, 
and I can't think of any setting that I can't also invent a scenario in 
which I would want it to be project-specific.

-- 
Matthew
"We're all mad here. I'm mad. You're mad... You must be, or you wouldn't 
have come here." -- The Cheshire Cat





More information about the KDevelop-devel mailing list