날개셋 한글 입력기 개발 소식

독자 여러분 중에 혹시
“이 블로그 주인장은 요즘 온통 철도에 미쳐서, 본업이던 <날개셋> 개발 같은 건 이제 때려치웠나 보군.”이라고 오해할 분이 있으실 것 같아서
오늘은 오랜만에 내 본업의 근황을 좀 알리도록 하겠다. ㄲㄲㄲㄲㄲㄲㄲㄲ

걱정 마시라. <날개셋> 한글 입력기는 현재 6.0의 개발이 활발하게 진행 중이다.
5.x 버전도 졸업이 임박했고 드디어 6.0 시대 개막이다.
킹 제임스 성경 발간 400주년과, 내 홈페이지 개통 10주년을 기념하여 5월 초순에 출시 예정이다.

10년 전이나 지금이나.. 이번 새 버전에도 어김없이 버그 고치고 새로운 기능 단장한 게 많다. 물론 대부분의 버그는 세벌식 최종+모아치기+드보락 정도의 용도로나 프로그램을 사용하는 분들은 발견할 일이 없는 것들이기 때문에, 문서화하지도 않은 것도 여럿 있다.
하지만 이제는 더 고칠 게 없겠지 싶어도, 새 버전 릴리즈 후 한두 주 정도가 지나면 프로그램 소스 코드를 어김없이 건드리게 되더라.

이번 6.0에서는 외부 모듈에 지금까지 알려져 있던 버그들은 모두 해결했다. gvim (한영 상태), MS Outlook (영문 덧입력), 로그인 UI (아이콘 외형)처럼 비록 프로그램의 안정성 관련은 아니지만 자잘한 문제가 있던 게 해결되었고, 해당 버그 제보자에게는 버그가 고쳐졌다고 메일로 다 따로 통보를 오래 전에 했다.

이런 bugfix만 있다면 새 버전의 번호를 6.0으로 올리기에 부족한 감이 있을 것이지만, 새 버전에는 한글 입력과 관련된 깔끔한 새 기능이 들어간다.
첫째, 일정 시간 동안 키 조작이 없으면 음절 구분을 위해 지금 조합을 자동으로 끊고 음절을 구분하는 기능이 추가된다. 천지인 같은 휴대전화 입력 방식을 구현할 때 필요하다.

둘째, <날개셋> 한글 입력기의 역사상 최초로, 초성과 종성이 한 낱자 결합 테이블을 공유하는 기능이 추가된다. ㄱ->ㅋ->ㄲ 같은 조합 로직은 하나만 구현해 놓으면 초성과 종성이 자동으로 공유하고, 종성에다가는 ㅄ, ㄶ처럼 도깨비불 처리가 필요한 겹받침 결합 규칙만 정하면 된다. 이걸 이용하면 ㄴㅅ, ㄴㅇ, ㄴㅊ 등 온갖 복잡한 경우의 수를 따져야 하는 휴대전화 입력 방식을 디자인하기가 지금보다 훨씬 더 쉬워진다.

물론 이 기능이 추가됨으로써 GUI상의 변화와 입력 설정 데이터 파일의 변경은 말할 것도 없고, 이미 지금 있는 가상 낱자와 특수 도깨비불 테이블과의 연계라든가.. 타수 복원 알고리즘의 추가 구현 같은 작업량이 아주 많다. 그러나 이것은 굉장히 중요한 변화이다.

6.0 이후로는 <날개셋> 한글 입력기는 자잘한 버그 수정이나 자그마한 편의 기능 추가,
아니면 여러 입력 패드 추가, 지금보다 더 복잡하고 다양한 글쇠 입력을 받아들이는 입력 스키마의 추가 등으로 최소한 6.x 중반까지는 버전업이 계속될 것이다.

그 중, 한 글자가 아닌 단어 단위의 한자 변환 기능은 6.0은 아니지만 6.0 완성 이후에 상당히 높은 작업 우선순위를 두고 있다.
MS IME는 무려 2003년도 버전부터(MS 오피스 2003) 지원했고 윈도우 비스타부터는 아예 기본으로 들어간 기능인데 내 프로그램은 다소 늦은 감이 있다. 물론 한글 입력 쪽보다야 중요도가 훨씬 더 낮기 때문에 지금까지 구현이 미뤄져 온 것이다.

