온라인 한글 입력기 수정판 (드보락, 콜맥, 세벌식 자판 지원)

온라인 한글 입력기 (수정판) : http://ohi.pat.im 또는 http://자판.한국

  온라인 한글 입력기(Online Hangeul IME)는 이호석(alee)님의 온라인 한글 입력(Online Hangeul Input)를 고친 판입니다. 한글 입력기가 깔리지 않은 셈틀에서도 웹과 자바스크립트를 통하여 한글을 넣을 수 있게 해 줍니다. 운영체제의 자판 설정을 건드리지 않고 쓸 수 있어서 세벌식 자판을 잠깐 쓰는 사람에게 편리합니다.

  본래는 두벌식 표준 자판과 3-91 자판(공병우 최종 자판)만 쓸 수 있었는데, 더 많은 한글 자판을 쓸 수 있게 고쳤습니다. 아래는 고치거나 더한 내역입니다.

  • 3-90 자판, 3-2011 자판, 북조선 두벌식 자판(국규 9256 자판)을 더 넣음
  • 3-2011 자판은 특수기호 확장 배열도 함께 쓸 수 있게 함
  • 오른쪽 아래에 나오는 상태 알림글에 두벌식/세벌식 자판 종류도 함께 나타냄
  • 불여우(Firefox) 12 이상에서 작동하지 못하는 문제를 고침
  • 드보락과 콜맥 자판을 쓸 수 있게 함 (Caps Lock 적용은 안 됨) (2012.5.22)
  • 3-2011 자판의 특수기호 확장 배열에서 두 기호 글쇠를 한 번씩 누르면 기호 글쇠를 3번 누른 것과 같게 하고, 문자들을 더 넣음 (2012.5.22)
  • HTML 문서가 웹 유효성 검사를 통과하게 고침 (2012.5.29)
  • 신세벌식 자판(2003년 박경남 수정판)을 넣음 (2012.6.24)
  • 3-2012 자판을 넣음 (2012.7.8)
  • 신세벌식 자판에서 겹홀소리를 넣을 때에 받침이 잘못 들어가던 것을 바로잡음 (2012.7.24.)
  • 3-2011 자판과 3-2012 자판에서 오른쪽 ㅗ 글쇠가 확장 배열 전환 글쇠로 잘못 구실하던 것을 바로잡음 (2012.12.11.)
  • 세벌식 자판 상태일 때 오른쪽 숫자판 글쇠를 누르면 한글이 들어가던 것을 바로잡음 (2012.12.11.)
  • 신세벌식 2012 자판을 넣음 (2012.12.11.)
  • 신세벌식 2012 자판으로 윗글쇠를 함께 눌러 겹받침을 넣을 수 있게 함 (2013.4.15.)
  • 인터넷 탐색기(Internet Explorer) 10에서 한글을 친 다음에 사이띄개를 넣을 때 뜻없는 문자가 덧들어가지 않게 함 (2013.5.11.)
  • 3-2011 / 3-2012 자판의 특수기호 확장 배열을 소폭 고침. 신세벌 2012 자판에서 첫소리가 들어갔을 때에 Z 자리 글쇠를 누르면 아래아가 호환 문자로 들어가게 함(조합은 되지 않음) (2013.5.21)
  • 세벌식 순아래 자판을 넣음 (2013.7.27)
  • 신세벌식 자판(2003, 2012)으로 같은 글쇠를 거듭 눌러 겹받침을 넣을 수 있게 함 (2013.7.29)
  • 화상 자판 기능을 넣음 (2013.8.25.) (http://pat.im/1039)
  • 신세벌식 2003 / 2012 자판에 확장 기호 배열을 넣음 (2013.11.25.)
  • URL 주소의 물음 줄글(query string)을 통하여 쓸 자판을 지정할 수 있게 함 (2014.5.17)
  • 상태 보람줄을 딸깍하여 한·영 상태, 기준 자판, 자판 배열의 종류를 바꿀 수 있게 함 (2014.6.15)
  • 상태 보람줄을 감추거나(ohiStatusBar(0);) 세벌식 자판의 기호 확장 배열을 끄는(ohiChange_K3_ext(0);) 함수를 넣음 (2014.7.31)
  • 3-2011 옛한글 자판, 3-2012 옛한글 자판을 넣음 (첫가끝 방식 옛한글 입력 지원) (2014.9.28.)
  • 옛한글을 넣을 때 앞에 넣은 낱자들을 기억하여 뒷걸음쇠(backspace)를 누르면 앞의 상태로 돌아가게 함 (두세 글쇠를 눌러 넣은 겹낱자를 한꺼번에 지우지 않음) (2014.11.13)
  • 순아래 2014 자판을 넣음 (2014.11.28)
  • 3-2014 자판을 넣음 (2014.12)
  • 3-2015 자판, 3-2015 옛한글 자판3-2015P 자판, 3-2015P 옛한글 자판을 넣음 (2015.2.9)
  • 3-93 옛한글 자판을 넣음 (2015.2.10.)
  • 3-89 자판, 3-2015M 자판, 두벌식 순아래 자판(꼬마집오리)을 넣음 (2015.2.24)
  • 신세벌식 M 자판을 넣음 (2015.3.19.)
  • 안마태 소리 글판, 세벌식 모아치기 2014/2015을 비롯한 모아치기 세벌식 자판을 지원함 (2015.3.28.)
  • 옛 표준 네벌식 타자기 자판을 넣음 (2015.4.5.)
  • 선택 기능 차림표를 넣음 (모아치기 자판에 이어치기 방식 적용하기, 겹받침 확장 배열 보기, 기호 확장 배열 켜기/끄기) (2015.4.12.)
  • 온라인 한글 입력기(Online Hangeul IME)로 이름을 고침 (2015.4.13)
  • 넣은 글을 HTML 문자 부호값 참조(numeric character reference) 형식으로 보여 주는 기능을 넣음 (2015.4.14)
  • 외솔 타자기 자판을 넣음 (2015.4.17)
  • 박경남 신세벌식 자판을 넣음 (2015.5.7)
  • 영문/두벌식/세벌식(En/K2/K3)으로 나누던 자판 종류를 영문/한글(En/Ko)으로 줄임
    (K2_type 및  K3_type → Ko_type) (2015.5.26)
  • 신세벌식 자판과 예외 낱자 조합으로 옛한글까지 조합하여 넣을 수 있게 함 (2015.9.15)
  • 가온한글26KM을 넣음 (2015.9.19)
  • 모아치기 자판을 쓸 때 바로 앞서 모아친 글을 되걸음쇠(백스페이스) 1타로 지울 수 있게 함 (2015.10.13)
  • 모아치기 자판에서 윗글쇠를 모아치기에 쓸 수 있게 함 (2018.4.23.)
  • ohi.js에 있던 자판 배열 정보들을 keyboard_layouts.js와 additional_layouts.js로 옮김 (2018.4.28.~4.29.)
  • Caps Lock이 커졌는지를 알아차릴 수 있게 함 (2021.7.2)
  • 참신세벌식 자판을 넣음 (2021.7)

  3-91 자판(공병우 최종 자판)의 수정안인 3-2011 자판에는 ㅗ나 ㅢ를 기호를 넣는 전환 글쇠로 써서 더 많은 특수기호를 넣는 확장 배열이 함께 있습니다. 여태까지 이 확장 배열을 구현할 수 있는 입력기는 날개셋뿐이었는데, 이 자바스크립트 입력기에서도 3-2011 자판의 확장 배열을 쓸 수 있게 고쳤습니다.

  모아치기 세벌식 자판을 제대로 쓰려면 여러 글쇠가 함께 눌린 것을 잘 가릴 수 글쇠판이 필요합니다. 그렇지 않은 글쇠판은 분별하지 못하는 글쇠 조합이 있어서 모아치기로 한글을 넣기 어려울 수 있습니다. 이 입력기에 모아치기 세벌식 자판을 쓸 때는 글쇠를 막 눌렀을 때가 아니라 글쇠를 모두 떼었을 때에 문자가 들어갑니다. 모아치기 상태에서 한 글쇠씩 나누어 치면 벌이 같은 낱자에 대한 한글 조합 규칙이 적용되지 않습니다.

  한글·영문 상태는 Ctrl + Space(사이띄개) 또는 Shift + Space로 바꿀 수 있습니다. QWERTZ 또는 AZERTY 자판처럼 쿼티(QWERTY) 자판과 배열이 다른 로마자 자판을 쓸 때에는 Ctrl + Enter(줄바꾸개)를 눌러 로마자 자판 종류를 바꿀 수 있습니다.

  불여우(파이어폭스)에서는 Alt+2, Alt+3으로 두벌식 또는 세벌식 자판 종류를 바꿀 수 있습니다. 하지만 윈도의 인터넷 탐색기(IE)에서는 이 글쇠를 쓸 수 없으므로, 입력기의 설명문에 있는 Alt+2 또는 Alt+3을 딸깍하거나 자바스크립트를 끼워 넣어서 자판 종류를 바꿀 수 있습니다.

  바깥 웹 문서에서 입력기 스크립트를 불러 쓰려면 HTML에 다음 내용을 끼워넣습니다.

<script src="//ohi.pat.im/keyboard_layouts.js"></script>
<script src="//ohi.pat.im/additional_layouts.js"></script>
<script src="//ohi.pat.im/ohi.js"></script>

  AZERTY를 기준 자판으로 하여 드보락 자판과 3-90 자판을 쓰고 싶고 한글 자판이 바로 뜨게 하려면, 다음 두 가지 코드 가운데 하나를 골라 넣으면 됩니다.

<script src="//ohi.pat.im/keyboard_layouts.js"></script>
<script src="//ohi.pat.im/additional_layouts.js"></script>
<script src="//ohi.pat.im/ohi.js"></script>
<script>
ohiChange_KBD_type('AZERTY');
ohiChange('En','Dvorak');
ohiChange('Ko','3-90');
</script>
<script>
Ko_type = "3-90";
En_type = "Dvorak";
ohi_KBD_type = "AZERTY";
ohi_KE = "Ko"; // 시작할 때의 한·영 상태 (한글: Ko, 영문: En)
</script>
<script src="//ohi.pat.im/keyboard_layouts.js"></script>
<script src="//ohi.pat.im/additional_layouts.js"></script>
<script src="//ohi.pat.im/ohi.js"></script>

  http://ohi.pat.im/?kbd=azerty&en=dvorak&ko=3-90처럼 입력기 웹 주소에 매개 변수가 들어간 물음 줄글을 덧붙여서 위 자바스크립트 코드를 끼워 넣을 때처럼 쓰고 싶은 자판 배열을 지정할 수 있습니다. 주소를 통하여 자판을 지정하면 맨 마지막에 넣은 자판을 바로 쓸 수 있는 상태로 뜹니다.

  온라인 한글 입력기의 바탕 코드는 github 저장소에서 받을 수 있습니다. 원 저작자인 alee님이 붙인 GPL 2.0 규정에 따라 고치고 배포할 수 있습니다.

 

※ IE 8 이하에서 작동하지 않던 문제를 고침 (2013.11.9)
※ IE 8 이하에서 배열표에서 되무르개(backspace)를 눌렀을 때의 동작을 일부 바로잡음 (2013.11.25)
※ 신세벌 확장기호 배열에서 손가락 기호들의 자리가 바뀐 것을 바로잡음 (2013.12.4)
※ 크롬에서 동작하지 않는 것을 고침 (2014.6.15)
※ 자판 배열 종류를 바꾸는 함수들과 함수 이름들을 정리함 (2014.6.15)
※ 2014.6.17판에서 신세벌 2003/2012 자판이 서로 바뀌어 동작하는 것을 바로잡음 (2014.6.18)
※ 불여우에서 한글을 조합하는 상태일 때에 기능 글쇠를 누르면 알 수 없는 문자가 섞이는 것을 막음 (2014.9.20)

웹 누비개의 즐겨찾기(책갈피)에 넣어 쓰는 자바스크립트 예

다른 누리집에서 온라인 한글 입력기 부르기

  • javascript:(function(){var s=[],i;for(i=0;i<3;++i){s[i]=document.createElement('script');}if(typeof ohiStart=='undefined') {s[0].src='//ohi.pat.im/keyboard_layouts.js';s[1].src='//ohi.pat.im/additional_layouts.js';s[2].src='//ohi.pat.im/ohi.js';for(i=0;i<3;++i) document.body.appendChild(s[i]);}})()

다른 누리집에서 3-90 자판 바로 쓰기

  • javascript:(function(){var s=[],i;for(i=0;i<3;++i){s[i]=document.createElement('script');}if(typeof ohiStart=='undefined') {s[0].src='//ohi.pat.im/keyboard_layouts.js';s[1].src='//ohi.pat.im/additional_layouts.js';s[2].src='//ohi.pat.im/ohi.js';for(i=0;i<3;++i) document.body.appendChild(s[i]);}setTimeout(function(){ohiChange('Ko','3-90')},1000)})()

다른 누리집에서 신세벌식 P2 자판 바로 쓰기

  • javascript:(function(){var s=[],i;for(i=0;i<3;++i){s[i]=document.createElement('script');}if(typeof ohiStart=='undefined') {s[0].src='//ohi.pat.im/keyboard_layouts.js';s[1].src='//ohi.pat.im/additional_layouts.js';s[2].src='//ohi.pat.im/ohi.js';for(i=0;i<3;++i) document.body.appendChild(s[i]);}setTimeout(function(){ohiChange('Ko','Sin3-P2')},1000)})()

기준 자판을 AZERTY로 바꾸기

  • javascript:ohiChange_KBD('AZERTY')

두벌식 자판을 쓸 때 한·영 상태 바꾸기

  • javascript:ohiChange_KE('K2')

세벌식 자판을 쓸 때 한·영 상태 바꾸기

  • javascript:ohiChange_KE('K3')

두벌식 자판 종류 바꾸기 (차례대로)

  • javascript:ohiChange('K2','')

세벌식 자판 종류 바꾸기 (차례대로)

  • javascript:ohiChange('K3','')

영문 자판 종류 바꾸기 (차례대로)

  • javascript:ohiChange('En','')

두벌식 : 조선 두벌식 자판 쓰기

  • javascript:ohiChange('K2','KPS9256')

세벌식 : 3-90 자판 쓰기

  • javascript:ohiChange('K3','3-90')

세벌식 : 신세벌식 P2 자판 쓰기

  • javascript:ohiChange('K3','Sin3-P2')

영문 : 드보락 자판 쓰기

  • javascript:ohiChange('En','dvorak')

영문 : 콜맥 자판 쓰기

  • javascript:ohiChange('En','colemak')

지원하는 주요 자판 배열

영문 자판 (En_type)

  • 쿼티 (Qwerty)
  • 드보락 (Dvorak)
  • 콜맥 (Colemak)

두벌식 자판 (Ko_type)

  • 한국 표준 두벌식 KS X 5002 (2-KSX5002)
  • 조선 국규 9256 (2-KPS9256)

세벌식 자판 (Ko_type)

  • 공세벌식 옛 방식 : 3-90, 3-91
  • 공세벌식 옛 방식 응용 : 순아래 1990(3-sun1990), 순아래 2014(3-sun2014)
  • 공세벌식 갈마들이 : 3-P3, 3-P2, 3-D1
  • 공세벌식 옛한글 : 3-93(3-93-y)
  • 신세벌식 : 1995 원안(Sin3-1995), 박경남 수정 신세벌식(Sin3-2003), 신세벌식 M(Sin3-M), 신세벌식 P2(Sin3-P2)
  • 신세벌식 응용 : 참신세벌식(Sin3-Cham)
  • 모아치기 : 안마태 소리 글판(3m-Anmatae), 세모이(3m-Semoe)
글 걸기 주소 : 이 글에는 글을 걸 수 없습니다.

덧글을 달아 주세요

  1. 라엘 2012/05/17 16:54 고유주소 고치기 답하기

    우왕 이거 신기한데요?

    제가 쓴 글중에
    http://lael.be/468 가 있는데 Demo 3번 소스가 제대로 짜진 걸까요?
    팥알님이 숫자만 입력받는 input필드를 짠다면 어떻게 하실거 같나요?

    조언(제안) 부탁드려요

    • 팥알 2012/05/17 20:19 고유주소 고치기 답하기

      input 태그에서 숫자만 받게 하는 건 제가 아직 개념 정리를 못하고 있었습니다. 라엘님의 글을 읽어 보니 예제가 깔끔하게 정리되어 있어서 머리 속에 쏙쏙 들어오네요.^^

      쿼티 자판과 숫자 배열이 다른 한글 자판을 쓸 때는 둘째 예제처럼 처리할 때에 탈이 많습니다. 인터넷 금융 거래에서 둘째 예제와 같은 방법으로 숫자만 받게 하고 있어서 3벌 자판을 쓰는 사람들이 어려움을 겪습니다. 쓰는 이가 어떤 한글 자판을 쓰고 한/영 상태를 바꾸었는지를 자바스크립트로는 잘 판단하지 못하는 것이 문제입니다. 다른 자판 관련 보안 프로그램이나 스크립트 따위와 잘못 엉키면 숫자판이 따로 없는 자판에서는 어떻게 하든 숫자를 넣지 못할 때가 생깁니다.

      아무래도 비표준 자판을 쓰는 사람들에게는 셋째 예제처럼 처리하는 쪽이 좋을 것 같습니다. 자바스크립트로 처리한다면 글쇠값(키 코드)를 검사하는 방법보다 넣은 문자 또는 문자열을 검사하는 방법이 좋다고 생각합니다.

  2. 텔레만 2012/06/18 14:28 고유주소 고치기 답하기

    오,, 드디어 3벌식이,, ㅠㅠ

    개발 감사드립니다.

    전에 정리한 글이 있었는데, 이런 식으로 피드백이 될 줄은,,,,

    • 팥알 2012/06/18 19:44 고유주소 고치기 답하기

      처음 만드신 개발자님 덕분이지요.
      원본 코드가 깔끔하고 간결해서 저 같은 초보가 자판 종류를 더 끼워넣을 수 있었습니다.

  3. 조구연 2013/08/10 13:33 고유주소 고치기 답하기

    안녕하세요 저기 혹시요 영문으로된 영문자판을한글 자판으로변경할수 있는 방법도 있을까요? 컴퓨터말고 gps기계입니다...
    iiiiiii@daum.net 연락부탁드릴께요 감사합니다.

    • 팥알 2013/08/10 13:46 고유주소 고치기 답하기

      ohi 입력기는 자바스크립트가 돌아가는 웹 탐색기를 통하여 쓸 수 있습니다. 어떤 기계인지 잘 모르겠지만, 같은 방법으로는 어려울 것 같네요.

  4. lovingwon 2013/11/07 19:41 고유주소 고치기 답하기

    안녕하세요.. 만들어 주신 입력기는 감사히 잘 쓰고 있습니다. 그런데 제가 파이어폭스를 업그레이드 하면서, 새로운 문제점이 나와서 문의드립니다. 파폭ESR 17.0.9 로 업그레이드 했는데, 희한하게 한글을 친 다음에 사이띄개를 넣으면 뜻없는 문자가 덧 들어가서, 복사도 되지 않습니다.
    위에 언급하신 익스플로러 10에서 문제와 유사한 것 같은데, 어떻게 코드를 수정하면 좋을까요?

    • 팥알 2013/11/07 21:26 고유주소 고치기 답하기

      스팸 거르개가 엄격하게 작동하는 통에 덧글이 휴지통에 들어가는 일이 종종 있습니다. 때때로 휴지통에 들어간 덧글을 살피면서 꺼내 놓고 있으니, 언제든 덧글을 남겨 주시기 바랍니다.

      방금 윈도XP에서 파이어폭스 17.0.10esr로 돌려 보았는데, 별다른 이상이 없습니다. 혹시 17.0.10esr에서도 같은 문제가 생긴다면, 다시 확인해 보겠습니다. 운영체제 환경을 알려 주셨으면 합니다.

      그 동안 옛 환경에서 잘 돌아가는지 확인하는 걸 소홀히 했는데, 이제 확인해 보니 제가 고친 판은 IE 8 이하에서 쿼티를 뺀 한글/영문 자판을 제대로 쓸 수 없는 상태입니다. 원판인 http://ohi.kr 의 ohi는 IE 8 이하에서 잘 작동하고 있습니다. 잘 될지는 모르겠지만, 점검해 보고 고쳐서 올리겠습니다.

  5. lovingwon 2013/11/08 01:09 고유주소 고치기 답하기

    친절한 답변 감사드립니다.
    저는 리눅스(CentOS release 6.4)를 쓰고 있습니다. OpenSUSE에서는 잘 돌아갔던 걸로 보니 혹시 운영체제 문제일수도 있겠네요..

    희안하게 한글을 입력할 때만 마지막 한 칸을 더 먹더라구요..
    코드를 살짝 수정하고 나서는 일단 사용하는데는 문제가 없어졌는데,
    자바스크립트는 문맹인지라, 전문가 입장에서 보시면 뭔가 더 깔끔한 해결책이 있지 않을까 생각이 듭니다. ^^

    밑에 107행 부터 4줄 수정했습니다.
    if(c>=30){ f.setSelectionRange(m?selectionStart:selectionStart+1,selectionStart+1);
    } else { f.setSelectionRange(m?selectionStart:selectionStart,selectionStart+1);
    }

    • 팥알 2013/11/08 11:05 고유주소 고치기 답하기

      올려 주신 코드가 다른 환경에서도 문제가 없는 듯하여 http://ohi.pat.im/ohi.js에 끼워서 올렸습니다. 옛 코드가 브라우저 캐시에 남아 있을 수 있으니 새로고침(F5)을 해서 보면 됩니다.

      저는 다른 분이 만든 자바스크립트 코드를 겨우 고쳐 쓰는 처지라서 사실 이 문제는 좀 막막했는데, 해결책을 찾아 주셔서 고맙습니다. CentOS에서 한글을 넣을 때 한글 처리 과정에서 특수코드 같은 것이 끼어 들어가나 봅니다. 나중에 CentOS를 깔아서 확인해 보겠습니다.

    • 팥알 2013/11/09 23:06 고유주소 고치기 답하기

      CentOS 6.4에서 Firefox 17.0.9 esr판을 깔아 보았지만, 같은 현상이 나오게 하지는 못했습니다. 알려 주신 코드는 아래처럼 고쳐 넣었습니다.

      f.setSelectionRange(m || c<32 ? selectionStart:selectionStart+1, selectionStart+1);

      IE 8 이하에서 작동하지 않던 것은 제가 ohiKeypress 함수를 잘못 고쳐서 생긴 문제였습니다. ohiKeypress, ohiKeydown 함수에 돌려 주는 값을 넣거나 빼서 IE 8 이하에서도 잘 작동하도록 코드를 고쳤습니다.

      혹시 또 문제가 생기거나 이상한 점이 있으면 언제든 알려 주시기 바랍니다.

  6. lovingwon 2013/11/13 01:00 고유주소 고치기 답하기

    아.. 역시, 멋지게 고쳐 주셨네요.. 지난 번에 글을 남겼는데, 어디론가 또 사라진 걸 보니, 해외 아이피가 문제가 있나 봅니다.
    가끔 'ㅎㅎ,ㅋㅋ'와 같은 자음만 입력하면, 페이스북에서 인식을 잘 못하고 특수 기호가 입력되는 경우가 있긴 한데, 저도 정확히 어떤 조건인지 몰라서 재현을 못하겠더라구요..
    하여튼 덕분에 너무 잘쓰고 있습니다. 감사합니다.

    • 팥알 2013/11/13 12:58 고유주소 고치기 답하기

      lovingwon님이 알려 주신 덕분에 IE 8 이하에서 작동하지 않는 문제까지 풀 수 있었습니다. 제가 하나하나 점검하는 일에 게으르고 아는 것이 적다 보니, 꽤 심각한 문제조차 모르고 지내는 일이 꼭 생깁니다.^^

      블로그의 스팸 거르개가 엄하게 작동하고 있어서 특정 아이피로 올라오는 덧글이 자꾸 막히고 있는데, 아쉽게도 블로그(텍스트큐브)에 특정 아이피를 허용하는 기능이 아직 없습니다. 스팸 거르개를 끄면 블로그를 운영하기 힘들 만큼 스팸 덧글/트랙백이 쌓이기 때문에 어쩔 수 없이 스팸 거르개를 쓰고 있습니다. 지난달 끄트머리에 블로그에 문제가 생겨서 며칠 동안의 기록이 날아갔다가 복구한 적이 있었는데, 그 무렵에 휴지통에 들어간 걸 빼내지 못하여 사라진 덧글이 있었을지도 모르겠습니다.

  7. 비밀방문자 2013/11/13 01:01 고유주소 고치기 답하기

    관리자만 볼 수 있는 덧글입니다.

  8. 시호 2014/06/12 19:37 고유주소 고치기 답하기

    안녕하세요. 온라인 한글 입력기를 홈페이지에서 잘 쓰고 있습니다.
    그런데 이 입력기를 자바스크립트를 통해 입력기 웹페이지가 아닌 다른 곳에서도 쓸 수 있다고 들었습니다
    지금 아이패드로 글을 작성하고 있는데요, 이 페이지(http://redmedusa.net/953)에서 설명하는 것처럼 아이패드도 북마크에서 자바스크립트 실행이 되는 것 같습니다.
    보니까 [javascript:]로 시작하는 주소를 쓰는 것 같은데 여기서 설명하고 있는 방법하고는 조금 다른 것 같아서요.
    혹시 온라인 한글 입력기의 자바스크립트를 javascript: 형태의 주소로 바꾸면 아이패드 사파리에서도 실행 가능할 수도 있다는 생각이 들었습니다. 어떻게 바꾸면 될까요?
    그리고 만약 가능하다면, 널리 알리면 좋지 않을까 싶습니다.
    (지금까지 아이패드에서 세벌식으로 글을 쓰려면 세벌식 메모장 앱에서 써야 하는데, 그 앱에서 쓰는 세벌식은 3-90이여서, ㅓ랑 ㅐ, 받침을 계속 틀리니까 불편하긴 합니다. 해당 앱 개발지께서는 다른 자판 추가하실 생각은 없다고 하시네요.. 온라인 한글 입력기를 사파리에서 쓸 수 있다면 도움이 될 것 같습니다. 또, 안드로이드에서 키보드형태로 지원하거나, ios 등에서 문서 편집기 형태로 실행할 수 있으면 태블릿 사용자에게 많은 도움이 될 거라 생각합니다.)

    • 팥알 2014/06/13 00:06 고유주소 고치기 답하기

      아직은 제가 아이패드나 아이폰을 써 보지 못했고 주로 일반 PC나 노트북 환경에서 쓰고 있어서 iOS 환경에서의 절실함을 못 느끼고 있었습니다.
      저도 그런 쪽의 기능이 필요해서 되도록 빨리 iOS를 쓰는 기기와 블루투스 자판을 구해서 확인해 보려고는 하는데, 지금은 가지고 있는 기기가 없어서 확인이 어렵습니다.

      즐겨찾기를 이용하는 것은 온라인 한글 입력기 원판의 '추가 정보'에 이미 나와 있는 아래 스크립트로 불러 쓸 수 있습니다.

      javascript:(function(s){s=document.createElement('script');s.type='text/javascript';s.src='http://ohi.pat.im/ohi.js';document.body.appendChild(s)})()

      PC에서라도 사파리의 책갈피에 이 스크립트를 넣어 보려 했는데, 특정 주소로 바꾸는 방법을 찾지 못해서 넣지 못했습니다.

      저는 입력기나 편집기를 새로 만들 실력은 없고, 온라인 한글 입력기는 다른 분이 만드신 걸 고쳐서 내놓았을 뿐입니다. 그래서 새로 제안한 배열을 모든 환경에서 지원하는 일은 다른 개발자님들의 도움이 없으면 할 수 없습니다. 아무쪼록 입력기 개발하시는 분들이 좀 더 관심 있게 보아 주시면 좋겠는데, 아직은 쉽지 않은 것 같습니다.

  9. 시호 2014/06/13 17:16 고유주소 고치기 답하기

    답변 주셔서 감사합니다.
    일단 실행은 되고 있습니다. 아이패드에서 세벌식을 쓰니까 좋네요^^
    해당하는 링크가 있는데 따로 질문을 드렸던 이유는 아이패드 사파리에서 해당 링크를 실행할 수만 있었고, 저장할 수 없었기 때문입니다.
    그런데, 아이패드에서는 자판 종류를 바꾸는 게 불가능합니다.
    자판 종류를 바꾸는 키가 alt+숫자로 알고 있는데요, 아이패드에서는 alt+숫자/문자가 특문을 넣는 키입니다. 예를 들면, ¡ ™ £ 같은 문자가 입력되네요.
    그래서 자바스크립트 파일 내용 중에 자판 종류에 해당하는 변수를 바꾸는 코드를 넣으려고 시도했지만 결국 아직까지 성공하진 못했습니다.
    .js 파일에 있는 En_type 같은 변수의 값을 바꾸면 될 것 같아 보이는데요, 주소창에서 변수값을 바꿀 수 있다는 것까지는 알아냈는데, 올려주신 코드가 좀 복잡해서 정작 어떻게 해야 할 지는 모르겠어서 다시 질문을 드리게 되었습니다. 감사합니다.

    • 팥알 2014/06/14 11:01 고유주소 고치기 답하기

      즐겨찾기에 넣는 스크립트를 통하여 자판 종류를 바꾸는 것까지 미처 생각하지 못해서 부랴부랴 코드를 정리했습니다.
      배열 종류 바꾸는 함수가 있긴 있었는데, 난잡한 상태여서 조금 정리했습니다.
      몇몇 함수 이름을 바꾸었으므로 새로고침 해서 적용해 보시면 좋을 것 같습니다.
      위 글에 덧붙여 올린 자바스크립트 예제를 참고해 주시기 바랍니다.

      Alt+? 단축 글쇠 쪽은 좀 더 확인해 보고 대안을 마련해 보겠습니다.

    • 팥알 2014/06/14 19:54 고유주소 고치기 답하기

      오른쪽 아래에 나타나는 보람줄(상태표시줄)의 항목들을 딸깍하여 배열 종류, 한·영 상태, 기준 자판을 바꿀 수 있게 했습니다.
      웹 누비개마다 쓸 수 있는 단축 글쇠가 다르다 보니 어느 환경에서나 쓸 수 있게 단축 글쇠를 바꿀 방안을 찾지 못했습니다.

      더 좋은 방안이나 더 넣으면 좋을 기능을 알려 주시면 할 수 있는 데까지 다시 고쳐 보겠습니다.

    • 팥알 2014/06/16 10:42 고유주소 고치기 답하기

      신세벌식 2012 자판을 예로 특정 자판을 바로 불러 쓸 수 있게 하는 즐겨찾기 자바스크립트를 위 글에 올렸습니다.
      웹 누비개에서 자바스크립트 파일(ohi.js)을 읽더라도 입력기가 동작하는 상태가 되기까지 시간이 조금 걸리므로, 즐겨찾기에서 바로 변수값을 바꾸거나 배열 종류를 바꾸는 명령을 내리면 뜻하는 대로 되지 않습니다. setTimeout() 함수를 써서 자판 배열 종류를 바꾸는 명령을 조금 늦추어 실행하면 배열 종류가 바뀝니다.

  10. 궁금이 2014/07/01 11:12 고유주소 고치기 답하기

    안녕하세요. 온라인 한글 입력기를 사용하려고 하는데요.
    현재 마우스 운용으로만 키보드 한글 입력기가 작동이 되는것 같습니다.
    장차법 관련해서 마우스 뿐 아니라 키보드 운용관련하여 탭이동을 가능하게 하고싶은데요.
    현재 스크립트에 추가적으로 table td에 tabindex='0' 을 추가해서 키보드 초점을 받을 수 있게 만들어 주고싶은데...
    제가
    $( document ).ready(function() {
    //console.log( "ready!" );
    $('#keyboardLayout table td').attr('tabindex', tabindex).focus();

    });
    이렇게 넣으려고 하는데 무슨이유인지 #keyboardLayout 안에 접근이 안되네요 ㅠㅠ
    혹시 table td에 tabindex='0'의 속성을 넣어 키보드운용도 가능하게 하게 할 수 있을까요?

    • 팥알 2014/07/02 23:12 고유주소 고치기 답하기

      답글이 늦어서 죄송합니다.

      tabindex에 대하여 잘 몰라서 인터넷에서 찾아 보니,
      table td에 tabindex 속성을 바로 쓰는 건 아닌 것 같고,
      table td 에의 input 객체를 넣고 input 객체에 tabindex 속성을 쓰는 것 같습니다.
      #keyboardLayout 안에는 input 객체가 없으니 tabindex 속성을 쓰려면 따로 input 객체를 넣어 주어야 하는 게 아닌가 싶습니다.

  11. 신세기 2015/02/10 01:47 고유주소 고치기 답하기

    안녕하세요 팥알 님?
    Ohi 를 수정하다가 3-2015 자판에 ㄽ가 두 개 있는 것을 발견하여 이를 해결하고,

    소인배 님의 요청인
    [0x11f011bc,0x11ee] /* jongseong yesieung + ieung = ssangyesieung */
    을 카페에서 발견하여, 이 부분을 추가해 보았습니다.

    아래가 그 커밋의 주소입니다.
    https://github.com/Sinseiki/ohi/commit/dd5aac36183142e30f0a220f6203ba46495cb3f6

    • 팥알 2015/02/10 01:57 고유주소 고치기 답하기

      알려 주셔서 고맙습니다.
      github에 공간을 만들어 두셨군요.
      이제 다 고쳤겠다 싶어도 틀린 데가 끝없이 있네요.

    • 신세기 2015/02/10 02:05 고유주소 고치기 답하기

      힘 내세요, 팥알 님.
      팥알 님께서 이렇게 만들어주셔서 3-2015P 자판과 그 외의 여러 자판들을 Ohi에서 여러 사람들이 이렇게 쓸 수 있게 되었습니다. 정말 감사합니다...

    • 팥알 2015/02/10 02:08 고유주소 고치기 답하기

      네, 방금 고쳤습니다.
      많은 정보 알려 주시고 개발해 주시는 신세기님께도 감사 드립니다.

  12. 꼬마집오리(코노 노보루(河野 登)) 2015/09/13 21:02 고유주소 고치기 답하기

    팥알 님, 오래간만입니다.

    OHI에 두벌식 순아래 자판을 추가해 주셔서 대단히 감사합니다.
    제가 JavaScript로 구현해 본 페이지가 있는데 이제 Firefox로만 올바르게 움직일 수 있는 상태가 됐습니다. 그리고 "치명적인" 결점인데 영문자 모드로 입력하기 위한 textarea와 한글을 출력하기 위한 textarea를 따로 만들어야 구현됐습니다. 제가 만들 수 있는 것으로는 이것이 한계였습니다.
    한 textarea에 한글을 입출력할 수 있고 어떤 부라우자에도 대응하는 OHI에 두벌식 순아래를 채용해 주신 것에 뭣보다도 감격해서 다시 한번 감사 말씀을 드리겠습니다.

    그런데 부탁이 하나 있습니다.
    이 페이지에서 "두벌식 순아래 자판"에 링크된 사이트에 연결되지 않게 됐습니다.
    http://ohi.pat.im/?k2=2-sun-KSX5002 에서 "ⓘ"에 링크된 블로그 페이지(http://blog.daum.net/tinyduck/2111486)에서 적은 내용 가운데 OHI의 두벌식 순아래와 다른 부분이 있었습니다. 이 블로그 페이지의 내용을 고치려고 했는데 오래동안 수면상태가 돼서 수면해제 처리를 하기 위해 휴대전화 번호를 입력해야 했지만 저는 휴대전화를 안 가져서 수면해제 처리를 못 해서 블로그 내용을 못 고쳤습니다.
    이것들 "두벌식 순아래 자판"과 "ⓘ"에 링크하는 페이지 주소를 어느 쪽도
    https://sites.google.com/site/tinyduckn/dubeolsig-sun-alae
    로 고치셔 주시면 아주 고맙게 생각합니다.
    바쁘신 중에 대단히 죄송한데 잘 부탁드립니다.

    • 팥알 2015/09/14 01:15 고유주소 고치기 답하기

      꼬마집오리님, 반갑습니다.

      저도 오래 접속 안한 다음 아이디를 인증 문제로 포기한 적이 있습니다. 그래서 블로그 접근을 못하신다는 말씀이 남의 일 같지 않게 느껴지네요. ⓘ 기호로 연결한 주소는 알려 주신 곳으로 고쳤습니다.

      순아래 자판은 어떤 사람에게는 꼭 필요한 것일 수 있고, 보통 사람에게 편리할 때도 있습니다. 그래서 일찍 서둘러서 넣었어야 했는데, 세벌식 자판 쪽에 치중하다가 입력기에 늦게 넣은 것이 오히려 죄송스럽습니다.

      혹시라도 어떤 것이든 입력기에서 고쳐야 할 점이나 아쉬운 점이 있으면 언제든 알려 주시기 바랍니다. 여러 사람들에게 도움되는 정보를 나누어 주셔서 고맙습니다.

    • 꼬마집오리(코노 노보루(河野 登)) 2015/09/26 16:30 고유주소 고치기 답하기

      팥알 님, 바쁘신 중에 OHI 페이지의 링크를 고쳐 주셔서 대단히 감사합니다.

      이전에 한국의 신문에서 공병우 박사께 인터뷰한 기사를 읽은 적이 있는데 박사의 생각을 무시한 듯이 일방적으로 두벌식이 나라의 표준적인 자판으로 된 것에 대해 분노했다는 내용였습니다.
      입력법을 마치 하나로 하면 교육 면에서 보면 효율적인 것 같은데 개개인이 쉽게 쓰는지를 무시한 결과가 된다고 생각합니다.
      저는 1992년 처음으로 한국으로 여행했을 때 백화점에서 욋솔두벌식 수동식 한글 타자기를 샀습니다. 전기도 프로그램도 없어서 11272가지 있는 글자마디가 표시되는 것에 층격을 받았습니다. 이래 두벌식만 주목해 왔고 아쉬운데 세벌식에 익숙해질 수 없었습니다.

      새로 생각낸 한글 입력법이 소개하는 기회를 만들어 주신 팥알 님이 다시 한번 감사드립니다.

      그런데 부탁이 더 하나 있는데 이 페이지(http://pat.im/910)에 있는 "두벌식 순아래 자판"에 링크하는 페이지 주소도 https://sites.google.com/site/tinyduckn/dubeolsig-sun-alae 로 고치셔 주시면 아주 고맙게 생각합니다. 지금 링크하고 있는 hostever.kr 사이트가 못 쓰게 됐기 때문입니다.
      대단히 죄송합니다.

    • 팥알 2015/09/27 01:38 고유주소 고치기 답하기

      위 글에 들어간 웹 주소 고리는 미처 살피지 못했습니다. 방금 알려 주신 주소로 두벌식 순아래 자판의 주소 고리를 고쳐 넣었습니다. 그 동안 입력기 기능에 바뀐 내용이 꽤 있어서 나중에 글을 정리하려고는 했는데, 다른 일이 밀려 있어서 아직 정리하지 못했네요.

      저는 외솔 타자기를 근래에 만져 보았는데, 자판 배열과 활자는 엄밀하게 보면 세벌식이더군요. 하지만 두벌식 자판처럼 보이는 자판 배열 덕분에 외솔 타자기가 사람들에게 깊은 인상을 남긴 것만은 틀림없습니다. 1985년 즈음에 한국의 표준 타자기 배열이 바뀌게 계기가 외솔 타자기에 있기도 하고요.

      1980년대의 외솔 타자기 광고에 "쉬운 것이 위대하다."라고 말이 나오는데, 이 말은 요즈음에도 절실히 와닫습니다. 우선 쉬워야 조금이라도 더 많은 사람들이 써 볼 마음이 생길 테니까요. 저는 공병우 선생님이 활동하시던 시절에 세벌식 자판 배열을 더 쉽게 만드는 작업이 함께 이루어졌다면, 한글 자판 경쟁이 더 치열했을 수도 있겠다는 생각이 듭니다. 세벌식 자판을 주로 쓰면서 한글 자판에 대한 생각이 치우쳐 있긴 하지만, 두벌식 자판이 쉬운 한글 배열 틀로서 이바지한 바가 매우 크다는 것에는 공감합니다.

    • 꼬마집오리(코노 노보루(河野 登)) 2015/10/12 22:19 고유주소 고치기 답하기

      밭알 님께 다시 한번 감사 말씀을 드리겠습니다.

      외솔 타자기의 자판 배열과 활자가 세벌식이라는 것은 현행 두벌식의 자판 배열이 실은 세벌식에 의해 정해졌다고도 말할 수 있을 겁니다.
      제가 수동식 한글 타자기를 처음으로 봤을 때 가까운 동안에 한국은 컴퓨터 분야로서 세계에서 가장 높은 수준이 될 것 같다고 생각했습니다.
      지금 한국이 IT선진국인 바탕에서는 선인 분들의 한없는 노력이 있었다고 잘 알았습니다.

  13. 비밀방문자 2017/04/10 19:03 고유주소 고치기 답하기

    관리자만 볼 수 있는 덧글입니다.

  14. 비밀방문자 2017/04/11 23:50 고유주소 고치기 답하기

    관리자만 볼 수 있는 덧글입니다.

    • 팥알 2017/04/12 00:10 고유주소 고치기 답하기

      잠깐 짬이 날 때 고쳤지만, 돌아다니느라 말씀 드릴 틈이 없었습니다.
      생각해 보니 너무 어이 없는 실수여서 모르고 지냈다는 게 많이 창피했습니다.^^
      고맙습니다.

  15. DS1TPT 2021/06/21 00:42 고유주소 고치기 답하기

    언제나 팥알님의 노고에 감사드리고 있습니다. 학교에서 두벌식·공세벌식의 자판 종류와 개선 방안이라는 주제로 발표할 때 타자 흐름을 보여주기 위해서 온라인 한글 입력기도 사용을 했었고, 다른 사람 컴퓨터에서 세벌식으로 입력할 때 세벌식 파워업을 까는 것 마저 귀찮아서 OHI를 쓰는 등 이리저리 많이 사용을 하고 있었는데, 인사를 드리는 게 늦었습니다 ^^;; 또 타자기 자판까지 실려있어서 네벌식 타자기에 대해서 알려주거나 표준 두벌식 호환형 네벌식 타자기가 얼마나 불편한 지 설명할 때 사용하고는 했었는데, 공병우 타자기 자판이 실려있는 것도 나중에 돈을 모아서 공병우 타자기를 구할 때 타자기 자판 적응의 징검다리로도 구실할 수 있다고 생각해서 요즘 자주 사용하고 있습니다.

    이것저것 호기심에 여러 자판들을 타자해보고 있는데, 제 배열을 최근에 온라인 한글 입력기에 넣어주셨더군요. 정말로 감사드립니다.

    • 팥알 2021/06/27 00:52 고유주소 고치기 답하기

      이제야 답글을 올려서 죄송합니다.

      온라인 한글 입력기에 틈 나는 대로 더 많은 한글 자판과 기능을 넣어야 하겠다는 마음은 있지만, 요사이 몸이 좀 힘들어서 틈만 나면 쉬고 있습니다. 더 부지런을 떨어야 하는데, 그렇지 못해서 죄송한 마음이 큽니다.

      이제는 제가 공세벌식 자판을 쓰고 있지 않아서 공세벌식 자판을 실사용자로서 바라보고 다루기가 어렵습니다. 그렇지만 공세벌식 4줄 한글 배열을 더 개선할 여지는 있다고 생각해 왔습니다. 새로 제안해 주신 3-D1 자판에서 공감되는 면이 많이 있었고, 옛한글 자판도 3-2015 자판 때보다 발전한 모습이 보입니다. 온라인 한글 입력기에 3-D1 자판의 확장 기능을 한꺼번에 다 넣기는 버겁지만, 할 수 있는 것부터 조금씩 넣어 보려고 합니다.

    • DS1TPT 2021/06/29 23:45 고유주소 고치기 답하기

      감사합니다. 원래 온라인 한글 입력기가 영문 쿼티 자판에서만 캡스락을 지원하는 것이 제 자판의 확장 기능을 넣기 버겁게 할 것 같습니다. 아마 기호 확장은 온라인 한글 입력기에서는 기본 배열에서 오른손 ㅗ를 누르고 넣게 하는 방식으로도 구현은 가능할 것 같습니다. 어디까지나 확장 기능이라 날개셋 입력기에서야 좋은 자리에 안쓰는 글쇠가 있어서 캡스락을 쓴 것이지, 구현체에 따라서 다르게 구현할 수도 있다고 생각합니다. 캡스락을 별도의 레이어 토글로 사용하는 컨셉이기 때문에, 옛한글 자판은 옛한글 레이어만 구현해도 충분한 것 같다고 생각도 하고 있습니다.

      제가 자바 스크립트는 문외한이라 제 배열이라도 직접 구현하고 싶은데 그러지를 못하네요. 그나저나 세모이 자판의 약어가 다 구현된 것을 보고 질겁했습니다. 유지보수 하기 여간 까다로운 게 아닐 것 같아요.

    • 팥알 2021/07/02 19:42 고유주소 고치기 답하기

      자바스크립트로 캡스 록 상태를 아는 방법은 예전에 아무리 찾아도 없었는데, 근래에 정보가 떠서 조금씩 작업하고 있었습니다.

      캡스 록을 켰을 때 쿼티가 아닌 영문 자판들이 큰/작은 로마자가 제대로 들어가게 했고, 3-D1 자판의 기호 확장 배열도 구현했습니다.

      세모이 자판은 프로그램으로 구현하고 오류를 자주 떼우는 것이 쉽지는 않았지만, 신세기 님이 배열/조합 정보를 모두 넣어 주셔서 기능 개발에 집중하며 마음 편하게 작업할 수 있었습니다. 제가 눈이 나쁘고 손이 정확하지 않아서 배열/조합 정보를 하나하나 옮겨 넣는 일에 괴로움이 큰데, 날개셋 파일이라도 공개되어 있으면 큰 힘이 됩니다.

      하지만 온라인 한글 입력기에 마구마구 기능들을 집어 넣다 보니 일부러 유지/보수하기 어렵게 만든 꼴이 되었습니다. 이 점은 많이 창피한데, 장래를 생각한다면 대대적으로 코드를 다듬는 작업이 필요하다는 생각은 하고 있습니다.

    • DS1TPT 2021/07/03 09:05 고유주소 고치기 답하기

      기호 확장 배열까지 벌써 구현하셨군요. 캡스락까지 제대로 잘 인식하니 온라인 한글 입력기로 영문을 많이 타자하시는 분들에게 큰 힘이 될 것 같습니다.

      입력기의 기능 구현은 정말 까다로운 일인 것 같습니다. 저는 프로그래밍에 그다지 재주가 없어서 3-D1 자판을 개발할 때 부끄럽지만 다른 분들의 날개셋 설정 파일의 갈마들이 구현 코드를 빌려서 썼습니다 ^^;; 지금 안종혁 님의 타자 장면과 손이 불편한 분들이 어떻게든 두 손을 모두 쓰는 자판으로 불편하게 타자하는 것을 보고 갈마들이 한 손 자판을 개발하고 있는데, 한 손 자판을 개발하기로 마음을 먹고 나서야 날개셋 입력기의 오토마타 변수를 참조한 글쇠 수식의 작성법을 배웠습니다. 지금이야 어느정도는 다룰 수 있다고는 하지만, 여전히 세모이 자판이나 팥알님의 자판에서 기호 확장을 구현하는 것 수준에는 미치지 못하고 있습니다.

      신세벌식이나 세모이 자판을 쓰다가 기본 입력기가 지원을 하지 않아서 3-90이나 3-91 자판에서 벗어나지 못하는 분들이 많고, 저도 3-90과 3-91을 같은 이유로 틈틈이 연습하고 있었지만, 온라인 한글 입력기 덕분에 지금은 3-91은 거의 잊었고, 3-90 정도만 기억하는 수준으로 세벌식 사용이 편해졌습니다. 다시 한 번 감사드립니다.

    • 팥알 2021/07/04 14:47 고유주소 고치기 답하기

      틀린 데가 있을지는 모르지만, 3-D1 옛한글 자판까지 배열은 구현했습니다.

      하지만 추가 낱자 조합을 넣는 것은 어려움이 큽니다. 날개셋 설정 파일을 보고 3-D1 자판에서 첫소리 조합들을 넣어 봤는데, 추가 조합들의 수가 너무 많아서 저로서는 정확하게 넣으려면 시간이 너무 오래 걸립니다. 제 눈이 오래 견딜 수 없고 자꾸 작업이 끊기는 어려움도 있습니다.

      일단 넣다가 만 내용은 이런 꼴입니다.

      K3_D1_additional_combination_table.unshift(
      [0x11001106,0x1104], /* choseong gieug + dieud = ssangdieud */
      [0x11061100,0x1104], /* choseong dieud + gieug = ssangdieud */

      [0x11001112,0x110A], /* choseong gieug + sieus = ssangsieus */
      [0x11121100,0x110A], /* choseong sieus + gieug = ssangsieus */

      [0x11001112,0x110F], /* choseong gieug + hieuh = kieuk */
      [0x11121100,0x110F], /* choseong hieuh + gieug = kieuk */

      [0x1107110B,0x1108], /* choseong bieub + ieung = ssangbieub */
      [0x110B1107,0x1108], /* choseong ieung + bieub = ssangbieub */

      [0x110C110B,0x110D], /* choseong jieuj + ieung = ssangjieuj */
      [0x110B110C,0x110D], /* choseong ieung + jieuj = ssangjieuj */
      );

      제가 온라인 한글 입력기를 고쳐서 배포하는 것에는 제가 제안한 한글 자판의 배열/조합의 코드 정보를 공유해서 이를 지원하려는 입력기 개발자 분들의 짐을 덜어드리려는 뜻도 있습니다. 예외 규칙이 간소하고 합리적이면 자판을 처음 익히려는 사람에게 안내하기가 좋습니다. 오타가 난다든지 하는 예외 상황도 헤아릴 필요가 있습니다. 타자 교육이 잘 이루어질 수 있으려면 권장하는 타자법이 여러 가지가 되지 않아야 합니다. 그래서 저는 예외 규칙이 되도록 간소하고 합리적이어야 한다는 생각을 늘 품고 있는데, 제 생각과 어긋나는 일을 오래 하려면 괴로움이 큽니다.

      죄송하지만 3-D1 자판의 추가 낱자 조합은 github나 블로그 덧글, 카페 게시판, 전자우편 등을 통해 보내 주시면 넣어 드리겠습니다. 필수 조합과 편의를 위한 조합을 따로 구분해 주시면 좋겠습니다. 온라인 한글 입력기가 모아주기를 지원하지 않는 점도 헤아려 주시기 바랍니다.

    • DS1TPT 2021/07/05 17:42 고유주소 고치기 답하기

      권장 타자법이 여러개가 되어서는 안된다는 점은 저도 동감합니다. 제가 글을 쓸 때 명확히 구분을 하지 않았나봅니다. 글은 바로 수정했습니다.

      필수 조합 부분만 구현해주시면 감사하겠습니다. 아래 조합 규칙을 제외한 '모든' 조합 규칙은 편의 예외 조합 규칙입니다. 이 조합 규칙들은 그나마 3-2015 자판이나 다른 자판들에 적용한 전례가 있는 방식이라 구현에 시간이 오래 걸리지 않을 것 같습니다.

      ===필수 조합 규칙===
      초성
      ㄱ+ㅇ → ㄲ
      ㅈ+ㅇ → ㅉ
      ㅂ+ㅇ → ㅃ
      ㄱ+ㅅ → ㅆ
      ㄱ+ㄷ → ㄸ

      중성
      ㅣ+ㅐ→ㅒ

      ※ 위의 필수 조합 규칙의 역순 입력 조합은 필수 기능이 아닙니다.
      =================
      오른손 연타 방지 조합 규칙 이외에 모든 조합규칙은 편의 규칙입니다. 그래서 빠져도 되는 요소라고는 적어놨었는데, 필수 조합 규칙이 어느 것인지를 명확히 하지 않은 것을 이제야 알았습니다 ^^;;

      위의 필수 조합 규칙에서 중성 부분은 순아래 입력을 위해서 반드시 구현되어야 하는 규칙입니다. 사실 초성 ㄱ+ㄱ과 같이 해당되는 글자를 두 번 누르는 게 훨씬 직관적이기는 하지만 ㅂ+ㅂ 같은 경우에는 새끼손가락이 글쇠 연타를 일으켜서, 이를 기존 세벌식 사용자나 타자기에서의 구현을 위한 기능으로 보고, 전자 환경에서는 연타를 일으키지 않는 조합 방법이 주된 타자 방법으로 권장해도 괜찮겠다 싶어서 필수 규칙에 넣었습니다. 다만 표준안을 만들게 된다면 초성 조합 규칙은 없애도 되겠다는 생각이 있습니다.

    • 팥알 2021/07/05 17:46 고유주소 고치기 답하기

      고맙습니다. 알려 주신 필수 조합 규칙은 곧 적용하겠습니다.

  16. DS1TPT 2021/07/22 14:44 고유주소 고치기 답하기

    팥알님 3-D1 자판은 기호 확장에서 전각 원화 기호 ₩가 역슬래시 자리에 있어야 하는데, 닫는 대괄호 자리에 있습니다(21-07-22 2시 반에 역슬래시 자리에 들어간 것을 확인했습니다). 또 기호 확장에서 기호가 할당되지 않은 부분은 기본 배열의 기호/숫자를 입력합니다. 번거로우시겠지만 이 부분은 수정해주셨으면 합니다.
    저만 그런건지는 모르겠지만 몇몇 컴퓨터에서 3-P 자판안의 ㅐ가 ㅒ로 입력되기도 하던데, 오늘(21-07-22) 다시 확인해보니 ㅐ로 들어가네요. 한편 3-D1 자판의 갈마들이 중성이 안들어가는 경우도 있습니다(Firefox 및 Edge).

    • 팥알 2021/07/22 19:14 고유주소 고치기 답하기

      드문드문 작업해야 해서 답글을 올릴 틈이 없었습니다. 양해 바랍니다.

      3-D1 자판을 지원하는 코드를 넣으면서 갈마들이 공세벌식 자판들의 동작에 모두 문제가 있었습니다. 변형 자판이 나오고 더 많은 요구 사항이 나올 가능성에 대비하여 좀 더 유연한 틀로 고치거나 새로운 갈마들이 기능을 넣을 때에 이런 식의 진통을 자꾸 겪고 있습니다.
      (그래도 신세벌식 자판에서 먼저 겪은 바가 있어서 착오를 덜 겪는 편입니다.)

      3-D1 자판의 기호 확장 배열은 주석문까지 넣어서 다 채워 넣었습니다. 다만 기본 배열의 일부를 복사해서 넣으면서 엉뚱한 곳에 붙여 넣는 실수를 한 적이 있습니다. 바로잡았다고 생각하지만, 잘못 들어간 곳이 있을지 모릅니다.

      잘 고쳤을 것 같지만, 지금은 정신이 없어서 이따가 다시 확인해 보겠습니다. 잘못 들어간 데를 알려 주시면 다시 살피겠습니다.

    • DS1TPT 2021/07/23 12:41 고유주소 고치기 답하기

      감사합니다. 기호 확장 배열은 쿼티 자판의 ' 위치에서 /(슬래시)가 입력이 되지 않는 부분을 제외하면 모두 알맞게 들어가 있습니다. 다른 부분은 문제 없는 것 같습니다.

  17. ㅇㅇ 2022/03/01 20:06 고유주소 고치기 답하기

    이건구 한 손 자판 계열에서 종성 ㄿ을 ㄹㅂㅂ으로 입력하는 걸로 아는데 이게 구현이 안 된 듯합니다.

    • 팥알 2022/03/02 00:44 고유주소 고치기 답하기

      첫가끝 방식으로 조합하게 하면 그 문제가 없는데, 흔히 쓰이는 완성형 방식에서 받침 ㄿ을 조합하지 못했습니다. 완성형 방식으로 이건구 한 손 자판들이 받침을 거듭 넣으면 한글 낱자가 더 들어가지 않는 문제가 있는데, 이럴 때에 낱내자 조합을 끊고 낱내자 조합을 새로 이어 가는 예외 처리를 합니다. 완성형 방식에서만 필요한 이 예외 처리가 2타가 아닌 3타로 넣는 받침 조합을 가로막았습니다. 방금 고쳐서 올렸습니다.

      본래 온라인 한글 입력기는 완성형 부호계를 쓰는 방식을 썼습니다. 2타 조합까지 되던 것을 제가 3타까지 처리하도록 고쳤지만, 애초에 겹낱자를 다양하게 조합하기 좋은 틀이 아니어서 예외 처리로 땜질해 왔고 여러 면에서 자꾸 말썽이 생깁니다.

      첫가끝 조합형 방식으로 넣는 것은 제가 새로 넣었는데, 첫가끝 방식으로 넣을 때는 겹낱자를 몇 타로 넣든 조합할 수 있습니다. 첫가끝 방식을 기본으로 해야 예외 처리가 적어서 개발이 편한데, 제 형편에 과감한 구조 개편은 시간이 걸릴 것 같습니다.

  18. esrevinu 2023/10/13 23:55 고유주소 고치기 답하기

    OHI 신세벌식 P2 자판에서 겹자음 종성 조합만을 쓸 수가 없네요. ㄽ ㄺ ㄾ ㄳ ㄶ과 같이 초성·중성 없이 종성만 입력하는 거요. libhangul-3beol도 안 되는데 제가 만든 hangul-s3p2.el 이맥스 입력기는 되네요. 그래서 스스로 감탄하고 있습니다.

    • 팥알 2023/10/14 02:15 고유주소 고치기 답하기

      신세벌식 P2 자판을 쓸 수 있는 이맥스 입력기를 개발해 주셔서 고맙습니다.
      죄송하게도 제가 모르는 게 많고 경험도 적어서 빠뜨리거나 챙기지 못한 점이 있을 겁니다.

      온라인 한글 입력기에서 ㄶ, ㄺ 같은 겹받침을 따로 넣는 방법은 다음과 같습니다.

      ① 처음 받침은 윗글쇠를 누르지 않고 넣고 뒤에 오는 받침은 윗글쇠를 함께 눌러 넣음 (sD → ㄶ, wC → ㄺ)
      ② 옛한글 상태로 바꾸어서 윗글쇠를 누르지 않고 홑받침을 하나씩 넣음 (받침이 첫가끝 낱자로 들어감)

      3beol libhangul에서는 신세벌식 자판 공통으로 ①와 같은 방법으로 겹받침을 따로 넣을 수 있습니다. ㄱㄱ(cc)과 ㄲ(cC)을 가려서 넣을 수 있습니다.

      ②은 옛한글 자판에 한해서 제가 OHI에만 임의로 넣은 것입니다.

      ②이 상식에 가까운 것 같지만, 초성체와 받침을 다양하게 넣으려는 수요를 생각하면 ①가 현실에 더 맞는 것 같긴 합니다.

    • esrevinu 2023/10/14 11:59 고유주소 고치기 답하기

      아, 다 생각이 있으셨군요. 알려 주셔서 감사합니다.
      마지막에 "초성체와 받침을 다양하게 넣으려는 수요"는 'ㄱㄱㄱ'와 같은 것을 말씀하시는 건가요? 제 이맥스 입력에서는 ㄱㄱㄱ 입력이 불편하긴 하네요. 그래도 만약 'ㄱㅔㄱㅔㄱㅔ'가 유행이라면... 두벌식으로 입력이 불편해서 유행이 안 되겠군요.

    • 팥알 2023/10/14 13:59 고유주소 고치기 답하기

      '초성체와 받침을 다양하게 넣으려는 수요'는 ㄱㄱ도 넣고 ㄳ도 넣는 걸 이야기하려 한 뜻이었습니다.

      신세벌식 자판으로 초성체 넣는 것은 3beol libhangul을 확장 개발하신 우덜 님이 기획하신 기능이었고, 윗글쇠를 써서 겹받침 조합하는 것에서만 제가 생각해서 건의한 ① 방식이 반영되었습니다. 저도 한참 동안 우덜 님께서 그런 훌륭한 기능을 만드신 줄을 몰랐는데, 세사모 카페에서 우덜 님의 설명을 듣고 알았습니다.

      날개셋을 통해서 쓰는 옛한글 겸용 신세벌식 P2로도 저는 ① 방식을 즐겨 쓰고 있습니다.

      저는 초성체는 잘 쓰지 않지만, 한글이나 한글 자판에 관한 글을 쓰다 보면 홑받침/겹받침을 이야기하는 때가 종종 때가 있습니다. 공세벌식 자판을 쓸 때는 겹받침이 다 들어가지 않은 배열을 쓰기도 했는데, 받침과 홀소리가 일관성 없이 아랫글/윗글 자리에 나뉘어 들어가는 배열 특성 때문에 겹받침을 따로 넣기 거북한 느낌이 있었습니다. 하지만 신세벌식 자판을 쓰면서 겹받침만 넣기가 편해졌습니다.

      한 가지 더 말씀 드리면, 날개셋과 OHI의 신세벌식 P2 옛한글에서는 'ᄀᅠᆫ'처럼 홀소리가 빠진 한글 낱내자도 조합할 수 있습니다. ks는 '계'가 되고 kS는 'ᄀᅠᆫ'가 되는 식입니다. 3beol libhangul에는 이 기능이 안 들어간 것 같지만, 두벌식/공세벌식 옛한글 자판에서는 'ᄀᅠᆫ'을 넣을 수 있는 걸 생각하고 뒤늦게 넣었습니다.

      아무래도 초성체는 사람들이 흔히 쓰는 두벌식 자판에서 쓰는 방식이 유행을 이끌 수밖에 없을 것 같긴 합니다. 세벌식 쪽도 'ㄱㅔㄱㅔ'를 편히 넣는 것은 전혀 대비가 안 되어 있습니다.

      종합해 보면, 꼭 신세벌식 P2이 아니더라도 '신세벌식'이 가장 적은 글쇠 수로 한글 조합 폭을 가장 넓히기 좋은 세벌식 배열 방식인 것 같습니다. 눈에 잘 띄이지 않는 틈을 찾아서 잘 이용하는 것이 묘미인 것 같습니다.