[Geany-Devel] Let's use Vala

Matthew Brush mbrush at xxxxx
Wed Nov 13 22:44:21 UTC 2013


On 13-11-13 08:21 AM, Steven Blatnick wrote:
> Wow, you found the article :-)
>
>  From what I've seen of geany, the code looks much better than some code
> I've seen.  It didn't take as long to familiarize myself with the basic
> structure since the code files are well named and the directory
> structure is far from deep ;-) One of the reasons I felt so comfortable
> writing plugins for it is how much easier the code was to read.  At
> least you don't have perl code mixed with java, etc ;-)
>

To be clear, I don't think Geany's code is actually bad on the whole, it 
just needs to be ruthlessly cleaned up/re-factored in some places. It's 
overall layout is good, the individual units/functions are 
thoughtfully/carefully coded inside, etc. I just think that after many 
years of no one being able to make major refactorings/changes to the 
code (90% due to plugin API breakage, I suspect), there's a lot of weird 
globals and one-off-structures mixed into the code, used to patch 
functionality onto stuff (for ex. if you change a function to add a 
parameter, you break the plugin API and/or have to update a bunch of 
other code, so just add a global shared between two functions), or code 
that belongs in one file is in another file, and stuff like this.

In addition, there's a lot of lost opportunities to use things which are 
provided by our toolkit already, that we either don't use because we 
didn't originally use (GObjects), or that we roll ourselves still or 
just avoid alltogether because these things weren't available 5 years 
ago when the toolkit version we "need" to support was current version.

> I'm a bit wishy-washy on my positions in these threads.  Part of me is
> still healing from the Gnome disaster, and part of me likes moving
> forward.  I hope at least it's good food for thought.
>

The difference here is everyone agrees that Geany's UI is awesome and no 
ones really talking about significant changes on the face, just in the 
code. It would be more akin to the GTK+2 to 3 transition happening 
without GNOME-shell in the picture (ie. if GNOME2 just got upgraded to 
GTK3).

Cheers,
Matthew Brush



More information about the Devel mailing list