Subject: bug#65816: 27.2, 28.2, 29.2; Quail-based Japanese conversion error

From: Hippo Man <[email-masked]>
Date: Thu, 7 Sep 2023 23:58:33 -0400

The following error that I am reporting appears in emacs-27.2,
emacs-28.2, and emacs-29.2.

This error report is written under the assumption that the reader is
familiar with Quail
and with Japanese syllabary.

When using (set-language-environment "Japanese") and (set-input-method
"japanese") with Quail,
when we type romaji, the displayed text is correctly converted to
hiragana. If we want to
convert the hiragana to katakana, we just follow the hiragana with
"K", and the text display
is correctly toggled to katakana. Typing "K" again will correctly
toggle back to hiragana.

In most cases, this indeed works correctly. For example, typing
"hoteru" correctly yields
the hiragana "ほてる", and then following that with "K" switches it
correctly to the katakana
"ホテル". And then following that again with "K" correctly toggles it
back to "ほてる".

However, when the word contains an embedded hyphen, the "K" toggling
does not work properly.

For example, typing "ko-to" correctly yields the hiragana "こーと", and
then typing "K"
correctly converts it to the katakana "コート". But then, if I type "K"
again, the word does
not get converted back to hiragana, and the katakana form remains.

This erroneous behavior occurs with all katakana text which contains
one or more embedded
hyphens. The existence of a hyphen anywhere in the text prevents that
text from being
toggled from katakana to hiragana when "K" is typed.

Can anyone suggest a way that this incorrect behavior can be fixed?

Thank you in advance.

-- 
 [email-masked]
 Take a hippopotamus to lunch today.

    .---------, 0__0
   /           (  oo'---,
  /                    oo\
 ,\                      |
 | \                ,=__/
    \              /
    /  /------|  /|
    |__|-'    |__|'