[Geany-devel] More Per-Project Configuration Options

Lex Trotman elextr at xxxxx
Tue Jul 10 04:09:34 UTC 2012

On 10 July 2012 13:43, Braden Walters <meoblast at aol.com> wrote:
> Well, here's how I imagined it. Suppose you have global settings and you
> have it set to UNIX line endings and end files with a new line. You open a
> new project and by default, it's set to UNIX line endings and end files with
> a new line, but this _does not_ appear in the projects file nor in the list
> on what I below referred to as the "Details" tab. If at this point you
> change the global settings, settings in the project change as well (because
> nothing is actually defined in the project file). Now suppose you switch to
> Windows line endings in the project. Now it will add an entry to the project
> file, and this will also appear in the Details list as "Default end of line
> characters". If you change the global settings for line endings, this would
> not change the settings for this project (the project would still override
> the settings, because it's still defined in the project file). If you, in
> the project settings, change back to UNIX line endings, you will now have
> UNIX line endings in the project file, "Default end of line characters" will
> still appear in the Details list, and it'll still override any changes in
> the global configuration. To make it stop overriding changes in the global
> configuration, you would go to the Details list, select the configuration
> option, and select "Restore to Global Configuration" or something like this.
> This would remove that item from the project configuration and it'd return
> to the original state.

Yes the basic mechanism is fine.

> Does this make sense? Is this possible and would this be both user friendly
> and feasible to implement?

Anything can be implemented, but some things should not be :)

Two problems with your UI,

1. to tell it "I want this to be stored in the project file with the
current value" I have to change the value and then change it back,
thats poor UI technique.

2. by having your list on another page, looking at the project prefs
dialog you can't tell what is set by the project and what is just
default from the global settings, thats definitely poor UI design

Also just to add extra confusion to the mix, some settings (eg indent)
are stored in the filetypes as well, but ATM the project can't say
"for this project C files should be tab indented and Python files
space indented".  I am not sure how project indent settings and
filetype indent settings interact ATM.



More information about the Devel mailing list