날개셋 한글 입력기 7.9 -- 下

(上에서 계속됨)
※ 중대한 버그 수정

기능 얘기는 상편에서 그럭저럭 다 했고, 이제는 안정성이나 문서 등 부수적인 변화 사항 얘기를 하겠다.
굳이 직전 버전인 7.7만 그랬던 건 아니지만, 알고 보니 단순한 오동작 수준이 아니라 프로그램이 뻑날 정도의 안정성 버그가 생각보다 여러 곳에 있었다.

  • 편집기에서 Alt+F1로 보조 입력 도구 대화상자를 꺼낸 뒤, '확인'이 아니라 '설정'을 누르고 취소를 눌렀을 때
  • 콤보 박스가 있는 문자표나 부수 한자 입력 같은 보조 입력 도구를 꺼내서 콤보 박스를 클릭한 뒤, 그 상태에서 리스트를 우클릭 했을 때
  • 제어판의 글쇠배열이나 한자 낱자 선택기처럼, 문자열이 아닌 문자 하나만 입력받지만 어쨌든 날개셋 에디트 컨텍스트를 사용하는 자체 컨트롤에서 특수글쇠를 사용했을 때

그리고 외부 모듈은 입력 항목 전환 수식의 값을 잘못 줬을 때 인덱스 오버플로우가 나서 역시 오동작과 crash가 발생할 수 있었다. 해당 문제를 해결했다.

※ 사소한 개선

버그이긴 하지만 프로그램의 안정성에 영향을 끼칠 정도는 아닌 것으로는,
(1) 글쇠배열 편집 윈도우에서 '두벌식 한글'을 입력받는 모드로 가는 단축키 F6이 실제로는 동작하지 않던 문제를 해결했다. 사용자의 제보로 문제를 발견했는데, 이런 것까지 어떻게 찾아 냈는지 신고해 주신 분이 정말 대단하고 고맙다.

(2) 글쇠 수식 편집 대화상자에서 상하 인접 글쇠 버튼을 통해 4단 숫자 자리로 갈 때, 정확하게 인접 글쇠로 가지 않던 문제를 해결했으며, 이 대화상자를 '확인'을 눌러서 종료하면 마지막으로 편집하던 글쇠 위치로 cursor도 자동으로 가 있게 동작을 고쳤다. 이렇게 하니까 역시 훨씬 더 낫다.

(3) 사용자에게 당장 심각하게 와 닿는 문제는 아니겠지만, DLL의 로딩 reference count가 꼬여서 DLL들이 FreeLibrary 때 바로 해제되는 게 아니라 해당 프로세스가 종료될 때에야 해제되던 문제를 해결했다. 직전 버전인 7.7을 포함하여 지금까지 역대 날개셋 프로그램들이 거의 다 갖고 있었던 문제이다.

※ 사소한 변경

(1) 현재 문자표(편집기에서 Ctrl+I)를 꺼내면 유니코드 문자에 대해 BMP 영역에 한해서 그 문자의 이름이 나옴과 동시에, KS X 1001로 변환 가능한 문자는 그 KS 코드 번호도 []로 둘러싸져서 같이 나온다. 그런데 변환 후에 다시 원래 문자로 역변환이 정확하게 되지 않는 문자는 * 로 추가로 표시가 되게 했다.
예를 들어 U+00A9 Copyright sign은 [A8CF]로 바뀌긴 하지만, 엄밀히 말하면 이것은 "동그라미+소문자 C"여서 모양만 비슷할 뿐 실제로 서로 다른 글자이다. 이런 것들이 [A8CF]* 로 표시된다.

(2) 이제 날개셋 설정의 내부에서 외부 파일을 참조하는 경우가 두 가지나 생겼는데(후보 데이터, 문자 집합 데이터), 설정을 저장하거나 불러오는 중에, 자기 자신이 들어가는 컨테이너 파일의 경로에 대한 정보를 감안할 수 있게 했다. 그래서 참조하는 외부 파일이 컨테이너 파일(ist, set, xml 따위)과 동일하거나 그 하부 디렉터리에 있다면, 절대 경로 대신 상대 경로로 저장된다. 그래서 ist/set 파일과 txt 데이터 파일을 같이 인터넷으로 배포한다거나 하는 작업이 원활히 처리 가능해졌다.

(3) Windows 8의 IME들은 [가], [A] 같은 한영 상태가 '검은 테두리'가 쳐진 흰 글자로 찍히는 것이 표준 디자인 가이드라인이다. 이와는 달리 내 프로그램은 잘 알다시피 지금까지 그냥 흰 글자만 찍히곤 했는데, 드디어 이제부터 글자 주위에 검은 테두리가 추가되었다. 직접 보면 차이를 느낄 수 있을 것이다.

