다솜과 ibus 다른 점?

자유로운 이야기, 구인구직, 이벤트, 나눔

Moderators: Dry8r3aD, drake_kr

세벌
Posts: 1023
Joined: 2011/10/13 Thu 7:59 am
Location: 우리나라
Contact:

다솜과 ibus 다른 점?

Post by 세벌 » 2015/10/16 Fri 8:04 pm

리눅스에 기본으로 설치되는 ibus 대신에 다솜을 설치했을 때의 다른 점은 무엇인가요?

세벌
Posts: 1023
Joined: 2011/10/13 Thu 7:59 am
Location: 우리나라
Contact:

Re: 다솜과 ibus 다른 점?

Post by 세벌 » 2015/10/18 Sun 5:06 am

[quote="k9200544":68pru6ol]울나라 한글포함 타자에 관한 정서를 가장 먼저 챙겨주는 것이 다솜[/quote:68pru6ol]
좀더 자세히 설명해 주시면 감사.

세벌
Posts: 1023
Joined: 2011/10/13 Thu 7:59 am
Location: 우리나라
Contact:

Re: 다솜과 ibus 다른 점?

Post by 세벌 » 2015/10/22 Thu 4:05 pm

https://ask.ubuntu-kr.org/?qa=304
이런 다른 점이 있군요. 어쩌면 설정방법이 있을지도... 아시는 분 알려주셔요...

hodong
Posts: 200
Joined: 2014/12/23 Tue 3:29 am
Contact:

Re: 다솜과 ibus 다른 점?

Post by hodong » 2015/10/22 Thu 8:00 pm

구조적으로 차이가 많이 납니다.

큰 차이는
ibus 는 비동기화 방식, 2단계 통신, DBus 통신
dasom 은 동기화 방식, 1단계 통신, unix socket 통신.

dasom 설계에 5개월 걸렸습니다.

2015년 1월에 설계를 시작했습니다. 그 때는 ibus를 고치려했었었죠.
https://code.google.com/p/ibus/issues/detail?id=1264

2015년 5월에 설계가 끝났습니다.
http://www.cogno.org/node/132

아래 문서를 읽어보세요.

ibus 구조
https://wiki.gnome.org/GnomeAsia/2014Su ... method.pdf

다솜 입력기 구조
https://github.com/cogniti/dasom/blob/master/README
viewtopic.php?f=4&t=28121
위에 세벌님이 댓글도 달아놓으셨는데 세벌님이 몰라서 질문하신 것 같지는 않네요.

공개 망신 주고 싶거나 깎아내리고 싶어서 이런 글을 쓰신 것 같네요.
전에 번역하시는 분도 그렇고 저도 그렇고 바쁜 사람들입니다.
viewtopic.php?f=4&t=28193
시간이 남아돌아서 게시판에 글쓰는 것도 아니고, 프로젝트 하는 것 아니에요.
키 설정 UI를 만들고 싶어도 시간이 없어서 못 만들고 있습니다.
단순 변명처럼 생각하실까봐 부연 설명을 하자면,
시간이 어느 정도로 없냐면, 퇴근 후 2~4시간 남는데 잠을 4~6시간 자고 매일 2~8시간씩 8개월 동안 개발을 한 겁니다.
릴리즈전에 약 2일정도 잠을 못잤습니다. 믿으실지 모르시겠지만요.
우분투 4종, 쿠분투 4종, 데비안 2종 deb 파일 만들려면 운영체제 설치, 업데이트 때문에 24시간 정도 걸립니다.
https://github.com/cogniti/dasom/releases
그덕에 병 났죠. 뭐 지금은 다 나았어요.
그 정도로 바쁩니다.
오늘은 debian/copyright 파일에 IMdkit 누락한게 있어서 그거 추가 및 검토해야 되기에 00시 전에 잘 수나 있을런지 모르겠습니다.
게다가 내일은 https://github.com/cogniti/dasom/issues/18 파이어폭스 41.0.2 에서 다솜 입력기 사용할 때 파이어폭스가 먹통되는 현상을 살펴봐야 되서... 00시 전에 자기는 글렀네요.
그 정도로 시간이 없습니다.

