Customize shortcut keys for IBus 1.5

Currently ibus-1.4.99.20120428-2 is provided in Fedora 17 or later
If you use the old version, you could update the ibus packages below

# yum install --enablerepo=updates-testing ibus ibus-gnome3

Currently the default trigger key is “<Control>space”. Since I don’t port the engine hotkeys from ibus 1.4, the hotkey is common between engines. I know Hangul trigger key is important for Korean language so I added a workaround on Korean locale (ko_KR.UTF-8) in Fedora 17.
If you don’t change the default trigger key “<Control>space” and the current locale is ko_KR.UTF-8, ibus assigns two trigger key “Hangul” and “Alt_R”.
The dconf key “/desktop/ibus/general/hotkey/trigger-ko” is added newly.
If you customize the trigger key with ibus-setup, the workaround won’t be used.

I also try to summarize the customization of ibus trigger keys for ibus 1.5.
ibus-setup in Fedora 17 shows the following GUI.
Image
Currently the GUI customization is not implemented yet so you need to type the trigger keys in “Enable or disable” entry box directly and push “Apply” button and ibus needs to be restarted.
The modifier keys (default is “< Control>) do not have the left or right status so the control modifier is expressed as “<Control>”. You also could use “<Shift>” and “<Alt>” and so on.
(ibus 1.5 uses gtk_accelerator_parse internally)
The accelerator keys without brackets (default is ‘space’) are expressed as the keysym. You could check it with ‘xev’ command. It means the accelerator keys have the left and right state.
If you wish to set multiple trigger keys, you could type them separated by semi colon “;”.
If you wish to set “<Alt>grave” and use both us and jp keyboard, it requires a considerable attention.
ibus uses XI2 keybinding (i.e. XIGrabKeycode()) and it needs keycodes instead of keysyms and then the order of XKB group layouts is important. The first keycode is used so you need to set the order of us, jp because jp keyboard has “Zenkaku_Hankaku” on the position of “grave” and the jp “Zenkaku_Hankaku” and us “grave” have the same keycode.
So if you set the order of jp, us, the “<Alt>grave” won’t be enabled.
The order can be decided by the ‘gnome-control-center region’ on GNOME desktop:
Image
After set the order of XKB layouts, you could confirm it reflects the current order by ‘ibus-xkb’ command. (Maybe you need to stop ibus)

 % /usr/libexec/ibus-xkb --get
layout: us,jp
variant: ,
option: ctrl:swapcaps,grp:alt_shift_toggle,compose:rctrl

And then “<Alt>grave” could switch ibus engines.
(When you set the order of jp, us, “<Alt>Zenkaku_Hankaku; <Alt>grave” could resolve the problem at the moment. Probably I need to know if XI2 has no plan to support keysyms.)

Posted in IBus | Tagged , , , | 4 Comments

IBus new Control+Space window

Recently I updated ibus to 1.4.99.20120203-3 in Fedora 17 or later.
The ibus is not available in upstream yet but we would need the new ibus for Fedora 17. It enhances:

  • Performance of Control+Space.
  • New Control+Space GUI window.
  • IBus indicator can work without ibus-daemon on gnome-shell to handle XKB only.

Previously ibus-daemon handles the trigger key, Control+Space, and some of the performance problems were happened when input method engines are switched. Now the ibus status icon on panel handles Control+Space and I hope the performance issue was fixed.

Previously the trigger key switches a previous ibus engine and next engine. Now the trigger key behaves to switch multiple engines likes Alt+Tab. If you use Control+Shift+Space, the reverse switching is called. The following is the new window with ibus GTK:
IBus Switcher Window with ibus-ui-gtk3
The following is the new window with ibus-gnome3 on gnome-shell:
IBus Switcher Window with ibus-gnome3 on gnome-shell
IBus menu with ibus-gnome3 on gnome-shell
IBus lookup window with ibus-gnome3 on gnome-shell

Requirements:

# yum install ibus ibus-gnome3 gnome-shell gjs
# rpm -q ibus gnome-shell gjs
ibus-1.4.99.20120203-3.fc17.x86_64
gnome-shell-3.3.5-1.fc17.x86_64
gjs-1.31.10-1.fc17.x86_64

