다음 버전 개발 근황

지난해 말에 <날개셋> 한글 입력기 6.71이 나온 지도 벌써 두 주가 넘게 지났다.
한 열흘 동안은 프로그램 소스를 고칠 일이 없이 나도 새 버전을 잘 썼다. 한글 입력과 관련하여 내가 속으로 구상하고 있는 최소한의 기술적 기반을 아주 탄탄히 갖춰 놓은 이 프로그램에 만족하면서 지냈다.

그러나 세월이 흐르면서 역시 프로그램에는 약점, 버그 내지 개선할 점이 발견된다.
그리고 지금 추세대로라면 다음 달쯤에 6.72 정도의 마이너 업그레이드 버전이 또 나와야 할 것 같다.
이 글에서는 2013년 1월 현재의 <날개셋> 한글 입력기의 개발 소식을 좀 전하도록 하겠다.

1. 사용자 정의 조합 제어판 UI에 프로그램이 뻗는 버그가 있음

먼저, 좀 어이없고 치명적인 버그가 발견되었다.
6.71은 제어판에서 '<날개셋> 고급 입력기'의 관할에 있는 '사용자 정의 조합'의 데이터를 조합 로직이든 후보 데이터든 고칠 수가 없다. 그걸 고치고 나면 데이터가 쓰레기값으로 바뀌고 프로그램이 죽는다.

본인은 한번 만들었던 코드를 그냥 내버려 두는 게 아니라 끊임없이 최신 코딩 스타일로 리팩터링을 하는 편인데, 그 과정에서, 해제해서는 안 되는 메모리를 부적절한 타이밍에 먼저 해제해 버리는 실수가 들어갔다.
이런 버그가 생긴 것을 유감-_-스럽게 생각한다.

2. 외부 모듈, 한글 첫 타가 덧나거나 끊기는 문제

<날개셋> 한글 입력기 외부 모듈은 특정 응용 프로그램에서 한글 조합 첫 타가 덧나거나 조합이 끊어지는 등, 제대로 인식되지 않는 문제가 종종 있었다. MS 오피스의 엑셀이나 파워포인트 등, 평상시에는 텍스트 편집 모드가 아닌데 한글 입력과 동시에 cursor가 나타나고 텍스트 편집 모드로 진입하는 프로그램의 경우 이런 오동작이 있는 편이었다.

그리고 최근에는 유명 공개 소프트웨어인 Paint .NET의 텍스트 입력 도구에서도 첫 타가 제대로 처리되지 않는다는 버그 신고가 있어서 이를 확인했다.
분석을 해 보니, 문제를 해결하는 방법은 간단하다. 이미 알려져 있는 방법론을 적용하면 된다. 그런데 문제는, 그 방법론은 다른 프로그램에서는 또 다른 오동작을 일으킨다는 것이다.

모든 프로그램에서 정확하게 잘 동작하는 해결책은 본인은 MS 한글 IME의 소스를 보지 않은 이상, 난 알지 못한다. 이게 사실은 IME의 개발과 관련해서 굉장히 골치 아픈 문제이기도 하다. 결국 현재 IME를 사용 중인 응용 프로그램의 이름에 따라 일부러 서로 다르게 동작하는 지저분한 꼼수를 동원할 수밖에 없었다.

그래서 Paint .NET에서 발생하는 그 문제를 어쨌든 해결은 했다. 그러고 보니 네이티브 코드 프로그램이 아닌 닷넷 기반 프로그램을 디버깅한 건 이번이 처음인 것 같다. .NET 프로그램은 EXE의 PE 헤더로는 x86용 32비트 프로그램이라고 명시되어 있어도, 64비트 운영체제에서는 결국 64비트 IME가 동작한다는 걸 알 수 있었다. 신기한 환경이다.

하지만 근본적인 문제를 해결한 게 아니라 응용 프로그램별로 인위적으로 문제를 피해 가게 한 것일 뿐이기 때문에, 앞으로 또 특이한 프로그램에서는 한글 첫 타와 관련된 문제가 여전히 있을 수 있다.
내가 나름 <날개셋> 편집기라는 에디터까지 다 만들어 봤지만, IME가 아닌 응용 프로그램의 관점에서 어떻게 해야 “첫 타를 그렇게 특이하게 처리하는 프로그램”을 만들 수 있는지를 모른다. 그래서 IME도 그렇게 불완전하게 만들 수밖에 없음을 밝힌다.

3. 윈8 지원은?

그리고 많은 사용자들이 기다리고 있을 Windows 8 환경의 지원에 대해서도 얘기를 하겠다.
결론부터 말하자면 잘 되고 있다.

사용자 삽입 이미지

