Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: The first character automatically converts to an English letter in Japanese #10773

Open
jonghoonleeee opened this issue Feb 9, 2024 · 20 comments
Labels

Comments

@jonghoonleeee
Copy link

jonghoonleeee commented Feb 9, 2024

Describe the bug

I encountered a problem when I input Japanese.
I attempt to type in Japanese, the first character automatically converts to an English letter.
For instance, when I try to write “あああああ“, it appears as “aああああ” in the cell. Similarly, “漢字” becomes “kあんじ“, and “音” is altered to “oと“. This issue significantly impacts the usability of Handsontable for Japanese language inputs.
Could you please advise on any quick fixes or solutions that are available?

Video/Screenshots

da9f34495369a52d06103908980c4450

Provide a link to the demo with the bug reproduction

https://handsontable.com/docs/javascript-data-grid/vue3-custom-editor-example/

Handsontable version

handsontable 14.1.0

Framework version

vue 3.4.15

Your environment

MacOS + Chrome

@adrianszymanski89
Copy link
Contributor

Hi @jonghoonleeee

Thank you for reporting this. Can you please tell me which Japanese dialect you use? I was able to reproduce the issue with Hiragana-Romaji on macOS.

@jonghoonleeee
Copy link
Author

Hi @adrianszymanski89
Thank you for reproducing it. I am using the same one.

@adrianszymanski89
Copy link
Contributor

Hi @jonghoonleeee

There's one solution that might help here. Can you please try to set the option imeFastEdit: true in your configuration object?

@HJeong1200
Copy link

Hi @adrianszymanski89

Just to let you know a similar issue with Korean keyboard layout.
Typing "가나다" results in "ㄱㅏ나다" so the first letter does not change in Engilsh but the first letter is not composed with the latter one which is a bug.
imeFastEdit: true fixes the issue in this case.

Using MacOS + Chrome + Handsontable v14.1.0

스크린샷 2024-02-13 오후 9 30 14

@adrianszymanski89
Copy link
Contributor

Hi @HJeong1200

Thank you for letting me know. This option was added to solve this problem, so I'm glad it works as intended.

@jonghoonleeee
Copy link
Author

jonghoonleeee commented Feb 14, 2024

@HJeong1200 @adrianszymanski89
Thank you for informing me.

When I added the imeFastEdit: true option in the Handsontable documentation, it worked correctly. However, after adding the contextMenu option, it did not work.

It seems that using both contextMenu and imeFastEdit options simultaneously does not work.
06fd115349455577472973d9306c490b

@adrianszymanski89
Copy link
Contributor

Hi @jonghoonleeee

Thank you for the update. I tried with a custom context menu, but it still works correctly in my case. I tested it with this example: https://jsfiddle.net/handsoncode/nt68ejhq/. Can you please check if it doesn't work for you also here?

@jonghoonleeee
Copy link
Author

jonghoonleeee commented Feb 15, 2024

Hi @adrianszymanski89

Thank you for trying.

I tried adding a context menu on the following page, but it seems not to be working. What could be the difference?
example: https://jsfiddle.net/1fvd2seu/6/

@AMBudnik
Copy link
Contributor

AMBudnik commented Feb 15, 2024

Hi @jonghoonleeee I also tried to replicate the issue with Japanese-romanji keyboard and did not get this issue.

I was testing Chrome 121 and Firefox 121 on macOS Ventura, before and after using the context menu it still works the same. In my case, I was adding konnichiwa and got this (as I am not 100% sure if that is correct as I do not know Japanese we can see that the first letter is not from another alphabet).

Zrzut ekranu 2024-02-15 o 09 28 53

So it seems that we should focus on the differences between our environments, or maybe the speed of typing.

@jonghoonleeee
Copy link
Author

jonghoonleeee commented Feb 15, 2024

Hi @AMBudnik
Thank you for trying.

Have you tried inputting Japanese text on this page(https://jsfiddle.net/1fvd2seu/6/)?
I attempted it on Chrome 121, Edge, Safari, and Mac OS Ventura 13, but noticed that the initial characters of Japanese text were automatically converted to Roman characters.

When double-clicking on a cell, the issue does not occur. However, it happens when moving to a cell with a single click or keyboard arrow input

4c52790211bf45d5f9b3d423a130d9e7

@AMBudnik
Copy link
Contributor

I was able to replicate the issue, but only if I switched to Japanese after the table was loaded. Please check this video.

Kapture 2024-02-16 at 09 33 43

1st attempt is in my standard keyboard (for me it's polish)
2nd one (where the issue is replicable) is switching to Janapese-Romanji without refreshing the page
3rd one is Janapese-Romanji but with a new refresh of the page (the result is correct).

Does that work for you the same? Or does it also happen when you have Janapese-Romanji and after page refresh?

@jonghoonleeee
Copy link
Author

jonghoonleeee commented Feb 19, 2024

@AMBudnik
Thank you for trying.

The issue occurs only in Japanese-Romanji. It inputs correctly when refreshing the page, but the problem occurs again afterward.

  • Upon refreshing the page

501449d127a9bb74697647fe8eb64953

  • After refreshing the page
    aa40763ec113f22a20ef79eb94dd7cdc

@AMBudnik
Copy link
Contributor

Thank you for feedback @jonghoonleeee I have reported the issue internally and will notify as soon as we fix it.

@huangshuwei
Copy link

huangshuwei commented Mar 7, 2024

@HJeong1200 @adrianszymanski89 Thank you for informing me.

When I added the imeFastEdit: true option in the Handsontable documentation, it worked correctly. However, after adding the contextMenu option, it did not work.

It seems that using both contextMenu and imeFastEdit options simultaneously does not work. 06fd115349455577472973d9306c490b 06fd115349455577472973d9306c490b

Chinese input also has the same problem:

20240307_202813.mp4

But it works in version 13.1. I think it should be related to the update on 14.1

@adrianszymanski89
Copy link
Contributor

Hi @huangshuwei

Recently, we released a new version of Handsontable, 14.2, and when I checked this issue, I couldn't replicate it anymore. Can you please tell me if that's also the case on your side with 14.2?

@huangshuwei
Copy link

@adrianszymanski89
Yes, this issue also exists in version 14.2 .
This is an example of version 14.2:https://jsfiddle.net/d1ur2yne/

@adrianszymanski89
Copy link
Contributor

@huangshuwei

Thank you for the update. I hope we will have a fix for this soon.

@huangshuwei
Copy link

Hi. I have found that upgrading to the latest version(14.3.0) still has this problem. Is there a repair plan for it?

@youhogeon
Copy link

youhogeon commented Apr 24, 2024

@adrianszymanski89

I haven't tested other languages, but I'll tell you based on Korean input.

First of all, this problem occurs from 14.0 to 14.3. (It operates normally in 13.x.)

※ Note: In Korean, the letter “가” can be entered by entering “ㄱ” and then “ㅏ”.

If imeFastEdit is false, "rㅏ" is always entered. (However, if you double-click the cell and then type, it will be entered normally.)

If imeFastEdit is true and you type slowly, "가" is entered normally.
However, when typing quickly, “rㅏ” is entered or “ㅏ” is entered (“r” is entered first, then “r” suddenly disappears, leaving only “ㅏ”).


I sincerely hope that this issue is resolved quickly. If I find any problematic code, I will submit a Pull Request. (But I'm not confident I can find it.)

@adrianszymanski89
Copy link
Contributor

adrianszymanski89 commented Apr 24, 2024

Hi @youhogeon

Thank you for the additional details. Our developers will investigate it, and I'll update you once we have feedback from them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

6 participants