You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I received the bug report via mail yesterday. I leave my answer for managing the issue here too.
How to reproduce bug
The text you provided is correctly combined, but assuming you enter Korean input, if you decompose the previous character of Muriel into jamo and add ㄹ to the result, the bug will be reproduced.
메일 제보가 있어서 Issue Tracking 용도로 여기에도 글을 올립니다.
Known Issue
주어진 글자 뮤리엘이라는 텍스트가 있을 때, 뮤리에ㄹ 이라고 입력되는 현상
답변
제공해주신 텍스트 뮤리엘은 제대로 조합되지만, 한글 입력을 한다고 가정하면 뮤리엘의 이전 글자인 뮤리에를 자소분해하고, 이 결과에 ㄹ을 더하면 해당 버그가 재현됩니다.
biud436
changed the title
[RS_HangulInput.rb] 한글 조합 & 자소 분해 라이브러리에서 마지막 글자 조합 문제 (Korean)
[RS_HangulInput.rb] Last character combination issue in Korean input method & jamo decomposition library (Korean)
Mar 6, 2023
I received the bug report via mail yesterday. I leave my answer for managing the issue here too.
How to reproduce bug
The text you provided is correctly combined, but assuming you enter Korean input, if you decompose the previous character of Muriel into jamo and add ㄹ to the result, the bug will be reproduced.
메일 제보가 있어서 Issue Tracking 용도로 여기에도 글을 올립니다.
Known Issue
뮤리엘
이라는 텍스트가 있을 때,뮤리에ㄹ
이라고 입력되는 현상답변
제공해주신 텍스트
뮤리엘
은 제대로 조합되지만, 한글 입력을 한다고 가정하면뮤리엘
의 이전 글자인뮤리에
를 자소분해하고, 이 결과에ㄹ
을 더하면 해당 버그가 재현됩니다.자소 분해
["ㅁ", "ㅠ", "ㄹ", "ㅣ", "ㅇ", "ㅔ", "ㄹ"]
["ㅁ", "ㅠ", " ", "ㄹ", "ㅣ", " ", "ㅇ", "ㅔ", "ㄹ"]
한글 입력하려면 연속된 글자를 조합, 분해를 반복해야 한다는 결론이 생기게 됩니다.
그러나, 분해 과정에서 종성에 빈 글자(공백)가 생기게 됩니다.
제공해주신 케이스로는 정상 출력되지만, 연속 입력을 해야하므로 그 과정에서 종성에 빈 글자가 채워집니다.
즉, 한글 조합 원리에서, 받침이 없을 때, 종성 부분에 빈 부분(" ")으로 채워집니다.
뮤리엘 그 자체는 제대로 조합되는 글자이지만,
연속하여 입력한다고 하였을 때 그 이전 글자 "뮤리에"를 분해하고 ㄹ을 추가하면 뮤리에ㄹ이 됩니다.
뮤리엘 전의, 뮤리에를 보면 빈 종성(" ")으로 채우고 있습니다.
즉, 이전 글자가 ㅇ" + "ㅔ" + " " 가 되어, 종성을 빈 글자가 채워버렸고, ㄹ 이 다음 칸으로 넘어간 듯 싶습니다.
즉, 뮤리에를 자소분해하였을 때,
["ㅁ", "ㅠ", " ", "ㄹ", "ㅣ", " ", "ㅇ", "ㅔ", " "]
라고 나오는데,에
는 아직 조합이 끝나지 않는 걸로 추측할 수 있습니다.조합이 끝나지 않았다면 다음에
ㄹ
을 입력되었을 때, 마지막에 있는 " " 이 지워져야 정상 동작이 될 것입니다.즉, 조합 단계인 마지막 글자의 종성이 " "이면 한 글자를 지워야 하는 걸로 추측을 해볼 수 있습니다.
그러나 한 글자를 지웠을 때, 어떠한 문제가 생길지는 알 수 없습니다. 아마 조건이 있을 것입니다.
이러한 조건들을 다 찾을 수 있다고 자신할 수는 없는 상황입니다.
아무튼 문제점은 위 부분이니 참고 하시기 바랍니다.
해결 방법
뮤리에
에서뮤리엘
이 입력될 때, 마지막 글자의 종성의 인덱스가 0이라면 아직 조합 중으로 가정하고 공백을ㄹ
로 대체하여야 한다.Test Environment
The text was updated successfully, but these errors were encountered: