Re: GSoC: Anjuta Vim Integration Weekly Reports



Week 5
-------
I managed to get a good deal done this week. I'm happy that I managed to
finish my weekly targets, more or less.

> Work for the week
> -----------------
> * Some parts of the document manager haven't been finished yet, and I
> have to work around some very heavy document_is_widget dependencies...
Largely complete. There are still some bugs, and I'm trying to track
where they come from.

> * I have to setup signals from vim, catch them properly. Some vim
> functions also have to written.
This was actually a slightly bigger task then I had anticipated. But I
managed to wrap this up rather nicely.

> * Catch some memory leaks. I've found that I haven't been filling up the
> _dispose functions well. I want to take a look and make sure that I'm
> handling memory properly.
Done. I hope.
> * Finish my "Test Suite". 
Not done. I still have to fix a few DocumentManager bugs before this
makes sense.
> And of course, bug fix. (Wenesday, Thursday)
Spent most of the week on this. There are still a few bugs lying around.

I introduced made some architectural changes towards the end of the
week, which required some refactoring. Luckily, the code wasn't hard to
refactor. Earlier, I had introduced another interface 'EditorMultiple',
which had a very hacky way of handling the 'single-editor
multiple-documents' setup. It was made so that the documents would act
like a proxy to the single editor; calls for the single editor would be
relayed through the document. While that worked well for method calls,
it failed miserably for signal handling. Every single document would
have to be connected to, and the sequence of opening a file and
receiving signals for the same really made things buggy.

I introduced another interface, EditorMaster (I was tempted to call it
EditorMotherShip, but my functions were getting too long as it is :-P).
This encapsulates all of those single editor functions (and is
implemented by the single editor). The EditorMultiple interface was
reduced to 1 function, get_master. That really simplified things, and
killed a lot of bugs (despite all that refactoring, my bug count went
down). It's made things much cleaner. I should have used this from the
beginning.

The agenda for the week is to finalize my interfaces so I can send them
upstream for review. Followed by bugfixing the document manager changes
(and my plugin's). Once the DocumentManager integration is complete
(i.e. bugfree), Vim will be "technically" completely integrated with
Anjuta. Hopefully, that will happen before the evaluations ;-).

Cheers,
-- 
Arun Tejasvi Chaganty (vimzard)
GNOME GSoC Student
Blog: http://arunchaganty.wordpress.com

Attachment: signature.asc
Description: This is a digitally signed message part



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