FAD I18N 2017

FAD I18N 2017 was held in Pune India last month. Fedora I18N members met together and there was very exciting and constructive event.

I talked about IBus 1.6 plans there. I’ve been thinking to implement a new ProcessKeyEvent method to support Korean preedit with X11 applications. Peng Wu now provided a patch of ForwardKeyEvent method instead of the new ProcessKeyEvent method. We will ask the maintainer of ibus-hangul to release the new version to use ForwardKeyEvent.


IBus needs the new SetCursorLocation method to support running clients in the multiple screens.


Regarding to migrating DConf to GSettings, I almost give up waiting for GSettingsList and  now thinking to create GSettings schemas directly instead of converting DConf schemas. I.e. GSettings can support various GVariant formats and then we don’t have to add a new key with GSettingsList  but just “av” format could include new elements. Currently I’m working on this task with ibus-anthy and Once succeeded, I’d ask other engines to start the migration.


Before delete the duplicated DBus methods, Qt5 IBus modules have to be migrated to the new DBus methods in libibusplatforminputcontextplugin.so of qt5-qtbase.


One concern is that IBus GTK panel still needs GtkStatusIcon for legacy desktops instead of GNOME desktop but the status of GtkStatusIcon is not clear in GTK 4 or later.


I also talked about IBus automation testings. QE team provides some interesting scripts using Python keyboard. I implemented an IBusEngine testing using GtkEntry in ibus-anthy. Mike Fabian implements an IBusEngine API testing. Now I’m searching how to get focus-in event in GTK during %check of rpmbuild or koji build.


I also talked about desktop automation testings. I could run XFCE4 on console with startxfce4 command. But currently I have no idea to run both X11 and Wayland GNOME on console.


I’d think to implement Unicode names on IBus Emojier for Fedora 28.

Fedora 27 celebration

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

IBus 1.5.16 is released

IBus 1.5.16 is now released and it’s available in Fedora 26:

# dnf update --enablerepo=updates-testing ibus

Also it’s available in Fedora Copr for Fedora 25.

This release enhanced the functionality of emoji typings on IBus Emojier:

  • Control-f, Control-b, Control-n, Control-p, Control-h, Control-e, Control-a, Control-u for cursor operations
  • Focus on emoji annotation entry by default
  • The language setting of emoji annotations is moved into ibus-setup
  • Man page (ibus-emoji.7) is added
  • ibus emoji command is available for no IBus panel desktops likes GNOME
  • Favorites category is updated by selecting an emoji
  • Change the modal dialog (popup window) to the modeless dialog
  • Insert multiple Unicode points with Shift-space key. E.g. 1f466 Shift-space 1f3fb
  • Provide an option to match emoji annotations with partial match
  • Hide emoji variants by default
  • Enabled custom annotations by gsettings

Currently emoji color rendering is not supported yet but you can enable it with the patched cairo in Fedora Copr.

If you build ibus from the source codes, You can get Unicode emoji files from http://www.unicode.org/Public/emoji/4.0/ or Fedora provides unicode-emoji package. The version 4.0 is recommended since 5.0 is not released officially yet.
You can get emoji annotation files from https://github.com/fujiwarat/cldr-emoji-annotation or Fedora provides cldr-emoji-annotation package.

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

IBus 1.5.15 is released

IBus 1.5.15 is now released.
This release has several bug fixes and emoji typing is moved from IBusEngineSimple to IBus Panel.

ibus-1.5.15 is available in Fedora 26.

# dnf update --enablerepo=updates-testing ibus

The same version is also available in Fedora copr for Fedora 25 and 24.

When you type Control-Shift-e key, the emoji typing dialog is launched which I named Emojier.

IBus Emojier

I continue to enhance the features in git master.

  • Control-Shift-e key to launch emoji dialog (1.5.15)
  • Right click on panel icon and “Emoji Dialog” menu item to launch emoji dialog (1.5.15)
  • Customize the shortcut key to launch emoji dialog with ibus-setup (1.5.15)
  • Customize the font name and size on emoji dialog with ibus-setup (1.5.15)
  • Select a language of emoji dictionaries (1.5.15)
  • Space, arrow, PageUp/PageDown and Enter keys to select emoji candidates and categories (1.5.15)
  • Escape key to cancel emoji candidates, delete emoji annotation, or close emoji dialog (1.5.15)
  • Favorite emoji strings can be added in ’emoji-favorites’ key in org.freedesktop.ibus.panel GSettings schema (1.5.15)
  • ibus emoji command for GNOME desktop (1.5.15)
  • arrow and Shift-arrow keys to move the cursor on emoji annotation (master)
  • Inherit theme colors on emoji candidate (master)
  • Control-f, Control-b, Control-n, Control-p, Control-h, Control-e, Control-a for cursor operations (master)
  • Focus on emoji annotation entry by default (master)

