다솜 입력기 구조 (초안)

Sun, 31 May 2015 20:37

Architecture for Dasom Input Method Framework (draft)

      +- a process ---+    +----- a process -------+  +- a process --+
      | gtk im module |    | gnome-shell-extension |  |   X server   |
      +---------------+    +-----------------------+  +--------------+
              |                        |                     ^ |
              | calls                  | calls               | |
              |                        |                     | |
    +------------------+    +---------------------+          | |
    | dasom IM library |    | dasom agent library |          | | communicates
    +------------------+    +---------------------+          | |
             ^ |                      ^ |                    | |
             | |   communicates       | |                    | |
             | |   via Unix Socket    | |                    | |
             | v                      | v                    | v
          +---------------------- a process ----------------------+
          |                     dasom-daemon (including XIM)      |
          +-------------------------------------------------------+
                          |                        |
                          | calls                  | calls
                          |                        |
                +---------------+            +------------------+
                | engine module |            | candidate module |
                |   interface   |            |    interface     |
                +---------------+            +------------------+
                  |                            |
                  +- dasom-english             +- dasom-candidate-gtk3
                  +- dasom-jeongeum

hodong 2015-05-31 23:37

다솜 입력기로 입력을 하고 있습니다.
gnome-shell-extension용 상태창도 오늘 대충 만들었습니다.
잘 작동합니다. 다만, UI는 좀더 신경을 써야할 듯.
이제 자질구레한 일들만 남아 있습니다.
제가 만든 입력기로 입력을 하다니… 흐흐흐 감동이 물씬 흐릅니다.

앞으로 할 일은…
dasom agent interface 구현,
dasom candidate interface 설계,
UI 다듬기,
XIM 서버 마저 구현하기.
입니다.

대박입니다.
정말 잘 작동합니다. ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