| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
fail_unless macro from libcheck is deprecated.
Use new ck_assert macro.
The following warnings are reported with libcheck-0.15.2:
```
libhangul/test/test.c:450:17: warning: too many arguments for format [-Wformat-extra-args]
450 | "error: next syllable: L L V V T T");
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
...
```
Maybe, the commit below causes the warning:
https://github.com/libcheck/check/commit/82540c5428d3818b64d6a8aefb601e722520651f
|
|
|
|
|
| |
check library가 없이 테스크 코드를 빌드하기 위한 옵션을
추가한다.
|
|
|
|
|
| |
시스템 디렉토리가 아닌 소스 디렉토리의 hanja.txt 파일을
테스트하기 위해서 TEST_HANJA_TXT를 사용한다.
|
|
|
|
|
|
|
|
|
|
|
| |
사용자가 Shared와 Static 빌드를 선택할 수 있게
BUILD_SHARED_LIBS 옵션을 추가한다.
ENABLE_EXTERNAL_KEYBOARDS 옵션이 ON 일때에만
expat을 찾아도 되므로 조건 처리한다.
추가로 find_package()를 사용한다. 패키지를 찾을 때에는
include()보다 나을 것 같다.
|
|
|
|
| |
CMake로도 빌드할 수 있으면 좀더 편리하다.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
LIBHANGUL_KEYBOARD_PATH 환경 변수를 설정하면 그 위치의
키보드 파일을 로딩하게 한다.
테스트할 때에는 시스템에 설치된 키보드 파일이 아니라
빌드 디렉토리의 키보드 파일을 사용해야 의미가 있다.
빌드 디렉토리의 키보드을 로딩할 수 있는 기능을 제공하기위해서
LIBHANGUL_KEYBOARD_PATH 환경 변수를 도입한다.
소스 디렉토리에는 키보드 파일 템플릿만 있다. 완성된 키보드 파일은
빌드 디렉토리에 생성되므로 빌드 디렉토리에서 키보드 파일을 로딩해야 한다.
그러나 거기에는 combination 파일이 없으므로 제대로된 테스트를
위해서는 combination 파일도 복사해주는 룰이 필요하다.
AC_CONFIG_LINKS()를 사용하여 소스만 고치고도 테스트 가능하게 한다.
|
|
|
|
|
|
|
| |
pedantic 옵션을 추가했을 때 발생하는 워닝을 제거한다.
다른 워닝이 발생하는 곳도 같이 수정한다.
https://github.com/libhangul/libhangul/issues/44
|
|
|
|
|
|
|
|
|
|
| |
hangul_keyboard_list에 사용자가 생성한 HangulKeyboard를
등록할 수 있는 api를 추가한다.
관련하여 unit test 코드도 추가함.
https://github.com/libhangul/libhangul/pull/21
https://github.com/libhangul/libhangul/issues/28
|
|
|
|
|
|
| |
ㅎㅐㅅㅅ입력 테스트 추가
https://github.com/choehwanjin/ibus-hangul/issues/58
|
|
|
|
|
|
| |
키보드 파일이 자기자신을 include한 경우에대한 테스트 코드 추가한다.
관련 api hangul_keyboard_new_from_file()도 추가하고
샘플 키보드 파일 recursive.xml을 추가한다.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
한글 자판 파일의 확장성을 고려하여 자판 파일은
xml로 구성하도록 한다. xml 파서는 expat을 사용한다.
xml 번역을 위해서 intltool을 사용하고 autopoint대신 intltool로
gettext을 초기화 한다.
한글 자판 관리는 HangulKeyboardList를 통해서 한다.
한글 자판을 로딩하고 언로딩하기 위해서 hangul_init()/hangul_fini()와
같은 함수를 추가로 도입한다.
HangulKeyboard는 HangulCombination과 세트로 관리하는 편이
합리적인 것 같다.
|
|
|
|
|
|
|
|
|
|
| |
첫음절에 유니코드 초성에 없는 글자도 조합하는 기능을 설정할 수 있게
한다. libhangul에서는 ㄳ이나 ㄺ등 초성에 없는 글자를 첫음절에서
조합하는 기능을 제공하지 않았다. 그러나 MS IME와 호환성을 높이기
위해서 이 기능을 추가하였으므로, 이 기능을 켜고 끌 수 있도록 옵션으로
처리한다.
관련 유닛테스트 코드도 추가한다.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
두벌식에서 자음을 연속 입력해서 된소리로 조합해주는 기능을 설정으로
조정할 수 있게 한다. (예를 들어 ㄱ+ㄱ을 ㄲ으로 변환해 주는 기능)
이에 따라서 관련 유닛 테스트 코드를 변경하고 이 옵션을 테스트할
코드를 추가한다.
기본값은 MS IME 호환을 위해서 false로 설정한다.
세벌식의 경우에는 이 기능이 자판의 기본적인 동작 방식이므로 이
옵션으로 조정되지 않는다.
두벌식 옛한글 자판의 경우에는 현대 한글 자모의 경우만 조합이 제한되고
옛한글 자모들은 그대로 조합된다.
구현에 필요한 hangul_is_jamo_conjoinable 함수도 추가.
|
|
|
|
|
|
|
|
|
|
| |
hangul_ic_set_option 함수를 통해서 입력 옵션 설정이 가능하다.
처음에는 filter 함수를 이용해서 라이브러리 외부에서 좀더 유연하게
조종할 수 있도록 하려 했었는데, 옵션을 만드는 쪽이 구현과 사용이 더
쉬울 것 같아서 옵션으로 추가한다.
첫번째 구현으로 auto reorder 옵션을 추가하고, 관련 테스트 코드도
추가한다. 기본값은 MS IME 호환을 위해서 false로 설정한다.
|
| |
|
|
|
|
|
|
|
|
| |
원래 이 글자들은 유니코드 초성에 없는 글자들이라서 입력 기능을
제공하지 않았지만, MS IME 호환 기능을 요구하는 경우가 많아서
libhangul 수준에서 제공하기로 결정한다.
그래서 ㄳ은 초성이 결합하여 종성이 되도록 combination table을
만든다.
|
| |
|
|
|
|
|
|
|
|
| |
wchar_t 내용이 UCS-4라고 가정해서는 안되지만, GCC를 사용하는 경우에
한해서 사용이 쉬우므로 이렇게 수정한다.
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@265 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
|
|
|
| |
freebsd에서 컴파일 오류가 발생하는 것을 막기 위한 것
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@262 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
|
|
|
|
| |
To compile with GNU gettext, we need libintl on freebsd.
So it is safer to specify the variable LIBINTL which is set by AM_GNU_GETTEXT.
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@261 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
| |
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@260 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
|
|
|
|
| |
계속 추가할 예정
디버깅할때 편리하기 위해서 NOFORK 모드를 사용
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@243 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
지금까지는 완성 음절로 표현이 불가능한 중성 + 종성 같은 음절의 경우
호환자모 중성과 종성을 나열하여 표현하였는데, 이제는 한글 자모 영역의
글자를 사용하여 초성채움 + 중성 + 종성으로 표현한다.
이렇게 기능을 수정하면, 옛한글 자판의 경우도 hangul_buffer_get_string()
함수를 그대로 사용할 수 있으므로 자판 관리가 좀더 편리해지는 측면이 있다.
그러나 단점으로 세벌식에서 모아치기 기능을 활용하는 중에 한글 자모로 표현한
글자가 나타날 수 있는데, 이때에 이 글자를 제대로 렌더링 하지 못할 가능성이
있다.
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@233 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
| |
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@227 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
| |
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@202 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
|
|
|
|
|
|
|
| |
* 로마자 입력 방식 구현
* 로마자 입력 방식 테스트 코드 구현
* backspace에서 stack이 바닥나면 초중성 코드를 모두 지운다.
로마자 입력방식에서 임의로 추가된 중성 코드가 backspace 입력될때
같이 지워지기 위한 구현
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@199 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
|
|
|
|
|
| |
* check 라이브러리를 이용하여 구현
* check 라이브러리가 없어도 libhangul을 빌드하는 데는 문제 없게 설정
* 시범삼아 syllable iterator 코드의 테스트 코드 작성
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@190 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
|
|
|
| |
* hanja.c에서 검색 결과 출력 포맷 수정
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@159 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
| |
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@132 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
| |
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@129 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
| |
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@127 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
| |
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@105 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
| |
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@98 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
| |
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@96 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
|
|
|
| |
* wcstombs() 대신 iconv() 사용
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@95 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
| |
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@82 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
|
|
|
|
|
| |
* add hangul_ic_flush() function which flushes the current buffer and
return it. returned pointer is not need to freed, but it is available
until other HangulInputContext function is called.
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@76 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
| |
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@62 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
| |
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@52 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
| |
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@51 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
| |
git-svn-id: http://kldp.net/svn/hangul/libhangul/trunk@34 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
|
|
| |
git-svn-id: http://kldp.net/svn/hangul/trunk/hangul@13 8f00fcd2-89fc-0310-932e-b01be5b65e01
|
|
git-svn-id: http://kldp.net/svn/hangul/trunk/hangul@3 8f00fcd2-89fc-0310-932e-b01be5b65e01
|