※ 문서화

도움말에도 새로 추가된 기능 때문에 당연하게 내용이 추가된 것 외에도, 기존 내용도 10수 군데 이상이 바뀌었다.
아주 사소한 것부터 열거하자면, "답은 한글" 페이지에 재레드 다이아몬드 교수의 quote를 추가했다. 지금까지 당연히 수록돼 있을 거라고 생각했는데 그렇지 않은 걸 뒤늦게 알고는 경악했다.

"기본 자료구조"에서 "한글이 표현되는 방식"에 덧붙여 옛한글이 표현되는 방식을 별도의 지면을 할애하여 미리 설명했다. 한양 PUA는 다 걷어내기에는 이미 인프라가 굳어져 버렸다는 것, 그리고 유니코드 5.2가 가장 이상적이긴 하지만 아래아한글 2010 내지 Windows 8 이상에만 볼 수 있다는 것까지 언급했다.

이 외에도 인디자인 오동작에 대한 설명(명백히 인디자인 자체의 버그임), 단축글쇠 규칙과 관련된 여러 유의 사항들, 사용자로부터 지적된 오타 수정 등이 반영되었다.
다만, 문서 구조가 점점 "훈계 위에 훈계, 줄 위에 줄, 여기에 조금, 저기에 조금"(사 28:10)처럼 돼 가고 있다. 중구난방 산만하지고 있다는 뜻임. 언젠가 또 문서 내용을 싹 다 엎고 재정리를 해야 할 날이 올지도 모른다. =_=;;;

※ 영문 홈페이지

한편, 외국인들은 잘 알다시피 내 프로그램을 오로지 한글 로마자 입력 방식 때문에 사용한다. 도움말을 영작을 도저히 못 하고 있는 게 참 안타까운 현실이긴 한데..
지금까지 페이스북으로 자주 접수된 외국인의 피드백들은 크게 두 가지로, (1) "프로그램 UI가 언제부턴가 갑자기, 혹은 아예 처음부터 한국어로 튀어나온다. 영어로 바꾸는 법은?" (2) "잘 쓰고 있는데 프로그램 바이너리 파일이 삭제되고 제대로 동작을 안 한다."였다.

(1)에 대처하기 위해 영문 버전 홈페이지에 있는 서바이벌 가이드에다 언어를 변경하는 순서를 집어넣었다. (2)는 아마 안티바이러스 프로그램이 시스템을 감시하고 있다가 내 프로그램을 수상하다고 판단하고 무단으로 지워 버리기 때문인 거라고 설명을 넣었다. 내 프로그램은 msi, exe, dll 등등에 디지털 서명이 전혀 없기 때문이다.
아마 Windows 8부터는 다운로드 후에 탐색기에서 msi 파일의 속성을 꺼내서 Unsafe 마크를 수동으로 지워 준 뒤에야 설치가 가능했을 것이다.
쩝~ 서명도 받아야 할 텐데 이것도 한 최하 8.0 버전 이후대로 나중에 생각하기로 한다. 일단은 닥치고 프로그램 연구 개발만 해야 하기 때문에.

※ 다음 버전 계획

새 버전 자랑은 그럭저럭 다 늘어놓은 것 같고 지금부터는 후일담이다.
이번 7.9는 코딩 노예 계약서에 명시되어 있는 여러 아이템들을 이행하고 실현했지만, 그래도 미처 다 이루지 못하고 8.0으로 넘긴 아이템들 역시 많다. 입력 엔진 쪽은 제끼고, GUI 분야에서 작업이 확정되어 있는 것은 다음 두 가지 아이템이다.

(1) 수식에서 숫자는 무조건 한 형태로 획일화하는 게 아니라 10진수, 16진수, 상수 명칭이 적용된 놈 등 사용자가 입력한 원형을 보존하게 할 것이다.

(2) '보조 입력 도구'가 현재 한손 입력기, 화면 키보드, 부수 한자, 문자표 이렇게 4종류가 있다. 여기에 현재 사용자 변수(소문자)의 값과 지금 선택된 입력 항목의 번호를 원하는 형태로 보여주는 "사용자 편의형" 보조 입력 도구를 하나 추가할 것이다.

