2012/7/30 John Ralls <jralls@ceridwen.us>

On 29/07/2012, at 1:02 PM, Benny Malengier wrote:

> John, All,
> Spell check is working again in trunk. A custom gtkspell branch is needed however. Installation instructions on
> http://www.gramps-project.org/wiki/index.php?title=GEPS_029:_GTK3-GObject_introspection_Conversion#Spell_Check_Install
> John, as you see, the custom gtkspell branch comes from a redhat bug ticket: https://bugzilla.redhat.com/show_bug.cgi?id=675504
> This is from january, the last gtkspell release is 2009, and gtkspell maintainer has not integrated those patches (http://gtkspell.sourceforge.net/). In debian I find a gtkspell3 version however, but that does not seem to have the required introspection, so I think this pulls from the default branch: http://gtkspell.hg.sourceforge.net/hgweb/gtkspell/gtkspell/file/adf4a22ad84c/gtkspell
> As GTK developer, could you post to the correct channels so that perhaps this gtkspell branch becomes fully integrated in the official version? As far as I can see, in Gramps it works perfectly as before.


Boy, talk about circles [1]! (Note who originated the bug report.)

Unfortunately, even though GtkSpell is an enhancement to Gtk, it isn't in fact part of Gtk. The current project owner, Daniel Atallah, unfortunately has other priorities and after a flurry of commits last summer hasn't done much about Gtk3, in part because of a disagreement with Sandro Mani about g_objectifying GtkSpell2. You can read the details in the comments to [1].
I've just added a comment to try and push Daniel to incorporate Sandro's changes and do a release. It wouldn't hurt if you were to chime in.

Benjamin Otte also brought up adding spell checking directly to Gtk+ in January. I (foolishly, it seems) told him about GtkSpell [2], but Matthew Barnes also brought up an old, stalled bug report [3]. It's possible, but it won't be a quick solution.

Note that enchant and python-enchant fully fill the gap of spell checking needs.

The only thing missing from our point of view is spell checking directly in Gtk.TextView, which is what gtkspell does (based on enchant). So drawing the wiggly red line under a wrong word, and populating the context popup.

We can program that in python our self based on python-enchant, but it would increase our LOC a lot. I tried some years ago when gtkspell seemed stopped, and got stuck on the wiggly red line :-). Then gtkspell moved backend to enchant and the need was gone.


John Ralls

[1] http://sourceforge.net/tracker/?func=detail&aid=3298132&group_id=7896&atid=107896
[2] http://old.nabble.com/RFC%3A-new-features-td33125552.html#a33129310
[3] https://bugzilla.gnome.org/show_bug.cgi?id=383706