내가 10년이 넘게 한글 입력기만 파고들 수 있었던 원동력은.. 간단히 말하면 한글이 너무 대단하고 세벌식 글자판이 너무 신기해서였다.
프로그래밍 하듯이 각종 테이블과 오토마타 로직을 바꿔서 한글 입력기의 동작 방식을 바꾸고, 내가 원하는 방식으로 마음대로 한글을 입력하고, 내가 원하는 한글 성분을 바로 고치고, 이미 입력된 문자열도 조작하는 걸 보니까 뭔가 밥 안 먹어도 배가 부른 것 같고, 정신적으로 만족과 자아 성취감을 느낀다. 이런 걸 '제대로' 구현하려면 누가 뭐래도 세벌식 글자판이 없으면 안 된다. 세벌식으로는 더 편리한 걸 만들 수 있지만 두벌식으로는 잘 해야 기본밖에 못 만든다.

보너스로...
모 지인이, 북한의 붉은별 OS가 쓰는 한글 글꼴의 비트맵을 완성형으로 추출하여 파일을 보내 줬다.
매우 흥미롭다. 남한과 북한의 운영체제에서 쓰이는 완성형 한글 비트맵 글꼴이 한데 집합했다.

사용자 삽입 이미지

광명은 순명조 컨셉이고, 붓글은 우리나라에도 비슷한 모양의 서체가 간판 같은 데서 쓰인다.
천리마는 뭔가 투박한 느낌이 나는 가는돋움 스타일.
그리고 청봉은 신명조 윤곽선 글꼴을 힌팅을 아주 잘 해 줬을 때 나올 법한 미려한 본문용 서체이다.

북한은 그렇게도 민족, 주체 사상을 좋아하면서 한글 글자판이나 코드는 다 남한과 비슷한 스타일로 표준을 정했다.
북한도 평범한 두벌식을 쓰고(왼손이 자음인 것도 동일함), 2350자보다는 약간 더 많지만 그래도 역시 2천여 자의 완성형을 쓰는 것까지도 똑같다. 세벌식이나 조합형 같은 건 주체 사상하고 별 관련이 없나? 그냥 김일성, 김정일만 따로 특수문자로 배당해 놓으면 장땡인 건가? ㄲㄲㄲㄲㄲㄲㄲ
아울러, 북한이 안상수체나 공한체 같은 탈네모꼴 글꼴을 만들었다는 얘기도 본인은 못 들었으니 글꼴 쪽도 별 변화가 없는 셈이라 하겠다.


Posted by 사무엘

2011/03/07 08:33 2011/03/07 08:33
, ,
Response
No Trackback , 23 Comments
RSS :
http://moogi.new21.org/tc/rss/response/476

Trackback URL : http://moogi.new21.org/tc/trackback/476