cursor 근처에 현재의 한영 상태를 표시하는 기능을 좀 추가해 달라는 기능 제안이 있었다. 물론 Windows 8 이상의 메트로 UI에는 이런 기능이 필요하고 날개셋 역시 그걸 지원한다. 하지만 데스크톱 UI에는 이미 멀쩡히 language bar가 운영체제 차원에서 제공되기 때문에 이것은 기능 중복인 관계로, 본인은 그런 제안을 일단 받아들이지 않았다.
굳이 그런 기능이 꼭 필요하다면 사용자가 그런 용도의 보조 입력 도구를 꺼냄으로써 그 기능을 사용 가능하게 할 것이다.

※ 다음 버전에서는 한글 정규화 방식이 변경될 예정

과거에 Windows Vista/7에서는 현대 한글이 자모 조합으로 풀어져서 표현된 것을 역시 한데 묶어서 출력해 주곤 했다. 가령, U+AC00뿐만 아니라 U+1100, U+1161도 똑같이 '가'로 찍어 줬다는 뜻이다. 이건 이전 버전인 XP까지는 없던 기능이었다.
그런데 지난 8부터는, 옛한글 쪽은 유니코드 5.2 자모가 추가되는 와중에 현대 한글을 모아서 출력해 주던 기능은 도로 없어졌다. 어찌 된 일일까?

답부터 말하자면 이것이 표준 규격을 더 준수하는 쪽으로 바뀐 것이기 때문이다.
유니코드 5.2와 함께 한글을 표현하는 규칙도 예전보다 더 엄격하게 바뀌었다. 현대 한글은 무조건 글자마디로, 옛한글이나 미완성 한글은 자모 조합인데 이것도 '초+중+(종)' 형태만 허용한다. 현대 한글을 자모 조합으로 표현하는 것은 이제 지원되지 않게 되었다.

<날개셋> 한글 입력기는 상징적인 의미를 감안하여 지금 7.9는 여전히 놔두고, 다음 버전인 8.0때부터 새로운 정규화 규칙을 적용할 것이다.
맥 OS는 계속해서 한글을 자모 조합으로 풀어서 표현하는데, 이것은 해당 소프트웨어의 잘못이다.

※ 갈수록 복잡해지는 프로그램

<날개셋> 한글 입력기의 전체 소스 코드는 7만 줄의 돌파를 앞두고 있고, 커널인 Ngs3.dll은 이제 15비트 단위를 넘어섰다(> 32768).
<날개셋> 편집기 같은 크기 고정 비트맵 글꼴 하나밖에 지원 안 하는 이 단순한 에디터도 사용자가 키를 하나 눌러서 cursor가 움직이고 A나 '가' 같은 글자가 하나 입력돼서 화면에 찍히기까지..
컴퓨터 내부에서 일어나는 변화와 실행되는 코드, 처리가 내가 보기에 너무 많은 것 같다.

동일한 일을 하더라도 지난 10여 년 동안 온갖 추상화 계층이 늘어나고 이것저것 체크할 게 늘어나다 보니 컴퓨터가 해야 하는 일은 더욱 많아진 것이다.
이 정도 규모의 프로그램이 벌써부터 이 지경이 됐는데 좀 더 최적화를 할 거리가 없는가 하는 자책감(?)이 들기도 하고, 한편으로는 서식이 존재하는 워드 프로세서는 얼마나 더 복잡할까 하는 생각이 든다.

단순 텍스트 에디터보다 복잡한 건 서식이 들어간 에디터이고, 그냥 화면용 서식을 처리하는 것보다 더욱 어렵고 복잡한 건 역시나 그 서식을 장치 독립적인 위지윅 형태로 레이아웃 가능한 워드 프로세서이다. 이미 아시는 분도 있겠지만 단적인 예로, 스프레드 시트인 엑셀은 서식은 지원하지만 위지윅을 지원하는 프로그램은 아니다!

※ 어떤 기능이 새로 추가되기까지의 과정

