keymanapp / keymanapp/keyman

bug(windows): compatibility issue with Paratext and Khmer script

Open
#13,589 11 comments 0 reactions 0 assignees View on GitHub
bug compatibility windows/
Dominant language
Pascal
Stars
534
Forks
143
Avg merge
2d 10h
Merged PRs (30d)
113

Description

### Describe the bug

Community site: https://community.software.sil.org/t/keyman-interaction-with-paratext-spellcheck/9960
> 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:
> ![Image](https://github.com/user-attachments/assets/21a1944e-81d5-4f89-958c-d550ef550501)
> Screenshot 2025-03-26 at 1.50.24 PM
>
> It type: ឞ ៊ ្ រ
> I get:
> ![Image](https://github.com/user-attachments/assets/40d28cbe-89fa-4ce5-8086-d6e7f5c0766b)
> 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.)

### Reproduce the bug

Context from user:
1. Enable "Display Spelling Errors"
2. Type slowly; first, a consonant followed by the shifter (Paratext identifies this as a spelling error since there is no such word as just this consonant + shifter)
3. Next, type the combiner, followed by the next consonant
4. Result in the screenshots above

### Expected behavior

A normal output of the Khmer word.

### Related issues

_No response_

### Keyman apps

- [ ] Keyman for Android
- [ ] Keyman for iPhone and iPad
- [ ] Keyman for Linux
- [ ] Keyman for macOS
- [x] Keyman for Windows
- [ ] Keyman Developer
- [ ] KeymanWeb
- [ ] Other - give details at bottom of form

### Keyman version

_No response_

### Operating system

_No response_

### Device

_No response_

### Target application

_No response_

### Browser

_No response_

### Keyboard name

_No response_

### Keyboard version

_No response_

### Language name

_No response_

### Additional context

The upcoming additional information are:
* Keyman version
* Keyboards
* OS
* Issue replication status

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.