Linux Programmer

Fedora 리눅스 업그레이드 후 크롬의 한글 입력기 문제 본문

컴퓨터 관련/리눅스, 유닉스

Fedora 리눅스 업그레이드 후 크롬의 한글 입력기 문제

sunyzero 2020. 1. 5. 08:11

Fedora 31 upgrade 뒤에 한글 입력기가 이상하게 작동하는 문제가 생기는 경우가 있다. 아마 내 기억에 29에서 30으로 업그레이드 했을 때도 마찬가지였던 것 같다. 이게 xkb-options 부분을 커스터마이징 한 경우나 혹은 몇몇 추가 기능을 커스터마이징 한 경우에만 발생하므로 보편적인 일은 아니다.

 

이 문제의 증상은 구글 크롬(google chrome)에서 쌍자음을 타이핑할 때 문제가 생긴다. 예를 들어 ""을 타이핑하려고 하면 보통 "이"에서 "shift + ㅅ"을 누르는데, shift를 누르는 순간 단어가 완성되고 "이ㅆ"으로 변경되어버린다. 마찬가지로 ""을 타이핑하려고 하면 "다ㄲ"이 되어버린다. 

 

구글 크롬에서 한글 입력기 문제 : 쌍자음 타이핑

이 문제는 ${HOME}/.config/dconf/user 파일이 꼬여서 문제가 발생한 것이다. 따라서 이 파일을 약간 수정하면 되는데 dconf는 텍스트 파일이 아니므로 dconf 전용 명령어를 이용해서 편집한다. 편집에 앞서 파일은 백업을 받자.

cp ~/.config/dconf/user  ~/dconf_user_backup

파일을 홈 디렉터리의 dconf_user_backup으로 받았다. 이제 혹시 실수하면 다시 덮어씌우면 된다. 설정이 완료되고 아무 문제 없다면 나중에 dconf_user_backup 파일은 지우면 된다.

 

dconf 설정은 key and value 형식으로 되어있는데, 문제가 되는 key만 알면 작업이 편하다. dconf 설정에서 입력기 관련 문제를 일으키는 key부분은 /org/gnome/desktop/input-sources 이다. 이부분을 reset 해버리면 된다. 그런데 input-sources를 reset하면 입력기 설정이 사라지므로, 다시 제어판의 "지역 및 언어 / 입력 소스"에서 "한국어(Hangul)"을 추가해줘야 한다. 제어판에서 ibus hangul 입력 소스를 추가하는 방법에 대해 자세히 써둔 이전 글이 있으니 "여기(리눅스 한글 입력기 설정)"를 참고하자.

 

이제 /org/gnome/desktop/input-sources 키를 reset하기 위해 아래 dconf 명령을 실행한다. 명령어에서 키 부분의 맨끝의 / 를 빼먹으면 안된다. 이는 input-sources가 디렉터리에 해당하는 키이기 때문에 꼭 필요한 부분이다.

dconf reset -f "/org/gnome/desktop/input-sources/"

사실 본인은 input-sources 전체를 reset하지 않고 하위 키인 xkb-options만 문제라서 해당 키만 리셋을 하였다. 하지만 사람에 따라서 설정이 다를 수 있기 때문에 잘 모르면 위 명령처럼 input-sources 전체를 리셋하고 다시 한글 설정하는게 좋다.

 

dconf 설정은 즉시 적용되므로 명령어 내린 뒤에 바로 한글 설정이 날라가므로, 제어판의 지역 및 언어에서 한국어(Hangul)을 추가해주어야 한다. 그런 다음에 chrome에서 확인해보면 잘 될 것이다.

 

제어판 > 지역 및 언어 > 입력 소스 : 한국어(Hangul) 설정한 모습

* 참고

업그레이드나 dconf 에디터를 잘못사용하여 dconf 설정이 꼬였을 경우에는 초기화가 제일 좋다. 초기화는 ~/.config/dconf/user 파일을 삭제하면 되는데, 주의할 점은 먼저 X윈도우 로그아웃을 한 뒤에 텍스트 콘솔에서 삭제해야 한다는 점이다. 다시 말해 X윈도우는 로그아웃 하고 CTRL-ALT-F3 정도를 눌러서 X 윈도우가 아닌 콘솔로 로그인한 다음에 ~/.config/dconf/user 파일을 삭제한다. 그리고 난 뒤에 X윈도우(CTRL-ALT-F1으로 스위칭)로 다시 로그인하면 된다. (아니면 다른 X윈도우로 로그아웃 한 다음에 다른 유저(i.e. root)로 로그인해서 작업해도 된다.)

 

그렇지 않고 X윈도우를 사용하면서 ~/.config/dconf/user를 지우고 로그아웃을 하면, 로그아웃시 dconf 설정이 다시 저장되므로 말짱 도루묵이 되는 수가 있다. 따라서 dconf 설정의 초기화를 원한다면 꼭 X윈도우를 로그아웃을 먼저 한 뒤에 X윈도우 로그인 상태가 아닌 환경에서 user 파일을 삭제해야 한다.

0 Comments
댓글쓰기 폼