<날개셋> 한글 입력기에 새로운 기능은 대략 다음과 같은 사이클를 거쳐서 연구 개발되어 왔다. 참고 차원에서 소개한다.

  1. 수요 발생: "어.. 뭐가 불편하다, 이런 방식으로 입력이 가능했으면 좋겠다."
  2. 타당성 검증: "이게 있으면 타자를 더 편리하게 할 수 있거나 이론적으로 커버 가능한 한글 입력 동작의 영역을 더 확장할 수 있는 게 확실하다."
  3. 세부 작계 수립: 이론을 현재의 날개셋 소스에다가 접목한다. "이 기능은 입력 스키마에, 저 기능은 문자 생성기의 요 계층에 들어가면 되겠다. 요 가상 함수를 오버라이드 하면 된다. 이 때문에 부과되는 런타임 상의 메모리/성능 오버헤드는 이 정도이다."
  4. 구현: 기존 소스를 고쳐서 최소한의 기능만 동작하는 형태로 돌려 봄. 핵심 알고리즘을 실제로 구현함. 시제품을 하나 만든 것과 같음.
  5. storage: 이 새로운 기능으로 인해 새로 추가된 설정치 데이터가 있다면, 그걸 바이너리나 XML 형태로 저장되는 방식을 결정함
  6. GUI: 그 새로운 설정치들을 사용자가 고치는 대화상자 인터페이스들을 얹음
  7. 도움말: 새로운 개념, GUI들을 도움말에다 문서화함

5~7은 일종의 양산 단계와 같다. 4에 해당하는 코드가 전투 병력이라면 5~7은 보급 병력인 셈이다.

※ 맺는 말: 세벌식 진영의 파편화에 대한 생각

내 프로그램을 오래 사용하고 이곳 내 블로그에도 종종 들러 오신 분이라면 내 성향을 어렴풋이 알 것이다. (정치· 종교 성향 같은 거 말고=_=;; 한글 기계화 쪽 지론.)
난 골수 공 병우 세벌식주의자이고 세벌식을 그렇게도 깊이 연구했으며 한글 IME를 15년째 만들어 오고 있지만, 나만의 고유한 글쇠배열 하나 발표한 적이 없다.
글쇠배열 자체는 세벌식 최종을 예나 지금이나 별 불만 없이 잘 쓰고 있고, 단지 거기에다가 일부 특수글쇠만을 집어넣어서 "세벌식 무한낱자 수정"이라는 변종을 하나 만들었을 뿐이다. 영문 기호 같은 다른 '문자'를 집어넣은 게 아니다.

즉, 난 선박으로 치면 항해보다는 기관을 연구하는 사람이다. "Bksp를 눌렀을 때 무슨 단위로 지워지게 할 것인가"처럼 글쇠배열을 고치지 않고 그렇다고 NLP 기능도 동원하지 않고, 한글 입력기의 기계적인 메커니즘 자체를 더 정교하고 똑똑하게 만드는 것이 본인의 관심사이다. 문자 입력을 연구한다는 사람이 으레 관심을 갖기 쉽다고 여겨지는 저 두 분야는 정작 거의 다루지 않고 완전히 비껴 갔다는 점이 특징이다.

글쇠배열이야 어차피 이 장점을 살리면 저 단점이 있을 수밖에 없기 때문에, 초중종성이 모두 문맥 의존적이지 않은 독립된 자리에 배당돼 있고 "오른쪽에서 왼쪽 순이라는 큰 틀만 공 병우 스타일에 들면, 그 뒤부터는 뭐 어떻게 만들든지 도찐개찐"이라고 생각한다. 그리고 많은 사람들의 통념과는 달리, 본인은 4단 사용과 여러 겹받침 글쇠가 그렇게 큰 단점이라고 생각하지 않는다. 굳이 기계식 타자기와의 물리적인 호환성까지 고려하지 않더라도, 타자기와 컴퓨터가 사용자 경험이 근본적으로 완전히 다른 것도 아닌데.. 양손 균형과 리듬감을 위해서라도 그런 것들은 필요하다.

즉, 본인은 공 병우 세벌식 패러다임은 이미 타자기 시절 때 큰 그림이 그럭저럭 완성되었기 때문에 오늘날에도.. 무슨 스마트폰이나 아이패드로 논문을 쓰고 책을 저술하는 정도의 격변히 있지 않은 이상 기존 390과 최종의 사이를 절충하는 아주 사소한 변화 이상의 변화가 또 필요하다고 생각하지는 않는다. 모바일이나 터치 스크린을 배려해서 신세벌식 스타일로 중성과 종성을 문맥 의존적으로 중첩 배당하는 것은 불가피한 상황에서 optional한/부가적인 동작 방식으로 별도로 논의해야지, 그게 main이 돼서는 안 된다고 생각한다. 하긴, 최종이라는 명칭조차도 391이 더 정확하다는 말이 있는데.. 일단 7.9에서는 반영하지 않고 그냥 놔 뒀다.

