kinput2



KINPUT2(1)                                                          KINPUT2(1)




NAME

       kinput2 - kanji input server for X11


SYNOPSIS

       kinput2 [-options...]


DESCRIPTION

       Kinput2  is an X window application to input Japanese text.  It acts as
       a front-end for other applications that want kana-kanji conversion.

       When invoked, after some initialization (which will take about a few to
       30  seconds  depending  on  your  machine)  kinput2 waits quietly for a
       Japanese text input  request  from  another  client  (i.e.  no  windows
       appear).   When  kinput2  receives  a  request, it pops up a window and
       starts conversion process. It sends the  converted  text  back  to  the
       client when the text is fixed.

       Kinput2  has  some big improvements over its predecessor, kinput, which
       was contributed to X11R4.

       Over-the-spot/On-the-spot Input
               These features enable conversion process to be done  at  cursor
               position,  avoiding unnecessary movement of eyes between cursor
               position and conversion window.   Kinput2  also  supports  root
               window style input and off-the-spot style input.

       Multiple Protocol Support
               Kinput2 supports several conversion protocols between front-end
               and client. Supported protocols are:
                    kinput protocol
                    kinput2 protocol
                    Matsushita jinput protocol
                    Sony xlc protocol
                    XIMP protocol
                    X Input Method Protocol (X Consortium standard)

       Multiple Conversion Engine Support
               Kinput2 can use 3 different conversion engines, Wnn, Canna  and
               Sj3.  You can choose one at compilation time, or at run time.

       Kinput Compatibility
               Kinput2 is fully upward-compatible with kinput, so applications
               which use kinput as the front-end can  also  use  kinput2.   In
               this  case, the applications cannot take advantage of over-the-
               spot conversion, though.


OPTIONS

       kinput2 accepts all of the standard X  Toolkit  command  line  options.
       The following options are accepted as well.

       -wnn    This  option  specifies that Wnn jserver is used as the conver-
               sion engine.

       -jserver
               This option specifies the hostname of the jserver  to  be  used
               for conversion.

       -ccdef  This option specifies the input character conversion rule file.

       -wnnenvrc4
               This option specifies the Wnn convertion  environment  initial-
               ization file (wnnenvrc) for Wnn version 4.

       -wnnenvrc6
               This option is similar to -wnenvrc4, but for Wnn version 6.

       -canna  This  option  specifies  that  Canna  conversion  server  (iro-
               haserver) is used as the conversion engine.

       -cannaserver
               This option specifies the hostname of Canna conversion  server.

       -cannafile
               This option specifies Canna conversion customization file.

       -sj3    This  option  specifies that Sj3 conversion server (sj3serv) is
               used as the conversion engine.

       -sj3serv
               This option specifies the hostname of the primary  sj3  conver-
               sion server.

       -sj3serv2
               This option specifies the hostname of the secondary sj3 server.
               The secondary server is used when kinput2 cannot connect to the
               primary server.

       -font ascii-font
               This  option specifies the default font to be used for display-
               ing ASCII text.

       -kanjifont kanji-font
               This option specifies the default font to be used for  display-
               ing Kanji text.

       -kanafont kana-font
               This  option specifies the default font to be used for display-
               ing Kana text.

       -/+kinput
               This option enables/disables  use  of  kinput  protocol  family
               (i.e.   kinput  protocol, kinput2 protocol, jinput protocol and
               xlc protocol).

       -/+ximp This option enables/disables use of XIMP protocol.

       -/+xim  This option enables/disables use of X Input Method Protocol.

       -bc     Kinput protocol, which is one of  the  communication  protocols
               kinput2 supports, uses X window's selection mechanism to notify
               other clients of front-end's  existence.   This  option  forces
               kinput2  to use selection ``JAPANESE_CONVERSION'' (which is not
               a standard selection name) as well as ``_JAPANESE_CONVERSION''.
               This  is for backward compatibility, since many of the applica-
               tions that connect with  kinput  still  use  this  non-standard
               selection.

       -tbheightP title-bar-height
               This  option  specifies the height (in pixels)  of the titlebar
               attached to popup shells such as  candidate  selection  window.
               Kinput2  uses  this value to compute the correct popup location
               of these windows.