Currently we use the devel branch with ibus and ibus-gjs git and when the upstream is updated, I will move the devel branch to master.

Posted in IBus | Tagged , , , | 8 Comments

ibus-gjs new lookup window

Folks, a happy new year.

ibus-gnome3-1.4.0-17 is now available in Fedora 16 or later.

# yum install ibus ibus-gnome3
% rpm -q ibus
ibus-1.4.0-17.fc16.x86_64

It would enhances the gnome-shell lookup window.
ibus-gjs lookup window on gnome-shell

Posted in IBus | Tagged , , , | Leave a comment

ibus-gjs community version is available on extensions.gnome.org

Now ibus-gjs is also available on extensions.gnome.org for other platforms:
https://extensions.gnome.org/extension/68/input-method-status-indicator/

You need to install gjs and gnome-shell and enable gnome-shell.

The community version does not enable Fedora ibus xkb feature since it’s not upstreamed.
If you use Fedora, you could install ibus-gnome3 rpm instead of extensions.gnome.org .
I updated the README file.

Posted in Ubuntu | Tagged , , | Leave a comment

ibus-1.4.0-14 is available

ibus-1.4.0-14 is available soon in f16 or higher.
You could now install ibus-1.4.0-14 in Fedora 16 updates-testing repository.

# yum install --enablerepo=updates-testing ibus ibus-gnome3
% rpm -q ibus
ibus-1.4.0-14.fc16.x86_64

This update enhances the shell menu.
Icon activated menu on ibus-gjs icon indicator
Now menu icons on ibus icon menu use the prefix of language names for XKB keymaps and multi-byte special chars for input methods and have numeric suffix if the icon strings are duplicated. (e.g. δΈ­2 and en2)
The ibus shell menu also deletes the item of quit, restart, ibus-setup to follow the UI spec since the indicator will persist for XKB keymaps even if ibus is not running. We’d like to integarte ibus setup into gnome-control-center.
Also this update adds the IM engine’s setup button on ibus-setup.
IME button on ibus-setup
The feature is upstreamed in ibus HEAD.
We also would like to integrate this function into gnome-control-center.

Posted in IBus | Tagged , , , , | 7 Comments

IBus-GJS 3.2.1.20111021 was released

Recently I fixed several bugs in ibus-gjs for gnome-shell 3.2.1 and gjs 1.30.0.
ibus-1.4.0-5.fc16 has all the fixes and probably it will be available tomorrow in Fedora test repository.

# yum install --enablerepo=updates-testing ibus ibus-gnome3
% rpm -q ibus
ibus-1.4.0-5.fc16.x86_64

The development ibus-gjs is avaialable here.
1. Get the current keyboard layout when no variant.
ibus could not get the current keyboard layout when the layout has no variant. e.g. ‘us’ layout.
The patch was integrated.

2. An error when XKB feature is disabled.
Fedora enables the XKB feature but this problem is reported by the other platforms.
The patch was integrated.

3. Cannot open ibus panel icon menu in gnome-shell 3.2.1.
I had added a workaround not to move the input focus with ibus status icon in Fedora 15 but it does not work in Fedora 16 and the workaround caused an up compatible issue in gnome-shell 3.2.1.
The patch was integrated.

4. IM engine’s menu items are not selectable on ibus panel icon meenu.
IME menu items cannot be selected because of no focus in gnome-shell 3.2.x because of the F15 workaround.
The patch was integrated.

Posted in IBus | Tagged , , | 14 Comments

IBus XIM Compose Key

Now IBus supports XIM compose keys. ibus-xkb owns the hard-coded XIM data.
IBus also supports the ISO 14755 (Unicode hex codes).
The module ibus-xkb is the part of Fedora IBus and I’m porting the features into ibus-xkb.
I put the demo here:

The compose feature does not depend on the client applications; GTK, QT, X11 applications.

The demo file is generated by gnome-shell. Control+Shift+Alt+R keybinding can start/stop to record desktop :) .
https://live.gnome.org/GnomeShell/Features

Posted in IBus | Tagged , , | 1 Comment