Comments (1)
버그 리포트 감사합니다.
원인
libhangul은 한글의 조합이 끝나지 않은 상태에서 숫자나 특수문자등이 입력되면 조합 완료(commit)로 직전에 조합 중이던 글자와 방금 입력한 숫자나 특수 문자를 배열로 리턴합니다. 그리고 조합중(preedit)인 글자는 없다고 (0 리턴) 나옵니다.
현재 버전 나빌 입력기는 이 상황에서 그냥 입력 문자를 처리하지 않고 현재 완료되지 않은 글자를 완료 해 버리고 입력으로 들어온 값을 그대로 출력합니다.
이렇게 처리했을 때, 두벌식이나 세벌식 318Na에서는 문제가 되지 않습니다. 숫자나 특수문자 키를 리맵하지 않기 때문에 libhangul을 거치지 않고 입력을 바로 출력해도 되기 때문이죠.
그러나 세벌식 390 같이 시프트 키를 이용해 숫자나 특수문자를 일반 영문 자판에 배치해놓으면 libhangul을 거쳐서 리맵된 입력 값을 받아 와야 합니다. 현 버전 나빌 입력기는 이 작업을 하지 않고 있어서 영어가 그대로 출력되는 것입니다.
해결 방법
libhangul에서 commit[0]이 0이 아니고 preedit[0]이 0이면 입력기의 composition을 종료하고 commit[1]부터 commit[N]까지 중 0이 아닌 값을 append로 내보냅니다.
from navilime.
Related Issues (20)
- Insertion fail when switch to Eng HOT 1
- Modify installer to add control panel tool HOT 1
- backspace doesn't work when the last uncommitted character HOT 2
- 2-bul type keyboard has a bug. HOT 11
- IME인스톨 후 한국어 입력기 일람에서 사라지는 현상 HOT 5
- Chrome 브라우저에서 한글 입력시 입력한 글자가 사라지고 다음 글자가 들어가는 현상. HOT 2
- 파일 탐색기(explorer.exe)에서 폴더 경로 수정시 받힘이 제대로 입력되지 않음 HOT 2
- 두벌식 입력 오류
- <Esc> 영문 전환 설정 건의 HOT 1
- 세벌식 자소 입력 순서 오타 교정 기능 건의
- 안마태 자판 지원해 주실 수 없으신지요? HOT 5
- 받침 입력 불가 HOT 4
- 한글 입력 상태일 때 넘버 패드 사용 시 숫자 대신 한글이 입력됩니다. HOT 1
- 32bit 프로그램(notepad++)에서 한글 입력이 안됩니다. HOT 1
- Create and release 32bit binary
- Add a new component the installer HOT 1
- Microsoft Word issue
- Need Uninstaller HOT 1
- Need Hangul layout selector
- Modify libhangul HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from navilime.