요즘 민간에서는 이 둘의 통합을 목적으로 글쇠배열을 연구하고 날개셋 설정 파일을 배포하는 분이 계신다. 그런 걸 창의적으로 마음껏 연구하고 손쉽게 써 보라고 내 프로그램을 만든 것이니 이것은 일면 반가운 현상이다. 세벌식 자체가 듣보잡으로 걍 묻혀 가는 것보다 백 배 나은 모습이다. 컴퓨터의 속도가 아무리 빨라져도 거품 정렬이 퀵 정렬보다 더 빨라질 수는 없는 것처럼 양 손 열 손가락을 쓰는 환경에서 두벌식은 세벌식을 구조적으로 결코 따라잡을 수 없는 건 명백한 사실이다. 세벌식을 배제한다는 건 한글 입력의 진정한 활용 가능성을 반 이상 제 발로 포기하는 짓이다.

다만 세벌식 글쇠배열이 갈수록 파편화해 가는 것에 대해서는 본인 역시 본연의 임무인 프로그램의 연구 개발을 그럭저럭 마친 뒤엔 좀 더 적극적으로 의견을 내야 할 것 같다. 또한 공 병우 박사를 직접 뵌 적이 있는 후예 세대들과(390 위주), 그 후에 세벌식을 접한(최종 위주) 본인 같은 세대 사이에 좀 더 적극적인 의사소통과 의견 수렴이 필요할 것으로 보인다.

공 병우 박사는 저렴한 보급형 교육용 IBM PC 따위는 거들떠보지도 않고, 1980년대 초 그 옛날에 그 비싼 돈지랄이던 애플 매킨토시로 컴퓨터를 시작한 분이다. 80대 노인이 다 돼서는 그것도 21세기도 아닌 1980년대에 아들뻘인 5, 60대 중장년 후배들을 보고 "지금 시대가 무슨 시대인데 컴퓨터를 안 배우다니 무슨 추태냐! 아직도 펜으로 글을 쓰는 미개한 족속 같으니라고.. 서양에서는 초음속기와 우주선이 날아다니는 마당에 우리는 아직 소 끌고 달구지 끌고 다니는 거나 마찬가지다" 이렇게 갈궜던 넘사벽 얼리어답터임을 생각할 필요가 있다.

이거 뭐 우리 같은 사람은 사고방식이 뭔가 범접할 수 없는 분이다. 또한 본업인 안과학뿐만 아니라 공돌이 기질도 펄펄 넘쳐서 기계 발명도 엄청 많이 하셨던 분인데, 그런 분이 인터넷과 스마트폰을 접했으면 또 무슨 생각을 했을지(일단 스마트폰은 시간을 아껴 주는 좋은 물건이라고 기본적으로 +50점은 먹고 들어갈 듯).. 기계식 타자기와 직접적인 관계가 없으며 전통적인 두벌 세벌 논쟁과는 한 발짝 떨어져 있는 모바일 기기에서는 한글 입력에 대해 어떤 생각을 하셨을지 나로서는 100% 정확하게 시뮬레이션을 할 수 없다. 그래도 글쇠 수를 일부 줄일지언정 도깨비불 현상이 없는 한글 입력 방식은 반드시 필요하다고 주장하셨을지도 모르겠다.

사용자 삽입 이미지

* 지난 3월 6일, 한글 회관에서 열린 공 병우 정신 계승 강연회. 본인은 2005년의 10주기 때도 참석했고 20주기 때도 참석했다. 송 현 선생, 한 재준 교수, 안 대혁 박사가 각각 한글 글자판, 글꼴, 코드 분야에서 공 박사 정신이 끼친 영향력을 잘 강의해 주셨다. 내용도 쉬운 것부터 점차적으로 어려워졌다.

Posted by 사무엘

2015/04/02 08:31 2015/04/02 08:31
Response
No Trackback , 10 Comments
RSS :
http://moogi.new21.org/tc/rss/response/1079

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

