제가 iBus 사이트에 리포트한 끌글자 버그...^^

http://code.google.com/p/ibus/issues/de … %20Summary

올려주신 버그는 끝글자 따라다니기 같은데 제가 알기로는 이전에 고쳐진 것으로 알고 있습니다.
전 끝글자가 그냥 없어지는데 이걸 버그로 쳐야 할지 몰라 그냥 내버려두고 있습니다.
즉, "철수가 학교에"를 입력하고 마지막 '에’자에 커서가 있는 상태에서 다른 곳을 찍으면 "철수가 학교"가 되는 것이죠.

[quote="jincreator":21ued953]즉, "철수가 학교에"를 입력하고 마지막 '에’자에 커서가 있는 상태에서 다른 곳을 찍으면 "철수가 학교"가 되는 것이죠.[/quote:21ued953]
글 쓸 때 짜증 나더군요.
이 버그 때문에 ibus 안 쓰기도 했었고,
다른 사람에게 우분투 소개하기도 좀 거시기 하네요.
기본이라고 생각하는 것이 안되니까요… :roll:

이런 부분을 커버해줘야 하는 게 각국에 있는 지사의 역할이긴 합니다…

오픈소스 업계는 어떨지 몰라도, 상용 소프트웨어 업계는 그런 식으로 돌아가고 있죠…ㅋ

가령 미국 ms에 있는 개발자들이 "한국 사용자들의 요구 사항이 대강 이럴 것이다"라고 머릿속으로 예상해서 개발을 해 놓아도, 막상 실제 한국에 살고 있는 진짜 한국 사람들이 써 보면 이런저런 문제들이 튀어나오죠…

본사 개발자들이 개발해 놓은 베타 버전을 실제로 한국에 있는 오피스에서 실제 한국 직원들이 테스트 해 보고, 다시 본사로 버그 리포트를 해 주면 개선된 게 한국 지사로 날아오고…

계속 이런 과정을 거치면서 "실제로" 한국에 살고 있는 한국 유저들이 쓰기에 아무런 불편이 없을 때까지 같은 과정이 무한히 반복됩니다.

돈 받고 팔 운영체제이기 때문에 눈에 띄는 명백한 버그가 떡 하니 존재한 채로 출시될 순 없기 때문이죠…물론 수만번 사용하다가 한 번 살짝 나오는 버그 같은 건 나중에 수정할 수 있지만…

하지만 캐노니컬은 완전히 "iBus 팀이 알아서 잘 해 놓았겠지" 체제인 것 같습니다. T.T

영국에 있는 본사 자체도 50명짜리 조직이고, 한국 지사는 아예 없고, 정말 주변 사람에게 권하기는 아직은 좀 거시기한 운영체제라고 생각할 때가 많습니다…

반면 안드로이드는 거대한(!) 삼성전자가 고객 중 하나이다 보니 한국 사용자 사용성과 관련해서 초큼만 문제가 있어도 바로 삼성에서 구글로 피드백이 가고, 웬만한 눈에 보이는 문제는 전부 사라진 다음에 갤탭이나 갤럭시 같은 게 출시가 되죠…

반면 우분투는 걍…

뭔가 한국 사람들의 무관심 속에 방치되고 있는 그런 느낌을 지울 수가 없네요…흑흑

[quote="dynamism2002":1qcu3zuu]
오픈소스 업계는 어떨지 몰라도, 상용 소프트웨어 업계는 그런 식으로 돌아가고 있죠…ㅋ

가령 미국 ms에 있는 개발자들이 "한국 사용자들의 요구 사항이 대강 이럴 것이다"라고 머릿속으로 예상해서 개발을 해 놓아도, 막상 실제 한국에 살고 있는 진짜 한국 사람들이 써 보면 이런저런 문제들이 튀어나오죠…

본사 개발자들이 개발해 놓은 베타 버전을 실제로 한국에 있는 오피스에서 실제 한국 직원들이 테스트 해 보고, 다시 본사로 버그 리포트를 해 주면 개선된 게 한국 지사로 날아오고…

계속 이런 과정을 거치면서 "실제로" 한국에 살고 있는 한국 유저들이 쓰기에 아무런 불편이 없을 때까지 같은 과정이 무한히 반복됩니다.
[/quote:1qcu3zuu]

오호~ 그렇군요. :o

