dwww Home | Manual pages | Find package

IM-CONFIG(8)                System Manager's Manual               IM-CONFIG(8)

NAME
       im-config - set up input method framework configuration

SYNOPSIS
       im-config [OPTION]

OPTIONS
       -a      List all; force to list all possible input method frameworks in
               menu or STDOUT even if any  associated  packages  are  not  in-
               stalled on the system.

       -c      Use console dialogue.

       -x      Use X dialogue with zenity.

       -s      No  action; perform a simulation of events that would occur but
               do not actually change configuration files.

       -l      List all available input method frameworks to  STDOUT.   Unless
               -a is used, list only ones with associated packages installed.

       -m      List configuration values to STDOUT:
               •   active configuration (system)
               •   active configuration (user)
               •   automatic configuration for the current locale
               •   override configuration for the current locale
               •   automatic configuration for most locales
               If  the  active configuration is custom, the user made a custom
               configuration and im-config should not change it.

       -n      <input method name>

               Set input method framework to <input method name>. This  option
               is for other configuration tool to set the input method.  Since
               the default value of <input method name> is "auto"  or  "cjkv",
               you  usually  do  not need to use this from other configuration
               script.

               Specifying invalid <input method name> causes the  error  exit.
               Updating  the  configuration  file which was not updated by im-
               config also causes the error exit.

               When this <input method name> is "REMOVE" then  it  always  re-
               moves  the configuration file even if it was not updated by im-
               config.

       -o      <input method name>

               Print the localized description  of  the  input  method  <input
               method name> to STDOUT.

       The  -l,  -m, -n, and -o options are meant to be API for other programs
       to control the im-config.

