Spell-checking for GtkEntry in gspell

It’s done! Everything that I wanted to do initially for the fundraising of gspell is implemented (for the milestone 1).

The main steps were:

  1. Basic infrastructure, insert underlines to misspelled words.
  2. Add the context menu, and have common code between GtkTextView and GtkEntry.
  3. Do not check the word currently typed. Ditto, have common code between GtkTextView and GtkEntry, to define the policy at only one place.
  4. Better word boundaries: take into account apostrophes and dashes.
  5. Take care of a few other details, like forcing to disable spell-checking when the GtkEntry is in password mode.

The fundraising has a second milestone with “Various Other Improvements”, which is currently at 17%, so I’ll do a few more small tasks. For example fixing bug #772406 (a unit test fails with aspell, while it works fine with hunspell, the kind of problems that arise when multiple backends can be used and work slightly differently) and what is described in bug #761921 comment #1 (a first possible step for a better Windows support).

6 thoughts on “Spell-checking for GtkEntry in gspell”

  1. This is great! Just what we need for spell checking the subject line in Geary.

    Do you have any screenshots of what some of the widgets (e.g. GspellLanguageChooser) look like? That would be good to get into the gtkdocs for it.

    1. Once you have compiled gspell, you can run the various GUI tests in the tests/ directory. test-text-view has a GspellLanguageChooserButton (useful in a preferences dialog).

      But yes, it would be better to create screenshots and add them to the docs like it is done for GTK+ widgets.

  2. thanks!! In Polari we just we just enabled spell checking and closed a 3 year old bug along the way with this support in GtkEntry. 🙂

    Question: how does Gspell get dictionaries if you have your app inside a flatpak sandbox?

    1. Good question, I haven’t tried gspell with flatpak, but it’s the same problem with each application needing spell-checking. Also, how to store personal words so that they are shared with all applications?

      1. I’ve long wanted to put some word lists into the runtime, such that they get installed in the locale and are available for your language automatically. However, this is not currently in there. Any help would be appreciated.

Leave a Reply

Your email address will not be published. Required fields are marked *