Comments List

  1. 바슈 2011/03/07 09:24 # M/D Reply Permalink

    기대하겠습니다.

  2. 김기윤 2011/03/07 11:12 # M/D Reply Permalink

    단어 단위의 한자 변환 기능이 드디어 들어가는군요..!

    ....그런데 북한 서체는 좀 후덜덜한데요?;;

  3. 사무엘 2011/03/07 22:12 # M/D Reply Permalink

    바슈: 감사합니다. ^^

    김기윤: 북한은 방송 말투도 그렇고 서체도 ㅎㄷㄷ하죠. 그래도 나름 완성도는 있어 보입니다.

  4. ?????? 2011/03/07 22:24 # M/D Reply Permalink

    아、글자를 첫가끝으로 쓸 때도 ”’Bksp 동작 방식’→’현재 글자가 다 지워지면 앞 글자로 달라붙음’” 작동하게 해 주세요~

    1. 사무엘 2011/03/08 09:12 # M/D Permalink

      외부 모듈을 말씀하시는군요. 무슨 말씀인지는 알겠습니다.
      하지만, 현 운영체제 내지 응용 프로그램들이 1글자를 넘는 길이의 한글 조합을 표현하고 처리하는 게 영 시원찮아서, 그건 기술적인 한계로 인해 별 의미가 없어서 구현을 안(또는 못) 하고 있습니다. ^^

    2. ?????? 2011/03/12 23:55 # M/D Permalink

      음, 제가 보기에 1글자를 넘는 길이의 한글 조합을 표현하고 처리하는 데에 큰 문제는 없어 보이던데요...ㅇㅅㅇ;

      커서 바로 앞이 첫가끝 코드로 되어 있을 때 끝소리-가운뎃소리-첫소리 순으로 역추적해서 앞 글자로 달라붙을 수 있게 할 수 있을 것 같아요.

    3. 사무엘 2011/03/13 21:39 # M/D Permalink

      아니요, 그런 차원에서의 문제를 가리키는 게 아니라, 기술적으로 조금 더 골치 아픈 문제가 있습니다.
      같은 엔진을 쓰는 <날개셋> 편집기 내부에서야 문제가 없는데, 한글 조합은 오로지 한 글자뿐이라고 전제하고 설계된 여타 프로그램들에서 나타나는 현상입니다.

    4. ?????? 2011/03/16 19:26 # M/D Permalink

      그 여타 프로그램들에서 안 되더라도 그 여타 프로그램들이 아닌 프로그램에서만이라도 작동하게 할 수 없을까요 ㅠ.ㅠ...

    5. 사무엘 2011/03/16 21:16 # M/D Permalink

      bksp 달라붙기 기능을 쓸 수 있는 프로그램 자체가 극소수의 TSF A급 프로그램뿐이죠.
      그런데 그 '여타 프로그램' 중에 전세계 사람들이 업무용으로 즐겨 쓰는 유명한 프로그램들을 빼면 남는 게 없습니다. :(

    6. ?????? 2011/03/16 22:53 # M/D Permalink

      그 '즐겨 쓰는 프로그램'에서 잘 되는 게 중요하다고 생각해요... ㅠ.ㅠ

  5. 최호윤 2011/03/08 09:13 # M/D Reply Permalink

    하하, 네 말대로 날개셋 얘기는 없고 철도 얘기만 잔뜩 있어서 그런 생각이 들곤 했어. ^^;

    1. 사무엘 2011/03/08 09:41 # M/D Permalink

      ㅋㅋㅋㅋㅋㅋㅋ 염려 놓으셈~

  6. 김재주 2011/03/08 10:17 # M/D Reply Permalink

    음. 저는 스타2를 많이 하기 때문에 날개셋을 쓰지 못하고 있네요. 지금도 안 되는지는 잘 모르겠습니다만 아마 그쪽에는 별 변화가 없을 것 같습니다.

    블리자드 코리아는 전부터 세벌식 사용자를 배려하기 위해 WOW의 기존 지정 단축키까지 수정한 전례가 있는데
    고객지원 쪽으로 한번 찔러보면 긍정적인 답이 나올 수도 있지 않나 싶기도 한데 말이죠.

  7. 김재주 2011/03/08 10:21 # M/D Reply Permalink

    아, 갑자기 떠오른 생각인데 단어 단위 한자 치환 기능을 지원하실 거라면 일본어 IME처럼 특수문자 입력을 우리말로 할 수 있게 하면 어떨까요? '별' 하고 한자키를 누르면 ☆과 ★이 나오고 별이라는 음을 갖는 한자들이 나오고, '화살' 하고 누르면 →↗← 같은 화살표들이 나오고 '네모' 하면 □이 나오고..

    하나하나 정리하는 것도 큰일이겠습니다만 이거야 여러 사람이 힘을 합치면 충분히 가능한 일이지 싶네요. 일단 구현이 되면 편리하지 않을까요?

    1. 사무엘 2011/03/08 12:32 # M/D Permalink

      1. 스타2의 버그가 나중에 고쳐졌다는 얘기도 들은 것 같은데 저는 잘 모르겠습니다.
      제가 확인한 바로는, 스타2가 키보드 보안 같은 이유로 인해 여타 입력기의 정상적인 동작을 고의로 막는 수준입니다. 그래서 제가 더 어찌할 도리가 없습니다.

      2. 한국어 IME에는 전설의 초성+한자 신공이 있기 때문에 굳이 그런 기능이 필요한지는 모르겠지만..
      마음만 먹으면 굳이 한글-한자가 아니어도 임의의 다대다 문자열 변환 mapping이 가능할 정도로 범용적으로 해당 기능을 구현할 예정입니다. ^^;;
      이번 6.0은 여전히 일대일 변환 mapping만 지원하지만, surrogate를 사용할 수 있게 기능이 약간 확장됩니다.

    2. 김기윤 2011/03/08 13:33 # M/D Permalink

      스타크래프트2 버전 1.2.2 와, 날개셋 버전 5.8 기준으로 한글 입력 전혀 문제 없습니다. 아니, 클베때에 발생했던 문제였는데, 그게 오베때(1.0.0, 2010년 7월 27일)에 블리자드측에서 완전히 해결 한 문제로 알고 있는데요, 저는?;;; 그동안 계속 날개셋 상태로 스타2를 계속해서 해왔으니까요. 오베 이후 전혀 문제 없었습니다.

    3. ?????? 2011/03/20 15:34 # M/D Permalink

      그렇게 생각할 수도 있겠지만, 입력하고 싶은 문자가 어디에 있는 것이었는지 항상 이리저리 찾게 되어 버려서, 일본어 입력기같이 저런 기능이 있다면 더욱 쉽게 찾을 수 있을 거예요!

  8. 박상대 2011/03/08 22:12 # M/D Reply Permalink

    저는 윈도우7 + 스타크래프트2 + 날개셋 버전 5.53 (업뎃 귀차니즘...) 인데,
    한글 입력시에는 별 문제가 없지만,
    전체 화면으로 할 때 한자 후보창이 안 보입니다.
    그래서 무슨 한자가 몇 쪽 몇 번인지 외워서 씁니다.
    날개셋이 구버전이라서 그런거겠죠?

    1. 김기윤 2011/03/08 22:43 # M/D Permalink

      일단, 저는 Windows 7 x64 Ultimate K + 스타2 + 날개셋 버전 5.8 기준입니다.

      일단, "스타2 버그" 라고 하시길래 클베때 있었던 한글 입력이 안되는 사건...인줄 알았는데, 그게 아니고 한자 후보창이 안보이는 문제셨군요. 그래가지고 실험을 하던 중에 http://twitpic.com/47g9eu 이런 것을 발견하였습니다.(저는 이 한자 후보창 처음 봤습니다-_-;;) 일단 한자 후보창 자체 제작한 블리자드에게 경의=_=를 표합니다.. 일단 다음에 시간을 내서 이쪽은 자세히 증상을 확인해 봐야 겠습니다. 현재 이 스샷은 날개셋으로 찍은 것이며, 한자 후보창이 뜰 때가 있고 안 뜰 때가 있더군요. MS IME 상태에서는 항상 뜨는지, 날개셋으로 할때는 후보창이 뜨는 조건이 뭔지 조사해서 알려드리겠습니다.

    2. 사무엘 2011/03/10 09:48 # M/D Permalink

      한자 후보창 쪽은 5.53 이후로 바뀐 게 없기 때문에 구버전 문제는 아닌 것 같습니다. ^^

    3. ???????????? 2011/03/11 16:33 # M/D Permalink

      김기윤님//요즘 나온 전체 화면 프로그램에서는 TSF 라이브러리를 써서 자체 UI로 만들더군요~

    4. 김기윤 2011/03/16 11:40 # M/D Permalink

      간단하게 실험해 보았는데, 기본값을 날개셋으로 한 상태에서 실행할 경우 창모드(전체화면) 기준으로 스타크래프트의 한자 후보창 UI가 아니라, 날개셋 고유의 한자 후보창 UI 가 뜨더군요. 그런데 이게 아니고, 실행한 뒤 날개셋으로 바꾸면 이번에는 스타 고유의 후보창 UI 가 뜹니다. MS IME의 경우, 전후관계 상관없이 항상 스타 고유의 후보창 UI 가 뜨는 것 같습니다.
      전체화면시에는 안보인다 하셨는데, 이 경우에는 날개셋 고유의 한자 후보창 UI가 스타크래프트2 화면에 가려서 안보이는 것으로 추정됩니다.

      (그런데 스타 고유의 UI 뜨는것도 약간 문제가 있는 듯 합니다.. 바로 뜨는 경우도 있고, 방향키 등으로 UI를 갱신시켜야 뜨는 등)

    5. 사무엘 2011/03/16 21:16 # M/D Permalink

      흠, 그런 현상이 있군요. 제가 6.0을 만들면서 거기까지 신경을 쓰지는 못하겠지만, 나중에라도 관련 분야로 외부 모듈을 테스트할 기회가 있을 때 이런 점을 염두에는 두고 있겠습니다.

Leave a comment
« Previous : 1 : ... 1408 : 1409 : 1410 : 1411 : 1412 : 1413 : 1414 : 1415 : 1416 : ... 1825 : Next »

블로그 이미지

철도를 명절 때에나 떠오르는 4대 교통수단 중 하나로만 아는 것은, 예수님을 사대성인· 성인군자 중 하나로만 아는 것과 같다.

- 사무엘

Archives

Authors

  1. 사무엘

Calendar

«   2021/12   »
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  

Site Stats

Total hits:
1698174
Today:
331
Yesterday:
479