From Fedora Project Wiki

GNOME IBus Integration

Summary

Gnome 3.6 will provide support for input methods using IBus, in addition to keyboard layout configuration.

The integration includes a gnome-shell input indicator combining keyboard layouts and input methods selection, and also setup of input methods inside gnome-control-center.

For this to be a smooth transition for Fedora users, various changes behind the scenes and testing are required, and this is covered by this feature.

Owner

Current status

  • Targeted release: Fedora 18
  • Last updated: 2012-10-04
  • Percentage of completion: 100%

The bulk of the integration patches have been merged upstream for GNOME 3.5.91, and is now in rawhide.

See http://live.gnome.org/ThreePointFive/Features/IBus for more detailed upstream status.

Detailed Description

  • gnome-settings-daemon will start ibus-daemon in gnome-shell, rather than imsettings
  • users will be able to choose input methods in gnome-control-center along with keyboard layouts
  • gnome-shell input indicator will show the current keyboard layout or input method in use if they have been added
  • basic hotkey configuration for switch layouts and input methods will also be handled by gnome-control-center
  • keyboard layout variations will partially be handled in gnome-control-center, and partially in gnome-tweak-tool
  • default IMEs and XKBs will be configured in gnome-initial-setup
  • IME switcher UI (likes Fedora 17 one) will be implemented in gnome-settings-daemon for gnome-shell
  • IME list will be hard-coded in gnome-control-center
  • The number of IME menu will be restricted to one or two.

The new indicator extends and replaces the optional experimental ibus-gnome3 gnome-shell extension that has been in Fedora from F16.

Benefit to Fedora

Users will have native gnome-shell support for ibus input methods seamlessly integrated with the current gnome support for keyboard layouts.

With the ibus integration in gnome-shell, ibus input methods will be listed in the control-center region panel and in the gnome-shell input indicator, without having to use the separate ibus-setup tool.

Scope

  • gnome-shell input indicator will include input method support (done)
  • in gnome-shell ibus will no longer runs an applet on the panel (done)
  • gnome-control-center will provide ibus configuration (done)
  • gnome-settings-daemon launches ibus-daemon and switches engines (done)
  • gnome-control-center will provide basic configuration for hotkeys for changing keyboard layout and input methods (done)
  • ibus-setup will no longer be accessible from gnome-shell GUI (done)
  • individual input method setup UI will be accessible from gnome-control-center (done)
  • imsettings will no longer run under gnome-shell (done)
  • im-chooser will no longer run under gnome-shell (done)

How To Test

Install IBus and some engines, eg ibus-anthy.

Open gnome-control-center, region panel, input sources tab. Use the + button and add Anthy to the list of active input sources.

Verify that Anthy is now listed in the gnome-shell keyboard menu and can be activated from there.

Test that using Anthy to enter Japanese text works in gedit, firefox, and in gnome-shell itself, e.g. in the search entry.

Test that switching between keyboard layouts such as US layout and input methods such as Anthy works using both the shell menu and keyboard shortcuts.

Verify that the keyboard shortcuts can be changed in the control-center panel.

User Experience

gnome-shell input indicator supports input methods that have been configured.

gnome-control-center list available ibus input methods which can be selected for use.

Users will be able to configure hotkeys if they wish to switch keyboard layout or input method.

In Fedora we would also like to:

  • setup input method hotkey for CIJK users
  • setup default IMEs for CIJK users

Dependencies

See https://live.gnome.org/ThreePointFive/Features/IBus for details on status of upstream patches.

Some changes are also needed in ibus upstream to complete the integration.

(Q&A comments previously here were moved to the Talk page.)

Contingency Plan

gnome-3.6 is planning to support ibus, but in the worst case ibus support could be disabled from gnome-settings-daemon, imsettings could be reenabled for gnome, and ibus reverted to using the ibus upstream applet in the gnome panel.

The item will be postponed to GNOME 3.8 (Fedora 19) below.

  • gnome-initial-setup provides the default IMEs and XKBs list.

Currently ibus-anthy shows the IME menus. Probably we'll evaluate the menus again in the next release.

  • gnome-shell menu provides IME menus

Documentation

ibus-xkb is also integrated for non-GNOME desktop newly. ibus-xkb provides preloaded engines, all XKB layout, variant ibus engines, frequently used input method list on ibus-setup, customizable trigger key on ibus-setup.

Release Notes

  • Input method support (based on IBus) has been integrated into GNOME3.

Comments and Discussion