WIDGET TREE

       Below is the widget hierarchy of kinput2.
            Kinput2  kinput2
                 ConversionManager  convmanager
                      KinputProtocol  kinputprotocol
                      XimpProtocol  ximpprotocol
                      IMProtocol  improtocol
                      SeparateConversion  converter
                           CcWnn  inputObj
                           Canna  inputObj
                           Sj3  inputObj
                           JpWcharDisplay  displayObj
                           Form  form
                                ICLabel  mode
                                     JpWcharDisplay  display
                                Canvas  text
                           TransientShell  selectionShell
                                CandidatePanel  selection
                                     JpWcharDisplay  display
                           TransientShell  auxShell
                                AuxPanel  aux
                                     JpWcharDisplay  display
                      OffTheSpotConversion  converter
                           CcWnn  inputObj
                           Canna  inputObj
                           Sj3  inputObj
                           JpWcharDisplay  displayObj
                           AdoptedShell  modeShell
                                ICLabel  mode
                                     JpWcharDisplay display
                           CanvasShell  text
                           TransientShell  selectionShell
                                CandidatePanel  selection
                                     JpWcharDisplay  display
                           TransientShell  auxShell
                                AuxPanel  aux
                                     JpWcharDisplay  display
                      OverTheSpotConversion  converter
                           CcWnn  inputObj
                           Canna  inputObj
                           Sj3  inputObj
                           JpWcharDisplay  displayObj
                           TransientShell  selectionShell
                                CandidatePanel  selection
                                     JpWcharDisplay  display
                           TransientShell  auxShell
                                AuxPanel  aux
                                     JpWcharDisplay  display
                           AdoptedShell  modeShell
                                ICLabel  mode
                                     JpWcharDisplay  display
                           TransientShell  modeShell
                                ICLabel  mode
                                     JpWcharDisplay  display
                           CanvasShell  text


