分享
 
 
 

FreeBSD 中文化实践

王朝system·作者佚名  2006-11-23
窄屏简体版  字體: |||超大  

FreeBSD 4.7 Release + Xfree86 4.2.1 + gnome 1.4 + OpenOffice 1.0.1 + Chinput3

(本文中所涉及到的[url=http://www.pccode.net].net" class="wordstyle"源码请参考 [url=http://www.pccode.net].net

/pub/FreeBSD/" target=_blankftp://bsd.starhiway.net

/pub/FreeBSD/ )

经过二十天耐心的资料查询、反复测试,终于可以在FreeBSD上书写文档了,这篇文章就是完全在运行FreeBSD的系统上完成的,请大家与我共同分享使用FreeBSD的乐趣。

1.让XFree86支持TrueType字体,安装SimSun字体

即使不打算使用FreeBSD做文本编辑这样的工作,安装SimSun字体也是非常必要的,XFree86自带的中文字体看起来很不习惯。

随 FreeBSD 4.7 Release 发行的 Xfree86 版本是 4.2.1 ,Xfree86 4.x已经内建支持 TrueType 字体。有两个不同的模块能够起动这个功能:freetype 和xtt。这里使用的是 xtt 模块。在 /etc/X11R6/lib/X11/XF86Config文件中加入:

Load “xtt”

安装TrueType字体管理软件ttfm,步骤如下:

#cd /usr/ports/chinese/ttfm

#make

#make install

为TrueType字体创建一个目录(/usr/X11R6/lib/X11/fonts/TrueType),把windows fonts 目录下的 simsun.ttf 文件拷贝到这个目录。

进行以下步骤:

#cd /usr/X11R6/lib/X11/fonts/TrueType

#ttfm.sh –add xttfm simsun.ttf

如果将simsun.ttf文件存放在其他目录下,执行ttfm.sh会自动创建 /usr/X11R6/lib/X11/fonts/TrueType 目录,并在这个目录下创建符号链接simsun.ttf,指向simsun.ttf的实际存储位置。执行完ttfm.sh后,在 /usr/X11R6/lib/X11/fonts/TrueType目录下创建了fonts.scale,fouts.dir和encodings.dir文件。

在/etc/X11R6/lib/X11/XF86Config文件中加入:

FontPath “/usr/X11R6/lib/X11/fonts/TrueType”

重新起动X-windows,使用 xlsfonts -fn “*gb*” 列出系统中所有中文字体,如果包括有

-misc-simsun-medium-r-normal—0-0-0-0-c-0-gb2312.1980-0 等则表明simsun字体安装完成。然后就可以在Mozilla中欣赏一下漂亮的SimSun字体

2.设定locale

根据一些资料,FreeBSD系统对中文的locale支持为zh_CN.EUC,而XFree86只支持zh_CN.gbk,www.freebsdchina.org提供了让XFree86支持zh_CN.EUC的方法。根据这个方法

下载Xfree86 4.2.0[url=http://www.pccode.net].net" class="wordstyle"源码,包括X420src-1.tgz,X420src-2.tgz,X420-src3.tgz三个文件和升级到4.2.1的patch包4.2.0-4.2.1-1-freebsd.patch.gz。

(该[url=http://www.pccode.net].net" class="wordstyle"源码可从 [url=http://www.pccode.net].net

/pub/FreeBSD/distfiles/xc/" target=_blankftp://bsd.starhiway.net

/pub/FreeBSD/distfiles/xc/ 下载

使用 tar 解开压缩包。

使用如下命令将[url=http://www.pccode.net].net" class="wordstyle"源码升级到4.2.1。

gzip -d < 4.2.0-4.2.1-1-freebsd.patch.gz | patch -p0 -E

进入目录xc/nls/XI18N_OBJS,把zh文件复制一个名为zh_CN的文件,然后在这个目录中的Imakefile中加入一行:

XI18NTarget(zh_CN)

回到xc目录,重新编译安装整个X系统。

设定locale为zh_CN.EUC

c shell修改.cshrc 加入:

setenv LC_ALL zh_CN.EUC

setenv LANG zh_CN.EUC

bash修改.profile 加入:

export LC_ALL=zh_CN.EUC

export LANG=zh_CN.EUC

修改 /usr/X11R6/share/gnome/gtkrc.zh_CN

将所有的fontset设置修改为:

fontset = "-misc-SimSun-medium-r-normal--14-*-*-*-*-*-gb2312.1980-0"

修改 /usr/X11R6/share/themes/gtk/Default/gtkrc.zh_CN 如下:

style "gtk-default-zh-cn" {

fontset = "-adobe-helvetica-medium-r-normal--14-*-*-*-*-*-iso8859-1,-*-SimSun-medium-r-normal--14-*-*-*-*-*-gb2312.1980-0,*-r-*"

}

class "GtkWidget" style "gtk-default-zh-cn"

重新起动X-win,现在在菜单里应该可以看见中文的菜单了。

3.安装chinput3

从ftp://ftp.freebsdchina.org/pub/china-ports/下载 chinput302final.tgz,tar 解压后,进行编译。

#make

#make data

#make install

#make install-data

这个版本的源代码还有一些错误。主要如下:

src/ZWinControl/text目录下的文件zwincontrol_gb.po中有一个重复定义,删除。

安装时提示/usr/share/locale/zh_TW.Big5/LC_MESSAGES存在,备份后删除再进行安装。

需要将fonts目录下的字体安装到x-win系统中。创建/usr/X11R6/lib/X11/fonts/chgb目录,将fonts目录下的两个文件拷贝到创建的目录下,并在/usr/X11R6/lib/X11/XF86Config配置文件中加入:

FontPath "/usr/X11R6/lib/X11/fonts/chgb/"

在用户目录下的 .xinitrc目录中加入:

export XMODIFIERS=@im=Chinput

chinput

exec gnome-session

这样在x-win执行其他程序之前起动chinput,就可以在mozilla等可以编辑文件的软件中用Ctrl+Space叫出输入法了。

将修正后的chinput3上载在 [url=http://www.pccode.net].net

/pub/FreeBSD/chinput3/" target=_blankftp://bsd.starhiway.net

/pub/FreeBSD/chinput3/ 上。

4.安装openoffice.zh_CN

从ports安装openoffice.zh_CN,编译openoffice需要有足够的硬盘空间(约4G),进入目录/usr/ports/chinese/openoffice.zh_CN/

#cd /usr/ports/chinese/openoffice.zh_CN

#make

由于openoffice倚赖很多其他软件包,ports能够自动下载所需软件包的原文件并进行安装,在他所倚赖的软件包安装完成后,会下载openoffice的源文件并开始编译。但openoffice所依赖的jdk的源代码由于有一些特殊的许可问题,需要手工到相应网站进行下载。openoffice使用了mozilla 1.0.1的源文件,在编译时会出错。将/usr/ports/www/mozilla/ 目录下的所有文件拷贝到/usr/ports/chinese/openoffice.zh_CN/work/mozilla下,再回到/usr/ports/chinese/openoffice.zh_CN下重新make,即可顺利完成编译,编译比较耗时,耐心等待编译完成吧。

完成编译后,make install安装。

然后在 x-win 环境下运行 openoffice, 按照提示一路下一步(Next), 就完成了设置。 注意这时的字体很模糊。

完成了设置后,再次运行openoffice,OK,现在开始修正字体。在菜单工具->选项 里,Openoffice.org->字体替换 选中 使用替换表,在字体里写入 Andale Sans UI,在替换为一栏选择SimSun字体,然后按绿对勾按钮添加。再在前面两个选中框中选中,确定即可。现在菜单的字体完全正常了。

在添加字体替换时,如果你找不到绿对勾按钮。可能是因为你的屏幕分辨率和字体设置问题,导致那个对话框拉的很长。可以通过设置虚拟屏幕的方式,将屏幕扩大,以便能够显示出那个按钮。

在/usr/X11R6/lib/X11/XF86Config文件中,对应的显示模式下加入

Virtual 1600 1200

如:

Section "Screen"

Identifier "Screen0"

Device "Card0"

Monitor "Monitor0"

DefaultColorDepth 16 /* 默认显示颜色深度为16位色 */

SubSection "Display"

Depth 1

EndSubSection

SubSection "Display"

Depth 4

EndSubSection

SubSection "Display"

Depth 8

EndSubSection

SubSection "Display"

Depth 15

EndSubSection

SubSection "Display"

Virtual 1600 1200 /* 设定虚拟屏幕大小为1600 * 1200 */

Depth 16

EndSubSection

SubSection "Display"

Depth 24

EndSubSection

EndSection

附相关配置文件:

/* XF86Config */

Section "ServerLayout"

Identifier "XFree86 Configured"

Screen 0 "Screen0" 0 0

InputDevice "Mouse0" "CorePointer"

InputDevice "Keyboard0" "CoreKeyboard"

EndSection

Section "Files"

RgbPath "/usr/X11R6/lib/X11/rgb"

ModulePath "/usr/X11R6/lib/modules"

FontPath "/usr/X11R6/lib/X11/fonts/TrueType/"

FontPath "/usr/X11R6/lib/X11/fonts/URW/"

FontPath "/usr/X11R6/lib/X11/fonts/TTF/"

FontPath "/usr/X11R6/lib/X11/fonts/misc/"

FontPath "/usr/X11R6/lib/X11/fonts/Speedo/"

FontPath "/usr/X11R6/lib/X11/fonts/Type1/"

FontPath "/usr/X11R6/lib/X11/fonts/75dpi/"

FontPath "/usr/X11R6/lib/X11/fonts/100dpi/"

EndSection

Section "Module"

Load "xtt"

Load "dbe"

Load "dri"

Load "extmod"

Load "glx"

Load "pex5"

Load "record"

Load "xie"

Load "xtrap"

Load "speedo"

Load "type1"

EndSection

Section "InputDevice"

Identifier "Keyboard0"

Driver "keyboard"

Option "XkbRules" "xfree86"

Option "XkbModel" "pc101"

Option "XkbLayout" "us"

EndSection

Section "InputDevice"

Identifier "Mouse0"

Driver "mouse"

Option "Protocol" "MouseSystems"

Option "Device" "/dev/sysmouse"

EndSection

Section "Monitor"

Identifier "Monitor0"

VendorName "Monitor Vendor"

ModelName "Monitor Model"

HorizSync 31.5 - 79.0

VertRefresh 50.0 - 90.0

EndSection

Section "Device"

### Available Driver options are:-

### Values: : integer, : float, : "True"/"False",

### : "String", : " Hz/kHz/MHz"

### [arg]: arg optional

#Option "NoAccel" # []

#Option "HWCursor" # []

#Option "SWCursor" # []

#Option "ShadowFB" # []

#Option "Rotate" # []

#Option "UseBIOS" # []

#Option "LCDClock" # #Option "ShadowStatus" # []

#Option "VideoRAM" # Identifier "Card0"

Driver "savage"

VendorName "S3"

BoardName "Savage/IX-MV"

ChipSet "MobileSavage"

BusID "PCI:1:0:0"

EndSection

Section "Screen"

[1] [2] 下一页

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有