keymanapp / keyboards

Open Source Keyman keyboards
152 stars 274 forks source link

[korean_rr] Space does not work at all including for combing jamos #1703

Open rc-swag opened 2 years ago

rc-swag commented 2 years ago

This issue first raised on community forum here - Korean RR Keyboard space not working

You can not type a space. Or when attempting to combine jamos nothing happens. User report was for Windows version 11. Did not specify Keyman version.

Reproduced on Win 11 with Keyman 14 and 13. Reproduced on Win 10 with version 15 alpha with common core turned off.

MakaraSok commented 2 years ago

I've tested the keyboard with Keyman 14 Stable (14.0.283) on Windows 10 Pro 21H1. The space does not seem to do the job. In Notepad, it doesn't combine the character. In LibreOffice, it doesn't separate the clusters being typed. Below is the output of "han guk" on the two apps.

Keyman 14 Stable installed from its .kmp available in the keyboard library

image

It looks OK on KMW though, both local build and online.

Local build:

image

Online KMW:

image
rc-swag commented 2 years ago

From my investigations, the JavaScript version of jamo_combine operates with this condition - "if matched length is less than two, it will simply output a space". The jamo_combine.dll does not insert a space. This is the core issue. jamo_combine.dll is used by 3 other keyboards so we need to be careful changing its behaviour.

Other issues found with this keyboard The 64-bit version of the dll needs to be built. The following dlls do not exist. show_ime.dll hide_ime.dll select_hanja.dl scroll_hanja.dll

DavidLRowe commented 1 year ago

@rc-swag What action (if any) do we need to take on this issue?

rc-swag commented 1 year ago

@rc-swag What action (if any) do we need to take on this issue?

I think unless we can locate the missing dlls. This keyboard can no longer be advertised as working for Keyman for Windows only keyman-web. I am surprised at the number of downloads it has for a Keyboard that doesn't work and can't have worked on Windows ever. Unless there are two versions of jamo_combine.dll in existence.

mcdurdin commented 1 year ago

I can probably locate the source of this DLL: https://github.com/keymanapp/keyboards-internal/tree/master/Korean%20General/jamo_combine

mcdurdin commented 1 year ago

Other issues found with this keyboard The 64-bit version of the dll needs to be built. The following dlls do not exist. show_ime.dll hide_ime.dll select_hanja.dll scroll_hanja.dll

None of these were implemented in Windows, so korean_rr on Windows did not show any IME interface. So it was primarily web-targeted. But with jamo_combine.dll, it should still perform its basic function.

Our IMX story is very broken right now. We'd need a full time person on it for at least a year to really move forward with it. It's on the roadmap.

rc-swag commented 1 year ago

But with jamo_combine.dll, it should still perform its basic function.

Yes, it performs but not in the way the keyboard rules expect, it is not like-for-like with the javascript implementation. Jamo_combile.dll works well with the other Windows keyboards that use it. They don't have any rules that expect this condition I mentioned above if the matched length is less than two, it will simply output a space

Thanks for confirming the Windows implementation was not a target, makes sense.

mcdurdin commented 1 year ago

Yes, it performs but not in the way the keyboard rules expect,

gotcha

rc-swag commented 1 year ago

@DavidLRowe Back to your original question and what we should do with this issue. I think given the resources etc. The immediate action item is to 1) Remove Windows from the support platforms, including the Windows download for it. 2) Do we created a new ticket to add support for in the future I'm not sure, is there a significant demand for it?

mcdurdin commented 1 year ago

I think korean_rr is more popular in terms of its layout than some of the other Korean keyboards. But there are a lot of Korean input methods out there, so this is lowpri for us.