윈8의 문자 입력 시스템은 이전 버전과 비교했을 때 크게 두 가지가 바뀌었다.
첫째, 스레드 단위로 모든 프로그램이 제각각 서로 다른 입력 언어와 한영 상태를 갖던 전통 관행을 깨고 모든 시스템이 동일한 입력 언어와 입력 상태를 공유하는 옵션이 추가되었다.
둘째, 입력 언어당 한/영 상태 같은 오로지 한 개의 버튼만을 갖는 극단적인 간소화 모드가 추가되었다.
이 두 옵션은 모두 기본적으로 “켜져 있다”.

거기에다 갑자기 무슨 바람이 들었는지 IME의 아이콘들의 배색을 전부 black & white 배색으로 바꿔 버린 건 부가적인 사항이고.

일단 개인적인 평을 말하자면 '둘째'의 경우 왜 지금과 같은 체계로 바꿨는지가 불만이며 좀 이해가 안 간다.
기존의 TSF language bar에도 개념적으로 간소화 모드는 있었다. IME는 도구모음줄에다 버튼들을 등록할 때, 간소화 모드에서도 표시되어야 하는 정말 중요한 아이콘에 대해서는 별도의 옵션 플래그를 주게 할 수 있었다.

그래서 도구모음줄을 우클릭한 뒤 '작업 표시줄에 아이콘 추가' 옵션을 끄면 중요한 아이콘만 표시되는 간소화 모드가 된다. 사실 이건 사용자를 오도하기에 충분할 정도로 말을 굉장히 이상하게 번역해 놓은 것이다.

뭐 아무튼.. 이것만 활용하면 아무 문제가 없을 텐데,
윈8은 또 자체적인 간소화 모드를 구현하기 위해서 IME가 별도의 카테고리 등록을 하고 아이콘을 추가로 등록해야만 하는 등, 굉장히 비생산적이고 번거로운 절차를 추가했다.

그래도 어쩔 수 있나.. 까라면 까야지. 어쨌든 윈8만의 간소화 모드를 지원하게 해서 데스크톱 모드에서 도구모음줄이 나오게 했고, 그리고...

사용자 삽입 이미지

메트로 앱에서 Win+Space로 입력기를 전환하여 <날개셋> 한글 입력기를 구동한 모습 인증샷이다. 올레!
나는 평가판을 쓰고 있어서 그런지, 디지털 서명을 안 해도 동작을 하긴 한다.
윈8 지원이 잘 되면.. 6.72가 아니라 8자에 맞춰서 다음 버전을 그냥 6.8로 올려 버릴 수도 있다.

사실, '메트로'라는 단어는 윈8이 나오기 전에 잠깐 쓰이다가 폐기된 용어이고 현재 MS에서 공식적으로는 Modern UI라고 부른다. 하지만 난 '모던 UI'보다 '메트로'가 훨씬 더 직관적으로 잘 와 닿는데 어떡하지? 마치 notification area vs '시스템 트레이'처럼 윈도우 운영체제에는 공식 명칭과 비공식 명칭이 따로 노는 요소가 몇 가지 더 있다.

전체 화면에서 돌아가고 단축키를 외워야 하는 등, 메트로 앱은 어찌 보면 옛날 도스용 프로그램으로 회귀한 듯한 느낌이다. 단지 도스 시절보다 하드웨어의 성능이 훨씬 더 좋고 앱 프로그래머가 직접 하드웨어를 저수준에서 제어해야 할 필요가 없을 뿐이다.

4. 기타

사소한 사항이지만, 도움말과 UI의 용어를 추가로 좀 교정한 게 있다.
그리고 도구모음줄이 세로로 길쭉한 작업 표시줄에 embed되어 있어서 버튼 아이콘들이 여러 줄에 걸쳐서 나열될 때, 아이콘들이 언제나 순서대로 위에서 아래로 순서대로 잘 표시되게 로직을 개선했다. 이것도 원래는 스펙대로만 만들면 운영체제가 보장을 잘 해 줘야 하는 건데 좀 사소한 잡음이 있었다.

지난 6.7 이래로 6.71의 다음 버전도 실질적인 '새로운 기능의 추가'는 없이 버그 수정, 최신 운영체제 지원, 데이터와 도움말의 개선 같은 변화만 있을 듯하다.

Posted by 사무엘

2013/01/07 19:32 2013/01/07 19:32
Response
No Trackback , 4 Comments
RSS :
http://moogi.new21.org/tc/rss/response/780

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

