스페이스바를 누르고 있으면 xev 형식으로 한국어가 반환되는 경우가 있습니다.

스페이스바를 누르고 있으면 xev 형식으로 한국어가 반환되는 경우가 있습니다.

나는 최근에 Emacs를 시험해 보기로 결정했습니다. 이 소프트웨어에 대해 매우 실망스러운 점 중 하나는 대부분의 경우 스페이스바를 누르고 있을 때 공백 문자를 삽입하기만 하면 다음 메시지가 나타난다는 것입니다.

<Hangul> is undefined

에코 존에서. 이전에는 스페이스바를 누르면 잘 작동했고 스페이스바를 반복해서 누르면 여러 개의 공백 문자를 얻을 수 있었지만 스페이스를 유지하는 것이 예상대로 작동하지 않습니다. 문제를 해결하기 위해 Google에 갔지만이 스레드나는 그것에 대해 많은 정보를 찾을 수 없습니다. 운 좋게도 해결책을 찾았습니다. 숫자 잠금을 클릭하면 효과가 있는 것 같았지만 Emacs를 열 때마다 그렇게 해야 합니다(어쩌면 새 버퍼를 열 때마다 – 저는 그렇게 많이 사용하지 않습니다).

xev를 열었고 스페이스바를 누르면 예상대로 대부분 공백 문자가 생성되지만 때로는 한국어 문자가 생성되는 것을 발견했습니다. 다음은 몇 가지 샘플 출력입니다.

KeyPress event, serial 34, synthetic NO, window 0x2800001,
    root 0x6c4, subw 0x0, time 2848166447, (-197,490), root:(767,510),
    state 0x0, keycode 65 (keysym 0x20, space), same_screen YES,
    XLookupString gives 1 bytes: (20) " "
    XmbLookupString gives 1 bytes: (20) " "
    XFilterEvent returns: False

KeyPress event, serial 34, synthetic NO, window 0x2800001,
    root 0x6c4, subw 0x0, time 2848166463, (-197,490), root:(767,510),
    state 0x0, keycode 130 (keysym 0xff31, Hangul), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 34, synthetic NO, window 0x2800001,
    root 0x6c4, subw 0x0, time 2848166511, (-197,490), root:(767,510),
    state 0x0, keycode 130 (keysym 0xff31, Hangul), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 34, synthetic NO, window 0x2800001,
    root 0x6c4, subw 0x0, time 2848166567, (-197,490), root:(767,510),
    state 0x0, keycode 65 (keysym 0x20, space), same_screen YES,
    XLookupString gives 1 bytes: (20) " "
    XFilterEvent returns: False

이 오류를 재현하는 것은 어렵고 오류가 발생했을 때 무엇을 다르게 했는지 알 수 없지만 이 오류를 볼 때마다 이 Keypress Keypress Keyrelease Keyrelease 패턴을 따르는 것 같습니다.

나는 명령을 사용 xkbcomp $DISPLAY my_keymap.xkb했고파일이 github에 업로드되었습니다그게 도움이 된다면. 거기에 한글이 정의되어 있는데, 그것이 어떻게 실행되는지 아직도 이해가 안 돼요.

도움이 될 것으로 생각되는 추가 정보는 다음과 같습니다.

  • 저는 쿼티 키보드를 사용하고 있어요

  • 저는 리눅스 민트 19.2를 사용하고 있습니다.

  • xev에 의해 감지되었기 때문에 시스템 전반에 걸친 문제인 것은 분명하지만, 이로 인해 내가 실행하는 응용 프로그램(Emacs 제외)에서 이상한 동작이 발생한다는 사실은 발견하지 못했습니다. 내가 Emacs를 실행하지 않았다면 아마도 이 사실을 몰랐을 것입니다.

  • 의 출력은 setxkbmap -query다음과 같습니다

    규칙: evdev 모델: pc105 레이아웃: us

이 문제를 해결하는 데 도움을 주시면 대단히 감사하겠습니다.

관련 정보