FreeBSD中文化全攻略

来源:岁月联盟 编辑:zhu 时间:2008-01-19
FreeBSD中文化全攻略内容简介:【FreeBSD教程】 1.系统层的工作 2.字体 3.系统环境变量 4.配置GNOME 5.配置KDE 6.有用的中文程 7.FreeBSD locale的组成 ========================================================== 1.系统层的工作 ==================

【FreeBSD教程】1.系统层的工作
2.字体
3.系统环境变量
4.配置GNOME
5.配置KDE
6.有用的中文程
7.FreeBSD locale的组成

==========================================================
1.系统层的工作
==========================================================
1.安装系统.
没有什么非凡的.
只是在选择安装的基本软件包时
我图了个简单,选择all
省得以后用什么还要现装
2.安装完成后使用/stand/sysinstall安装GNOME1.4
注重很难将所有倚赖的软件包选全的.
所以.每次安装GNOME 1.4都会出错.
每次都要安装完成后.
到/cdrom/package/All下
pkg_add -vf gome-1.4.1b*.tgz
这时他会自己安装倚赖的软件包.
安装bash
chsh -s /usr/local/bin/bash
安装x11系列的XFree86 4.1.0相关的软件包.
安装sawfish-gnome

3.实现GBK支持.
下载gbkbsd.tgz自己编译出gbk的LC_CTYPE
在/usr/share/locale/下建立zh_CN.GBK目录
拷贝zh_CN.EUC下的LC_COLLATE和LC_TIME到这个目录.
同时将LC_CTYPE拷贝到这个目录.
这时你的系统已经支持GBK的locale了.
4.配置X.
XF3.6也可以支持ttf,但究竟版本较低.同时中文的支持不是很好.
使用ttf也很麻烦.所以我们使用XF4.1.0(不对XF 3.6作任何配置,假如已经配置,应当在/etc/有XF86Config文件,删除)
使用xf86config文件配置会在/etc/X11目录生成XF86Config
假如你在安装系统时激活了鼠标,那么使用xf86config配置的XF86Config
文件的鼠标定义与你的鼠标配置是冲突的.
删除/etc/X11/XF86Config文件中的pointer段的protocal一行.

==========================================================
2.字体
==========================================================
假如你使用sysinstall指定你的桌面.
会在~目录下生成一个.xinitrc文件
里面的定义是
exec startkde或exec gnome-session
假如没有可以自己建立.
这时你可以startx
注重是英文的.
方便你在图形界面作一些配置工作.
1.安装新的字体.
在/usr/X11R6/lib/X11/fonts目录建立ttf目录.
cp simsun.ttf到这个目录.
注重simsun.ttf版权属中易公司.只可用于测试:-)
这时还要写一个fonts.dir
(fonts.scale是为了mkfontdir使用的,假如你自己写一个fonts.dir可以没有fonts.scale这个文件.)
fonts.dir的内容如下:
18
simsun.ttf -misc-simsun-medium-r-normal--0-0-0-0-p-0-ascii-0
simsun.ttf -misc-simsun-medium-r-normal--0-0-0-0-p-0-fcd8859-15
simsun.ttf -misc-simsun-medium-r-normal--0-0-0-0-c-0-gb2312.1980-0
simsun.ttf -misc-simsun-medium-r-normal--0-0-0-0-p-0-ibm-cp850
simsun.ttf -misc-simsun-medium-r-normal--0-0-0-0-p-0-iso8859-1
simsun.ttf -misc-simsun-medium-r-normal--0-0-0-0-p-0-iso8859-15
simsun.ttf -misc-simsun-medium-r-normal--0-0-0-0-p-0-koi8-r
simsun.ttf -misc-simsun-medium-r-normal--0-0-0-0-c-0-gbk-0
simsun.ttf -misc-simsun-medium-r-normal--0-0-0-0-c-0-big5-0
ai=0.3:simsun.ttf -misc-simsun-medium-i-normal--0-0-0-0-c-0-big5-0
ab=y:simsun.ttf -misc-simsun-bold-r-normal--0-0-0-0-c-0-big5-0
ai=0.3:ab=y:simsun.ttf -misc-simsun-bold-i-normal--0-0-0-0-c-0-big5-0
ai=0.3:simsun.ttf -misc-simsun-medium-i-normal--0-0-0-0-c-0-gbk-0
ab=y:simsun.ttf -misc-simsun-bold-r-normal--0-0-0-0-c-0-gbk-0
ai=0.3:ab=y:simsun.ttf -misc-simsun-bold-i-normal--0-0-0-0-c-0-gbk-0
ai=0.3:simsun.ttf -misc-simsun-medium-i-normal--0-0-0-0-c-0-gb2312.1980-0
ab=y:simsun.ttf -misc-simsun-bold-r-normal--0-0-0-0-c-0-gb2312.1980-0
ai=0.3:ab=y:simsun.ttf -misc-simsun-bold-i-normal--0-0-0-0-c-0-gb2312.1980-0

