dasom-im / dasom

Dasom is a multilingual input method framework
https://dasom-im.github.io
GNU Lesser General Public License v3.0
12 stars 3 forks source link

우분투 Unity Dash(검색창)에서 한/영 전환이 잘 안되는 경우가 있습니다. #39

Closed nemonein closed 8 years ago

nemonein commented 8 years ago

안녕하세요. 우분투 14.04(64bit) 환경이고, 다솜은 PPA 에 올려진 것을 사용하고 있습니다. 한영전환은 한영키 보다는 Shift-Space 로 사용하고 있습니다.

제목처럼, 우분투 유니티 대쉬창에서 한영전환이 간헐적으로 안되는 경우가 발생합니다. Fcitx 에서도 이런 경우가 발생합니다. iBus 에서는 발견하지 못했습니다. UIM 은 잘 모르겠습니다.

유니티 대쉬창이라는 것은, 아래 글에 있는 그림에서 13번을 참고해주시기 바랍니다. http://askubuntu.com/questions/10228/whats-the-right-terminology-for-unitys-ui-elements

대쉬를 부르는 방법은 마우스를 이용하는 것과 키보드(Super키; Windows 키)를 이용하는 것 두가지가 있는데요. 한영 전환이 안되는 경우는 '마우스'를 이용했을 때 더 빈번하게 발생하는 것 같습니다.

정리하자면, 어쩔 땐 한영전환이 되고 어쩔 땐 되지 않는 현상이 나타납니다. 살펴봐주시면 좋겠습니다.

ghost commented 8 years ago

아마... ibus-hangul 또는 fcitx-hangul 패키지가 설치되어 있을 것입니다. 그걸 삭제해보시고 해보니 아예 한글이 입력되지 않는군요. 다솜은 설치된 상태로 놔두고 ibus-hangulfcitx-hangul 패키지를 모두 삭제하시고 한글이 입력되는지 안 되는지 알려주세요. 제 경우 다솜으로 한글 입력이 되지 않습니다.

ghost commented 8 years ago

위에 글은 15.10 에서 테스트한 것을 작성하였습니다. 마찬가지로 15.10 에서 fcitx 로 테스트 해봤는데, 마우스로 왼쪽 상단에 우분투 아이콘을 클릭하면 Search 텍스트바가 나오는데, 마우스 커서(caret)가 깜박깜박 거리는데 그곳을 마우스로 클릭 후, 한/영키를 누르면 한/영 전환이 되고 그렇지 않고 한/영 전환을 시도할 경우 안 될 때가 많네요. https://bugs.launchpad.net/ubuntu/+source/unity/+bug/1175669 이 버그 같습니다.

그래서 fcitx-hangul, ibus-hangul, uim-byeoru 등 모든 한글 엔진과 nabi 를 삭제하고 dasom 을 설치하여 테스트해 본 결과 dasom 도 마찬가지 현상이 발생하였습니다. 그리고 dasom 표시기에 en / ko 아이콘이 표시되지 않는 것을 확인하였습니다. 이것은 우분투쪽 버그 같습니다. dasom 표시기는 en / ko 아이콘을 전환시키는데... 우분투 패널에서 그걸 업데이트하지 않는 것 같습니다.

그래서, 이 부분에 대해서는 시간 관계상 더 깊숙히는 살펴보지 않을 것입니다. 그 시간에 다른 작업을 하는 것이 훨씩 유익하다고 생각합니다. 우분투 16.04 가 나오면 우분투에 어떤 변화가 있을 터이니 그 때 다시 살펴보는 것을 좋을 것 같습니다.

ghost commented 8 years ago

그리고, 우분투 로그인할 때 dasom-daemon 실행 후 바로 hud-service 가 가동될텐데, dasom_im_new() 할 때 dasom-daemon 에 접속이 되지 않는 경우가 있습니다. dasom-daemon 이 준비되는데 시간이 걸리기 때문입니다. 그래서 1~5초에 걸쳐서 반복적으로 접속을 시도하는 코드를 넣을 필요가 있는데, dasom-indicator (dasom_agent_new())에는 적용되어 있습니다. 추후 이 부분에 대해 어떻게 하는 것이 좋을지 고려해야 합니다. DBus, GSettings, 파일을 이용하는 방법 등이 있습니다. dasom-daemon 이 client 에 READY 신호를 주어야 하는 것이죠. 이 부분도 급한 거 아니니 나중에 작업하겠습니다.

nemonein commented 8 years ago

고맙습니다. Dash 에서 한국어를 입력할 일이 그리 많지는 않으므로.. 천천히, 좋은 방법을 찾아주시면 좋겠습니다.

ghost commented 8 years ago

hud-service 에 대한 정보는 https://wiki.ubuntu.com/Unity/HUD 에 있습니다.

ghost commented 8 years ago

DBus, GSettings, 파일을 이용하는 방법 등을 검토해보았는데, dasom_agent_new()에 적용된 방법이 가장 좋은 방법 같습니다. dasom_im_new() 또는 dasom_im_init() 에 적용하겠습니다.

janghe11 commented 8 years ago

네 고맙습니다!