노트북에서 리눅스를 사용할 경우, 한국어와 영어가 섞인 문장을 빠르게 입력하면서 한영키를 누르면, 한영키가 Alt 키처럼 동작해서, 프로그램 메뉴가 열리는 등 짜증나게 하는 경우가 있습니다.
이것은 노트북 키보드의 한영키가 실은 오른쪽 Alt 키이기 때문입니다. 그래서 입력기 설정 같은 곳을 보면, 오른쪽 Alt 키가 눌릴 때에도 한영 전환을 하도록 설정되어 있는 것을 볼 수가 있습니다. 하지만 이것으로는 부족합니다. 왜냐하면 Alt 키가 눌렸을 때 한영 전환 뿐만 아니라 Alt 동작도 일어나거든요. 그래서 아예 리눅스가 Alt 키를 한영키로 인식하도록 하는 방법이 필요합니다.
에 들어갑니다. '키 배치' 탭을 클릭한 후, '더하기...'를 누릅니다.
위 스크린샷처럼, '키 배치'를 'Korea, Republic of'로, '변종'을 '101/104 key Compatible'로 바꾼 후, 기본값으로 지정합니다.
대부분의 경우 이렇게 해결이 될 것입니다. 하지만... 불행히도 랜덤여신의 노트북은 정말 희한하게도, 저렇게 해서 되어야 하는데 안 되더군요. 분명히 되야 한단 말입니다. 이런 멍청한 노트북...
이 문제를 해결하는 방법은 약간 복잡한데, 리눅스가 오른쪽 Alt 키를 한영키처럼 인식하도록 설정해주면 됩니다. 자세한 방법은 다음과 같습니다.
1. 터미널을 열고, xev 라고 칩니다. 'Event Tester'라는 이름의 이상한 창이 하나 열립니다. 그 창에다 대고, 한영키나 한자키를 입력해봅니다.
KeyRelease event, serial 31, synthetic NO, window 0x4e00001,
root 0x58, subw 0x0, time 2455725882, (529,-362), root:(539,474),
state 0x0, keycode 113 (keysym 0xff31, Hangul), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 31, synthetic NO, window 0x4e00001,
root 0x58, subw 0x0, time 2455742261, (1082,-525), root:(1092,311),
state 0x4, keycode 109 (keysym 0xff34, Hangul_Hanja), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
이런 비슷한 메시지가 터미널에 나타날 것입니다. 저기서 중요한 것은 굵게 표시한 두 숫자입니다. 이 숫자는 한영키와 한자키의 코드 번호를 의미하는 것으로, 컴퓨터마다 다릅니다. 제 시스템은 113과 109군요. 따라서 이 두 값을 메모해둡니다.
2. 홈 폴더에 .Xmodmap 이라는 파일을 만들고, 텍스트 편집기로 엽니다.
3. 다음과 같이 입력합니다.
keycode 113 = Hangul
keycode 109 = Hangul_Hanja
여기에 아까 메모한 숫자를 쓰시면 됩니다.
4. 로그아웃하고 로그인합니다. Xmodmap 파일을 읽겠냐고 물어봅니다. 읽겠다고 대답합니다. 그러면 다음 로그인부터는 묻지 않습니다.
이 문제도 상당히 고질적입니다. 몇 년 전부터 계속 제기되는 문제니까요. 하지만 아직까지 완벽하게 해결되지 않은 것을 보면, 마땅히 근본적인 해결책이 없는 것인지도 모르겠어요. 아쉽습니다.
ps: 원래는 시스템-기본 설정-키보드 들어가서 키 배치를 한국어로 바꾸면 되어야 하는데, 제 시스템에서는 안 되더라고요. ㅠㅠ;