注重simsun.ttf确实可以提供部分的big5字型.
2.修改/etc/X11/XF86Config文件.
在FontPath一组最前面加入
FontPath "/usr/X11R6/lib/X11/fonts/ttf/"
修改Load "freetype"为Load "xtt"
3.安装输入法.
目前功能最完善的一个版本是chinput-3.0.2fix1
下载make;make install

==========================================================
3.系统环境变量
==========================================================
/etc/profile对整个系统有效.
确定你使用的是bash

添加
export LANG=zh_CN.GBK
export LC_ALL=zh_CN.GBK
export XMODIFIERS=@im=Chinput
csh的配置可能是
setenv LANG zh_CN.GBK
setenv LC_ALL zh_CN.GBK
setenv XMODIFIERS @im=Chinput

你也可以建立~/.bash_profile文件,在文件中设置
相关的文件还有.bash_logout .bash_login
比如我的.bash_logout指定
clear
每次退出是自动清屏

==========================================================
4.配置GNOME
==========================================================
1.gnome字体配置
GNOME中文字体缺省定义为16号.
1024x768还可以接受,800x600就有点大.
修改以下两个配置文件.
/usr/X11R6/share/gnome/gtkrc.zh_CN文件.
把里面所有的fontset改为
-misc-simsun-medium-r-normal--14-*-*-*-*-*-gbk-0
假如熟练vi.
%s/.../.../g就可以搞定.
修改/usr/X11R6/share/themes/Default/gtk/gtkrc.zh_CN
修改fontset的第二行为以上字体定义.
2.设置chinput自启动.
在开始菜单-program-setting/找到startupprogram添加 chinput自动起动.
3.OK
现在你可以退出X.
退出登录.
重新login使环境变量生效.
startx看一看
GNOME的中文应当是正常的了.
打开一个dedit输入中文试一试

==========================================================
5.配置KDE
==========================================================
刚才我一直没有安装KDE.原因有两个:
1.我不喜欢KDE
2.FreeBSD自带的KDE不全.
为了中文化.
我在本论坛的软件仓库下载了KDE2.2.2的FreeBSD全部的软件包.
使用pkg_add -vf kde-2.2.2.tgz安装.
注重还是没有把全部软件包都装上.如qt-designer,kdevelop,quanta等.
因为我没有使用FreeBSD自带的KDE.所以不能确定我的配置对您有效.
1.我一直工作在GBk locale下.
2.确定你的工作目录没有.kde和.kderc
3.安装zh-kde-i18n-2.2.2.tgz.
kde的中文mo文件.
我上传在ftp.gnuchina.org/incoming/zhBSD/下对系统自带的KDE也是好用的.
包的大小是601k,不必在自己到port里编译了.
因为kde-i18n-2.2.2.tar.gz源码太大50M
4.配置
假如你的工作目录没有.kde和.kderc文件
起动kde后,看到的起动界面应当是英文的
起动后kde有些地方应当是问号.
这时会起动一个桌面配置.
在国家和语言段选中国和zh_CN.GB2312
然后一步一步配置直到finish
这时你的开始菜单和很多程序是问号.
不管他.
启动control center(全是问号)
在光盘图标(也就是)look and feel
找到TT图标配置字体.
选择simsun gb2312 12号
略过其中第二项fixed width的配置(你无法选择simsun).
apply,
这时打开第二项,现在你可以选择simsun gb2312 12号了
假如不能选,先用鼠标点一下其他字体在回到simsun就可以了.
apply.
在个人化一项(也是问号,图标为一个原点加半圆)
选择国家和语言
选择中国,zh_CN.GB2312,字符集选gb2312
apply
退出KDE.
在startx你就应当可以获得一个很好的中文环境了.
至于CHinput的自起动.
用konqueror打开~/.kde/AutoStart目录
新建应用程序联接,创建一个chinput的联接就可以了.