여가 시간과 잠자는 시간 쪼개서 만드는 겁니다.
다솜 입력기 깎아내릴 생각하지 마시고 부족한 점이 있다면 만들어주세요.
다솜 입력기 프레임워크는 모듈화되어 있어서... 설정 UI 같은 건 다솜 프로젝트와는 별개로 만드실 수 있습니다.
그리고 다솜 표시기도 아이콘도 그렇고요. 중국어 엔진, 일본어 엔진 이런 것도 다솜 프로젝트와는 별개로 만드실 수 있어요.
간단하게 설명드리자면... 플러그인 방식이거든요. 파이어폭스에 부가기능(add-on)을 추가하는 것처럼요.
Last edited by hodong on 2015/10/23 Fri 8:09 am, edited 2 times in total.

hodong
Posts: 200
Joined: 2014/12/23 Tue 3:29 am
Contact:

Re: 다솜과 ibus 다른 점?

Post by hodong » 2015/10/22 Thu 9:06 pm

그리고 키 설정에 대해 해명을 좀 하겠습니다.
키 설정 이슈는
https://github.com/cogniti/dasom/issues/17
올라와 있습니다.
dasom-daemon 에서의 키 체크 부분은 gtk_accelerator*() 라이브러리를 사용하지 않습니다.
그걸 사용하면 편하긴한데... 나중에 X윈도 없는 콘솔 환경에서 dasom-daemon 을 돌릴 수 없거든요.
설계상, X윈도가 없는, GUI가 없는, 콘솔 환경도 대응할 수 있도록 고려하고 있습니다.
(다솜 입력기 프레임워크가 모듈화(플러그인)되어 있으니 콘솔에서도 사용하려면 콘솔용 표시기, 콘솔용 한자창, 콘솔용 설정창... 등.. 이런게 있어야겠죠. 이런 것도 다솜 프로젝트와 별개로 개발하실 수 있습니다.)
그런데 키 체크가 애매한 부분이 있습니다.
Alt키를 눌렀을 때, 어떤 프로그램에서는 DASOM_META_MASK를 발생시키고 어떤 프로그램에서는 DASOM_META_MASK를 발생시키지 않습니다. DASOM_MOD2_MASK 는 Number 키와 관련이 있습니다. virtual modifier 도 참 애매한 부분입니다.
환경에 따라 virtual modifier 어떻게 되는지도 모르겠고요.
어떤 어플은 이벤트를 후킹하기도 합니다.
그래서 이 이슈는 우선 순위가 높은 다른 것부터 먼저 처리하고 나중에 처리할 겁니다.
참고하시기 바랍니다.

다솜 입력기를 사용하면서 버그, 희망사항, 개선점은
https://github.com/cogniti/dasom/issues
에 남겨주시기 바랍니다.
감사합니다.

hodong
Posts: 200
Joined: 2014/12/23 Tue 3:29 am
Contact:

Re: 다솜과 ibus 다른 점?

Post by hodong » 2015/10/22 Thu 11:09 pm

그리고 불필요한 논의 및 논쟁 발생 소지를 없애기 위해 글을 또 씁니다.

[size=150:26rk0dka]다솜 입력기는 제가 손수 만들었습니다. 타 입력기를 베껴서 만든 것이 아닙니다.[/size:26rk0dka]

다솜 입력기 프레임워크는 다른 프레임워크(예를 들자면, ibus)를 베껴서 만든
것이 아닙니다. 특별히 베껴올 부분도 없고, 그렇다고 해서 독창적인 것은 아니고
교과서에 나오는 내용과 API 문서 보고 만들 수 있습니다.
입력기들 간에 유사한 부분이 많습니다.
그건 지원하는 인터페이스(예를 들자면, gtk im 관련 api / qt im 관련 api / IMdkit api)가 동일해서 그렇습니다.
그걸 지원해야 입력기가 되는 겁니다.

[size=150:26rk0dka]클라이언트/서버 통신 부분[/size:26rk0dka]

ibus 는 DBus 방식입니다.
dasom 은 Unix Socket 방식입니다. 이 방식이 DBus 보다 구현하기 어려운 방식입니다.
(ibus 에서 베껴올 부분이 전혀 없습니다. 클라이언트/서버 통신을 제가 직접
만들었습니다.)
fcitx, uim 은 잘 모르겠습니다. C++ 코드는 제가 이해하기 어렵습니다.
nabi 는 XIM 이고 imhangul 은 통신 방식이 아니라서 해당 사항 없습니다.