RESOURCES

       There are too many resources to describe here, but you  don't  have  to
       know  most  of them.  So here is a brief description of resources which
       you might want to set.

       Kinput2 application resource:

           conversionEngine
               This resource specifies which conversion engine  to  use.   You
               can specify one of ``wnn'', ``canna'' and ``sj3''.

       ConversionControl  widget (which is a superclass of SeparateConversion,
       OffTheSpotConversion and OverTheSpotConversion) resource:

           sendbackKeyPress
               If this resource is ``true'', the KeyPress  events  intercepted
               but unused by kinput2 are sent back to the client when there is
               no conversion text.  Although this feature  is  convenient,  it
               might  confuse  some clients since none of corresponding KeyRe-
               lease events are sent.  Also, since the ``send_event'' flag  of
               those  events  are true, some clients do not accept events sent
               back by kinput2.   For  example,  kterm  doesn't  accept  those
               events without specifying
                    KTerm*allowSendEvents: true
               in a resource file.
               The default of sendbackKeyPress resource is true.

           titlebarHeight
               This  resource  specifies  the  height  of a title bar which is
               attached to various popup  shell  windows,  such  as  candicate
               selection.   When computing the location of these windows, kin-
               put2 uses this value to pop up them at correct position.
               The default is 0P.

       OverTheSpotConversion widget resources:

           shrinkWindow
               If this resource is ``true'', the width of on-the-spot  conver-
               sion  window shrinks according to the length of the text on it.
               Otherwise, the window never shrinks.   If  the  performance  of
               Xserver  on  window  resizing is poor, you may consider setting
               this resources to false.  The default is true.

           modeLocation
               This resource specifies the location of status widget  in  case
               of  over-the-spot type conversion.  Unless client specifies the
               location explicitly, the  location  of  the  status  widget  is
               determined  by this resource.  If the value of this resource is
               ``topleft'', the widget is placed at the top left of the client
               window.  You  can also specify ``topright'', ``bottomleft'' and
               ``bottomright''.  If the value is ``tracktext'', the widget  is
               placed  just  under the cursor position, and moves according to
               the cursor. However, if the region available for conversion  is
               too  small,  status  is placed at the bottom left of the client
               area.  If the value is ``none'', the status widget  will  never
               appear.
               The default is ``tracktext''.

           modeBorderForeground
               If  this  resource  is  ``true'', the color of status widget is
               forced to be same as the foreground color of the widget.
               The default is false.

           useOverrideShellForMode
               If this resource is ``true'',  the  status  widget  becomes  an
               instance  of  OverriddeShell,  instead  of  the  default  Tran-
               sientShell.  Turn this resource on if you encounter  a  strange
               phenomenon  that  the  status  widget  keeps flickering and you
               cannnot enter any text.  This is caused  by  (incorrect)  focus
               management  of  your  window manager, and setting this resource
               will stop any window management for the widget.  The result  is
               that  the widget will be totally ignored by the window manager,
               meaning you cannot move, resize, raise nor lower the widget.
               The default is false.

       OnTheSpotConversion widget resources:

           feedbackAttributes
               This resource  specifies  the  display  attributes  of  preedit
               string  when  on-the-spot  input  style is used. In on-the-spot
               style, it is a client's responsibility to draw preedit  string,
               and  kinput2  sends some hints on how it should be drawn, which
               is controled by this resource.   The  value  of  this  resource
               should  be  a comma-separated list of 4 elements, and each ele-
               ment represents the drawing hint of specific  type  of  string.
               They represent the hints for not-yet-converted string, for con-
               verted string, for converted string which belongs to  the  cur-
               rent clause, for converted string belonging to the current sub-
               clause, in that order.  Each element consists of zero  or  more
               drawing  attributes,  which are `R' (reverse), `U' (underline),
               `H' (highlight), `P' (primary), `S' (secondary)  or  `T'  (ter-
               tiary).   You  should consult the Xlib document for the meaning
               of these attributes (see the section about preedit  draw  call-
               back).   The default is ``U,,R,H'', which is close to the draw-
               ing attributes used by other input styles.

       CcWnn (conversion widget using Wnn) resources:

           jserver
               This resource specifies the hostname of the  (primary)  jserver
               to  be used for conversion. If not specified, value of environ-
               ment variable ``JSERVER'' is used.

           jserver2nd
               This resource specifies the hostname of the secondary  jserver,
               which  is used if the primary server is down. If not specified,
               kinput2 doesn't use secondary server.

           wnnEnvrc4
               This resource specifies the  filename  of  the  Wnn  conversion
               environment initialization file. This file is used when the Wnn
               server (jserver) is version 4. See documents  of  Wnn  for  the
               format  of  the file.  The default is /usr/local/lib/wnn/wnnen-
               vrc.

           wnnEnvrc6
               This resource also specifies the filename of the Wnn conversion
               environment initialization file. This file is used when the Wnn
               server (jserver) is version 6. See documents  of  Wnn  for  the
               format of the file.

           wnnEnvrc
               This  resource  is  provided  for  backward compatibility.  Use
               wnnEnvrc4 or wnnEnvrc6 instead.

           ccdef
               This resource specifies the  input  character  conversion  rule
               file.  The default is /usr/lib/X11/ccdef/ccdef.kinput2.

       Canna (conversion widget using Canna) resources:

           cannahost
               This  resource specifies the hostname of the canna server to be
               used.

           cannafile
               This resource specifies Canna conversion customization file.

       Sj3 (conversion widget using SJ3) resources:

           sj3serv
               This resource specifies the hostname of the  (primary)  sj3serv
               to  be used for conversion. If not specified, value of environ-
               ment variable ``SJ3SERV'' is used.

           sj3serv2
               This resource specifies the hostname of the secondary  sj3serv,
               which is used if the primary server is down.

           rcfile
               This resource specifies the filename of the Sj3 conversion cus-
               tomization file. The default is /usr/lib/X11/sj3def/sjrc.

           rkfile
               This resource specifies the Romaji-Kana conversion  rule  file.
               The default is /usr/lib/X11/sj3def/sjrk.

       JpWcharDisplay (widget for drawing Japanese text) resources:

           font, kanjiFont, kanaFont
               These  resource  specifies  the  font to be used for displaying
               ASCII,  Kanji  and  Kana  text,  respectively.   Since  kinput2
               changes  fonts dynamically by client requests, the fonts speci-
               fied by these resources might not be used.  If  not  specified,
               the following fonts are used.
                    -*-fixed-medium-r-normal--14-*-*-*-c-*-iso8859-1
                    -*-fixed-medium-r-normal--14-*-*-*-c-*-jisx0208.1983-0
                    -*-fixed-medium-r-normal--14-*-*-*-c-*-jisx0201.1976-0

       KinputProtocol  (widget  for  handling kinput protocol family - kinput,
       kinput2, jinput and xlc protocol) resources:

           backwardCompatible
               All of the protocols in kinput protocol family use  X  window's
               selection  mechanism  to  notify  other  clients of front-end's
               existence.  If this resource is ``true'', kinput2  uses  selec-
               tion ``JAPANESE_CONVERSION'' (which is not a standard selection
               name) as well as ``_JAPANESE_CONVERSION''.  This is  for  back-
               ward  compatibility, since many of the applications using these
               protocols still use this non-standard selection.
               The default is true.

           xlcConversionStartKey
               This resource specifies the key  that  starts  the  conversion.
               The  key is a hint for the clients using xlc protocol to deter-
               mine when they should request conversion to kinput2.  The  syn-
               tax  of  the specification is a subset of the translation table
               syntax:
                    modifier-names<Key>keysym-name
               where modifier-names is a combination of Shift, Lock, Meta, Alt
               and Mod[1-5].
               The default is Shift<Key>space.

       XimpProtocol  and  IMProtocol  (which  handle XIMP protocol and X Input
       Method Protocol) resources:

           conversionStartKeys
               This resource specifies the keys  that  start  the  conversion.
               The  syntax of the specification is a subset of the translation
               table syntax:
                    modifier-names<Key>keysym-name
               where modifier-names is a combination  of  Ctrl,  Shift,  Lock,
               Meta,  Alt  and Mod[1-5]. A '~' can precede each modifier name,
               meaning the modifier must not be asserted.  For example, if the
               conversion  start  key  is ``Kanji'' key with shift key pressed
               and control key not pressed (other modifier keys may be pressed
               or not), the specification is:
                    Shift ~Ctrl<Key>Kanji
               Multiple  keys  can  be  specified by separating them with new-
               lines.
               The default is as follows:
                    Shift<Key>space \n\
                    Ctrl<Key>Kanji

           defaultFontList
               This resource specifies the default fonts to  be  used  if  the
               client  does  not  specify  fonts  to  be used.  The default is
               -*-fixed-medium-r-normal--14-*-*-*-c-*.


CLIENT SETUP

       When using X Input Method Protocol, you have to specify the name of the
       input   server   you  want  to  use.   This  can  be  done  by  setting
       ``inputMethod'' resource or setting  XMODIFIERS  environment  variable.
       Since  some  clients  don't  regard  inputMethod  resource  while other
       clients ignore XMODIFIERS variable, so it is a good idea to set both of
       them.

       To use kinput2, you should add the following line to your resource file
       (such as .Xresources or .Xdefaults):
            *inputMethod: kinput2
       and, set XMODIFIERS to ``@im=kinput2''.
            setenv XMODIFIERS "@im=kinput2"   (for csh)
            XMODIFIERS="@im=kinput2"; export XMODIFIERS   (for sh)


SEE ALSO

       Wnn documents, Canna documents, Sj3 documents, XIMP protocol specifica-
       tion, The Input Method Protocol


COPYRIGHT

       Copyright 1988, 1989, 1990, 1991, 1992, 1994 Software Research Associates, Inc.
       Copyright 1991 NEC Corporation, Tokyo, Japan.
       Copyright 1991 Sony Corporation
       Copyright 1998 MORIBE, Hideyuki
       Copyright 1999 Kazuki YASUMATSU


AUTHORS

       Makoto Ishisone, Software Research Associates, Inc.
       Akira Kon, NEC Corporation
       Naoshi Suzuki, Sony Corporation
       MORIBE, Hideyuki
       Kazuki YASUMATSU



X Version 11                     24 March 1999                      KINPUT2(1)

Man(1) output converted with man2html