注重.虽然你在control center中可以配置字体为
simsun gbk 12号.
但其实不能显示中文,中文的地方显示为空.
所以只能选择simsun gb2312 12号.
但配置完成后.
只是在配置文件中定义字体为simsun并没有定义为simsun gb2312
所以在GBK locale下可以处理gbk字符.
因为在GBK locale下使用的其实是simsun的gbk字符集.
虽然在control center中显示为gb2312

至于个人化一栏字符集设置为gb2312是因为没有gbk的mo文件,只能使用gb2312的了.


在linux下,kde2.2.2的中文配置要简单好多,
可能的原因是系统locale
X的locale和KDE定义的locale是统一的
而BSD中,X,系统,KDE定义的locale不统一吧??
仅仅是猜测.
我已经重作了系统,在干净的系统上实现的.
应当可以通用的.

==========================================================
6.有用的中文程序
==========================================================
1.term:
1).X下可以使用光盘自带的zh-rxvt-2.7.5.tgz
注重设置为.
crxvt -fg green -bg black -fm -misc-simsun-medium-r-normal--14-*-*-*-*-*- gb2312.1980-0
不支持gbk,我正在作patch.
2).支持GBK的term mlterm光盘第三张.
安装后修改/usr/X11R6/etc/mlterm/font文件
添加GBK = 16,ccs16_1
起动mlterm可以输入GBK字符了.
注重这里的ccs16_1是来自turbo的gbk pcf字体.
我上传在gnuchina/in/zhBSD/ccs16_1.pcf.gz
添加到任何X的字体目录,在哪个目录的fonts.dir添加
ccs16_1.pcf.gz ccs16_1
修改第一行的数字加一.
3)console下使用zhcon就可以了.
我没有在console下使用任何中文term.
2.vi问题.
在crxvt下vi后输入的中文有问题.
在/usr/bin/下建立cnvi脚本.
内容如下
export LC_CTYPE=en_US.ISO_8859-1
vi $1
然后chmod x cnvi
以后可以使用cnvi编辑中文了.
3.mail程序:
我使用sylpheed-0.7.2.可以在linuxeden下载.
注重configure时需要gtk-config和glib-config
在FreeBSD下是gtk12-config和glib12-config
需要建立两个联接.
make make install就可以了.
建议你一定要在系统安装gmake
我上传在in/zhBSD下200多k
假如使用make出错.
请使用gmake编译.
4.浏览器:
系统自带的netscape不支持XIM
可以安装mozilla-0.9.9 for BSD的bin包.
kde桌面可以使用konqueror
注重每次都要设置编码为GBK不然不能显示中文.

==========================================================
7.FreeBSD locale的组成
==========================================================

FreeBSD的locale由三部分组成.
在/usr/share/locale里
注重系统缺省是不支持GBK的.
到zh_CN.EUC目录看一下,
LC_COLLATE指向一个通用的la_LN.ASCII/LC_COLLATE,是用colldef生成
源码在/usr/src/share/colldef目录
LC_TIME定义的是时间格式.使用frep生成,其实是一个文本文件.
源码在/usr/src/share/timedef
LC_CTYPE是最要害的,负责处理字符集.使用mklocale生成.
源码在/usr/src/share/mklocale/
所以GBK的locale可以使用zh_CN.EUC的LC_COLLATE和LC_TIME.
但必须扩充zh_CN.EUC的字符集
虽然zh_CN.EUC和gb2312是一样的.
但是系统并没有gb2312的locale(/usr/share/locale目录没有)
你不能设置为zh_CN.GB2312
可以自己在/usr/share/locale建一个联接的
但推荐使用GBK locale

图片内容