[size=150:26rk0dka]XIM 부분[/size:26rk0dka]

ibus, nabi, fcitx, dasom 은 XIM 처리에 IMdkit 을 사용했습니다.
따라서 XIM 처리가 서로 유사합니다. 그건 어쩔 수 없는 부분입니다.
uim 은 XIM 서버를 자체적으로 만든 것 같습니다.

[size=150:26rk0dka]키 이벤트 후킹 부분[/size:26rk0dka]

ibus, imhangul 은 gtk_key_snooper_install() 이걸 사용했습니다.
uim 은 기억이 안 나고.. fcitx는 확인해본 바 없고,
dasom 은 키 이벤트 후킹, 마우스 이벤트 후킹에
gdk_window_add_filter() 를 사용했습니다.
역시 타 입력기에서 베낀게 없습니다. 이것도 제가 직접 만들었습니다.

[size=150:26rk0dka]마우스 이벤트 후킹 부분[/size:26rk0dka]

uim 과 imhangul 이 유사하며 gdk_window_get_user_data() 를 사용하며 문서에 나와
있지 않은 방법을 사용했습니다.
dasom 은 키 이벤트 후킹, 마우스 이벤트 후킹에
gdk_window_add_filter() 를 사용했습니다.
역시 타 입력기에서 베낀게 없습니다. 이것도 제가 직접 만들었습니다.

[size=150:26rk0dka]한글 엔진[/size:26rk0dka]

dasom 의 한글 엔진은 libhangul 을 사용하고 있습니다. 그래서 nabi, imhangul 과 유사하지만,
소스 내부를 확인해보시면 아시겠지만 베끼지 않았습니다.
libhangul api를 이용하여 dasom 한글 엔진이 wrapper 역할을 하기 때문에 제가 직접 만들었다고 말할 수는 없겠습니다.

[size=150:26rk0dka]한자창[/size:26rk0dka]

dasom 한자창을 보시면 아시겠지만, ibus, fcitx, imhangul, nabi 등에서 베껴온
부분이 없습니다. 제가 직접 만든 겁니다.

[size=150:26rk0dka]한/영 표시기[/size:26rk0dka]

그외 dasom-indicator 및 그놈 쉘 익스텐션은 tutorial 문서 및 api 문서 보고
만들었습니다. 역시 다른 입력기에서 베낀거 없이 제가 직접 만든 겁니다.
아이콘도 제가 직접 만들었습니다. 베끼지 않았습니다.

https://github.com/cogniti/dasom/blob/master/README
README 파일에도 밝히고 있듯이 제가 참고한 문서 및 코드입니다.
개발을 계속 진행하면서 참고 목록이 변경될 수도 있습니다.

References
----------
http://www.x.org/releases/X11R7.6/doc/l ... M/xim.html
http://www.w3.org/TR/ime-api/
https://developer.chrome.com/extensions/input_ime
http://docs.enlightenment.org/auto/efl/ecore_main.html
http://doc.qt.io/qt-4.8/qinputcontext.html
http://doc.qt.io/qt-5/qinputmethod.html
https://git.gnome.org/browse/gtk+

https://github.com/choehwanjin/nabi
https://github.com/choehwanjin/imhangul
https://github.com/choehwanjin/ibus-hangul
https://github.com/ibus/ibus
https://github.com/fcitx/fcitx
https://github.com/fcitx/fcitx-qt5
https://github.com/uim/uim

hodong
Posts: 200
Joined: 2014/12/23 Tue 3:29 am
Contact:

Re: 다솜과 ibus 다른 점?

Post by hodong » 2015/10/23 Fri 8:12 am

[quote="세벌":1zopvrea]https://ask.ubuntu-kr.org/?qa=304
이런 다른 점이 있군요. 어쩌면 설정방법이 있을지도... 아시는 분 알려주셔요...[/quote:1zopvrea]
낚인 겁니다. 세벌이라는 이 인간 때문에 잠못자고 시간 날린 거죠.

hodong
Posts: 200
Joined: 2014/12/23 Tue 3:29 am
Contact:

Re: 다솜과 ibus 다른 점?

Post by hodong » 2015/10/23 Fri 7:31 pm

k9200544 님이 제게 죄송해하실건 없습니다.
세벌이라는 저 사람 저러는거 어제 오늘 일도 아닌데...
이번 건은 대응하지 않고 방치했을 경우, 와전될 가능성이 농후하다고 판단되기에
대응을 안 할 수가 없었습니다.

