사용자 도구

사이트 도구


linux:inputmethod

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
linux:inputmethod [2019/12/12 09:14]
kwon37xi [Fcitx]
linux:inputmethod [2021/11/11 12:51] (현재)
kwon37xi [Input Method (입력기, 한글)]
줄 4: 줄 4:
 가끔씩 특정 im에 버그가 발생하는 경우가 있는데, 그럴때 아래 im들을 번갈아 설치해가며 테스트해서 가장 잘 작동하는 것을 사용하면 된다.  가끔씩 특정 im에 버그가 발생하는 경우가 있는데, 그럴때 아래 im들을 번갈아 설치해가며 테스트해서 가장 잘 작동하는 것을 사용하면 된다. 
  
-2018년 현재 별다른 문제가 없다면 fcitx 혹은 nimf가 제일 편한 것 같다.+2021년 현재 가장 포괄적으로 많은 애플리케이션이 지원하는 입력기는 [[linux:inputmethod:ibus|iBus]] 인 것 같다.
  
   * ''im-config''(구 ''im-switch'') 등의 명령으로 입력기를 전환할 수 있다.   * ''im-config''(구 ''im-switch'') 등의 명령으로 입력기를 전환할 수 있다.
-  * [[https://github.com/choehwanjin/nabi|나비]] : 한국어 전용 입력. +  * [[linux:inputmethod:fcitx|Linux Input Method fcitx]] 
-  * [[https://github.com/cogniti/nimf|Nimf(구 다솜)]] : 우리나라에서 만들어진 다국어 입력기 +  * [[linux:inputmethod:uim|UIM]] 
-  * [[https://github.com/ibus/ibus/wiki|iBus]] : 많은 배포판들이 표준으로 사용하고 있는 입력기. +  * [[linux:inputmethod:ibus|iBus]] 
-  * [[http://code.google.com/p/uim/|uim]] : 일본계로, 다종 언어 지원. 벼루 (uim-byeoru)입력기로 두벌식, 세벌식도 잘 지원. +  * [[linux:inputmethod:nimf|Nimf]] 
-  * [[https://fcitx-im.org/wiki/Fcitx|Fcitx]] : 중국계로, 다종 언어 지원. 한글 두벌식, 세벌식도 잘 지원.+  * [[linux:inputmethod:kime|kime]] 
 +  * [[linux:inputmethod:nabi|Nabi 나비]]
   * [[http://www.scim-im.org/|scim]] : 과거 많은 배포판들이 표준으로 사용하던 것   * [[http://www.scim-im.org/|scim]] : 과거 많은 배포판들이 표준으로 사용하던 것
  
-===== 특수상황 ===== +===== 오른쪽 Alt키를 한영키로 사용하기(Right Alt to Hangul key) =====
-  * Firefox 35, 36 버전은 현재 nabi에 ''GTK_IM_MODULE="xim"'' 상황에서만 Ajax가 많은 사이트에서 다운되지 않고 한글입력이 가능하다. +
- +
-===== UIM ===== +
-  * http://code.google.com/p/uim/ +
-  * 지금까지 본 가장 별다른 버그 없이 사용 가능한 입력기. 현재 나의 기본 입력기 +
-  * 설치. ''uim-byeoru''가 한글 입력 모듈 <code sh> +
-sudo apt-get install uim uim-byeoru +
-</code> +
-설치 후, ''uim''(과거에는 ''uim-systray'')를 입력기로 설정하고 벼루 입력기를 기본으로 잡았다. +
- +
-Composition(합성)이 꺼지면 시스템 트레이의 아이콘이 깨지는 현상이 발생한다. 기능 자체에는 문제가 없다. +
- +
-==== UIM-벼루에서 오른쪽 Alt키를 한영키로 사용하기(Right Alt to Hangul key) ====+
   * [[linux:xkb|Linux XKB]] 참조.   * [[linux:xkb|Linux XKB]] 참조.
   * [[linux:xmodmap|Linux Xmodmap]]도 되지만, Ubuntu는 XKB를 사용하는 것으로 변경되었다.   * [[linux:xmodmap|Linux Xmodmap]]도 되지만, Ubuntu는 XKB를 사용하는 것으로 변경되었다.
 +  * Gnome/GTK 계통의 경우 Gnome Tweaks 의 **추가 배치 옵션**에서 아래 두 옵션을 활성화하여 한/영, 한자키를 만들 수 있다.
 +    * 한국어 한/영, 한자 키
 +      * 오른쪽 Alt를 한/영 키로 만들기
 +      * 오른쪽 Ctrl을 한자 키로 만들기
 +    * 명령으로 설정
 +<code sh>
 +gsettings set org.gnome.desktop.input-sources xkb-options "['korean:ralt_hangul', 'korean:rctrl_hanja']"
 +</code>
 +===== Gnome 과 비 ibus 입력기 =====
 +  * [[linux:gnome|Gnome]] 3는 [[linux:inputmethod:ibus|iBus]]만 기본 지원한다. 다른 입력기 사용시에 Search box나 기타 Gnome 전용 설정 프로그램등에서 한글 입력이 불가하다.
 +  * [[https://wiki.debian.org/InputMethodBuster|InputMethodBuster - Debian Wiki]]
 +  * [[linux:inputmethod:ibus|iBus]] 사용시 최초에 설치하면 아래 두가지가 함께 설치되는데, 여기서 ''한국어(101/104키 호환)'' 은 불필요하다. 삭제하고 **한국어(Hangul)**만 남겨두면 된다.
 +    * ''한국어(101/104키 호환)''
 +    * ''한국어(Hangul)''
 +  * 만약, ibus는 실행하되 다른 입력기를 사용하면서 ibus의 gnome panel tray icon 을 끄고 싶다면 모두다 지우고 **영어(미국)** 하나만 남겨두면 시스템 트레이 아이콘에서 사라진다.
 +==== ibus 를 아예 안 사용하는 상태 ====
 +<code sh>
 +# 먼저 ibus 패키지를 삭제하거나 혹은 삭제 불가한 상황일 때는 이름을 변경해둔다.
 +sudo mv /usr/bin/ibus-daemon /usr/bin/ibus-daemon.distrib
  
-===== Nabi 나비 ===== +# gnome 서 ibus 용 못하게 한다. 
-한글 입력에 매우 좋으나, Firefox가 ''GTK_IM_MODULE="xim"''일 경우 컨텍스트 메뉴가 라지는 문제가 발생한다. 이 문제를 해결하려면 [[http://code.google.com/p/imhangul/|imhangul]]을 함께 설치하여 nabi + imhangul 기반으로 사용해야 한다.+gsettings set org.gnome.settings-daemon.plugins.keyboard active false
  
-이 말은 즉, **GTK 애플리케이션(Firefox는 GTK기반)은 imhangul 모듈을 사용하고 그 외의 QT를 비롯한 다른 애플리케이션은 Nabi를 사용**하는 것이다Nabi는 자신의 상태바에서 imhangul 모듈의 입력기 상태(한영상태)를 보여주는 기능이 있으므로 imhangul 자체의 상태 표시는 꺼둬도 된다. +# for uim 
- +gsettings set org.gnome.settings-daemon.plugins.xsettings overrides "{'Gtk/IMModule':<'uim'>}" 
-Xubntu 14.04에서 Dual Graphic Card 사용시 Nabi의 상태창이 나타나 다른 창을 가리는 현상이 발견되었다이 현상은 XFCE의 Composite 기능을 꺼야만 화면에 보여서 잘 알기도 어려웠다. +# for nimf 
- +gsettings set org.gnome.settings-daemon.plugins.xsettings overrides "{'Gtk/IMModule':<'nimf'>}
-==== Nabi 설치 ==== +# for fcitx 
-  * nabi, imhangul 설치<code sh+gsettings set org.gnome.settings-daemon.plugins.xsettings overrides "{'Gtk/IMModule':<'fcitx'>}"
-sudo apt-get install nabi imhangul-gtk2 imhangul-gtk3 +
- +
-# im-config 명령에서 "hangul"로 지정 +
-</code> +
-  * 환경변수 확인 -> 안돼 있으면 ''~/.xinputrc''에 지정<code sh> +
-GTK_IM_MODULE="hangul2+
-QT4_IM_MODULE="xim" +
-XMODIFIERS="@im=nabi" +
-</code> +
-  * imhangul 사용시 ''XXX_IM_MODULE'' 환경변수의 값은 한글 자판 종류를 지정하는 것이다[[http://code.google.com/p/imhangul/|imhangul]] 참조. +
-    * hangul2 : 두벌식 +
-    * hangul2y : 두벌식 옛글 +
-    * hangul39 : 세벌식390 +
-    * hangul3f : 세벌식최종 +
-    * hangul3s : 세벌식순아래 +
-    * hangul3y : 세벌식옛글 +
-    * hangulro : 로마자 +
-    * hangulahn : 안마태  +
-  * 세벌식 390 자판으로 변경하려면 ''~/.xinputrc''를 열고 마지막에 다음 추가<code sh> +
-GTK_IM_MODULE="hangul39"+
 </code> </code>
-  * QT에 대해서도 같은 설정을 하려면 ''qimhangul-qt4'' 패키지를 설치하고 ''QT4_IM_MODULE'' 환경 변수를 설정해주면 된다. 
  
-==== imhangul 설정 ==== +==== ibus와 다른 것들 복합 사용 ==== 
-  * ''~/.imhangul.conf'' 파일 생성. [[https://github.com/choehwanjin/imhangul/blob/master/imhangul.conf|imhangul.conf]] 참조.<code> +  * [[linux:ubuntu:20.10|Ubuntu 20.10]] [[linux:gnome|Gnome]] 환경에서 테스트 해본 결과, 
-# 상태창은 보이게. imhangul의 상태창은 Nabi가 알아서 보여줌 +  * ''im-config -n uim'' 등으로 기본 입력기는 [[linux:inputmethod:uim|UIM]] 으로 지정하지만, 
-enable_status_window = false+  * [[linux:inputmethod:ibus|iBus]]도 동시에 띄워두면, Gnome 은 ''ibus''를 사용하고, 다른 애플리케이션들은 기본으로 지정된 ''uim''을 사용하는게 가능했다. 이렇게 하면, 가장 편적으로 잘 작동하는 입력기와 ibus 에서만 잘 작동하는 애플리케션을 복합으로 사용하는게 가능해진다. 
 +  * 이때는 Gnome 은 ibus 를 사용하게 하고, **설정 -> 지역 및 언어 -> 한국어(Hangul)**도 추해주고, 
 +  * 다음과 같이 Gnome 관련 입력기 설정도 해 주되 ''im-config -n uim''으로 시스템 기본 입력기는 다른 것으로 해주면 된다. 
 +<code> 
 +# 원하는 입력기 지정 
 +im-config -n uim
  
-# Nabi에서 한영,한자키를 설정하고 그 이름을 그대로 아래 값으로 복사해 오면 됨+gsettings set org.gnome.settings-daemon.plugins.keyboard active true 
-# 한영키 +gsettings set org.gnome.settings-daemon.plugins.xsettings overrides "{'Gtk/IMModule':<'ibus'>}"
-hangul_keys = "Hangul", "<Shift>space", "Alt_R"+
  
-한자키 +위와 같이 설정하고 프로세스 목록을 보면 다음 처럼 ibus-daemon 이 보인다. 
-hanja_keys = "Hangul_Hanja", "F9", "Control_R" +ps -ef | grep ibus
-</code> +
-  * ''qimhangul-qt4''는 설정파일을 지원하지 않는 상태임.+
  
-===== iBus ===== +ibus-daemon --panel disable --xim
-  * Ubuntu 기본 입력기. ibus-hangul을 설치하면 한글 입력이 활성화 된다. +
-  * [[https://launchpad.net/~createsc/+archive/3beol/|3beol]] PPA 저장소를 추가하고 ''ibus'', ''ibus-hangul''을 업그레이드하면 더 많은 종류의 자판 사용가능. +
-  * [[https://bugs.launchpad.net/ubuntu/+source/ibus/+bug/481656|Bug #481656 “iBus blocks input in Java application”]] iBus가 Java 애플리케이션에서 한글 입력을 제대로 못하고 있다는 버그 리포팅. 막상 해 보면 잘 됨. +
-  * 설치 <code sh> +
-sudo add-apt-repository ppa:createsc/3beol +
-sudo apt-get update; sudo apt-get install ibus ibus-hangul +
-# ibus와 ibus-hangul을 모두 업그레이드 한다. +
-ibus-setup-hangul+
 </code> </code>
-  * iBus 설정에서 **한국어 -> Hangul**을 입력기로 지정한다. +  * 이 경우 [[:zoom|Zoom]] 같은 ''ibus''만 는 애플리케션에 대해 임시로 환경변수를 ''ibus'' 로 바꿔서 실행하면 한글 입력이 졌다. 
-  * 현재 Mint 16(Ubuntu 13.10 기반)은 ibus선택시 ''GTK_IM_MODULE/QT_IM_MODULE''을 ''xim''으로 놓는 문제가 있다. ''~/.xinputrc''막에 아래를 추가여 이를 ''ibus''로 변경해야 Firefox에서 입력기로 인해 메뉴가 사라지는 문제를 결할 수 있을 것으로 보임.<code> +<code> 
-GTK_IM_MODULE="ibus" +# 원래 GTK_IM_MODULE, QT_IM_MODULE은 시스템 기본으로 설정한 uim 으로 돼 있음. 
-QT4_IM_MODULE="ibus"+QT_IM_MODULE=ibus zoom
 </code> </code>
-  ''속성 패널보이기'' -''표시하지 않기''로 변경+===== kimpanel ===== 
 +  KDE 연동 Input Method Panel 
 +  * 입력기 UI가 좀 더 좋아진다. 
 +  * https://userbase.kde.org/Tutorials/Kimpanel 
 +  * [[linux:inputmethod:ibus|iBus]], [[linux:inputmethod:fcitx|Linux Input Method fcitx]] 가 지원해준다. 
 +  * [[linux:gnome|Gnome]]의 경우 ''gnome-shell-extension-kimpanel'' 확장 설치할 것.
  
 +===== im-config =====
 +  * [[linux:debian|Debian Linux]], [[linux:ubuntu|Ubuntu Linux]] 계열 입력기 선택기.
 +  * [[http://manpages.ubuntu.com/manpages/xenial/man8/im-config.8.html|im-config]]
 +  * ''/etc/X11/Xsession.d/70im-config_launch'', ''/usr/share/im-config/xinputrc.common'' 이 두 파일이 X 실행시 자동 로딩 되면서 ''run_im'' 등의 함수가 등록된다.
 +  * ''~/.xinputrc'' 에 ''run_im 입력기'' 로 등록해줌.
 +<code sh>
 +# 명령행으로 IM 설정하기
 +im-config -n uim # uim 으로 설정
 +im-config -n fcitx
 +im-config -n ibus
  
-==== iBus와 한영키 ==== +# 설정 한 IM 목보기 
-  * 우분투 13.10는 한영키가 ''<Super>space''로 지정돼 있다. ''<Shift>space''와 ''Hangul'' 노트북은 ''Alt_R''로 변경 필요. +im-config -l 
-  * ''ibus-setup''에서 영 전환키를 등할 때 아무런 조합할 키 없이 대소문자 정확이 ''Hangul''이라고 지정해서 추가. +</code>
-  * Ubuntu 14.04에서 부터 입력 언어에 영어와 한국어가 함께 있어야만 영문 입력도 가능해짐. +
-  * 노트북의 경우에는 보통 ''Alt_R''이다. 마찬가지로 조합할 키 없이 대소문자 정확히 기록. 이 키 값을 잘 모를 때는 ''xev'' 프로그램을 실행해서 나오는 키 이름을 참조하면 된다.+
  
-==== Switcher Window 안 나오게하기 ==== +===== Wine ===== 
-  * 한영전환을 하면 갑자기 화면 가운데에 입력기 목록이 뜨는 현상이 발생한다+  * [[linux:wine|Linux Wine]] 는 [[linux:inputmethod:fcitx|Linux Input Method fcitx]] 만 올바로 작동함
-  * 이는 한영 전환키를 누른 상태로 특정 시간이 지나면 나오는 것인데, 이로인해 오히려 입력기 전환에 방해가 되기도 한다. +  * 른 입력기를 사용하려면 레지스트리 편집이 필요하다. 
-  * ''dconf-editor''를 실행하고 ''desktop -> ibus -> general''에서 **switcher-delay-time**이 기본 400으로 돼 있는데 이를 1000(1초) 등 더 긴 값으로 설정해준다. +  * 다음과 같은 나용으로 ''input-style-root.reg'' 파일을 생성한다. 
-  * 아니면 차라리 ''5''등의 값으로 아예 일관성 있게 빨리나오게 하는게 나을 수도 있다.+<code> 
 +Windows Registry Editor Version 5.00
  
- +[HKEY_CURRENT_USER\Software\Wine\X11 Driver] 
-===== Fcitx ===== +"InputStyle"="root"
- +
-  * 중국계 입력기. 3beol 저장소를 추가하고 사용하면 된다. +
-  * 자기 자신을 시작 프로그램으로 등록하는 문제가 있다. 다른 입력기 사용시 이를 시작프로그램에서 제외시킬 것. +
-  * Ubuntu <code sh> +
-sudo add-apt-repository ppa:createsc/3beol +
-sudo apt-get update +
-sudo apt-get install fcitx fcitx-hangul fcitx-frontend-gtk2 fcitx-frontend-gtk3 fcitx-config-gtk2 +
-</code> +
-  * Debian - ''fcitx-ui-*'' 들 중 하나 필수 <code sh> +
-sudo apt-get install fcitx fcitx-config-gtk fcitx-hangul fcitx-tools \ +
-    fcitx-module-dbus fcitx-frontend-gtk3  fcitx-ui-classic zenity+
 </code> </code>
 +  * 위 파일을 병합해준다.
  
-==== 설정 ==== +<code sh
-  * **전역설정 -단축키** 에서 +wine regedit input-style-root.reg
-    * 입력기 전환 : ''Shift-Space'', ''Hangul'' +
-    * 입력기 사이에 스크롤을 위한 단축키 활성 : 끄기 +
- +
-==== 단축키 충돌==== +
-  * fcitx의 단축키가 다른 애플리케이션(특히 [[:intellij_idea|IntelliJ IDEA]])와 충돌이 날 수 있다. +
-  * **~/.config/fcitx** 에서 충돌나는 단축키의 주석을 풀고 ''DISABLED''로 설정한다. 그리고 재시작<code> +
-VKSwitchKey=DISABLED +
-SaveAllKey=DISABLED +
-SwitchPreedit=DISABLED+
 </code> </code>
-  * 설정에서 **입력기 사이에 스크롤을 위한 단축키 활성**을 disable 하고,  
-  * **고급설정**에서 **모든 입력정보 및 설정 저장** 같은 것을 ''ESC''키를 눌러 비활성으로 바꿔줘야 한다. 
-  * **Addon** 
-    * **Keyboard Layout**을 설정 변경. ''Ctrl+Alt+H'' 와 같은 단축키가 충돌한다. 
-    * **Clipboard**를 비활성화한다. Clipit 사용. 
-  * ''fcitx-remote'' : fcitx를 명령행으로 컨트롤할 수 있다. 
- 
  
 +  * [[https://hamonikr.org/used_hamonikr/82280|하모니카 사용기 - 하모니카에서 카카오톡 한글 중복 입력문제 해결하기]]
 +  * [[https://nimf-i18n.gitlab.io/docs/how-to-use-kakaotalk-with-nimf/|Nimf - nimf 와 카카오톡 사용하기]]
  
-===== Nimf ===== +===== 참조 ===== 
-  * 기존 다솜 입력기가 이름을 Nimf 로 변경함 +  * [[https://www.slideshare.net/ftake/what-is-necessary-for-the-next-input-method-framework/|What is necessary for the next input method framework?]] 
-  * https://github.com/cogniti/nimf : Download 에서 받을 수 있음. +  * [[https://www.youtube.com/watch?v=qVIdzDY1x6E|우분투의 한글 입력기 (IBus vs. Fcitx) - YouTube]] 
-  * [[http://blog.daum.net/bagjunggyu/233|Nimf 사용하기]] +  * [[https://github.com/korean-input/issues/issues/6|Wayland IME 현황 · Issue #6 · korean-input/issues]] 
-  * [[https://wiki.ubuntu-kr.org/index.php/Dasom|Ubuntu.kr Dasom]] +  * [[https://ubuntu.jeasu.kim/20.04/|Ubuntu와의 동동락-한글 입력기(IBus vs. Fcitx)]]
-  * ''dconf-editor''의 ''/org/nimf'' 으로 설정을 한다. +
-  * Notebook 등 사용시 [[linux:xkb|Linux XKB]] 를 통해 우측 Ctrl/Alt를 한영,한자키로 설정한다. +
-    * Nimf 자체에서 **XKB** 설정에서 설정도 가능 +
-  * [[:vim|Vim]]에서 `ESC`키를 누를 경우 영문 전환을 하자 한다면, **설정 -국어(libhangul-> 한국어에서 시스템 키보드로 전환하기 위한 단축키**에 ''ESC'' 키를 추가해 준다.+
linux/inputmethod.1576109695.txt.gz · 마지막으로 수정됨: 2019/12/12 09:14 저자 kwon37xi