Regarding to the ibus build, you can get emoji.json with npm install -g emojione or Fedora provides nodejs-emojione-json package.
You can get emoji annotation files from https://github.com/fujiwarat/cldr-emoji-annotation or Fedora provides cldr-emoji-annotation package.
If you run ./configure --disable-emoji-dict, you need to run make -C ui/gtk3 maintainer-clean-generic and make -C tools maintainer-clean-generic to regenerate *.c files from *.vala.

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

ibus-anthy 1.5.9

ibus-anthy 1.5.9 is released and it’s now available in Fedora 25 and 24.

# dnf update ibus-anthy

It’s Emoji dictionary is updated for Emoji 3.0 and Unicode 9.0.

ibus-anthy Emoji 3.0

I think the translation of Emoji annotation is not unique. E.g. “bicycle” can be “バイク”, “原付”, “スクーター”. So probably we need to think plural forms?

This version also fixes Tab key to enable the predict function.

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

I18N Red Hatter Recruitment

Are you interested in I18N (internationalization) engineering?
We’re recruiting who is familiar with Linux open source and I18N developments. It’s also great if you’re good at Japanese language.
Click here with detail.

Posted in RedHat | Tagged , , | Leave a comment

IBus 1.5.14

IBus 1.5.14 is now released.
This release has bug fixes for Wayland display, make dist and some of deprecated APIs.

This release also provides a feature of emoji typing which is implemented in any IBus XKB engines in non-GNOME desktop.

  1. Enable an XKB engine likes “English (US)”.
  2. Press Ctrl-Shift-e keys.
  3. Type emoji annotation likes “smile”.
  4. Press Space key to select an emoji.
  5. Press Enter key to output the emoji.

IBus Emoji Typing

I will enhance the UI in the next release and also try to implement in GNOME UI too.

Posted in IBus | Tagged , , , | 2 Comments

ibus-fbterm enhancement for IBus 1.5

ibus-fbterm 1.0.1 is available now in Fedora 24.

# dnf install --enablerepo=rawhide ibus-fbterm

I have integrated Fedora internal patches in the latest ibus-fbterm.
The enhanced ibus-fbterm has the several features to work with IBus 1.5:

  • Show pre-edit text of input method.
  • Show lookup table of input method.
  • Bind Super-space to switch IBus IMEs(input method engines).
  • Show IME switcher window.
  • Run ‘loadkeys’ command to set XKB.

The man page explains with detail.

You also needs to install ibus and any input method engines likes ibus-anthy.

  1. Run ibus-setup, select “Input Method” tab and configure the IBus input method engines on GUI before go to the console
  2. Reboot the system
  3. Enter ‘e’ to edit the Grub line
  4. Add ‘vga=ask 3’ at the end of the line of “…vmlinuz…” and type Ctrl-x [1]
  5. Type Enter and show the video modes and type a vide mode and Enter [2]
  6. Log into the console with the permission to modify the frame buffer
  7. Run ibus-fbterm
  8. Confirm the configured IBus input method engines with ‘gsettings’ command:

    # gsettings get org.freedesktop.ibus.general preload-engines
  9. Super+space can switch the first two engines and Super+space+space can show the engine list and Enter key can enable the selected engine on the engine list [3]
    IBus engine switcher window on ibus-fbterm
  10. Now you can use the selected IBus engine
    ibus-anthy on ibus-fbterm

ibus-fbterm runs ‘loadkeys’ command to set XKB layout. If you enable ‘xkb:us::eng’ engine, ibus-fbterm runs ‘loadkeys us’.
Typing ‘exit’ can exit the ibus-fbterm.

ibus-fbterm does not use fbterm protocol so that fbterm does not bind Contrl+space and ibus-fbterm does not have the private headers and codes from fbterm. And ibus-fbterm has a limitation with modifiers keys.
I confirmed Super-space and Control-space works fine with ibus-fbterm but other modifiers keys do not work.
I added a workaround if type Escape key, it could bind Shift key. E.g. Escape and space key can generate Shift-space key.

Unfortunately Grub console does not change the keymaps on console and I filed a bug.

[1] The latest Fedora does not enable the frame buffer by default and ‘vga=ask’ can call the VGA setup dialog.
[2] Need a 32bit video mode for the frame buffer. E.g. 1024x768x32
[3] VT mode cannot handle modifiers keys so use Enter key instead of key release.

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