그래서, 아직까지 Windows Mobile 에서 우리나라 폰 현실에 안맞는 앱들이 아직 있는가 봐요.
현재까지 무한 반복 중이겠죠? (^^;;:wink:

[quote="dynamism2002":1qcu3zuu]
반면 안드로이드는 거대한(!) 삼성전자가 고객 중 하나이다 보니 한국 사용자 사용성과 관련해서 초큼만 문제가 있어도 바로 삼성에서 구글로 피드백이 가고, 웬만한 눈에 보이는 문제는 전부 사라진 다음에 갤탭이나 갤럭시 같은 게 출시가 되죠…
[/quote:1qcu3zuu]

오호~ 그렇군요. :o

끝글자 버그 발생 부분을 찾았습니다.
ibus에서는 [code:32kgwdqz]ibus_im_context_filter_keypress[/code:32kgwdqz] 함수에 버그가 있고,
gtk에서는 [code:32kgwdqz]gtk_text_view_multipress_gesture_pressed[/code:32kgwdqz] 함수 내에 버그가 있습니다.
올해 내로 고쳐질 것이라 확신합니다.

아래 포스트 참고.

악명 높은 끝글자 버그를 고칩시다-1

http://www.cogno.org/node/115

악명 높은 끝글자 버그를 고칩시다-2

http://www.cogno.org/node/116

악명 높은 끝글자 버그를 고칩시다-3

http://www.cogno.org/node/117

악명 높은 끝글자 버그를 고칩시다-4

http://www.cogno.org/node/118

악명 높은 끝글자 버그를 고칩시다-5

http://www.cogno.org/node/119

악명 높은 끝글자 버그를 고칩시다-6

http://www.cogno.org/node/120

징그러운 끝글자 버그… 아직까지 못잡았습니다. ㅠㅠ

스페이스로 끝내는 습관을 들이니 끝글자 버그도 제 인생에서 함께 함께 사라졌습니다.

[code:2hhhf9es]gtk_text_view_multipress_gesture_pressed[/code:2hhhf9es]에 버그가 있는 줄 알았는데,
명확하게 테스트를 해보니 ibus 버그인 것을 확인하였습니다.

버그 리포트 댓글 참고

https://code.google.com/p/ibus/issues/detail?id=1264#c8

gtktextview.c 소스를 마우스 클릭할 때 특정 문자를 출력하도록 수정하여 테스트해보았는데,

마우스를 클릭하면 클릭 전 위치에 특정 문자가 찍히더군요. 클릭 후 위치에는 조합 중인 글자가 찍힙니다.
gtk는 정확하게 작동하는데 ibus가 한 템포 늦게 작동하는 것이죠.

ibus 소스를 보면 sync, async 이런 부분이 보이던데 항상 sync 모드로 동작해야 하지 않을까…
또한 ibus/client/gtk3/ibusimcontext.c 소스에서 key snooper을 제거해야 되지 않나…
이런 생각이 듭니다. 살짝 고쳐서 해결될 문제는 아닌 것 같습니다.

끝글자 버그가 XIM 포로토콜 때문에 어쩔 수 없이 발생하는 것이 아닙니다.
제가 전에 데비안 squeeze + scim 사용할 때에는 끝글자 버그가 없었습니다.
또한 리눅스 사용하기 전에는 유닉스(솔라리스 2.6)를 사용했었는데 그 당시에도 끝글자 버그는 없었습니다.

악명 높은 끝글자 버그를 고칩시다-7

http://www.cogno.org/node/121

해결책

  1. ibus 를 sync 모드에서 잘 돌아가도록 고치기 - ibus 개발자가 중국어, 일본어는 문제 없는데 한글만 문제라고 ibus-hangul 탓만 하면서 ibus에 내재되어 있는 sync 버그를 버그가 아니라 하니 ibus를 sync 모드에서 제대로 돌아가도록 바꾸어도 패치를 받아주지 않을 가능성이 매우 높음.

  2. ibus 를 포크해서 고치기.(* 이 방법 추천)

  3. imhangul, uim-byeoru 등 문제점이 없는 다른 입력기를 사용하기

지금은 debian wheezy(테스트 때문에 다운 그레이드 함 ㅠㅠ)를 사용하는데, 그놈 UI 통합 때문에 문제점이 있더라도 그냥 ibus 쓰기로 했습니다.

관련 버그 리포트

https://code.google.com/p/ibus/issues/detail?id=1264 https://code.google.com/p/ibus/issues/detail?id=1291 https://code.google.com/p/chromium/issu ... ?id=354495 https://code.google.com/p/ibus/issues/detail?id=1726

차선책(workaround)을 이용하여 ibus 끝글자 버그를 고치긴 고쳤습니다.
패치가 채택될지는 미지수이지만,
만약 패치가 채택되지 않는다면 ibus 와 ibus-hangul 에 패치를 적용하여 재컴파일하여 사용하면 되겠습니다.
데비안 wheezy 사용하는데 패치 적용하니 파이어폭스, gedit 에서 끝글자 버그가 없어지더군요. ㅎㅎㅎㅎ

관련 이슈:

https://code.google.com/p/ibus/issues/detail?id=1264 https://code.google.com/p/ibus/issues/detail?id=1420

hodong 님 수고 많으십니다 :)

하는김에 ibus 설정창에서 해당 기능을 껐다 켰다할 수 있도록 그리고 ibus qt 부분도 수정하여 ibus측과 Debian측에 패치 적용해달라고 요청해야겠습니다.
만약 패치 적용을 거부한다면 새로운 입력기 프레임워크를 진행할 생각입니다.

그 지긋지긋한 ibus 끝글자 버그가 이제서야 막을 내립니다.
다들 고생하셨습니다.

[quote="hodong":1liutbmw]하는김에 ibus 설정창에서 해당 기능을 껐다 켰다할 수 있도록 그리고 ibus qt 부분도 수정하여 ibus측과 Debian측에 패치 적용해달라고 요청해야겠습니다.
만약 패치 적용을 거부한다면 새로운 입력기 프레임워크를 진행할 생각입니다.

그 지긋지긋한 ibus 끝글자 버그가 이제서야 막을 내립니다.
다들 고생하셨습니다.[/quote:1liutbmw]

hodong 님 수고 많으십니다

viewtopic.php?f=2&t=27706

시간이 안 되요…
저도 남들처럼 휴일이나 퇴근 후에 쉬고 싶네요.