GNU bug report logs - #43084
toggle-korean-input-method, Korean with Dvorak

Previous Next

Package: emacs;

Reported by: "L.J. Lee" <lj.is.writing <at> gmail.com>

Date: Fri, 28 Aug 2020 11:03:02 UTC

Severity: normal

Tags: fixed, moreinfo

Fixed in version 28.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: "L.J. Lee" <lj.is.writing <at> gmail.com>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 43084 <at> debbugs.gnu.org
Subject: bug#43084: toggle-korean-input-method, Korean with Dvorak
Date: Fri, 29 Jan 2021 13:54:52 +0900
Lars Ingebrigtsen writes:

> "L.J. Lee" <lj.is.writing <at> gmail.com> writes:
>
>> I was  puzzled, however, that my Korean layout
>> reverted to the more common 2-beol-sik (korean-hangul) whenever I
>> pressed S-SPC. C-\ would work to switch my layout correctly, but
>> pressing S-SPC even once to toggle to Korean layout would change the
>> default layout to korean-hangul and necessitate a manual change back to
>> korean-hangul3f
>> using M-x set-input-method.
>>
>> I found out through language-info-alist that S-SPC is
>> bound to toggle-korean-input-method, and used the function query to
>> track this function to korea-util.el under lisp/language.
>>
>> As expected, the toggle-korean-input-method function set the
>> default input method to korean-hangul regardless of user settings, so I
>> redefined it from init.el to set the default-korean-keyboard as
>> korean-hangul3f. Here's the code I used:
>>
>> (with-eval-after-load "language/korea-util"
>> (defun toggle-korean-input-method ()
>> "Turn on or off a Korean text input method for the current butter."
>> (interactive)
>> (if current-input-method
>>     (deactivate-input-method)
>>     (activate-input-method)
>>         (concat "korean-hangul3f" default-korean-keyboard)))))
>
> I don't use the Korean input methods, so this is totally uninformed --
> but looking at the code, your alteration seems to be the same as putting
>
> (setq default-korean-keyboard "3f")
>
> in your init file?
>
> In which case configuring this is already supported in Emacs.

It doesn't, actually--your suggested method was what I tried at first,
because it's the normal way to do things.
However, my setting didn't survive the first time I tried to
switch between Korean and English using S-SPC because doing so triggered
toggle-korean-input-method, which overrode my default-korean-keyboard
setting (korean-hangul3f) and reset it to korean-hangul instead.

Long story short, the toggle-korean-input-method is written to
override user settings which is just Bad Code and should be changed.

(Most Korean keyboard users wouldn't even notice, by the way, because
most use korean-hangul and korean-hangul3f is a minority layout.
It's probably why this error survived so long.)

Regards,
-- 
L.J. Lee
Mastodon account: https://rage.love/@ljwrites
Dreamwidth blog: https://lj_writes.dreamwidth.org




This bug report was last modified 4 years and 169 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.