---
name: "ucimf"
section: "1"
platform: "linux"
package: "ucimf"
version: "2.3.8-14+b2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/ucimf"
---

# ucimf(1)

unicode console input method framework

## NAME

ucimf - unicode console input method framework

## DESCRIPTION

**ucimf** is an input method framework designed for Linux unicode console.

## FEATURE

 • Support UTF-8 \
\
  • Support OpenVanilla Modules\
\
  • Support PCF, TrueType Font\
\
  • Provide OverSpot style compose window\
\
  • Provide C/C++ API\

## BOOT PARAMETERS

Framebuffer mode is needed.

You can add "vga=XXX" to LILO, GRUB, or other bootloaders to let the kernel start with proper framebuffer mode automatically.\
 vga=785  (640x480, 16 ), vga=788  (800x600, 16 ), vga=791  (1024x768, 16 ),  vga=794  (1280x1024, 16 )

## USAGE

**ucimf** needs to run under an UTF-8 consle environment, please  use **locale -a** to see the UTF-8 locales that your system is supported  and use command like **export LC\_ALL=zh\_CN.UTF-8** to set up the locale.

To start ucimf with FbTerm, prefer to install **fbterm-ucimf** package and  run *fbterm -i fbterm\_ucimf*, or see **[ucimf\_start(1)](/ucimf_start/1.md)** as an  not-recommended alternate.

When the user is running an *FbTerm*, key combination **Ctrl+Space** is  the switch of enable/disable the input method, **Ctrl+ShiftLeft** to  switch to next input method, and **Ctrl+ShiftRight** to switch to next input  method framework.\
 For *jfbterm*, **F12** is the switch of enable/disable the input method,  **F11** to switch to next input method, and **F10** to next input method  framework.

If the user wishes to use Ctrl+Space and Ctrl+ShiftLeft under jfbterm, please  use **ucimf\_keyboard**, which maps Ctrl+Space to F12, and Ctrl+ShiftLeft to  F11.

## TABLE MANAGEMENT

**ucimf** use standard \*.cin files directly to manage its input method  tables, per-user input method tables is put in \
 *~/.openvanilla/OVIMGeneric/*.

Installing or removing a table is simply copy or remove a file in that directory.

The order of loading table is managed by the name of the table files, for exaple  you can name your tables like this:\
 *01\_xxx.cin*, *02\_xyz.cin*, *03\_aaa.cin*, ...\
 ucimf will follow this order while loading input method tables.

## SHELL ENVIRONMENT

**LC\_CTYPE** - use *UTF-8* as to recogize characters. For example:\
 *export LC\_CTYPE=zh\_CN.UTF-8*

**OVMODULE\_DIR** - to customize OpenVanilla modules location at run-time.  For example:\
 *export OVMODULE\_DIR=/usr/lib/openvanilla/*

## SEE ALSO

[**ucimf\_start**(1)](/ucimf_start/1.md), [**ucimf\_keyboard**(1)](/ucimf_keyboard/1.md), [**ucimf.conf**(5)](/ucimf.conf/5.md).\

## AUTHOR

libucimf was written by Chun-Yu Lee (Mat) \<MatLinuxer2@gmail.com\> and Jim Huang \<jserv.tw@gmail.com\>.

This manual page was written by Aron Xu \<happyaron.xu@gmail.com\>, for the Debian project (and may be used by others).
