FreeBSD X Window下的中文环境
http://tech.ddvip.com 2006年08月20日 社区交流
本文详细介绍FreeBSD X Window下的中文环境
在使用包装技术时,另一个重要的问题是FreeBSD系统中存在两种不同的执行文件格式,a.out和ELF格式,它们分别使用a.out和ELF格式的动态连接库。因此对于不同格式的执行文件,必须使用相应格式的包装库来包装不同的libX11.so动态连接库,不同格式的库不能相互连接。3.0版本以上,缺省格式为ELF,缺省库也为ELF格式的动态连接库。因此3.0版本以后要支持对a.out格式进行包装,一方面包装的动态连接库的位置就改变为/usr/X11R6/lib/aout/libX11.so.6.1,同时也需要使用编译器的 -aout选项生成a.out格式的动态连接库,以进行包装。当前发行的标准 Packages均已经转向ELF,仍使用a.out格式主要是一些商业软件,如 Netscape Navigator。
- Xcin AnyWhere
XA(Xcin AnyWhere)是一个较早的使用包装技术的中文输入软件,它原来仅仅是用于中文输入,为Xcin提供一个标准接口,后来被加入了中文显示能力。具备中文显示能力的XA被称为XA+CV版本。
XA是由台湾开发者开发的,当前版本为XA-0.4b,它具备GB显示能力的国标版本为xa-1.04。它能够在FreeBSD下编译执行。对于这些包装方式的外挂中文系统,可以使用它提供的shell脚本xa来启动应用程序。
$ Xcin&
$ xa kvt&
或者自己设置LD_PRELOAD变量为wrap动态库的全路径,再启动相应的应用程序。
$ LD_RELOAD=/usr/X11R6/lib/wrap.so; export LD_PRELOAD
$ kvt&
在启动了它的输入服务器Xcin之后,那么就能在xa启动的程序中就能使用热键切换Xcin的中英文输入了。
- Chinput与ZhXwin
Chinput是另一个使用了包装技术的中文输入和显示软件,它是使用了cxterm的输入源代码模块在Linux下开发的,在FreeBSD下也能够正常编译运行。Chinput的作者在其正式发布1.4.1版本中包括了几个与中文显示和输入无关的软件,虽然单个软件都还很有用,但是将几个软件捆在一起,使得应用程序管理比较混乱,还是应该将每个单独的应用程序独立出来,Chinput就专门用于中文的输入和管理。FreeBSD中可以使用Packages 的管理机制来管理应用程序之间的关系。
责编:豆豆技术应用