====== iBus ======
* Ubuntu 와 Gnome의 [[linux:inputmethod|Input Method (입력기, 한글)]]. ibus-hangul을 설치하면 한글 입력이 활성화 된다.
===== 기본 설정 =====
* ibus 를 사용할 경우 2021년 현재 한글관련 문제점들을 회피하기 위해 다음 설정을 기본으로 한다.
# chrome/electron 한글입력
gsettings set org.freedesktop.ibus.engine.hangul preedit-mode 'word'
# intellij 등 현대 애플리케이션 사용시에는 use-event-forwarding true 여야 한다.
gsettings set org.freedesktop.ibus.engine.hangul use-event-forwarding true
# 옛날 QT 애플리케이션(특히 zoom) Enter/화살표/backspace가 이상한 문자를
# 입력하는 문제가 발생하면 일시적으로 false 로 변경한다.
gsettings set org.freedesktop.ibus.engine.hangul use-event-forwarding false
===== vim/ESC 를 통한 영문모드로 변경 =====
* ''org.freedesktop.ibus.engine.hangul off-keys'' 값을 ''%%'Escape'%%''로 지정하면 [[:vim|Vim]] 에서 ''ESC'' 누를 때 영문모드로 변경된다.
* 반대로 ''org.freedesktop.ibus.engine.hangul on-keys'' 도 있다. 기본 비어있음.
===== Emoji 단축키 충돌 =====
* 아래 두가지 단축키 충돌이 발생한다.
* ''e'' : emoji 입력 -> ''e'' 로 변경
* ''u'' : unicode 입력 -> 삭제
* ''ibus-setup'' 을 실행하고 위 두가지 단축키를 다른 것으로 변경해준다. https://askubuntu.com/a/1159087/287371
gsettings set org.freedesktop.ibus.panel.emoji hotkey "['e']"
# unicode 는 안사용해서 삭제
gsettings set org.freedesktop.ibus.panel.emoji unicode-hotkey ""
* [[http://manpages.ubuntu.com/manpages/bionic/man7/ibus-emoji.7.html|Ubuntu Manpage: ibus emoji utility - Call the IBus emoji utility by IBus Emojier]] 이모지 입력을 활성화 한 뒤에 ''''를 누르면 ''ibus-ui-emojier'' 이모지 UI가 나와서 선택해서 입력 가능해진다.
* [[https://unicode.org/emoji/charts/emoji-list.html|Emoji List]] 에 있는 이름을 입력하고 '''' 를 누르면 이모지로 변경된다.
===== 문제점들 =====
* 아래 문제점들은 버전에 따라 발생안할 수 있다.
==== Chromium/Electron 애플리케이션에서 한글 글자 올바로 입력 안되는 현상 ====
* [[:chrome|Google Chrome]] 계열 브라우저 혹은 [[:electron|Electron]] 애플리케이션에서 한글 입력이 올바로 안되고 글씨의 일부가 사라지는 현상이 발생한다.
* ''preedit-mode'' 가 원래 ''syllable''인데, 이를 ''word''로 변경해주니까 글씨 조합상태가 잘 안나오지만 입력은 잘 됐다.
gsettings set org.freedesktop.ibus.engine.hangul preedit-mode 'word'
# 되돌리기
gsettings set org.freedesktop.ibus.engine.hangul preedit-mode 'syllable'
==== KDE/QT 애플리케이션 한글 모드에서 backspace 등 오동작 ====
* [[https://github.com/libhangul/ibus-hangul/issues/70|KDE 프로그램 - konsole, dolphin, elisa 등등 - 에서 한글입력 상태를 켜고 입력하면 특정 키 들이 제대로 동작하지 않습니다. · Issue #70 · libhangul/ibus-hangul]]
* [[https://www.sobi.tips/manjaro-kde-ibus-hangul-solve/|만자로 KDE : ibus 한글 모드에서 특정 키 오작동 증상 해결하기 | Sobi.Tips]]
* [[:zoom|Zoom]] 등 [[linux:qt|QT]] 계열 애플리케이션에서 한글 입력 모드에서 화살표나 백스페이스등이 커서를 이동하지 않고 이상한 글씨를 입력시키는 문제가 발생했다.
* ''use-event-forwarding'' 은 원래는 끝글자 버그 해결용으로 나왔던것인데, 저 값을 ''true''로 안해도 이제는 거의 끝글자 버그가 생기지 않기 때문에 ''false''로 바꿔도 큰 문제가 없어졌다고 한다.
# QT 최신버전에서는 해결되므로 잘 될 경우에는 할 필요 없고, 잘 안되면 아래처럼 설정한다.
gsettings set org.freedesktop.ibus.engine.hangul use-event-forwarding false
# 잘 되면 다시 true로 돌려둔다.
* 일부 애플리케이션은 저 설정을 할 경우 입력이 안 될수도 있다. [[intellij_idea:config|IntelliJ IDEA Config 설정]] 가 그렇다. intellij 사용시에는 위 옵션을 켜준다.
gsettings set org.freedesktop.ibus.engine.hangul use-event-forwarding true
* ''ibus-toggle-use-event-forward.sh''
#!/bin/sh
if $(gsettings get org.freedesktop.ibus.engine.hangul use-event-forwarding); then
gsettings set org.freedesktop.ibus.engine.hangul use-event-forwarding false
else
gsettings set org.freedesktop.ibus.engine.hangul use-event-forwarding true
fi
echo "Current ibus use-event-forwarding : $(gsettings get org.freedesktop.ibus.engine.hangul use-event-forwarding)"
===== 삭제하지 않고 무시하기 =====
* ibus 는 [[linux:gnome|Gnome]] 셸 환경에서 무조건 실행이 되는 상태인데, 다른 입력기를 사용하고자 하지만 삭제는 할 수 없는 상황이라면 ''ibus-daemon''의 이름이라도 변경해두어야 한다. [[https://wiki.debian.org/InputMethodBuster|InputMethodBuster - Debian Wiki]]
sudo mv /usr/bin/ibus-daemon /usr/bin/ibus-daemon.distrib
gsettings set org.gnome.settings-daemon.plugins.keyboard active false
reenable
sudo mv /usr/bin/ibus-daemon.distrib /usr/bin/ibus-daemon
gsettings set org.gnome.settings-daemon.plugins.keyboard active true
gsettings set org.gnome.settings-daemon.plugins.xsettings overrides "{'Gtk/IMModule':<'ibus'>}"
* 혹은 ibus 는 계속 실행하더라도 영문을 제외한 다른 입력기들을 모두 제거해 두면 된다.
===== iBus와 한영키 =====
* 우분투 13.10는 한영키가 ''space''로 지정돼 있다. ''space''와 ''Hangul'' 노트북은 ''Alt_R''로 변경 필요.
* [[linux:xkb|Linux XKB]] 를 통해 오른쪽 Alt, Ctrl 을 한/영, 한자키로 변경할 수 있다.
* [[linux:inputmethod|Input Method (입력기, 한글)]] 참조.
* ''ibus-setup''에서 한영 전환키를 등록할 때 아무런 조합할 키 없이 대소문자 정확이 ''Hangul''이라고 지정해서 추가.
===== ibus-typing-booster =====
* https://mike-fabian.github.io/ibus-typing-booster/
===== Switcher Window 안 나오게하기 =====
* 2020년 이후 발생안함.
* 한영전환을 하면 갑자기 화면 가운데에 입력기 목록이 뜨는 현상이 발생한다.
* 이는 한영 전환키를 누른 상태로 특정 시간이 지나면 나오는 것인데, 이로인해 오히려 입력기 전환에 방해가 되기도 한다.
* ''dconf-editor''를 실행하고 ''desktop -> ibus -> general''에서 **switcher-delay-time**이 기본 400으로 돼 있는데 이를 1000(1초) 등 더 긴 값으로 설정해준다.
* 아니면 차라리 ''5''등의 값으로 아예 일관성 있게 빨리나오게 하는게 나을 수도 있다.