immodule for Qt


* What is this?

  immodule for Qt is a modular, extensible input method subsystem for
  Qt.

  This project brings functionality similar to the immodule for GTK+
  to the Qt library. The main goal of the project is to extend and
  enhance the input method support in the Qt library, in order to
  provide a modern and powerful multi-language input system. Our short
  term goal is to make Qt (especially Qt/X11) "up-to-date" with other
  X11-based toolkits such as GTK+. We are also focusing on what the
  input method API should be for future Qt versions.

  See our webpage for further information.

  http://immodule-qt.freedesktop.org/


* About this release

  qt-x11-immodule-unified-qt3.3.3-20040910 is a stable release. Since
  it breaks backward compatibility (source and binary) about immodule
  with our previous releases qt-x11-immodule-unified-qt3.3.3-20040819
  and qt-x11-immodule-bc-qt3.3.2-20040623, optional immodule plugins
  must be updated to proper version. See 'Optional immodule plugins'
  section of our download page.

  http://immodule-qt.freedesktop.org/Software/ImmoduleQtDownload

  However, backward compatibility (source and binary) with normal Qt
  3.3.3 is kept in 'Binary Compatible' mode.


* How to install

  After extract the Qt archive, perform following instructions

    cd qt-x11-free-3.3.3
    patch -p0 < qt-x11-immodule-unified-qt3.3.3-20040910.diff
    ./make-symlinks.sh
    ./configure

  Our patch provides following two configure options. Choose 'Binary
  Compatible' for normal use.

  Build Qt with 'Binary Compatible' immodule support (default)

    configure -inputmethod

  Build Qt without binary compatibility, but supports more advanced
  immodule extensions. It cannot be used with ordinary application
  binaries (i.e. the option is for developers)

    configure -inputmethod -inputmethod-ext


* How to use

  - See users manual of each input method plugins

  - Run qtconfig to choose your favorite XIM input style


* Environment variables

  Some environment variables are available for expert users and system
  integrators. The specification is preliminary and may be changed
  without notification. Be careful.

  See following examples to use the variables.


  - set "xim" input method as default

    export QT_IM_MODULE=xim


  - set "simple" composing input method as default

    export QT_IM_MODULE=simple


  - set "xim" input method as default, and disable input method
    selection menu in the context menu

    export QT_IM_SWITCHER=imsw-none
    export QT_IM_MODULE=xim


  - set "xim" input method as default, and enable input method
    selection menu in the context menu (default configuration)

    export QT_IM_SWITCHER=imsw-multi
    export QT_IM_MODULE=xim


  - set "iiimqcf" that has its own input method switching framework as
    default, and disable input method selection menu in the context
    menu. Such configuration is required by some system integrators to
    provide unified user interface for global input method switching
    over the desktop

    export QT_IM_SWITCHER=imsw-none
    export QT_IM_MODULE=iiimqcf
