Subject: bug#77998: 30.0.50; thai-pattachote input method is missing characters?

From: Robert Nikander <[email-masked]>
Date: Wed, 23 Apr 2025 18:30:55 -0600

> On Apr 23, 2025, at 6:11 AM, Eli Zaretskii <[email-masked]> wrote:
> 
> Thanks.  Can you try identifying additional missing characters, if
> there are any?  An input method might omit some characters, but not if
> they are used frequently enough.  So I think we would like to add any
> missing characters, if that is possible.

Okay, I've taken a closer look at this, and I think I see a way to fix it, or at least improve it significantly. There are two input methods for Thai:

1. thai-pattachote
2. thai-kesmanee

The second one works better, and includes most of the characters, except a couple more exotic ones as explained in the Help displayed by `describe-input-method`. This `thai-kesmanee` method may be misspelled [1], but I don't care much about that.

It appears that the `thai-pattachote` method has both missing chars and duplicate chars. I compared the keyboard displayed by `describe-input-method` with the keyboard shown here: [2]. There are three duplicates that shouldn't be there, and those line up exactly with the three missing chars.

These characters are difficult to see, especially with a small font, so I can see why someone apparently made these mistakes.

Here are the missing characters:

1. ฉ
2. ฌ
3. ฏ

These are duplicated characters:

1. ฒ - It can be typed 3 ways: ], .+shift, p+shift
2. ั - It can be typed 2 ways: g, b+shift
3. ฎ - It can be typed 2 ways: z+shift, x+shift

Now the #2 duplicate appears to be consistent with the Pattachote keyboard. But #1 and #3 provide us with the 3 new spaces to use for the missing letters.

= Changes =

1. The shifted '.' key ('>') should map to 'ฉ', not 'ฒ' as it does now. So '>' -> 'ฉ' fixes missing char #1. 

2. The ']' key should be inserting 'ฌ', not 'ฒ' as it does now. So ']' -> 'ฌ' fixes missing char #2.

3. The shifted 'x' key should be inserting 'ฏ', not 'ฎ' as it is now. That fixes missing char #3.

A bit of a disclaimer… I don’t know Thai. Ideally someone who does would check this. But I’m pretty confident this is correct because the way the duped keys lined up exactly with the missing ones, when looking at the keyboard at [2].

Rob

[1] https://en.wikipedia.org/wiki/Thai_Kedmanee_keyboard_layout
[2] https://help.keyman.com/keyboard/basic_kbdth1/1.1/basic_kbdth1