Comments List

  1. 김재주 2015/04/02 14:43 # M/D Reply Permalink

    저는 도깨비불 현상은 없으면 좋겠지만 있어도 별로 상관없다, 이걸 세벌식의 장점이라고 하기에는 너무 지엽적이고, 실질적으로 퍼포먼스와 관계가 없는 부분이기에 두벌식의 단점이라고 사람들에게 납득시킬 수도 없다.... 정도로 생각이 바뀌었습니다. 그보다는 장시간 타자 시의 손가락 피로도를 합리적인 방법으로 모델링하고, 발전 효과를 수치를 통해 직관적으로 볼 수 있도록 하는 것이 올바른 방법일 것입니다. 공병우 박사님 시절에는 아직 서구 쪽에서도 이러한 연구가 충분치 않았던 시절이고 컴퓨터의 성능이라던지 데이터셋 등도 미흡하던 때라서 복잡한 모델을 만들 수도 이를 최적화할 수도 없었죠. 이는 상당히 아쉬운 일이 아닐 수 없습니다.

  2. 김재주 2015/04/02 15:05 # M/D Reply Permalink

    일전에 말씀드린 적이 있지만 저는 머신 러닝이나 최적화 쪽에 관심이 많습니다. 그래서 언젠가 꼭 이런 방법론을 자판에 접목해보려는 생각이 있었는데, 요즘 보니 저보다 먼저 시작하신 분들이 계시더군요. 제가 처음이 아니라는 점은 아쉽지만 고마운 일이 아닐 수 없습니다.

    신세벌식 방식에 대해 말씀하셨는데, 약간 생각해볼 필요가 있습니다. 중국어나 일본어는 컴퓨터와 인터넷 기술의 힘을 빌어서 본래라면 불편했을 문자생활을 나름대로 편리하게 만들고 있는데, 기존 두벌식 자판이나 세벌식 최종 자판의 경우 사실상 한글의 우수성에 기대고 있다는 느낌도 있습니다.

    분명히 자판 외적으로 입력기의 지원을 통해 편리성과 효율성 두 가지 모두를 잡는 방법이 존재할 것이고, 확실한 효용성이 있다면 적극적으로 도입할 필요성이 있습니다.

    이것은 세벌식의 우수성으로 홍보할 수 있는 세일즈 포인트가 될 수도 있고요. 제가 보기에 지금까지 세벌식 체계에서 나온 방식 중 첫 번째는 용묵님이 구현하신 무한 낱자 입력 및 모아치기이고, 두 번째가 컨텍스트 기반 중종성 구현입니다. 전자는 기존 자판을 그대로 사용할 수 있다는 장점이 있고, 후자는 사실상 더 많은 수의 키를 사용할 수 있는 것과 같은 효과가 있습니다. 불행히도 이 두 가지가 양립할 수는 없으니 어느 쪽이 이점이 있는가는 면밀하게 따져봐야겠지요.

    아무튼 타자기 시대의 자판과 컴퓨터 시대의 자판이 꼭 같아야 하는가? 저는 약간 회의적입니다. 수동식 타자기를 보기 힘든 시대니까요. 하다못해 미국 정도만큼만이라도 타자기가 보급되어 있다면 그래야겠습니다만, 아시다시피 한국은 그렇지가 않지요. 저는 자판이라면, 그리고 먼 미래에라도 인정받고 복수표준의 위치를 노린다면, 지금은 응당 편리성을 우선시해야 할 때라고 생각합니다. 윈도우의 경우도 그렇지만, 쓰는 사람이 많으면 하위 호환성 때문에 오히려 고치기 어렵지요. 두벌식이 제자리걸음을 하는 동안 세벌식은 앞으로 나아가고, 뛰고, 날아야 살아남을 수 있다고 생각합니다.


    최근에 소인배님의 3-2015 자판을 익혀서 써보고 있는데, 이분 생각이 저랑 비슷한 점이 많더군요. 심지어 시뮬레이티드 어닐링을 자판에 적용하신 점까지도. 그래서인지 모르겠지만, 일단 제게는 잘 맞는 것 같습니다. 적어도 한글을 입력하는 도중에는 전혀 시프트를 누를 필요가 없어요. 저야 최종 자판을 쓰던 사람이니까 아랫글쇠는 시프트를 쓰게 됩니다만,

    아무튼 공세벌식의 기본적인 매커니즘과 배치를 거의 그대로 유지한 채로 이렇게나 할 수 있다는 것은 제법 신선합니다. 원판이 좋기 때문에 가능한 일이겠죠.


    한편으로는 표준 두벌식 자판 보면 한숨만 나오죠. 어차피 두벌식으로 할 거라면 배치라도 좀 잘 했더라면 훨씬 더 편안한 배열을 만들 수 있었을텐데 이건 뭐 일부러 힘들게 하려고 만든 qwerty도 아니고

  3. 사무엘 2015/04/03 02:20 # M/D Reply Permalink

    의견 잘 봤습니다. 재주 님뿐만 아니라 소인배 님 등 이공계 쪽으로 깊이 공부를 하신 분들은 세벌식에 대해서도 대체로 탈타자기(?) 등 더 개방적으로 생각을 하는 편이더군요.
    그에 비해 저는 전반적인 사상이 보수 근본주의 성향이어서 그런지 이쪽도 좀 그런 쪽입니다. ㅎㅎ

    1. 중국어· 일본어 입력이야 NLP가 없으면 안 되지요. 한국어에도 그런 쪽 연구가 필요하다고 생각은 하지만 이런 복잡 변화무쌍한 교착어와 맞춤법을 가진 언어에 적용이 쉽지는 않을 것 같으며, 그쪽은 일단 제 관심 분야는 아닙니다. 날개셋은 글자 단위 조합과 기계적인 조합/치환만이 개발 범위이구요.

    2. 도깨비불에 대해서는 저는 좀 더 단호하게 부정적인 입장입니다. 화면상으로 명백히 안 좋은 현상이며, 특히 아무 편견이 없는 어린애들이 컴퓨터를 처음 배울 때 입력 중에 왜 이렇게 글자 모양이 이상하게 바뀌느냐고 교사에게 실제로 묻기까지 할 정도인 현상입니다.
    두벌식에 익숙해져서 도깨비불에 대해서도 당연한 듯이 완전히 무감각한 사용자들의 심정을 이해하는 건 필요하지만, 저는 그게 제 개인적인 소신으로까지 닿을 것 같지는 않아요.
    그리고 그 현상 자체야 비주얼하고만 관계가 있는 것이지만, 그 배후에서 초성과 종성을 같은 손가락 같은 글쇠로 누르는 동작은 불편한 연타를 늘리기 때문에 결국은 퍼포먼스하고도 관계가 있는 거지요.

    3. 저 역시 무슨 2010년대에도 Windows 9x와의 호환성을 고려하며 프로그램을 개발해야 하는 것마냥 타자기와의 호환성이 중요하다.. 같은 말을 하는 건 아닙니다. 하지만 오로지 글쇠 수를 줄이는 것만이 편리한 글쇠배열을 만드는 길이다..라는 주장에는 전적으로 공감하지 않습니다.

    신세벌식 류도 결국은 한 글쇠에 context별 쓰임을 알아야 하기 때문에 결과적으로는 4단까지 쓰는 context 독립인 재래식 세벌식 배열과 학습 곡선이 크게 차이가 나지 않으리라고 봅니다.
    겹받침 글쇠를 암기하지 않아도 되고 shift를 안 눌러도 돼서 좋을까요? 겹받침을 왼손만으로 일일이 하나씩 치느라 불편한 손해도 만만찮습니다. 제가 15년 전에 390에서 최종으로 갈아탄 이유 중 하나이기도 했지요.

    손에 편한 글쇠배열과 타자기 호환이 가능한 글쇠배열이라는 두 이념은 흔히 오해하기 쉬운 것처럼 오로지 일방적인 동전의 양면 같은 모순되는 개념이 아니라는 것입니다.
    물론 애초에 두 손 열 가락을 총동원한 타자가 가능하지 않다거나, 4단까지 화면에다 늘어놓을 여력이 안 되는 모바일 터치스크린 같은 환경이라면 그건 별개의 상황이므로 얘기가 달라져야 할 겁니다.

    아무튼 제가 추구하는 컨텍스트 독립 배열이든, 부분적인 컨텍스트 의존 방식이든, 그래도 궁극적으로 사용자에게 더 편리한 타자 경험을 제공하는 입력 방식이 잘 연구되었으면 좋겠습니다.

    1. 김재주 2015/04/03 05:34 # M/D Permalink

      1. 도깨비불은... 사실 제가 초등학교 들어갈 즈음에만 해도 컴퓨터라는 것을 가지고 있는 사람이 많지는 않았습니다. 그래서 그 시절에서라면 충분히 있을 법한 사례라고 생각하긴 합니다.

      다만 요즘은 초등학생도 스마트폰 하나씩은(그게 아니더라도 폴더폰 하나 정도는) 가지고 있고 이걸로 문자도 하고 카톡도 하고 하면서 자라는 시대라는 것을 감안해야 합니다. 어차피 휴대기기에서 도깨비불 현상을 피할 수도 없겠지만, 아무튼 그런 현상이 다들 익숙하기 때문에 그걸 가지고 이상하게 생각할 사람 또한 점점 줄어들고 있다는 것이죠.

      현실적으로 생각해 보면 지금 이미 컴퓨터를 쓰고 있는 어른들은 두벌식 자판에 완전히 적응이 되어 있기에 세벌식으로 넘어오게끔 하기 어렵죠. (나이가 많을수록 전환하기도 어려울 것이고) 그렇게 전환해서 쓸 사람은 이미 배워서 쓰고 있다고 보는게 맞을 것 같습니다. 그러니 앞으로 세벌식으로 자판을 배울 사람들은 거의 99%는 어린 세대가 될 것입니다. 그런데 이들에게 도깨비불 현상이 문제다. 세벌식에서는 그런 현상이 발생하지 않는다. 이렇게 말해도 "아 그러네. 신기하다. 근데 이게 왜 문제죠?" 라고 하겠죠.

      그러니 어필 포인트는 용묵님께서도 말씀하신 바로 그 부분, 표준 두벌식에서는 받침글쇠와 첫글쇠를 모두 왼손으로 입력해야 하며 배치도 과학적인 방법으로 만들어진 것이 아니어서 피로도가 높다는 점이 되어야 할 겁니다. 철저하게 실용적인 면에서 홍보해야 한다고 보는 것이죠. 속도와 편리성 면에서 모두 앞선다는 점을 납득시킬 수 있다면 도깨비불 현상은 문제도 되지 않을 겁니다.


      2. 중종성 컨텍스트 전환은 당연히 그 자체로 학습곡선이 쉬워지지는 않습니다. 이 방식이 실질적으로 더 많은 키를 사용하는 방법이라고 말씀드렸습니다만, 두벌식과 세벌식의 관계에서 그렇듯 더 많은 키는 더 어려운 학습을 의미하지요. 그러나 이 방법의 궁극적인 장점은 더 많은 '외받침'을 쉬프트 입력 없이 칠 수 있게 된다는 점에 있습니다.

      최종 자판은 너무 많은 외받침이 윗줄에 있고, 겹받침은 무조건 쉬프트와 함께 입력하도록 고려가 되어 있기 때문에 외받침의 조합으로 겹받침을 입력하려고 하면 상당히 괴상한 타법이 되죠.

      소인배 님은 3-2015자판에서 이 점을 수정하여 겹받침을 쉬프트 없이 입력해도 편하다고 하시는데. 제 경험에도 상당히 그렇습니다. 새로 새벌식을 배우는 사람들은 굳이 겹받침 위치를 따로 외울 필요가 없을 것 같더군요. 이런 요소 때문에 최종 자판에 비해 더 쉽거나 비슷한 정도라고 말하는 것 같습니다.



      물론 3-2015가 매우 편리한 자판이라는 점도 분명하지만, 이것이 최적의 자판이라고는 아직 말할 수 없습니다. 소인배님도 그 나름대로 추가적인 개선을 꾀하시겠지만, 저도 나중에 대학원 졸업하고 여유가 되면 손을 대볼 생각입니다.

  4. 김경록 2015/04/03 10:31 # M/D Reply Permalink

    세벌식을 처음 쓸 때부터 세벌식 무한낱자수정을 잘 쓰고 있습니다. 가끔 pc방을 가서 그냥 세벌식만 쓰면 착착 붙는 느낌이 안들때가 많아요 ㅎㅎ

    1. 사무엘 2015/04/03 18:37 # M/D Permalink

      그게 지금 글자를 고칠 때는 좋은 반면, 가끔은 불편할 때도 있죠. 초성 이외의 낱자를 새 글자를 새로 입력하는 용도로도 예외적으로 쓰고 싶을 때. 그걸 타이밍으로 감지해서 다음 글자로 떼어내는 기능을 올해 중으로 추가할 생각입니다.

  5. 리만 2015/04/03 15:10 # M/D Reply Permalink

    이번 7.9에서 (제 생각으로) 제일 눈에 띄었던 한/영 상태의 검은 테두리! 그게 디자인 표준이었군요. 꾸준한 업데이트에 감사할 따름입니다.

    1. 사무엘 2015/04/03 18:37 # M/D Permalink

      네, 그래서 여타 IME들도 상태 표시를 그런 디자인으로 하고 있답니다. 유용하게 사용하시기 바랍니다.

  6. 근성인 2015/04/07 23:05 # M/D Reply Permalink

    한창 야근하고 있을 때 했네...

    1. 사무엘 2015/04/07 23:35 # M/D Permalink

      아니, 근성인님 아직까지도 집에 안 가고 있었나? 요즘 어째 지내시는지?? 우와아앙?

Leave a comment
« Previous : 1 : ... 1257 : 1258 : 1259 : 1260 : 1261 : 1262 : 1263 : 1264 : 1265 : ... 2204 : Next »

블로그 이미지

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

- 사무엘

Archives

Authors

  1. 사무엘

Calendar

«   2024/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:
3051214
Today:
2234
Yesterday:
2142