나비개발자 최환진님의 문제 제기와 대안 제시입니다.
https://github.com/libhangul/ibus-hangul/issues/69개인적으로 이리저리요리조리 옮겨가며 리눅스에서 한글 입력해왔었는데…
이 ibus-hangul 논의가 정말 한글입력기 여정의 마침표이길 기대해봅니다.
많은 성원 부탁드립니다!!!
꾸벅,
황병희 드림
[크롬OS에서 본 글을 작성했습니다]
나비개발자 최환진님의 문제 제기와 대안 제시입니다.
https://github.com/libhangul/ibus-hangul/issues/69개인적으로 이리저리요리조리 옮겨가며 리눅스에서 한글 입력해왔었는데…
이 ibus-hangul 논의가 정말 한글입력기 여정의 마침표이길 기대해봅니다.
많은 성원 부탁드립니다!!!
꾸벅,
황병희 드림
[크롬OS에서 본 글을 작성했습니다]
https://github.com/libhangul/ibus-hangul/issues/69#issuecomment-449636995
최환진님이 구현한 새로운 기능을 누군가 테스트 해보신분 계신지요… 우분투에서요;;;
미리 감사드립니다.
[우분투 18.04 파여폭스 나비에서 작성했씁니다]
master 소스코드 [Latest commit 16aa374 on 23 Mar] 전체를 그대로 내려받아서
빌드후 테스트 해봤으나… 실패했씁니다. 한영 전환이 이루어지지 않더라구요.
제가 무엇을 더 설정해야 할지 자세히 몰라서 다시 나비로 복귀했습니다.
빌드 후 make install 성공한 메시지를 파일로 남깁니다.
# 환경: 우분투 18.04.2
(bionic)soyeomul@localhost:~/iwork/ibus-hangul-master$ sudo make install
[sudo] password for soyeomul:
Making install in src
make[1]: Entering directory '/home/soyeomul/iwork/ibus-hangul-master/src'
make[2]: Entering directory '/home/soyeomul/iwork/ibus-hangul-master/src'
/bin/mkdir -p '/usr/local/libexec'
/bin/bash ../libtool --mode=install /usr/bin/install -c ibus-engine-hangul '/usr/local/libexec'
libtool: install: /usr/bin/install -c ibus-engine-hangul /usr/local/libexec/ibus-engine-hangul
/bin/mkdir -p '/usr/local/share/ibus/component'
/usr/bin/install -c -m 644 hangul.xml '/usr/local/share/ibus/component'
make[2]: Leaving directory '/home/soyeomul/iwork/ibus-hangul-master/src'
make[1]: Leaving directory '/home/soyeomul/iwork/ibus-hangul-master/src'
Making install in setup
make[1]: Entering directory '/home/soyeomul/iwork/ibus-hangul-master/setup'
make[2]: Entering directory '/home/soyeomul/iwork/ibus-hangul-master/setup'
/bin/mkdir -p '/usr/local/libexec'
/usr/bin/install -c ibus-setup-hangul '/usr/local/libexec'
make install-exec-hook
make[3]: Entering directory '/home/soyeomul/iwork/ibus-hangul-master/setup'
/bin/mkdir -p /usr/local/bin
cd /usr/local/bin && \
rm -f ibus-setup-hangul && \
a="/usr/local/bin"; b="/usr/local/libexec"; updir=""; downdir=""; \
while test "$a" != "$b"; do \
bbase=`basename $b`; \
updir="../$updir"; \
downdir="$bbase/$downdir"; \
a=`dirname $a`; b=`dirname $b`; \
done; \
ln -s $updir${downdir}ibus-setup-hangul ibus-setup-hangul
make[3]: Leaving directory '/home/soyeomul/iwork/ibus-hangul-master/setup'
/bin/mkdir -p '/usr/local/share/applications'
/usr/bin/install -c -m 644 ibus-setup-hangul.desktop '/usr/local/share/applications'
/bin/mkdir -p '/usr/local/share/icons/hicolor/64x64/apps'
/usr/bin/install -c -m 644 ibus-setup-hangul.png '/usr/local/share/icons/hicolor/64x64/apps'
/bin/mkdir -p '/usr/local/share/icons/hicolor/scalable/apps'
/usr/bin/install -c -m 644 ibus-setup-hangul.svg '/usr/local/share/icons/hicolor/scalable/apps'
/bin/mkdir -p '/usr/local/share/ibus-hangul/setup'
/usr/bin/install -c -m 644 config.py '/usr/local/share/ibus-hangul/setup'
Byte-compiling python modules...
config.py
Byte-compiling python modules (optimized versions) ...
config.py
/bin/mkdir -p '/usr/local/share/ibus-hangul/setup'
/usr/bin/install -c -m 644 main.py keycapturedialog.py setup.ui '/usr/local/share/ibus-hangul/setup'
Byte-compiling python modules...
main.pykeycapturedialog.py
Byte-compiling python modules (optimized versions) ...
main.pykeycapturedialog.py
make[2]: Leaving directory '/home/soyeomul/iwork/ibus-hangul-master/setup'
make[1]: Leaving directory '/home/soyeomul/iwork/ibus-hangul-master/setup'
Making install in icons
make[1]: Entering directory '/home/soyeomul/iwork/ibus-hangul-master/icons'
make[2]: Entering directory '/home/soyeomul/iwork/ibus-hangul-master/icons'
make[2]: Nothing to be done for 'install-exec-am'.
/bin/mkdir -p '/usr/local/share/icons/hicolor/64x64/apps'
/usr/bin/install -c -m 644 ibus-hangul.png '/usr/local/share/icons/hicolor/64x64/apps'
/bin/mkdir -p '/usr/local/share/icons/hicolor/scalable/apps'
/usr/bin/install -c -m 644 ibus-hangul.svg '/usr/local/share/icons/hicolor/scalable/apps'
/bin/mkdir -p '/usr/local/share/ibus-hangul/icons'
/usr/bin/install -c -m 644 ibus-hangul.png ibus-hangul.svg '/usr/local/share/ibus-hangul/icons'
make[2]: Leaving directory '/home/soyeomul/iwork/ibus-hangul-master/icons'
make[1]: Leaving directory '/home/soyeomul/iwork/ibus-hangul-master/icons'
Making install in data
make[1]: Entering directory '/home/soyeomul/iwork/ibus-hangul-master/data'
make[2]: Entering directory '/home/soyeomul/iwork/ibus-hangul-master/data'
make[2]: Nothing to be done for 'install-exec-am'.
/bin/mkdir -p '/usr/local/share/metainfo'
/usr/bin/install -c -m 644 org.freedesktop.ibus.engine.hangul.metainfo.xml '/usr/local/share/metainfo'
/bin/mkdir -p '/usr/local/share/glib-2.0/schemas'
/usr/bin/install -c -m 644 org.freedesktop.ibus.engine.hangul.gschema.xml '/usr/local/share/glib-2.0/schemas'
/bin/mkdir -p '/usr/local/share/ibus-hangul/data'
/usr/bin/install -c -m 644 symbol.txt '/usr/local/share/ibus-hangul/data'
make install-data-hook
make[3]: Entering directory '/home/soyeomul/iwork/ibus-hangul-master/data'
if test -z ""; then \
glib-compile-schemas /usr/local/share/glib-2.0/schemas; \
fi
make[3]: Leaving directory '/home/soyeomul/iwork/ibus-hangul-master/data'
make[2]: Leaving directory '/home/soyeomul/iwork/ibus-hangul-master/data'
make[1]: Leaving directory '/home/soyeomul/iwork/ibus-hangul-master/data'
Making install in m4
make[1]: Entering directory '/home/soyeomul/iwork/ibus-hangul-master/m4'
make[2]: Entering directory '/home/soyeomul/iwork/ibus-hangul-master/m4'
make[2]: Nothing to be done for 'install-exec-am'.
make[2]: Nothing to be done for 'install-data-am'.
make[2]: Leaving directory '/home/soyeomul/iwork/ibus-hangul-master/m4'
make[1]: Leaving directory '/home/soyeomul/iwork/ibus-hangul-master/m4'
Making install in po
make[1]: Entering directory '/home/soyeomul/iwork/ibus-hangul-master/po'
installing ko.gmo as /usr/local/share/locale/ko/LC_MESSAGES/ibus-hangul.mo
installing zh_CN.gmo as /usr/local/share/locale/zh_CN/LC_MESSAGES/ibus-hangul.mo
if test "ibus-hangul" = "gettext-tools"; then \
/bin/mkdir -p /usr/local/share/gettext/po; \
for file in Makefile.in.in remove-potcdate.sin quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot Makevars.template; do \
/usr/bin/install -c -m 644 ./$file \
/usr/local/share/gettext/po/$file; \
done; \
for file in Makevars; do \
rm -f /usr/local/share/gettext/po/$file; \
done; \
else \
: ; \
fi
make[1]: Leaving directory '/home/soyeomul/iwork/ibus-hangul-master/po'
make[1]: Entering directory '/home/soyeomul/iwork/ibus-hangul-master'
make[2]: Entering directory '/home/soyeomul/iwork/ibus-hangul-master'
make[2]: Nothing to be done for 'install-exec-am'.
make[2]: Nothing to be done for 'install-data-am'.
make[2]: Leaving directory '/home/soyeomul/iwork/ibus-hangul-master'
make[1]: Leaving directory '/home/soyeomul/iwork/ibus-hangul-master'
(bionic)soyeomul@localhost:~/iwork/ibus-hangul-master$
[우분투 18.04 파여폭스 나비에서 작성했씁니다]
변칙을 썼습니다.
apt-get install 으로 ibus-hangul 을 먼저 설치후,
수동으로 빌드한 ibus-engine-hangul 과 ibus-setup-hangul 두 바이너리를 덮어씌웠습니다…
그런후에 우분투 재시작…
설정을 바꾸었씁니다. 한영전환을 크롬OS와 동일한 CTRL+SPACE 로요.
그리고 dconf-editor 로 변경할거 변경했고요.
이후 그놈터미널과 파여폭스에서 테스트해봤지요, 잘 됩니다…
알려진 버그들
(1) 스페이스바를 누르면 앞뒤 글자가 뒤바뀜
(2) 끝 글자가 따라오는거
위 두가지 문제가 아직 없네요.
사실 전 위 두가지 버그를 경험한바가 없습니다 지금껏 계속 나비를 사용해왔거등요.
확실히 최환진님의 새기능 구현 (서라운드므시기) 마음에 듭니다.
[우분투 18.04 파여폭스 ibus-hangul(수동빌드)에서 작성했씁니다]
추가:
github 이슈페이지에서 사람들이 걱정했던 글자가 조합되는 모습이 안보이는거.
그런거 없습니다. 글자 조합되는거 다 보입니다… ^^^
[우분투 18.04 파여폭스 ibus-hangul(수동빌드)에서 작성했씁니다]
바이너리 파일 덮어씌웠다는 증거 남깁니다.
(bionic)soyeomul@localhost:/usr/lib/ibus$ openssl sha256 -sha256 ibus-engine-hangul
SHA256(ibus-engine-hangul)= f46ec8607e0ed69bd67725cc3203a9f150a412e4eb3055e64e09f0edeae2de32
(bionic)soyeomul@localhost:/usr/lib/ibus$ openssl sha256 -sha256 /usr/local/libexec/ibus-engine-hangul
SHA256(/usr/local/libexec/ibus-engine-hangul)= f46ec8607e0ed69bd67725cc3203a9f150a412e4eb3055e64e09f0edeae2de32
(bionic)soyeomul@localhost:/usr/lib/ibus$
[우분투 18.04 파여폭스 ibus-hangul(수동빌드)에서 작성했씁니다]
None 으로 설정했씁니다. 문제없이 잘 써집니다.
[우분투 18.04 파여폭스 ibus-hangul(수동빌드)에서 작성했씁니다]
수동빌드에서 공식 패키지로의 원상복구는
sudo apt-get install ibus-hangul --reinstall
입니다. 그럼 원래 공식패키지의 파일로 돌아갑니다.
[우분투 18.04 파여폭스 ibus-hangul(수동빌드)에서 작성했씁니다]
리브레오피스에서 한글 테스트 문제없습니다. 그 어떤 버그도 생기지 않고 잘 써집니다.
[우분투 18.04 파여폭스 ibus-hangul(수동빌드)에서 작성했씁니다]
구글 크롬 브라우저 우분투 18.04 (버전 74.0.3729.169(공식 빌드) Built on Ubuntu , running on Ubuntu 18.04 (64비트)) + ibus-hangul(서라운딩 패치판)
구글 크롬OS (버전 74.0.3729.159(공식 빌드) (32비트)) + 크롬OS 자체입력기
위 두 환경에서 공통적으로 페이스북 게시물 만들기 제목란에서 한글입력할때 자모가 분리되며 순서도 엉키는 문제점을 발견했습니다.
다행히도,
우분투 18.04 파여폭스에선 해당 페이스북에서 정상적으로 한글입력이 됩니다. 같은 입력기를 썼습니다. ibus-hangul(서라운딩 패치판).
[크롬OS 에서 적었습니다]
우분투 18.04 에서의 ibus-hangul [last commit 2019-03-23] 빌드 성공한 로그 파일을 링크로 남깁니다.
처음과 달리 --prefix=/usr 를 추가해서 빌드했습니다.
URL: https://gitlab.com/soyeomul/stuff/raw/master/typescript
[크롬OS 에서 적었습니다]
[우분투 18.04 파여폭스 ibus-hangul(서라운딩 패치판)에서 내용을 고쳤습니다]
깔끔하게 잘 되네요… 좋은 팁 감사합니다
나비개발자 최환진님이 좋은 대안제시를 해주셨는데, 피드백이 아무도 없어서 홀로 설레발쳤네요,
안틱스님의 소중한 코멘트 너무 감사드립니다^^
한동안 계속 이 수동빌드 입력기로 여러가지 테스트를 해나갈 예정입니다.
[우분투 18.04 파여폭스 ibus-hangul(서라운딩 패치판)에서 작성했씁니다]
(bionic)soyeomul@localhost:~$ dconf dump / | grep preedit
preedit-mode='none'
saved-view='/org/freedesktop/ibus/engine/hangul/preedit-mode'
(bionic)soyeomul@localhost:~$
추가정보로 dconf dump 를 떴을때,
preedit-mode=‘none’ 항목이 서라운딩 모드를 켠 상태를 의미합니다.
github 최환진님의 패치코드와 부연설명에서 참고했습니다.
[ibus-hangul(서라운딩 패치판)에서 작성햇씁니다]
우분투 18.04 에서 그놈에서 유명한 전통 메일러 에볼루션에서 한글 입력 테스트 해봤씁니다.
지난번에 제가 나비를 사용했을때엔… 에볼루션에서 한글 입력에 순서도 엉키고 자모가 막 날라댕기고 엉망이었는데…
이번 ibus-hangul(서라운딩 패치판)에선 한글 입력이 잘 됩니다. 정확하게. 버그없이. 맘에 듭니다.
덧: 메일 헤더 전체인코딩의 완벽한 UTF-8 을 위하야 export LANG=en_US.UTF-8 && evolution 으로 에볼루션을 시작했습니다.
[우분투 18.04 파여폭스 ibus-hangul(서라운딩 패치판)에서 작성했씁니다]
저도 얼마전에 테스트 해봤고요, 페이스북 + 크롬 브라우저 + ibus-hangul 에서 한글 입력에 문제가 있었씁니다. [1][2]
그래서 다시 github 이슈 페이지를 자세히 뜯어보니… libhangul 자체를 갱신해야 풀리는 문제였습니다.
이렇게 되면 libhangul 최신 소스코드 [last commit 2018-06-06] 전체를 내려받아서 새로이 빌드후, 그런 연후에 ibus-hangul 를 다시 빌드해야 하는 노가다를 해야하는데… 이건 쉽지않은 대공사입니다. 우분투 18.04 현재 최신 libhangul 패키지는 git20170815 입니다.
libhangul 만 갱신할 수 있다면… 페이스북/크롬브라우저 한글입력 문제 잡을 수 있을거 같아요. 하지만… 테스트가 쉽지 않습니다.
[1] https://forum.ubuntu-kr.org/viewtopic.php?f=4&t=30002#p128461
[2] 한글과 스페이스 순서가 바뀌는 문제 · Issue #42 · libhangul/ibus-hangul · GitHub
[우분투 18.04 파여폭스 ibus-hangul(서라운딩 패치판)에서 작성되었습니다]
우선, 페이스북+크롬OS+한글입력 문제는 해결책을 찾았습니다. [1]
관련 테스트도 제 크롬북으로 마쳤습니다. 지금은 페이스북에서 한글 이상없이 잘 적힙니다.
[1] https://openlearn.kr/cafe/community/82
[크롬OS 에서 작성했습니다]
반전이 일어났습니다…
[우분투 18.04 + 크롬 브라우저 + 나비 입력기] 이 조합으로 페이스북 갔더니 한글이 버그없이 잘 입력되더이다…
같은 환경에서 파여폭스도 무리없이 한글이 잘 입력됩니다.
… 나비 생명 연장입니다 ㅠㅠㅠ 정말 웃프네요 ㅠㅠㅠ …
[우분투 18.04 구글크롬 나비에서 작성했습니다]
제가 아직 일반사용자 수준인지라… 빌드및 구성을 제대로 한건지 잘 모르겠네요…
[빌드로그: https://gitlab.com/soyeomul/stuff/raw/master/typescript.20190616]
그래도 나름 최선을 다하여 빌드후 구성을 마친후 테스트를 해봤습니다.
최환진님과 또는 한글입력기 전문가 또는 패키지 메인테이너분들이 테스트 하는것을 나중에 기다려주세요.
저의 테스트에 의하면 여전히 구글크롬+ibus-hangul 조합으론 페이스북 한글 입력이 쉽지 않더라구요.
(같은 입력기환경으로 파여폭스에선 페이스북 한글입력 잘 됩니다.)
한동안 계속 테스트 해 나갈 예정입니다.
[1] https://web.facebook.com/groups/ubuntu.ko/permalink/1679260755445098/
[2] https://github.com/libhangul/ibus-hangul/issues/42#issuecomment-389350626
[3] https://forum.ubuntu-kr.org/viewtopic.php?f=4&t=30002#p128461
[우분투 18.04 구글크롬 libhangul(git20180606) ibus-hangul(git20190323) 에서 작성했습니다]
[우분투 18.04 파여폭스 libhangul(git20180606) ibus-hangul(git20190323) 에서 내용을 고쳤습니다]
지금까지 surrounding text 패치판 테스트 소감을 최환진님께 어제저녁 전자메일로 전달했습니다.
대략,
(1) 한글이 조합되는 과정이 잘 보인다.
(2) 구글크롬+페이스북 제외하곤 거의 모든 경우에서 한글 입력이 잘 된다.
(3) 리눅스 한글입력기 개발/향상에 신경써주셔서 늘 감사드린다.
라는 내용이었습니다.
^고맙습니다 감사합니다_^))//
[ibus-hangul(수동빌드)에서 적었습니다]