summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Add LIBHANGUL_KEYBOARD_PATH environment variable featuremasterkeyboard-pathChoe Hwanjin2021-09-195-28/+89
| | | | | | | | | | | | | | | | LIBHANGUL_KEYBOARD_PATH 환경 변수를 설정하면 그 위치의 키보드 파일을 로딩하게 한다. 테스트할 때에는 시스템에 설치된 키보드 파일이 아니라 빌드 디렉토리의 키보드 파일을 사용해야 의미가 있다. 빌드 디렉토리의 키보드을 로딩할 수 있는 기능을 제공하기위해서 LIBHANGUL_KEYBOARD_PATH 환경 변수를 도입한다. 소스 디렉토리에는 키보드 파일 템플릿만 있다. 완성된 키보드 파일은 빌드 디렉토리에 생성되므로 빌드 디렉토리에서 키보드 파일을 로딩해야 한다. 그러나 거기에는 combination 파일이 없으므로 제대로된 테스트를 위해서는 combination 파일도 복사해주는 룰이 필요하다. AC_CONFIG_LINKS()를 사용하여 소스만 고치고도 테스트 가능하게 한다.
* intltool to gettext migrationChangwoo Ryu2021-04-0614-26/+51
| | | | https://wiki.gnome.org/Initiatives/GnomeGoals/GettextMigration
* Remove compiler warnings with -Wpedantic (#44)Choe Hwanjin2021-04-043-3/+4
| | | | | | | pedantic 옵션을 추가했을 때 발생하는 워닝을 제거한다. 다른 워닝이 발생하는 곳도 같이 수정한다. https://github.com/libhangul/libhangul/issues/44
* 建設社 추가, 강강수월래에 설명 추가Choe Hwanjin2020-02-291-1/+2
| | | | | 한자 중 틀린 것에 설명이 없으면 맞는 표현으로 오해할 것 같아서 설명을 추가한다.
* Merge branch 'dhsung_modhanja_20191026' of ↵Choe Hwanjin2020-02-161-230/+220
|\ | | | | | | | | | | https://github.com/studioego/libhangul https://github.com/libhangul/libhangul/pull/40
| * fixed Hanja list, Hangul range from ㄱ to 곶DaeHyun Sung2019-11-041-230/+220
|/ | | | | | | | | | | | | 한자 목록 중 `ㄱ`에서 `곶`까지의 범위의 한자어 수정 Reference. * 네이버 국어사전 https://ko.dict.naver.com * 다음 국어사전 https://dic.daum.net/index.do?dic=kor * 표준국어대사전 http://stdict.korean.go.kr issue#39 한자(漢字) 목록 중 ㄱ-곶까지의 내용 수정 https://github.com/libhangul/libhangul/issues/39
* Fix Korean Hanja sounds and charactersDaeHyun Sung2019-10-051-4/+4
| | | | | | | | | | | | | | | | | 1. 간략화한 국(国)은 공식으로 사용하지 않아 변경. `구세주국:救世主国:엘살바도르` -> `구세주국:救世主國:엘살바도르` 2. `라오스`에 대한 한자 명칭 변경 `나우:老撾:라오스`->`노과:老撾:라오스` `노과:羅宇:라오스`->`나우:羅宇:라오스` 3. `乓`의 음 변경 `퐁`->`팡` https://github.com/libhangul/libhangul/issues/36
* doc: keyboard 문서 생성할때 매핑 안된 글자 처리 추가Choe Hwanjin2018-06-061-0/+4
| | | | | | | | 이전 fb9fc71 수정에서 두벌식 자판의 영문을 더이상 매핑하지 않도록 수정했는데, 이것으로 자판 문서가 제대로 생성되지 않는 문제가 발생했다. 매핑되지 않은 글자는 회색으로 표현되도록 한다. https://github.com/libhangul/libhangul/issues/27
* User custom 자판 등록 기능 제공Choe Hwanjin2018-06-063-0/+84
| | | | | | | | | | hangul_keyboard_list에 사용자가 생성한 HangulKeyboard를 등록할 수 있는 api를 추가한다. 관련하여 unit test 코드도 추가함. https://github.com/libhangul/libhangul/pull/21 https://github.com/libhangul/libhangul/issues/28
* 두벌식 자판에서 한글이 아닌 것은 원 자판의 글자를 사용Choe Hwanjin2018-06-063-168/+84
| | | | | | | | | | | | | | | | | | | | | 기존 방식에서는 사용자 자판이 qwerty 자판이 아닌 경우에도 한글 상태에서는 qwerty 자판으로 동작하게 된다. 사용자가 qwerty 자판이 아닌 것을 사용할때에는 불편할 수 있으므로 한글에 대해서만 처리하고 나머지 키는 그대로 포워딩할 수 있도록 하는 것이다. 이렇게 하면 반대로 사용자가 한글 자판 상태에서 qwerty 기호나 숫자를 입력하고자할때에는 사용할 수가 없게 된다. 또 글자를 commit하는 방식이 아니라 키이벤트를 포워딩하는 방식으로 처리하게 되므로 최근 ibus에서 발생한 space 순서가 바뀌는 문제 같은 것들이 영문자에 대해서 모두 발생할 위험성이 커질 수 있다. 참고: https://github.com/libhangul/ibus-hangul/issues/42 세벌식 자판의 경우는 좀더 생각해볼 시간을 가지기 위해서 일단 적용을 보류하고 두벌식에만 먼저 적용한다. https://github.com/libhangul/libhangul/issues/27 https://github.com/libhangul/ibus-hangul/issues/15
* Add copyright notice to hangulkeyboard.hChoe Hwanjin2018-06-061-0/+17
|
* doc: builddir과 srcdir이 다른 경우에도 빌드되게 함Choe Hwanjin2018-06-066-20/+39
| | | | | Makefile을 자동으로 업데이트하고 빌드되게 하려면 Makefile.am으로 처리하는 편이 편리한 것 같다.
* Ownership transfer to libhangul organizationChoe Hwanjin2018-06-064-9/+9
| | | | This make the url look more official.
* hangul_combination_set_data()에서 size_t overflow 문제 수정Choe Hwanjin2018-06-051-1/+1
| | | | | | | 대부분의 경우 ULONG_MAX는 SIZE_MAX와 같은 값을 가지겠지만, size_t 타입에 맞는 최대값을 사용하는 편이 안전할 것이다. https://github.com/choehwanjin/libhangul/issues/17
* PATH_MAX 사용 코드 제거Choe Hwanjin2018-06-051-10/+36
| | | | | | | | | | | | hurd에서는 PATH_MAX가 없는 것 같다. https://buildd.debian.org/status/fetch.php?pkg=libhangul&arch=hurd-i386&ver=0.1.0%2Bgit20170815-1&stamp=1511811053&raw=0 관련 코드는 정확한 PATH_MAX값이 필요한 것이 아니므로 PATH_MAX를 사용하지 않도록 수정하는 편이 좋을 것 같다. 파일 이름에 사용할 버퍼에 필요한 스트링 길이를 계산하고 메모리를 할당하여 처리한다. https://github.com/choehwanjin/libhangul/issues/24
* 순아래 종성 연타 입력 테스트 추가Choe Hwanjin2018-06-051-0/+8
| | | | | | ㅎㅐㅅㅅ입력 테스트 추가 https://github.com/choehwanjin/ibus-hangul/issues/58
* 키보드 파일을 로딩시 재귀호출 테스트 코드 추가Choe Hwanjin2018-06-055-3/+22
| | | | | | 키보드 파일이 자기자신을 include한 경우에대한 테스트 코드 추가한다. 관련 api hangul_keyboard_new_from_file()도 추가하고 샘플 키보드 파일 recursive.xml을 추가한다.
* 키보드 파일 로딩시 재귀 호출 처리Choe Hwanjin2018-06-021-8/+25
| | | | | 자기 자신을 include할 경우에 대한 처리가 필요하다. include depth를 64개까지만 처리하도록 제한을 두어 해결한다.
* Merge branch 'studioego-work'Choe Hwanjin2017-08-151-0/+158
|\ | | | | | | | | | | 대법원 인명용 한자 추가 https://github.com/choehwanjin/libhangul/pull/19
| * 대법원 인명용한자표( ↵DaeHyun Sung2017-08-131-0/+158
|/ | | | | | | | | | | | | | | | | http://help.scourt.go.kr/nm/img/hanja/hanja_2015.pdf )에 포함되었으나, libhangul에 누락된 158자 추가. 대법원 인명용한자표의 내용을 텍스트로 변환한 Koichi Yasuoka (安岡孝一)씨의 작업물 韓国の人名用漢字表のテキスト版(https://srad.jp/~yasuoka/journal/589283/)을 기반으로 작업하였습니다. 참고: 京都大学人文科学研究所附属 東アジア人文情報学研究センター[교토대학 인문과학연구소 부속 동아시아 인문정보학연구센터] 特集 韓国の人名用漢字と漢字コート ゙[특집 한국의 인명용한자와 한자코드] (安岡孝一・安岡素子編) http://kanji.zinbun.kyoto-u.ac.jp/~yasuoka/publications/diccs2016.pdf Unicode 11의 Unihan database에 들어갈 한국어 한자 속성 내용 http://appsrv.cse.cuhk.edu.hk/~irg/irg/irg48/IRGN2200_UnihanDB_CN_JP_KR.pdf
* ENABLE_NLS 처리 추가Choe Hwanjin2016-03-293-2/+5
| | | | | intltool은 ENABLE_NLS를 정의하지 않는 것 같다. 대신 USE_NLS를 설정하므로 이 값으로 ENABLE_NLS 처리를 한다.
* configure 옵션 추가: --disable-external-keyboardsChoe Hwanjin2016-03-282-2/+23
| | | | | | External keyboards 로딩 기능 사용 여부를 configure에서 설정할 수 있게 한다. libhangul을 외부 파일 없이 binary만 가지고 사용하고자 할때 이 옵션을 사용하면 좋을 것이다.
* 문서 업데이트: 빌드 방법 수정Choe Hwanjin2016-03-271-3/+10
| | | | git에서 빌드할 때와 source tarball에서 빌드할때 명령은 달라야 한다.
* @LIBINTL@ 제거Choe Hwanjin2016-03-271-1/+1
| | | | | | | | intltool은 @LIBINTL@ 변수를 제공하지 않는 것 같다. xml을 번역하기 위해서는 intltool을 사용할 수 밖에 없으니 이 문제를 해결할 방법을 찾아봐야 할 것 같다. @LIBINTL@은 *bsd에서 빌드 오류가 발생하여 추가한 것이다.
* hangul_init 함수의 중복 호출 문제 처리Choe Hwanjin2016-03-061-0/+6
|
* 문서 업데이트Choe Hwanjin2016-03-054-2/+98
|
* 프로젝트 주소 업데이트Choe Hwanjin2016-03-054-11/+11
|
* tools의 hangul도 hangul ic에 추가된 option 기능을 사용하여 구현Choe Hwanjin2016-03-051-16/+3
| | | | | strict order 옵션은 HANGUL_IC_OPTION_AUTO_REORDER을 사용하여 구현하면 된다.
* xml로 작성된 외부의 한글 자판을 로딩하는 기능 구현Choe Hwanjin2016-03-0525-364/+2603
| | | | | | | | | | | | | | 한글 자판 파일의 확장성을 고려하여 자판 파일은 xml로 구성하도록 한다. xml 파서는 expat을 사용한다. xml 번역을 위해서 intltool을 사용하고 autopoint대신 intltool로 gettext을 초기화 한다. 한글 자판 관리는 HangulKeyboardList를 통해서 한다. 한글 자판을 로딩하고 언로딩하기 위해서 hangul_init()/hangul_fini()와 같은 함수를 추가로 도입한다. HangulKeyboard는 HangulCombination과 세트로 관리하는 편이 합리적인 것 같다.
* hangul ic: HANGUL_IC_OPTION_NON_CHOSEONG_COMBI 옵션 추가Choe Hwanjin2016-02-243-0/+32
| | | | | | | | | | 첫음절에 유니코드 초성에 없는 글자도 조합하는 기능을 설정할 수 있게 한다. libhangul에서는 ㄳ이나 ㄺ등 초성에 없는 글자를 첫음절에서 조합하는 기능을 제공하지 않았다. 그러나 MS IME와 호환성을 높이기 위해서 이 기능을 추가하였으므로, 이 기능을 켜고 끌 수 있도록 옵션으로 처리한다. 관련 유닛테스트 코드도 추가한다.
* hangul ic: HANGUL_IC_OPTION_COMBI_ON_DOUBLE_STROKE 옵션 추가Choe Hwanjin2016-02-234-64/+163
| | | | | | | | | | | | | | | | 두벌식에서 자음을 연속 입력해서 된소리로 조합해주는 기능을 설정으로 조정할 수 있게 한다. (예를 들어 ㄱ+ㄱ을 ㄲ으로 변환해 주는 기능) 이에 따라서 관련 유닛 테스트 코드를 변경하고 이 옵션을 테스트할 코드를 추가한다. 기본값은 MS IME 호환을 위해서 false로 설정한다. 세벌식의 경우에는 이 기능이 자판의 기본적인 동작 방식이므로 이 옵션으로 조정되지 않는다. 두벌식 옛한글 자판의 경우에는 현대 한글 자모의 경우만 조합이 제한되고 옛한글 자모들은 그대로 조합된다. 구현에 필요한 hangul_is_jamo_conjoinable 함수도 추가.
* input context 입력 옵션 설정 기능 추가: auto reorderChoe Hwanjin2016-02-213-15/+142
| | | | | | | | | | hangul_ic_set_option 함수를 통해서 입력 옵션 설정이 가능하다. 처음에는 filter 함수를 이용해서 라이브러리 외부에서 좀더 유연하게 조종할 수 있도록 하려 했었는데, 옵션을 만드는 쪽이 구현과 사용이 더 쉬울 것 같아서 옵션으로 추가한다. 첫번째 구현으로 auto reorder 옵션을 추가하고, 관련 테스트 코드도 추가한다. 기본값은 MS IME 호환을 위해서 false로 설정한다.
* backspace 테스트 케이스 추가: 두벌식Choe Hwanjin2016-02-211-0/+9
|
* hangul_ic_process함수에서 backspace 처리도 가능하게 함Choe Hwanjin2016-02-201-0/+4
| | | | | | ascii 코드를 직접 처리하는 경우 backspace를 예외 처리하기 보다는 hangul_ic_process함수에서 '\b' 코드로 처리하게 하면 여러 테스트 코드들이 훨씬 간결해질 수 있다.
* MS IME 호환 기능 추가: ㄳ 입력 기능 추가Choe Hwanjin2016-02-203-0/+26
| | | | | | | | 원래 이 글자들은 유니코드 초성에 없는 글자들이라서 입력 기능을 제공하지 않았지만, MS IME 호환 기능을 요구하는 경우가 많아서 libhangul 수준에서 제공하기로 결정한다. 그래서 ㄳ은 초성이 결합하여 종성이 되도록 combination table을 만든다.
* Fix incorrect sizeof expressionbaserock/libhangul-0.1.0-19-g78e9d89Jihoon Kim2015-02-241-1/+1
| | | | | | sizeof of pointer variable returns 4 bytes. Change-Id: Iaf4444ceabff8ccc9a1f2f397e13bbf01b5feb04
* hanja_list_new()에서 발생할 가능성이 있는 memory leak 수정Choe Hwanjin2015-02-231-9/+16
| | | | strdup이 실패할 경우와 malloc이 실패할 경우에 대한 처리를 강화한다.
* MS IME에서 제공하는 심볼 변환 테이블 추가Choe Hwanjin2014-09-282-1/+1018
| | | | | | 이 mssymbol.txt파일은 ibus-hangul의 것을 사용했다. https://github.com/choehwanjin/libhangul/pull/4
* ISSUE.9 잘못된 한자어 수정(車裂形 -> 車裂刑, 家門形 -> ↵Choe Hwanjin2014-09-101-2/+2
| | | | | | 家門刑) https://code.google.com/p/libhangul/issues/detail?id=9
* fix typo in doxygenJihoon Kim2014-04-081-2/+2
| | | | | | | 설멍 -> 설명 해댱 -> 해당 Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
* hangul_jamo_to_cjamo에 대한 unit test case 추가Choe Hwanjin2013-11-031-0/+15
|
* hangul_jamo_to_cjamo 테이블에 빠진 곳 추가Choe Hwanjin2013-11-031-0/+4
| | | | | | 0xd7c7 ~ 0xd7ca까지 값이 빠져 있었음 patch from: 김지훈 <jihoon48.kim@samsung.com>
* Fix some build warnings.Carbo Kuo2013-06-092-1/+2
|
* pkg-config를 사용해 컴파일하는 방법에 대한 설명 추가Choe Hwanjin2012-04-161-0/+22
|
* Update documentsChoe Hwanjin2012-03-282-1/+2
| | | | | | 중복된 "두벌식 옛글" 항목 제거 http://code.google.com/p/libhangul/issues/detail?id=1
* 暎畵는 잘못된 한자어이므로 삭제Choe Hwanjin2012-01-081-2/+1
|
* doxygen 생성 룰 개선Choe Hwanjin2011-12-172-7/+9
| | | | | Doxyfile.in과 gen_hangulkeyboards.py 변경에 따라서 관련 파일이 자동으로 생성되도록 룰을 추가한다.
* ignore list 추가Choe Hwanjin2011-12-171-0/+50
|
* Doxygen 문서 업데이트Choe Hwanjin2011-12-175-86/+603
| | | | | | libhangul이 지원하는 자판에 대한 문서 추가 ref 태그에 띠어 쓰기가 없는 오류 수정 mainpage도 나머지 문서와 어투를 맞춤
* Doxygen에서 파일 이름에 fullpath를 사용하지 않음Choe Hwanjin2011-11-231-1/+1
|