Keyman interaction with Paratext spellcheck

This relates to Keyman’s enforcement of shifter-coeung order in Khmer script, in relation to spell checking in Paratext. The intended behavior is that whenever shifter ៉ or ៊ is followed by combiner ្ followed by a consonant, the shifter moves to the end (really the earlier instance is deleted and a new instance added). This works just fine – except in Paratext.

In Paratext, if “Display Spelling Errors” is turned on, and if I’m typing a bit slowly, then after I’ve typed a consonant followed by the shifter, Paratext identifies this as a spelling error (since there is no such word as just this consonant + shifter). PT sticks its squiggly underline in, while I’m typing the next character, the combiner, followed by the next consonant. At this point, the Keyman Enforcer-of-Order kicks in and tries to do the replacement, but instead of deleting the shifter from the wrong position, it simply adds another shifter after the second consonant. Here’s what it looks like:

I type: ឝ ៉ ្ ន
I get:
Screenshot 2025-03-26 at 1.50.24 PM

It type: ឞ ៊ ្ រ
I get:
Screenshot 2025-03-26 at 1.51.11 PM

If I’m typing fast enough, I can stay ahead of spell checker, but I can’t always type fast enough. Or I could turn off spell checker, but then what good does it do me?

This isn’t the first probablem I’ve encountered with Display Spelling Errors in Paratext. Two years ago I reported another issue in which focus is lost while typing a cross reference, if the squiggly shows up before I finish typing a valid reference. (PTXS-40048) The issue was “deemed minor.” Is this related? I’m reporting here instead of to Paratext since I suspect that this would be another “minor” issue.

(I can fix the problem with autocorrect, I think, but I’d rather not.)

Welcome @viverechristus,

It seems as the typing works fine on other applications so this might be more of a Paratext issue rather than Keyman’s. Please investigate the Display Spelling Errors with Paratext support.

While you take a look with the PT team, we’ll reach out to them from our end too.

You can track the issue (#13589) bug: compatibility issue with Paratext and Khmer script from our GitHub repo.

Do you think you could provide us:

  1. OS (name and version)
  2. Keyman version
  3. Keyboards
  4. Paratext version

Thank you for letting us know about this @viverechristus!

As a test, I built a keyman keyboard with this code:

group(main) using keys

  • [K_V] > ‘ន’

  • [K_C] > ‘្’

  • [K_X] > ‘៉’

  • [K_Z] > ‘ឝ’

In Paratext, with Display spelling errors turned on, I get ឝ៉្ន (magnified below)
image
even when I press the keys slowly. (the gray squiggle does appear below the characters until I press the final key).
How does your Keyman keyboard code those characters? Is this not the right combination of symbols?

@Steve_White, this issue is about character reordering that the keyboard does automatically as @viverechristus types, but which the spell check function in Paratext is breaking. For many Keyman keyboards, this is an essential behaviour. We are following up with PT team

@Marc , Would you like me to submit a bug report via Paratext, as well?

Sure, please link it to the Keyman issue bug(windows): compatibility issue with Paratext and Khmer script · Issue #13589 · keymanapp/keyman · GitHub