세벌님, 당신이 잠수타는 것처럼, 스트레스 받아 피곤하면 그냥 방치하고 안하면 그만입니다.
돈받고 개발하는거 아니고, 무보증(NO WARRANTY)입니다.
지원에 대한 책임/의무도 없고, 버그 해결, 기능 추가에 대한 의무도 없습니다.
착각하지 마십시오. 경고입니다.

hodong
Posts: 200
Joined: 2014/12/23 Tue 3:29 am
Contact:

Re: 다솜과 ibus 다른 점?

Post by hodong » 2015/10/23 Fri 9:22 pm

k9200544 님 저는 괜찮습니다.
지금은 그냥 악성댓글이라 생각하고 가볍게 웃어넘길 수 있습니다. ㅎㅎ
그리고 옛날처럼 프로젝트 삭제하는 행위를 하지 않을 거고요..
외국의 어떤 유명 프로젝트를 보면 어떤 이슈는 몇년만에 해결되기도 합니다.
다솜 개발하다가 힘들면 일주일 ~ 한두달 쉬었다가 할 수도 있는거잖아요.
마음도 가볍고 즐겁습니다.
어제 아이유 앨범 나왔습니다.
즐거운 주말 보내세요^^

janghe11
Posts: 173
Joined: 2010/06/02 Wed 11:49 am

Re: 다솜과 ibus 다른 점?

Post by janghe11 » 2015/10/24 Sat 12:21 am

[b:bmgsstd0]안녕하세요 세벌님.[/b:bmgsstd0]
먼저 지속적인 악의성으로 추정되는 게시물 게재에 대해 굉장히 유감입니다.
포럼 이용 중, 혹은 커뮤니티 이용 중 불편사항이 있으시면 포럼 건의게시판, 자유게시판, 쪽지 등으로 문의를 주셔도 되고, 제 페이스북도 알고 계실 터이니 메시지를 주셔도 됩니다.

계속해서 다른 분들과의 분란을 조장한다면, 저도 올바른 방향으로 이용을 유도하거나 경고하는것이 아닌 그 이상의 조치(회원 강제탈퇴 및 사유 공개)를 취할 수 밖에 없습니다.
제가 사건이 발생할때마다 아카이빙을 하는건 이미 알고 계실테고, 저희 뿐만 아니라 이미 타 커뮤니티에서도 전적이 화려하신것 같더군요?
덕분에 어떻게 대응을 해야 할까 고민하면서 1시간 정도 걷다가 왔습니다.

우분투 커뮤니티는 사용자 뿐만 아니라 오픈소스와 번역을 하시는 소중한 분들의 기여와 참여로 유지가 되는 커뮤니티 입니다.
다음 부터는 힘들게 개인 시간을 쪼개가며 개발 하시고 공개 하시는 분들께 칭찬과 격려의 글을 남겨 주시는게 어떨까 합니다.
이용 중 불편사항이 있으시면 admin@ubuntu-kr.org나 포럼마스터 dry8r3ad@ubuntu-kr.org 에게 문의하여 주시기 바라겠습니다.

[b:bmgsstd0]안녕하세요 hodong님, k9200544님.[/b:bmgsstd0]
먼저 신속한 대응을 하지 못해 불미스러운점을 겪으신 점에 대해 부끄럽고 죄송하게 생각합니다.
개개인의 자유를 최대한 보장한답시고 포럼을 잠시 방치한게 아닌가 합니다.

항상 개인시간을 투자하며 좋은 소스와 패키지를 개발하시는 hodong님께 진심으로 감사의 말씀을 드립니다.
저도 이전과 같은 불미스러운 일이 일어나지 않도록 최선을 다하겠습니다.
능력과 기화가 된다면 저도 contribute를 하고 싶은데, 생각만큼 잘 되진 않는군요. 서로간의 기여가 더 많아져야 hodong님도 부담을 덜고, 다솜 입력기도 더 좋은 프로그램이 될 텐데요.
그리고 항상 좋은 말씀과 조언 해주시는 k9200544님께도 감사의 말씀을 드립니다.

그럼 즐거운 주말 되시고, 남은 10월 잘 마무리 하시기 바라겠습니다. 감사합니다.

Post Reply