Understanding differences between gtef and GtkSourceView for word-completion



Hi there,

I am a preparing for a GSoC proposal for the "Word-completion engine" for Gnome-Builder (listed at [1]). I am exploring the GtkSourceView and quite clear with the "objective" it provides. But what's tripping me up is the new library that has been decided to be introduced "gtef"  to ease the development of IDEs like Builder. That's where I starting question where to implement "Improved word completion"  ? GtkSourceView or gtef ?

Christian Hergert has mentioned either improving GtkSourceView(or gtef maybe) OR  implementing a new Auto completion engine directly in Builder (read under "Improved Auto completion" at [1]

NOTE: I am still fuzzy about the clear distinction between Word-completion and Auto-complete. For me, I think as word-complete is to be generated from all available buffers open and it deals with words (variables names, macros etc.) whereas Auto-complete is the SuperSet dealing with function-names, symbols etc..

I think it makes sense to improve GtkSourceView/gtef for word-complete. Thoughts?

What does  Gnome-Builder needs ?

Christian again has given a pretty good pointer to it.

Excerpt from [1]:

Ideally, this would look similar to Vim’s implementation of Word Completion. Control+P (in Vim mode) would take us to the closest match above the current word. Control+N would take us to the closest match after the cursor.
 
I would like to know the objectives that gtef has with respect to the idea listed above. Is that the ideal place to implement the idea or it should go into GtkSourceCompletion  (clueless here).

On a technical side, I am still looking into the code of GtkSourceView to determine the logic of Word-complete as of now. For the implementation required by gnome-builder, having a Radix trie is half of the solution to the problem and other half would to determine memory overhead.

Plus, it would be great if anyone  (ideally JesseVanDenKieboom or  Sébastien Wilmet) can  co-mentor me for GSoC 2017. I would be obliged.

I still consider myself a newcomer so please be easy on me. I apologize in advance for any ignorant mistake committed, without realizing facts on ground-level.

Thank you.
[1] https://wiki.gnome.org/Apps/Builder/Roadmap


Cheers,
  uajain


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