目前字符终端的中文支持有cce,zhcon和最新的fbterm,cce和zhcon已经停止更新维护,只有fbterm目前在不断开发更新中,而且在我的系统上一运行zhcon就死机,所以fbterm才是目前最适合的选择。由于fbterm开发得比较晚,现在一些系统上的源里面还没有,所以需要另外自己安装。
安装fbterm
下面所有操作均在 debian AMD64 squeeze下进行。不同的系统请自行留意。
1.需要 framebuffer 支持,启动参数需要加上 vga=0x0314(这个数字是800x600分辩率,16色,当然也可以尝试其它设置,具体参数可以网上自己找)。如果加上了这个仍然没有打开framebuffer,请自行找资料打开,不在本文的讨论范围。
2. 添加安装源
# 下面是临时的一些源,安装完即可手工注释掉,免的影响稳定版软件。
echo "deb http://ftp.debian.org/debian testing main" >> /etc/apt/sources.list
echo "deb http://people.debian.org.tw/~mat/ lenny main" >> /etc/apt/sources.list
# 安装需要的软件包,中文字体请按自己爱好添加,这里使用 wqy 点阵
特别注意:这里安装请选用aptitude,不要用apt,用apt的话可能会有一些兼容问题无法自行解决(我的就是,后来用aptitude重新安装就好了).
apt-get updateaptitude install libucimf ucimf-openvanilla openvanilla-modules fbterm fbterm-ucimf xfonts-wqy
3. 屏蔽除 拼音、五笔 之外的输入法(可选)这一些可以说是大多数人都应该做的,不然几十个输入法,光是切换输入法就烦死了。
进入/usr/lib/openvanilla/OVIMGeneric和/usr/share/openvanilla/OVIMGeneric这两个文件夹里面,将里面不要用文件删除或者备份,如下:
mkdir bak
mv (不要的).cin bak/
我的文件夹里面只保留了以下两个文件,一个拼音一个五笔,有其它需要的自行选择:
pinyin.cin wubizixing2.cin
这里有点要注意的是:
1)/usr/share/openvanilla/OVIMGeneric里面的wubizixing.cin只能打单字,不能打词组。但wubizixing2.cin可以打词组,默认选择的是wubizixing.cin。所以删除或者备份wubizixing.cin,只保留wubizixing2.cin即可。
2)在终端里打开的输入法顺序是以文件名排列的,像我自己常用的是五笔,那么就把五笔排在前面即可,例如在wubizixing2.cin前面加个数字2,变成2wubizixing2.cin即可。那么按Ctrl+Space键的时候,默认打开的就是五笔了。
4.常见问题
FAQ1).第一次运行,出现下面的错误信息提示并且输入法不能启动(或者只有root用户正常)[input] can't change kernel keymap table, all shortcuts will NOT work, see SECURITY NOTES section of man page for solution.
解法1) setuid (適用一般狀況)
chmod u+s /usr/bin/fbterm
解法2) setcap (適用於 Kernel >= 2.6.27 )
sudo setcap 'cap_sys_tty_config+ep' /usr/bin/fbterm
2).需要运行 fbterm 的用户,需要执行下面的命令LANG=zh_CN.UTF-8 fbterm -i fbterm_ucimf
# 设置 alias,直接使用 fbterm 调用上面命令 (可选)
echo "alias fbterm='LANG=zh_CN.UTF-8 LC_ALL=zh_CN.UTF-8 fbterm -i fbterm_ucimf'" >> ${HOME}/.bashrc. ${HOME}/.bashrc
# 修改默认字体大小 (推荐)在$HOME/.fbtermrc里面即可找到font-size=16这一行,将后面的数字改为自己想要的即可,推荐将字体大小改为16。设置文件一个是主目录下的.fbtermrc,一个是/etc/ucimf.conf具体内容请参考说明,虽是英文,但是很容易看懂的。
Google开发主页FAQhttp://code.google.com/p/ucimf/wiki/FAQ
http://code.google.com/p/fbterm/
配置文件:
# Configuration for FbTerm
# Lines starting with '#' are ignored.
# Note that end-of-line comments are NOT supported, comments must be on a line of their own.
# font family names/pixelsize used by fbterm, multiple font family names must be seperated by ','
# and using a fixed width font as the first is strongly recommended
font-names=mono
font-size=16
# force font width, usually for non-fixed width fonts
# legal value format: n (fw_new = n), +n (fw_new = fw_old + n), -n (fw_new = fw_old - n)
#font-width=
# default color of foreground/background text
# available colors: 0 = black, 1 = red, 2 = green, 3 = brown, 4 = blue, 5 = magenta, 6 = cyan, 7 = white
color-foreground=7
color-background=0
# max scroll-back history lines of every window, value must be [0 - 65535], 0 means disable it
history-lines=1000
# up to 5 additional text encodings, multiple encodings must be seperated by ','
# run 'iconv --list' to get available encodings.
text-encodings=UTF-8
# cursor shape: 0 = underline, 1 = block
# cursor flash interval in milliseconds, 0 means disable flashing
cursor-shape=0
cursor-interval=500
# additional ascii chars considered as part of a word while auto-selecting text, except ' ', 0-9, a-z, A-Z
word-chars=._-
# change the clockwise orientation angle of screen display
# available values: 0 = 0 degree, 1 = 90 degrees, 2 = 180 degrees, 3 = 270 degrees
screen-rotate=0
# specify the favorite input method program to run
#input-method=fbterm_ucimf
input-method=yong
https://github.com/ninehills/config/blob/master/fbterm/fbtermrc