Comments List

  1. 100 2013/01/08 20:20 # M/D Reply Permalink

    지금 미국에서는 이미 태블릿 pc가 늘어나고 있고, 데스크톱은 줄어들고 있는데, 윈도우
    7이나 윈도우 8의 화상 키보드에서 (세벌식으로 입력은 되는데) 두벌식밖에 표시가 안되고
    맨윗자리 배열도 뒤틀려 있어서
    태블릿 PC 같은 곳에서 세벌식 사용이 불편해질 것 같습니다.
    윈도우 8의 터치 키보드의 설정을 바꾸는 방법도 없고 (태블릿 PC에서는 세벌식 최종이나 390같은 4단을 사용하는 배열을 못쓰는건가?)
    인터넷 같은곳을 보면 세벌식이 뭔지도 모르고 안좋다고 글을 쓰는 사람도 있고
    채팅중에 세벌식 얘기를 꺼내면 “두벌식이 더 좋은데.”하는 사람도 있더라고요.
    전에 마인크래프트라는 게임을 즐겨 한 적이 있는데(두벌식자판 쓸때)
    그게임은 한글채팅 지원이 안되어서 따로 한글패치를 해야 돼는데
    한글패치라는게 죄다 두벌식,쿼티자판이어서 채팅할때마다 메모장을 이용해서 복사해서 썼습니다.

    또 아이폰에선 세벌식 지원을 안하고
    제가 아는 사람들도 세벌식을 쓸 필요성을 느끼지 못하고 있는것 같습니다.
    한글날 특선 다큐멘터리에도
    두벌식 자판만이 나옵니다.
    세벌식의 미래는 어떻게 될까요... 아예 없어지는건 아닌가 걱정이 됩니다.
    안마태자판도 한국에서는 별 성과가 없는 것 같고요.(예전에 산업자원부가 비판을 했다네요. 산업자원부는 안마태 세벌식 을 복수 표준으로 하는것도 거절했고, 공병우 세벌식도 마찬가지. 기술표준원은 왜이러는지 모르겠습니다.)

    또 궁금한것이 있는데 한글문화원 누리집에 글이 2010년 이후로 안올라오는 것 같은데 왜 그런지 아시나요? 가입도 안돼고요.

    1. 사무엘 2013/01/09 10:34 # M/D Permalink

      안녕하세요? 세벌식에 관심이 많으신 분 같네요. 반갑습니다.

      1. 일단 모바일과 태블릿은 근본적으로 PC 키보드처럼 글을 빠르고 많이 칠 수 있는 환경이 아니고 세벌식의 장점이 크게 부각되는 곳도 아닌 건 사실입니다.
      세벌식은 표준도 아니고 인지도도 안습한 수준이니 터치 키보드 같은 데서의 지원도 열악할 수밖에 없습니다. 더구나 외국 프로그램들은 한글 단축키 같은 것도 당연히 두벌식을 기준으로 만들어지겠죠. 당연히..

      2. 많은 분들이 그래서 세벌식의 미래에 대해 무척 비관적으로 보는데.. 저는 크게 긍정적이지도 않지만 그 정도로 비관적이지도 않습니다.
      극소수의 매니아 글자판으로 남을지언정, 한국인이 최소한의 멘탈이 있다면 도깨비불이 없고 이 정도로 큰 차이가 있는 한글 기계화의 한 축이 그렇게 호락호락 쉽게 없어지겠어요..? 분명 그렇지도 않을 거예요.

      3. 안 마태 글자판은 범용/일반적인 타자 동작을 가정하고 만들어진 입력 방식이 아니기 때문에 두벌식 내지 공 병우 세벌식과 동일선상에서 경쟁 가능한 글자판은 아니라 여겨집니다.

      4. 한글 문화원은 공 병우 박사 시절과는 달리, 상주하는 직원이 있는 것도 아니고 사이트의 관리에 어려움이 있어서 운영이 중단되어 있습니다. 관계자들도 각자 다 자기 생업과 자기 SNS/홈페이지로 흩어져 있고.. 좀 안타까운 점이지요.

  2. kyh 2013/01/26 14:35 # M/D Reply Permalink

    날개셋 타자연습을 사용하다가 속담의 표현 중에 틀린 부분이 있어서 글을 남깁니다.
    예를 들면, “돈만 있으면 개도 멍첨지다” 인데 멍첨지가 엉첨지로 되어 있습니다.
    멍첨지는 표준국어대사전, 민중국어사전 모두 멍첨지만으로 나타내고 있습니다.
    또한 “사돈(집)(의) 잔치에 중이 참여한다”도 “사돈이 잔치에 중이 참여한다”로 되어 있습니다.
    사소한 부분이지만 바로잡았으면 좋겠습니다.

    1. 사무엘 2013/01/26 16:13 # M/D Permalink

      오, 그렇군요. 좋은 지적에 감사드립니다. 고쳤습니다.

Leave a comment
« Previous : 1 : ... 1527 : 1528 : 1529 : 1530 : 1531 : 1532 : 1533 : 1534 : 1535 : ... 2204 : Next »

블로그 이미지

그런즉 이제 애호박, 단호박, 늙은호박 이 셋은 항상 있으나, 그 중에 제일은 늙은호박이니라.

- 사무엘

Archives

Authors

  1. 사무엘

Calendar

«   2024/11   »
          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

Site Stats

Total hits:
2983276
Today:
1013
Yesterday:
1381