im-config for Debian                     Osamu Aoki <osamu@debian.org>

NOTE: This source code is managed using dgit-maint-merge strategy.

=======================================================================
!	Basic design of im-config framework (v1.0)
=======================================================================

1.  If an reasonable and single set of input method (IM) packages is
    installed, im-config framework activates desirable IM dynamically
    adjusted for all users by default. (recommended situation)

2.  If several reasonable sets of IM packages are installed, im-config
    framework activates the most reasonable one dynamically for all
    users by default.  (The locale setting, desktop environment (DE)
    choice and other factors are dynamically taken into account.)

3.  The /usr/bin/im-config provides a reasonably simple GUI
    configuration menu program.  It can be started from GUI menu or from
    the console shell prompt. This shell script is internationalized via
    gettext.sh. Selected user configuration can override the system
    default configuration.  Menu shows only available input methods on
    the system.

4. Configuration files
     * ~/.xinputrc  (x11)

    If the configuration file for x11 is generated by the GUI/CUI im-config
    This file contains 3 lines:
---
# im-config(8) generated on Sun, 30 Mar 2014 02:45:02 +0900
run_im ibus
# im-config signature: d57688c8151277a0c25d15aa0523da6b  -
---
    The shell comment line contains signature to allow detection of
    manual modifications by /usr/bin/im-config.  The menu configuration
    system honors such user changes.

    Here, this is sourced and run_im function looks for corresponding
    file to its argument "ibus", which is
    /usr/share/im-config/data/21_ibus.x11_env , and source it.

=======================================================================
!	Note on *.conf files
=======================================================================
Here, IM_CONFIG_DATA_BASE=/usr/share/im-config/data

  * $IM_CONFIG_DATA_BASE/[01][0123456789]_*.conf ---- non-IM, menu-only
  * $IM_CONFIG_DATA_BASE/[2345][0123456789]_*.conf -- IM, menu
  * $IM_CONFIG_DATA_BASE/[67][0123456789]_*.conf ---- non-IM, menu-only
  * $IM_CONFIG_DATA_BASE/[8][0123456789]_*.conf ----- internal (DE)
  * $IM_CONFIG_DATA_BASE/[9][0123456789]_*.conf ----- not used (memo)

=======================================================================
!	Testing of im-config framework (x11)
=======================================================================

BY invoking im-config as "XDG_SESSION_TYPE=x11 im-config" in the console
shell prompt under Wayland, it can be fooled to be in x11 to test its
behavior .


