Home >> Sub-Committee Input Methods >> IIIMF FAQ
Search
  HOME | SPECIFICATIONS | DOWNLOAD | FAQ | PRESS RELEASE  
  Login/Create an account  
Untitled Document
  Active Projects
 
Untitled Document
  Past Projects
  Big 5
Untitled Document
  Main Menu
 
IIIMF FAQ

(2831 total words in this text)
(15149 Reads)   Printer friendly page

IIIMF Project Frequently Asked Questions and Answers

Installation/Setup Related

I have installed IIIMF pacakges, but I am not sure whether it is working or not.
First, have a look if you have correct environment variables by running printenv command. Your environment variables will have something like this:
XMODIFIERS=@im=htt
GTK_IM_MODULE=iiim
2. Please check if you have htt_server and htt_xbe running:
ie. # ps -efw | grep htt | grep -v grep
3. Then, run applications from the another terminal and press ctrl+space.
When I encounter the problem, how I can capture debug info?
First, stop/kill related processes
ie. # service IIim stop
# killall httx
Then run the server with debug option.
# /usr/sbin/htt_server -d
Open another terminal and run
# /usr/bin/httx
Then try to run application with XMODIFIERS=@im=htt and GTK_IM_MODULE=iiim exported in the terminal you are running from. Go back to htt_server terminal window and look for any error messages.
I don't get CannaLE (or insert any LE that uses external dictionary server) to work. What's wrong?
Please check if you have related external dictionary server running. For example, CannaLE needs cannaserver to be up and running, so check with
# ps -efw | grep canna | grep -v grep
and Restart if required. Then send HUP signal to htt_server process to reload the language engine.
What's the list of default hotkeys in IIIMF?
Here are the default key strokes.
General:
  • Ctrl+Space Activate/Deactivate language engine
  • Ctrl+Alt+l(Ctrl+Alt+s) Shows language switching window (PageDown/PageUp to change pages)
  • UnitLE:
  • F5: Switch to different languages within UNIT Input Method
  • F6: Switch to different layout within the language
  • I am an emacs user, and cntl+space conflicts with set-mark-command. I want to use shift+space for activating/deactivating language engine. How do I do this?
    Generic keybinding editing capability is in development, but until then, you can specify activating/deactivating keys(aka trigger keys or conversion-on keys with "-conversionkeys" option when you run htt_server.
    For X applications, you can change it by putting
        "*conversionOnKeys: Zenkaku_Hankaku <Shift>space"
    
    into xrdb. If you are using ATOKX language engine, the engine refers to the file at /usr/lib/im/locale/ja/atokserver/shift_space, so you may want to create this file by
    # touch /usr/lib/im/locale/ja/atokserver/shift_space

    Language Engine(Input Methods) Development Related

    I am interested in writing my own input method using IIIMF. How can I write a language engine for it?
    Reading Language Engine Interface Specification is always a good start to learn about the LEIF API. You can always checkout the sampleja sample code and start from there. There are many language engines currently are still in development and accept for contributions. Check out the language engine list and contact the maintainer if you are interested!
    My language engine does not need full complex functionality, but rather simple. Is the LEIF API the only API for writing Language Engine/Input Method for IIIMF?
    If your language engine/Input Method does not require very complex logic, you may want to play with UNIT(UNIcode Table based) language engine by adding your own tables. UNIT language engine also provides sub object plug-in mechanism to add your own logic to handle input, in addition to your own table.
    I have written own language engine, but how I can show my language engine on the gnome-im-switcher applet listings? It appears that the gnome-im-switcher applet only shows language name but no language engine name.
    This is the known bug of gnome-im-switcher applet, filed as bug id#0000003 (http://www.openi18n.org/mantis/bug_view_page.php?bug_id=0000003) Until this bug is fixed, you can use the hotkey to show language engine listings; <Alt><Ctl>s or <Alt><Ctl>l.
    I have my own language engine, but it is written as single user/single context library. Do I have to rewrite my language engine to handle multi-user and multi-context?
    It is nice if you can extend your language engine to handle multi-user/multi-context for own sake :-) if possible, but IIIMF allows such single user/single context engines to work without extending them as multi-user/multi-context. The mechanism is called vmseparator, which has been used for supporting older engines which are X-dependent, locale dependent, and with single-user assumption, inherited from older versions of "htt" originally written as XIM server in 1989, via the older version of LEIF interface, delivered as a part of im-sdk till r10.x. We once dropped it in r11.x releases, but will be revived in r12.x releases.

    Security Related

    I have heard that IIIMF supports several configurations on how to connect to IIIMF input method server and how to authenticate each other. What exactly those methods are?
    How you combine transport options and authentication options are not limited but the following is an example of typical scenarios.
    Scenario Server Auth Client Auth Transport Access Controll
    Scenario 1
    For accessing the IIIMF server on the remote host which a user does not have a login account via untrustful LAN and WAN.
    X.509 X.509 encrypting with SSL/TLS By host/network with TCPWrapper
    Scenario 2
    For accessing the IIIMF server on the remote host which a user has a login account via untrustful LAN and WAN.
    X.509 X.509 or PAM Port forwarding with ssh or stunnel UNIX account
    Scenario 3
    For accessing the IIIMF server on the localhost(127.0.0.1) running as a system daemon via INET domain socket.
    Use previledged port or X.509 if server runs as non-privileged user. PAM or X.509 No encryption or encrypting with SSL/TLS PAM
    Scenario 4
    For accessing the IIIMF server on the localhost(127.0.0.1) running as a system daemon via UNIX domain socket.
    uid/gid of socket file socket credential No encryption PAM
    Scenario 5
    For accessing the IIIMF server on the localhost(127.0.0.1) running as a users private server via private UNIX domain socket.
    uid/gid of socket file uid/gid of socket file and private path No encryption Permission of socket file
    I have heard that sniffer can steal key sequence of server/client system like IIIMF?
    If that is true, we better stop using X Window System :-), as on X Window System, all keys you type are sent back and forth between X Server and X client, just like IIIMF server and client. IIIMF uses UNIX domain socket or INET domain socket on localhost(127.0.0.1) for the communication between client and server, the communication packets between them won't be sent out of localhost. Therefore, unless an intruder obtain privilege on localhost, it is practically impossible to steal key sequence a user types. For accessing remote IIIMF server, IIIMF uses SSL/TLS to encrypt the transport, it is practically impossible to steal key sequence that a user types in
    I have heard that IIIMF sends password in plain text that one can sniff?
    It is not really password but more likely a cookie to identify that the client requesting connection has an access to the file stored in user's home directory protected with UNIX permission 0600, and sent over UNIX domain socket or INET domain socket on localhost(127.0.0.1) connection which noone but only root can sniff(root anyway can read the file of permission 0600 on ordinary system ) for authentication by PAM. There is no password of your account is sent or any passwords are sent over the network without encryption. Also PAM authentication is never intended to authenticate remote connection over untrusted network without SSL/TLS connection.
    Untitled Document

     
     
    Select interface language:

    Untitled Document

     
     
    Warning: Smarty error: unable to read template resource: "default/views/calendarblock/month_view.html" in /var/www/postnuke/html/modules/PostCalendar/pnincludes/Smarty/Smarty.class.php on line 589

    Warning: Smarty error: unable to read template resource: "default/views/calendarblock/todays_events.html" in /var/www/postnuke/html/modules/PostCalendar/pnincludes/Smarty/Smarty.class.php on line 589

    Warning: Smarty error: unable to read template resource: "default/views/calendarblock/upcoming_events.html" in /var/www/postnuke/html/modules/PostCalendar/pnincludes/Smarty/Smarty.class.php on line 589





    powered by
    DIGITAL DREAM

    This web site was made with PostNuke, a web portal system written in PHP.
    PostNuke is Free Software released under the GNU/GPL license.
    Copyright © 2001 Open Internationalization Initiative (OpenI18N). All rights reserved.