> On Friday 21 March 2008, Alex Merry wrote: > > I'm interested in applying for one of the suggested GSoC projects: a > > KTextEditor plugin for Infinote, the replacement for Gobby. > > > > This list seemed the most related one for this proposal. I've also > > included Andreas Ramm in the email, as he was suggested as the mentor > for > > the project on the ideas page. > > Redirecting to ktexteditor-devel@ ;) > > > Included below is what I've come up with for my application.  It's a > little > > over the character limit for the synopsis for the application form, but > I > > would put this in a PDF file and link to it from my application. > > > > Any comments/criticisms/advice would be greatly appreciated! > > > > Alex > > > > > > > > Kobby - Alex Merry > > > > Collaborative editing is very useful, particularly in the > > open source community where the people involved may be > > spread across countries and continents. A discussion held > > over IRC or Jabber can often be greatly enhanced if the > > participants are able to edit, in real time, a related > > document or even simply a meeting report. This is a good overview of the benefits. Maybe you could add why it is important to you as well in a sentence or too. > > A common open source application used for this currently is > > Gobby, which uses the obby library as its backend. The > > successor to Gobby will be Infinote. A working (although > > not yet complete) library exists for this. This is split > > so that the core functionality is separate from the GTK+ > > integration. > > > > The goal of this GSoC project would be to implement a > > KTextEditor::Plugin that would provide collaborative text > > editing to any application that can use a KatePart, such > > as KWrite, Kate, Kile or KDevelop. > > > > The structure of libinfinity lends itself to this integration. > > It provides a core library (libinfinote) and a text note > > plugin (libinfinote could be used to power other forms > > of collaborative editing, such as SVG editing). There are > > also libraries providing GTK+ integration - libinfgtk provides > > integration of libinfinote into the GLib loop as well as > > related GTK+ widgets, and libinftextgtk provides a GTK+ > > text buffer. > > > > This project has the chance to provide great benefit to KDE, > > allowing its users to concurrently edit a text document in > > real time with each other and with GNOME or other users > > (when the main Infinote client and/or GEdit integration is > > complete). > > > > > > > > Tasks: > > > > 1. Qt Integration > > > > A KDE-equivalent of the libinfgtk library would be needed, > > providing a Qt/KDE-style C++ API for libinfinote, including > > providing the relevant widgets. > > Can you give examples of the relevant widgets? > > > > 2. InfTextBuffer Implementation > > > > The InfTextBuffer interface is used to store the text > > for the document being edited by libinftext. It is > > necessary to implement it and provide a backend, which > > should be a Qt or Qt-style class. > > > > A possibility for this is QTextDocument, which can store > > information such as text colour. > > Can't we implement this as a KTE interface, and use KateParts storage as > implementation as far as KatePart is concerned? Forgive me if I > misunderstand > teh purpose, as I have no idea how infinote works. > I would put this one down as a point for investigation with a need for further discussion. > > > > 3. KTextEditor Plugin > > > > The above libraries can then be used by a plugin that > > provides the KTextEditor::Document interface. This should > > obviously provide the expected colourisation of text > > depending on the user that wrote it, but also needs to > > provide various other features such as an interface for > > connecting, an interface for messaging other collaborators > > and a legend for the colours belonging to the participants. > > The list of associated features is good, but why is colourisation obvious? You might want to try rewording that part. > > > > Time: > > > > A certain amount of time needs to be spent becoming familiar > > with libinfinote and related libraries, which is written in an > > unfamiliar style (it is GLib/GObject based), although it is > > documented. > > > > I would expect to spend the majority of the time on the > > KDE interface to libinfinote, as most of the widgets > > will be included here. > > > > The remainder of the time would be split between providing > > the implementation of InfTextBuffer and wrapping it up > > into a KTextEditor plugin. > > > > > > > > Biography: > > > > I am in my fourth year of my undergraduate masters in > > Mathematics and Computer Science. I got involved with the > > KDE project at the start of 2007, learning C++ and Qt to > > do so. I started doing various junior jobs in the core > > KDE libraries, and then got involed in Plasma development > > when it kicked off later that year. > > > > My biggest programming projects to date have both involved > > Qt: the nowplaying data engine and applet for Plasma and > > my final year project for my degree course. > > > > I can generally be found on #kde-devel and #plasma as > > randomguy3. Nice work. Overall it reads very well. Just a general piece of advice, before you submit have another read to make sure it includes everything you want it to, as a review won't be able to pick that up. :) Andreas -- Psst! Geheimtipp: Online Games kostenlos spielen bei den GMX Free Games! http://games.entertainment.gmx.net/de/entertainment/games/free _______________________________________________ KTextEditor-Devel mailing list KTextEditor-Devel@kde.org https://mail.kde.org/mailman/listinfo/ktexteditor-devel