마지막 버전의 공개 이후로 4개월이 넘는 시간 만에 드디어 <날개셋> 한글 입력기 7.0이 나왔다.
6.8 이후로 내부적으로 굉장히 많은 변화를 겪었으며, 지난 4월에 한번 중간 개발 근황을 올린 이후로도 또 바뀐 게 많다.
도대체 더 만들거나 개선해야 하는 기능이 아직 얼마나 남아 있을까? 이제 7.x가 이 프로그램의 거의 마지막 메이저 버전이 되지 않을까 하는 두려운 생각도 들지만, 시간이 흐르면 또 생각이 달라질지도 모른다.
1. 아이콘
아이콘은 비록 프로그램의 동작과 직접적인 관계가 있는 요소는 아니지만 그래도 사용자에게 프로그램의 첫인상을 결정하는 중요한 외모에 속한다. 이번 7.0 버전은 구현체를 구성하는 EXE 형태의 프로그램들의 아이콘이 환골탈태했다. 짠~
윗줄부터 좌에서 우로 1 2 3 / 4 5 6으로 번호를 매기자면,
편집기(분홍 2), 변환기(노랑 1), 입력 패드(청록 3)의 순이다.
새로운 아이콘은 요즈음 MS가 Windows 8 이래로 추구하고 있는 간결한 디자인 컨셉을 반영함과 동시에, 프로그램의 성격을 함축적으로 드러내고 이들이 동일 브랜드에 소속된 프로그램임을 나타낼 수 있는 형태로 그려졌다.
먼 옛날, 2004년의 3.0 버전부터 거의 9년 동안 사용되어 온 편집기의 빨간 수첩 아이콘(6)은 드디어 역사 속으로 사라질 것이다.
편집기는 1.x 시절부터 통용되어 온 익숙한 빨강 계열 색상을 반영하면서 종이에도 펜으로 뭔가를 쓰는 도구, 즉 텍스트 편집기임을 형상화했다.
변환기는 뭔가 변환을 하는 프로그램이 전통적으로 사용하는 상징인 동그란 화살표를 반영했다.
입력 패드는 '터치 입력'을 표현하기 위해 종전의 태블릿 그림 대신 그냥 손가락을 형상화했다.
3개 프로그램의 아이콘을 16*16, 32*32, 48*48까지 다 그리는 데 이틀이 꼬박 걸렸다. 모두 도트 노가다의 산물이다. -_-;;
그러고 보니 사각형 밑으로 알파 채널이 가미된 어두은 그림자도 넣었어야 했는데.. 일단 제낀다.
예전 글에서 잠시 소개한 적이 있는데,
<날개셋> 편집기가 1.x~2.x 시절에 최초로 사용한 16컬러짜리 빨간 수첩 아이콘은 비주얼 C++이 예제로 제공하던 아이콘을 그냥 그대로 차용한 것이었다. 국산 텍스트 에디터인 EditPlus도 거의 같은 컨셉의 아이콘을 좌우 대칭시키고 살짝 고쳐서 아직까지 사용하는 중이다.
<날개셋> 3.0부터 지금까지 사용한 아이콘은 그 아이콘을 트루컬러+알파채널 형태로 리메이크한 형태이다.
변환기나 입력 패드는 그런 것조차 없이 인터넷에 올라 있는 공개 아이콘 라이브러리를 검색하여, 적절해 보이는 아이콘을 임의로 차용해서 잠시 써 왔다.
그러다가 이제 7.0부터는 편집기, 변환기, 입력 패드가 모두 자체 제작한 동일 컨셉의 아이콘을 쓰게 되었으니 본인은 기쁘다.
물론, <날개셋> 한글 입력기 전체를 대표하는 파랑 계열의 브랜드 아이콘은 여전히 바꿀 계획이 없다.
그리고 외부 모듈은 그 브랜드 아이콘을 흑백 형태로 고친 것으로, 잘 알다시피 Windows 8의 IME 아이콘 디자인 가이드라인을 따른 형태이다.
이번 버전에서는 외부 모듈의 도구모음줄 아이콘에 전통적인 16*16뿐만이 아니라 20*20 크기도 추가되었다. 그래서 120dpi 해상도를 사용할 때도 도구모음줄이 깔끔하게 표시된다.
2. Windows 8 지원 강화
역시 예전 글에서도 언급했었다. 이 정도면 이제 <날개셋> 한글 입력기는 MS가 만들지 않은 싸제 한글 IME 중에서는 2013년 현재 Modern UI에 대한 대비까지 온전히 갖춰진 유일한 프로그램이라 할 수 있다.
일단, Modern UI에서 IME가 데스크톱 모드와 완전히 동일하게 동작하는 것은 기술적으로 원천적으로 불가능하다는 점을 분명히 하고자 한다. Modern UI 모드에서는 IME가 동작하는 데 제약이 너무 심하다. 내 문서, ProgramData 디렉터리마저 접근이 안 되는 건 너무했다. 사실, 이 모드에서는 MS 자기네가 만든 IME조차 제대로 동작하지 못한다.
Windows 8을 대비하느라, 실질적으로 새로운 기능이 추가된 게 없이도 <날개셋> 외부 모듈의 코드가 꽤 늘어나고, 실행 파일의 크기도 더 커지게 됐다.
데스크톱에서 쓰던 한글 입력 설정을 그 환경에서도 그대로 공유하려면, 데스크톱 프로그램에서도 최소한 하나 이상 <날개셋> 한글 입력기를 외부 모듈로 사용하는 프로그램을 띄워 놓고 Modern UI를 사용하시기 바란다.
자세한 것은 도움말 “VI. 외부 모듈 - 일러두기 - 알려진 문제 - Vista 이상...”에 있는 Windows 8 관련 항목을 참고할 것.
3. 후보(한자) 변환 기능의 세분화
거의 5.x 시절부터 계획되었던 것인데 드디어 7.0에 와서야 실현되었다.
<날개셋> 한글 입력기는 내부적으로 한자/후보 변환 글쇠가 4종류 존재하며, 그 중 1번만이 현행과 같은 한자/초성 특수문자 변환으로 용도가 예약되어 있다. 나머지 2~4에 대해서는 변환할 후보 리스트를 사용자가 지정할 수 있게 되었다. 한글을 일본어 문자로 바꾸거나 구결로 바꾸거나 여타 특수문자로 바꾸는 등, 거의 상용구 치환 수준의 활용이 가능하다.
이 custom 후보 변환 기능에 대해서 사용자가 알아야 할 점은 다음과 같다.
첫째, 과거의 "<날개셋> 고급 입력기"에 존재하던 사용자 후보 변환은 후보 데이터의 mapping에 사용되는 key가 오토마타 상태 번호인 반면, 이번에 추가된 후보 변환은 전적으로 cursor 앞의 문자열이 key라는 점이 다르다.
둘째, 원본 문자열과 대상 문자열은 한 글자여도 되고 여러 글자여도 된다. 그리고 조합 중이든 그렇지 않든 상관없다. 단, 조합이 끝난 여러 문자열을 한꺼번에 치환하려면 '단어 단위로 한자 변환' 옵션이 켜져 있어야 되며, 그런 동작을 기술적으로 지원하는 구현체에서만(가령 TSF A급) 기능을 활용할 수 있다.
셋째, custom 후보 변환 기능은 내장형이냐 외장형이냐, 그리고 입력기 계층 소속이냐 편집기 계층 소속이냐라는 두 속성을 모두 지원하는 형태로 설계되었다.
내장형은 모든 후보 변환 규칙이 입력 설정 내부에 저장되며 언제나 메모리에 상주한다. 즉, 후보 변환 과정에서 디스크 액세스가 발생하지 않는다. <날개셋> 고급 입력기의 사용자 후보 변환 기능도 기술적으로는 내장형인 셈이다.
그러나 외장형은 입력 설정에다가는 데이터 파일 이름만 지정해 놓고, 후보 변환 중에는 디스크를 액세스하여 해당 파일을 뒤진다.
외장형은 대용량의 후보 데이터를 다루는 데 적합하며, 특히 동일한 파일을 쓰도록 지정하면 여러 입력 항목들이 동일한 후보 데이터를 불필요한 메모리 낭비 없이 공유할 수 있다는 장점이 있다. (단, Windows 8 Modern UI에서는 파일 시스템에 접근이 되지 않아 외장형은 사실상 제대로 쓸 수 없다는 점도 유의 필요).
외장형 데이터 파일을 그나마 사용자가 내용을 쉽게 고칠 수 있는 텍스트 파일, 그리고 더욱 방대한 데이터를 빠르게 검색할 수 있는 바이너리 파일 형태가 모두 존재할 수 있는데 이번 버전에서는 바이너리 포맷은 보류하고, 일단 텍스트 파일까지만 구현했다.
이 후보 변환 규칙은 각 입력 항목이 가질 수도 있고, 편집기 계층이 가질 수도 있다.
입력 항목은 내장형과 외장형 이렇게 2개를 갖고 있으며, 이것은 각각 '후보 변환 2'와 '후보 변환 3'에 해당한다.
그러나 편집기 계층은 내장형 아니면 외장형 중 하나로 형태를 취사선택만 할 수 있으며, '후보 변환 4'가 바로 여기에 대응한다.
지금까지 통상적인 한글-한자나 초성-특수문자 변환은 '후보 변환 1'이었고 단축글쇠 규칙에서 '한자' 키를 보면 C0|0x82라는 값이 배당돼 있었는데,
후보 변환 2~4를 쓰려면 먼저 단축글쇠부터 0x83~0x85를 Shift+한자 같은 데에다 배당해 주면 된다.
또한, 후보 변환 2~3에는 특정 입력 방식에 종속적인(local) 규칙을 지정하면 되고, 후보 변환 4는 어떤 입력 방식을 쓰든 똑같이 공유되는(global) 규칙을 지정하면 된다.
외장형 후보 변환에 대해서 설정을 누르면 사용할 파일을 묻는 대화상자만 달랑 뜨는 반면, 내장형 후보 변환에 대해서 설정을 누르면 간단한 후보 변환 데이터 편집 대화상자가 뜬다.
여기서 먼저 원본 문자열부터 지정하거나 추가해 준 뒤, 그 원본 문자열을 치환할 후보 문자열들을 등록하면 된다.
이때 후보 문자열뿐만 아니라, 한자로 치면 훈과 음에 대응하는 설명문도 사용자가 다 지정할 수 있다.
이곳뿐만 아니라 기존의 <날개셋> 고급 입력기도 후보 문자열에 덧붙여 설명문을 지정하는 기능이 같이 추가되었다.
또한 후보 변환 데이터만을 한꺼번에 불러오거나 저장하는 기능이 있는데, 여기서 저장한 파일을 곧바로 '외장형' 후보 변환에다가 지정해서 사용이 가능하다! 이런 식으로 내장형과 외장형 변환 사이에도 데이터 공유를 하면 된다. 이런 면모까지 다 고려해서 기능이 설계된 것이다.
이 사용자 후보 변환 기능은 원본에 대응하는 변환 후보가 하나밖에 없는 경우, 별도의 선택 UI를 출력하지 않고 곧바로 그 문자로 바꿔 버린다. 가령, 기존 후보 변환 1은 엔(円), 김(金)처럼 대응하는 한자가 하나밖에 없더라도 관례적으로 선택 UI를 언제나 출력한다. 그러나 후보 변환 2~4는 진짜 상용구 변환처럼 쓸 수 있게 그 경우 사용자에게 아예 질문을 하지 않게 했다. 위의 그림에서 '수단'은 일본어 スダン로 곧바로 치환하는 후보 문자열이 들어있다.
4. 그 밖에..
Windows 8 지원 강화와 사용자 후보 변환 기능만으로도 0.2 만치 변화는 충분히 달성했으며 7.0의 명분이 서지만,
이것 말고도 이번 버전에서는 단축글쇠의 경우, 조합 중인 상태일 때만 동작하고 나머지 상황에서는 그냥 응용 프로그램으로 넘겨 주게 하는 '조합 중일 때만' 옵션이 추가되었다.
그리고 프로그램을 설치할 때 설치 프로그램 차원에서 “<날개셋> 한글 입력기를 운영체제의 기본 입력기로 자동 지정할까요?”라는 질문에 대한 답변을 받게 했다. 명색이 한글 IME인데 이런 옵션 정도는 넣어야 할 것 같아서.
하지만 이게 모든 OS에서 가능한 건 아니다. Windows 9x 계열에서는 아마 MSI의 버그 때문에 사용자의 선택 결과가 레지스트리에다 반영이 되지 않아서 기능이 지원되지 않는다.
그리고 반대로 완전 최신인 Windows 8은 전통적인 이런 방법으로 기본 입력 언어를 지정하는 게 동작하지 않는다.
그래서 현재로서는 이 명령이 유효한 운영체제는 Windows 2000부터 7까지로 국한되나... XP와 7이 포함되어 있다는 것만으로도 이런 preference 지정 기능이 있는 것이 나쁘지는 않을 것이다.
또한 <날개셋>이 운영체제의 기본 IME로 지정되어 있는 채로 프로그램을 제거하려 하면, 작업이 더 진행되지 않으며 '텍스트 서비스 및 입력 언어' 제어판 대화상자가 바로 뜨고 기본 IME 지정부터 해제하라는 경고문이 나오게 했다.
왜 이런 안전 조치를 진작에 취하지 않았나 모르겠다.
지난 2월 이래로 4개월 동안 쌓이고 쌓인 작업이 7.0이라는 브랜드로 아주 잘 마무리 되었다.
이제야 나도 감금 상태에서 벗어난 수능 출제 위원이 된 듯한 홀가분한 기분이다.
다음 버전은 오는 10월쯤에 또다시 한글 입력 관련 기능의 강화를 테마로 한 7.1을 목표로 하고 있다.
<날개셋> 한글 입력기는 PC Windows 환경에서 한국어가 아닌 한글 자체의 입력 기술을 한데 통합하는 솔루션으로서 앞으로도 지존의 위치를 유지해 나갈 것이다.
끝으로, '날개셋계속개발'이라는 명의로 후원금을 보내 주신 분께 감사드린다.
Posted by 사무엘