[Geany-devel] Build system glitches

Enrico Tröger enrico.troeger at xxxxx
Sun Oct 25 11:03:50 UTC 2009

On Thu, 22 Oct 2009 20:26:20 +1100, Lex wrote:

>2009/10/18 Lex Trotman <elextr at gmail.com>:
>> Hi all,
>> I had a email directly from one of my colleagues who has been reading
>> this thread and had a question about the project filetype execute
>> commands.
>> Here is part of her email (project name obscured to protect the
>> guilty :-)
>>>> This looked exactly like what we need for the XXX project where it
>>>> has to still support Python 2.4.
>>>> Since most files are coded with "if __MAIN__ then:" test code for
>>>> this module, we want to run both the individual file to run the
>>>> test code and we want to run the overall application.
>>>> From what you said if I edited the project file directly we could
>>>> have both a filetype dependant and a non-filetype dependant command
>>>> for the project which ran Python2.4, and when that project was
>>>> closed everything would use Python3 as usual, perfect!!
>>>> Unfortunately I can't get project filetype executes to work at all
>>>> and looking at the code I can't see where they are handled.
>> This raised two points:
>> 1. the project filetypes execute commands code is missing completely,
>> I have it in an old version in my personal bazaar repository but it
>> never made it into SVN.
>> 2. because we have more than one execute command is it possible for
>> one to be filetype dependent and one to be non-filetype dependent.
>>  In fact it is and it works fine when there is no project open, but
>> as discussed previously the dialog won't edit the filetype ones at
>> the moment.
>> for 1. I will fix it first since it is a pre-requisite for the
>> suggested solution to 2., this may also allow some simplification of
>> the implementation due to better consistency.
>Done in SVN. Didn't get any simpler though :-)
>> for 2. I had never considered having mixed filetype/non-filetype
>> commands, but as my colleague has said it is reasonable, and she has
>> identified a use for it already, and it already works for non-project
>> commands (I tested it with HEAD)
>> But it did cause me to think about how the dialog should work.  After
>> much thought I suggest (I'll keep it as short as possible Enrico so I
>> won't mention any alternatives)
>> There are four sets of execute commands to edit, project vs
>> non-project which is addressed by having separate dialogs and for all
>> filetypes vs for a specific filetype which is to be addressed by the
>> "unobtrusive" check box selecting which is being edited.
>> In line with current practice if any command is overridden by a
>> higher priority one then the higher priority one is shown but it
>> will be insensitive.  This ensures that the dialogs always show what
>> will appear on the build menu when ok is selected.
>> If you edit a setting and switch the checkbox, the edit is saved in
>> temporary storage until OK is clicked, so you can flick between all
>> filetypes and filetype specific settings as many time as you want.
>I made a prototype of this dialog, its terrible, very confusing, hard
>to tell what you are editing.
>So I have made a temporary change in SVN to make the dialog save to
>the fieltype execute command for the build menu->set build commands
>dialog.  The project dialog still stores execute commands for all
>fieltypes.  This is how it used to work.
>I will now take some time to look at an alternative build-system
>configuration dialog.

Sorry for so few feedback, real-life is biting, as you know.

I see your colleagues use-case but also please remind that not every
user has such special needs. The goal of Geany's build system always
was to provide a simple way of quickly compiling/build/running the
current file for quick testing, not to fulfil a whole build setting
The current build system just went into another direction and I think
more and more if we shouldn't move some parts out either into plugins
or something else, just to get it more to the previous way where it was
usable without hours of reading...

Don't get me wrong, it's great what you have done but I'm just in doubt
whether this is what we want in Geany. But also I realise that I'm kind
of late and so probably changing it isn't worth at all.
No idea.


Get my GPG key from http://www.uvena.de/pub.asc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
URL: <http://lists.geany.org/pipermail/devel/attachments/20091025/2909dc47/attachment.pgp>

More information about the Devel mailing list