DESCRIPTION
       This manual page very briefly documents im-config and the configuration
       of the input method.

       im-config  provides  the framework to configure the input method frame-
       work on GUI system (Wayland or original X Window) with its GUI or  con-
       sole  terminal dialogue.  If this is invoked without option, this lists
       available input methods as its choice while  marking  automatic  choice
       with trailing @-mark. The listing is ordered by the priority of the in-
       put method framework.  The input method framework with the highest pri-
       ority comes first.  The availability of the input method frameworks are
       judged by the installation of the input method framework packages.  Af-
       ter  you  make a choice for the input method framework, this displays a
       guidance for associated input method engine packages which  enables  to
       input non-latin characters specific to the need of some languages to be
       installed.

       The activation of input method engines are out of scope for  im-config.
       You  need  to activate them using the mechanism offered by the deployed
       input method framework.  For GNOME Desktop which normally uses ibus  as
       its  input method framework, activate input method engines by "Setting"
       -> "Keyboard" -> "Input Sources" and click "+"-sign.  For other Desktop
       environments,  you  should see something like a small tray icon for the
       input method framework which can be used to activate input  method  en-
       gines.

       If  only a set of required input method packages along with the im-con-
       fig package is installed, you do not need to use this command.  Such  a
       installation works well in its default and there is no need to use this
       command.  When you wish to have multiple input  method  frameworks  in-
       stalled and wish to switch among them, you need to use this command.

       If you have no idea for what package to install, im-config invoked with
       both -a and -s is a good start.

       This input method is the essential mechanism for Japanese, Chinese  and
       Korean  (CJK)  languages  to  enter  their non-ASCII native characters.
       This is also useful to support specialized keyboard bindings for  other
       non-European languages such as Indic and other Asian languages.

       Input  method frameworks such as IBus, fcitx5, and uim support not only
       one of these CJK languages but support almost all languages  simultane-
       ously by dynamically switching keyboard modes with GUI on the fly.

       The  im-config package installs a hook script /etc/X11/Xsession.d/70im-
       config_launch. At session start it sources this file as a  POSIX  shell
       code.   Then  this  hook  script tries to source the user configuration
       file ~/.xinputrc, if it exists.  Otherwise, this  hook  script  sources
       the system configuration file /etc/X11/xinit/xinputrc.

       The  im-config  package  also  installs  another  hook script /etc/pro-
       file.d/im-config_wayland.sh  and  a  desktop  file  /usr/share/applica-
       tions/im-config.desktop. When a desktop system starts under wayland, it
       uses these files instead.  Then this hook script and the  desktop  file
       tries  to source the user configuration file ~/.xinputrc, if it exists.
       Otherwise, this hook  script  sources  the  system  configuration  file
       /etc/X11/xinit/xinputrc.

       im-config  invoked  from  a user account updates the user configuration
       file ~/.xinputrc.  im-config invoked from the root account updates  the
       system configuration file ~/etc/X11/xinit/xinputrc.  The essential con-
       tents of generated files are:

       run_im <input method name>

       When these files are sourced, the run_im shell  function  instructs  to
       source the initialization code for the corresponding input method. This
       initialization code is defined in the <2 digits  number>_<input  method
       name>.rc file in /usr/share/im-config/data.

       The  im-config hook script, /etc/X11/Xsession.d/70im-config_launch, ex-
       ports following variables  to  programs:  $XMODIFIERS,  $GTK_IM_MODULE,
       $QT_IM_MODULE, and $CLUTTER_IM_MODULE.

       The im-config hook script, /etc/X11/Xsession.d/70im-config_launch, also
       set $STARTUP to use /usr/bin/im-launch for starting required daemons.

       If you wish to create a custom configuration beyond what im-config  can
       do  for  you,  please  copy one of these initialization code files into
       ~/.xinputrc or /etc/X11/xinit/xinputrc and edit it to suite your  need.
       For  example,  02_cjkv.rc  tells how input method can be customized for
       each locale.  This script should be written to  set  environment  vari-
       ables  if  "$IM_CONFIG_PHASE"  =  1  and  to  start  daemon programs if
       "$IM_CONFIG_PHASE" = 2 .

       Please note that this <2 digits number>  part  of  these  configuration
       files may change for every new releases of the im-config package.

       When  a user makes manual changes to ~/.xinputrc or /etc/X11/xinit/xin-
       putrc without using im-config, im-config will detect it using a  md5sum
       hush  value  embedded  in the shell comment and will not overwrite such
       files.  You must erase them manually if you wish to replace  them  with
       ones created by im-config.

       The  <2 digits number>_<input method name>.conf files in /usr/share/im-
       config/data provide the UI data for im-config and the  heuristic  logic
       of  selecting  desirable input method under the auto mode.  The smaller
       number of the <2 digits number> indicates the higher priority of <input
       method name>.

       These <2 digits number>_<input method name>.conf files define few vari-
       ables and functions.  The value of IM_CONFIG_SHORT  is  the  short  de-
       scription  of  the  input  method  for  the menu.  The value of IM_CON-
       FIG_LONG is the long description of the  input  method  explaining  its
       package dependency.  The package_menu shell function defines as a func-
       tion to return true if any associated input  method  packages  are  in-
       stalled  to  activate  its menu entry.  The package_auto shell function
       defines as a function to return true if  the  sufficient  input  method
       packages  are  installed  for the auto mode.  These definitions use the
       package_status shell function which takes package name as its  argument
       and returns true if it is installed properly.

       The  menu lists input methods with the <2 digits number> between 00 and
       89.  The auto mode considers its input method candidate from <2  digits
       number>  between  10  and 79 in this order.  The usage convention of <2
       digits number> is:

       00-09:  Input Method choice mode       (default/auto/cjkv/REMOVE)

       10-49:  Input Method supporting multiple languages.(auto ready)

       50-79:  Input Method supporting limited languages. (auto ready)

       80-89:  Input Method (deprecated one) (not for auto)

       90-99:  Used internally by im-config (not for auto)

       This structure ensures to have different input methods to be  installed
       side-by-side with minimal user configurations.

TROUBLESHOOT
       If  you  have any problem, see the first part of ~/.xsession-errors and
       look for the cause.  If you are running im-config  while  Debian  (sid)
       system  is undergoing a major library transition, you may need to manu-
       ally set up ~/.xinputrc  with  adjusted  library  version  number  etc.
       Please  file  a  bug report to the im-config package using reportbug(1)
       describing your resolution experience.

SEE ALSO
       /usr/share/doc/im-config/README.Debian.gz

AUTHOR
       This manual page was written by Osamu Aoki <osamu@debian.org>, for  the
       Debian GNU/Linux system (but may be used by others).

                                                                  IM-CONFIG(8)

Generated by dwww version 1.14 on Fri Jan 24 09:21:24 CET 2025.