QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 774|回复: 4

看了那么多帖子,但这个问题似乎没有人可以通俗而完美的解决。

[复制链接]
发表于 2004-12-2 18:30:40 | 显示全部楼层 |阅读模式
小菜鸟我用的是fedora core1+KDE,安装的时候语言选择了英文,简体中文和繁体中文。后来把windows分区挂载到linux分区上之后中文就都变成“口”了,这个问题怎么完美解决?(诸如mount -t vfat /dev/hda1 /mnt/dosc -o iocharset=gb2312,umask=000的命令是没有用的)
,还有我怎么输入中文?有哪位世外高人能比较通俗的给小弟一些指点吗?-_-
发表于 2004-12-2 20:09:39 | 显示全部楼层
转superhu兄贴子.
以前从来都没有在论坛上发表过什么长篇大论的,由于昨天atfa发话说,要是不把我的FVWM安装配置的过程写下来的话,就有RPWT。没有办法,看来这次非写不可了,我接触FVWM的时间也不长,以前用过一段时间的FVWM,后来觉得配置太麻烦,所以就改用XFCE4,感觉很不错,最近由于没事干,又装起来FVWM。想了一想,没有什么好写的,只能把自己的安装配置过程一步一步的写下来了,作为对你的一个参考。由于Linux的发行版有很多,而且各个发版行都是有一定的区别的,所以我的方法对你并不一定适用,但是我相信只要你看完这篇文章,对你还是有一定的帮助的。我的机器只安装有Debian和Gentoo两个系统,现在Debian比较流行,用得人比较多,我就以Debian系统为例来说说我的具体的安装和配置过程吧。
在讲怎么样配置FVWM之前,我得先讲一讲有关的字体的安装和配置,因为如果前面的字体配置得不够好的话,后面FVWM的配置就无法进行了.首先你可以用dpkg-reconfigure local来设置你的系统的Local为zh_CN.GB2312,GBK也行, 第一步要做的就是把要用到的字体从Windows文件夹下面拷出来,如果你没有WINDOWS的话,可以去网上找找,一般这些字体都找得到。一般只要拷simsun.ttc,tahoma.ttf,tahomabd.ttf就可以了,假设你的Windows分区为/dev/hda1,那么,用如下的命令可以完成这个任务,我的机器上没有WNDOWS,所以这些步骤是我的一个大致印象。

mkdir /usr/TrueType <----- 用来放我们的字体
mount /dev/hda1 /mnt/ <----- 挂上WIN分区,使LINUX可以访问
cd /mnt/windows/Fonts/ <----- 进入到WIN的字体文件夹,由于我没有WIN,这里的目录的大小写也许有错,注意一下
cp simsun.ttc /usr/TrueType/simsun.ttf <-----拷贝中文字体,注意我把后缀名改了一下
cp tahoma* /usr/TrueType/ <----- PP的英文字体,这个不用多说了吧
cp mingliu.ttc /usr/TrueType <----- 让繁体中文也显示的比较PP,你不需要的话,不拷贝也行
cp verdana* /usr/TrueType <----- 我个人觉得verdana这个字体也不错,用来在浏览器中显示英文,看起来眼睛要比用Tahoma的好受一些,不拷同样可以
cd <----- 回到用户目录下面
umount /mnt/ <----- 用完以后卸下分区

好了,字体的已经有了,接下来就是要让你的系统能够访问到这些字体
首先简要的介绍一下X的字体,这里我参考了许多其它的文章。X支持truetype字体主要有四种引擎,分别是:xtt freetype xfs 和 xft.其中xtt和freetype是X的内部模块,而xfs和xft是外部服务程,xfs是系统级的字体服务程序,xft和其它类库一样,只有在调用时才被加载。其中只有xft支持antiailias。
这么多的字体引擎,我们使用哪一个更好呢?到目前为止,支持中文最好的还是xtt,一会儿再说xft。
接下来,我们要做的就是将刚才复制的字体添加的X中,使xtt能够正确读取。在X的配置文件中找到有很多FontPath的部分,在其中加入
FontPath "/usr/TrueType" <----- 让X知道这个文件夹的存在
然后再在下面一点点找到有很多Load的部分,这里是加载模块的,我们要使用xtt,所以加入这样一段
Load "xtt" <----- 如果你的系统上面有这么一段,就不用加了,如果注释了,就把前面的#号去掉
并且注释掉调用freetype模块的部分
#Load "freetype"
因为freetype和xtt有冲突,两个不可以同时使用.保存并退出。
工作还没有完成,xtt不能自动认出我们的字体,我们需要写一个fonts.dir,这个文件有固定的语法,其实也很容易弄懂的,下面给出了我自己写的fonts.dir,你可以直接复制成fonts.dir然后保存到你的/usr/TrueType文件夹下面,并拷贝一分给fonts.scale文件,fonts.dir和fonts.scale的内容相同.

24
tahoma.ttf -microsoft-Tahoma-medium-r-normal--0-0-0-0-p-0-iso10646-1
tahoma.ttf -microsoft-Tahoma-medium-r-normal--0-0-0-0-p-0-iso8859-1
tahomabd.ttf -microsoft-Tahoma-bold-r-normal--0-0-0-0-p-0-iso10646-1
tahomabd.ttf -microsoft-Tahoma-bold-r-normal--0-0-0-0-p-0-iso8859-1
verdana.ttf -microsoft-Verdana-medium-r-normal--0-0-0-0-p-0-iso10646-1
verdana.ttf -microsoft-Verdana-medium-r-normal--0-0-0-0-p-0-iso8859-1
verdanab.ttf -microsoft-Verdana-bold-r-normal--0-0-0-0-p-0-iso10646-1
verdanab.ttf -microsoft-Verdana-bold-r-normal--0-0-0-0-p-0-iso8859-1
verdanai.ttf -microsoft-Verdana-medium-i-normal--0-0-0-0-p-0-iso10646-1
verdanai.ttf -microsoft-Verdana-medium-i-normal--0-0-0-0-p-0-iso8859-1
verdanaz.ttf -microsoft-Verdana-bold-i-normal--0-0-0-0-p-0-iso10646-1
verdanaz.ttf -microsoft-Verdana-bold-i-normal--0-0-0-0-p-0-iso8859-1
simsun.ttf -misc-SimSun-medium-r-normal--0-0-0-0-c-0-iso10646-1
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-gb2312.1980-0
ds=y:simsun.ttf -misc-SimSun-bold-r-normal--0-0-0-0-c-0-iso10646-1
ds=y:simsun.ttf -misc-SimSun-bold-r-normal--0-0-0-0-c-0-gbk-0
ds=y:simsun.ttf -misc-SimSun-bold-r-normal--0-0-0-0-c-0-gb2312.1980-0
ai=0.3:simsun.ttf -misc-SimSun-medium-i-normal--0-0-0-0-c-0-iso10646-1
ai=0.3:simsun.ttf -misc-SimSun-medium-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
ds=y:ai=0.3:simsun.ttf -misc-SimSun-bold-i-normal--0-0-0-0-c-0-iso10646-1
ds=y:ai=0.3:simsun.ttf -misc-SimSun-bold-i-normal--0-0-0-0-c-0-gbk-0
ds=y:ai=0.3:simsun.ttf -misc-SimSun-bold-i-normal--0-0-0-0-c-0-gb2312.1980-0

解释一下这个文件的内容,第一行的24表示下面有24行内容,看上去比较傻瓜,其它各行的内容都差不多
ds=y:ai=0.3:simsun.ttf -misc-SimSun-bold-i-normal--0-0-0-0-c-0-gbk-0
ds=[yn]:ds是xtt的功能,设成y表示粗体,设成n表示正常,可以用它来生成粗体。
ai=real_numer:表示倾斜度的,不设表示自动,可以用这个语法来生成斜体。
simsun.ttf:是字体的文件名,如果你刚才复制的时候没有改名,那么这里应该用simsun.ttc
misc:表示的是字体的制造商,比如tahoma的是microsoft
simsun:是字体的名字
bold:表示粗体,medium表示正常,如果前面设置了ds=y那么这部分应为bold,如果没设就应为medium
i:i表示斜体,r表示正常,前面设置了ai=0.3的话,这里应为i,没设则为r
normal:字符集的宽度标准,一般就用这个
p:表示可变长度,c是正方形,m是固定宽度
gbk表示字体编码

好了,不要忘记copy一分给fonts.scale。现在你的X应该就能够使用simsun和tahoma字体了。

接下来还要介绍一下xft,应该说xft是大势所趋,现在一般比较新的程序都支持xft,只有一些比较老的程序才不支持xft,只能使用x的核心字体,比如xmms。所以刚才我们设置了xtt,目的就是让这些程序也能使用simsun字体.xft的主要配置文件是/etc/font/font.conf,这是一个XML文件,但是不建议直接修改那个文件,我们所做的修改都是修改同一个文件夹下面的local.conf文件,因为font.conf会读取local.conf,用你喜欢的编辑器打开这个文件,然后把它改写成下面的内容:

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>

<!-- 下面这一句是读取刚才的字体文件夹,让它能找到你的字体 -->
<dir>/usr/TrueType</dir>

<!-- 下面这个 march 部分是是给液晶显示器用的,如果你的显示器不是液晶的话,可以注释掉
如果注释掉后你的字体显示不正常,那么再加上 -->
<match target="font">
<test qual="all" name="rgba"><const>unknown</const></test>
<edit name="rgba" mode="assign"><const>rgb</const></edit>
</match>

<!-- 如果字体是粗体的话,就用粗体来显示它,要让这个起作用,需要后面的补丁 -->
<match target="font">
<test compare="more" target="pattern" name="weight"><const>medium</const></test>
<edit mode="assign" name="weight"><const>bold</const></edit>
</match>

<!-- 下面这段可以解决浏览网页时的缺字现像,如果你没出现缺字,加上也没有关系 -->
<match target="font">
<test name="pixelsize" compare="more_eq"><int>7</int></test>
<test name="pixelsize" compare="less_eq"><int>19</int></test>
<edit name="render" mode="assign"><bool>false</bool></edit>
</match>

<!--如果字体是simsun,tahoma或者是verdana,并且大小在7号和19号之间的话,打开微调,并且不使用antialias
有时候不打开hinting(微调)的话,字体的锯齿现像比较严重,关闭AA是就是不要那种模模糊糊的,有点发亮的
那种字体,至少在我的液晶显示器上是这样的 -->
<match target="font">
<test qual="any" name="family">
<string>SimSun</string>
<string>Tahoma</string>
<string>Verdana</string>
</test>
<test name="size" compare="more_eq"><int>7</int></test>
<test name="size" compare="less_eq"><int>19</int></test>
<edit name="antialias" mode="assign"><bool>false</bool></edit>
<edit name="hinting" mode="assign"><bool>true</bool></edit>
</match>

</fontconfig>

有关font.conf的更详细的说明,请看公社的高质量字体研究版的精华文章,里面说得很详细。
刚才说到了补丁,其实只要从firefly的rpm包里面解压出来libXft.so.2.1.1替换掉原来系统中的就可以了。在我的Debian系统上这个文件在/usr/lib/并且文件名是一样的,直接替换就行了,但在我的Gentoo系统上,这个文件的位置是/usr/X11R6/lib/并且文件名为libXft.so.2.1 你可以看你自己的系统这个文件到底在哪里.
到这里,字体的设置工作就基本上完成了。
再来说一说xmms的所谓美化吧,由于xmms是gtk1的程序,为了让它的界面能显示中文和好看一些,要设置/etc/gtk/gtkrc.zh_CN文件,这个文件是用来控制在中文Local下的gtk1的程序的
我的gtkrc.zh_CN的内容如下:
# $(gtkconfigdir)/gtkrc.zh_CN
#
# This file defines the fontsets for Chinese language (zh) using
# the simplified chinese standard GuoBiao as in mainland China (CN)
#
# 1999, Pablo Saratxaga <[email protected]>
#

style "gtk-default-zh-cn" {
fontset = "-microsoft-tahoma-medium-r-normal--12-*-*-*-*-*-iso8859-1,\
-*-simsun-medium-r-normal--12-*-*-*-*-*-gb2312.1980-0,*-r-*"
}
class "GtkWidget" style "gtk-default-zh-cn"
#下面一行是用来控制gtk1程序的皮肤的,它把对应的文件包含进来,
include "/usr/share/themes/Flat/gtk/gtkrc"
在你/usr/share/theme/目录下面可能有不同的主题,你可以自己选择

好了,现在你启动xmms的话,只要你的Local是中文的话,它的菜单应该是中文的了吧.为了使播放列表能显示中文歌曲名,需要设置一下,在它的菜单里面选择"选项",然后是"首选项",在字体那一栏里面,把两个按扭按上,接着在字体里面手工输入以下内容,两行都一样
-microsoft-tahoma-bold-r-normal-*-*-115-*-*-p-*-iso8859-1,-misc-simsun-bold-r-normal-*-*-115-*-*-*-*-gbk-0
现在你的字体好爽了吧,然后就是需要下载皮肤了,你可以去winamp的网站看看,他们的皮肤是通用的,下载相应的皮肤后放到~/.xmms/Skins/下面就OK了.
注意,有的皮肤是压缩的,如果你没有unzip程序,可能不能使用某些皮肤.

下面是gtk2的程序,你会发现如果你的桌面环境不是XFCE或者GNOME的话,运行的gtk2的程序和gtk1的一样丑,我们来对它美化一下.和gtk1程序一样,gtkrc-2.0文件控制gtk2程序,你可以在你的用户目录下面建立一个这样的文件 .gtkrc-2.0 ,注意前面有一个点.内容如下

style "user-font"
{
font_name="tahoma 11.5"
}
class "*" style "user-font"

include "/usr/share/themes/Flat/gtk-2.0/gtkrc"

这个和gtk1的差不多,不解释了.可以去网上下载gtk2的皮肤,然后放到/usr/share/themes/文件下面,然后在这里加载,这样gtk2的程序就不丑了.

好了,写了也不少了吧,我暂时只想到这些,以后如果再想到的话,就补充吧,呵呵,如果你能全看完,佩服你的耐性

在 /etc/env.d 下创建一个100i18n 的文件,内容如下
LANG=zh_CN.gbk
LC_ALL=zh_CN.gbk

回复

使用道具 举报

 楼主| 发表于 2004-12-2 21:10:38 | 显示全部楼层
我打入命令mount -t vfat /dev/hda5 /home -o iocharset=utf8就可以显示windows分区的中文了,因为fedora core1是utf8编码。上面的大侠我想问一下,什么是FVWM?还有拿一个中文输入法比较好?我装好fctix运行之后弹出一个输入法界面,但是什么也不能做    
回复

使用道具 举报

发表于 2004-12-2 21:25:52 | 显示全部楼层
http://desintegr.free.fr/?page=linux/fvwm  

fctix启动后还要跟windwos下一样 ctrl+空格 才能输入..
回复

使用道具 举报

发表于 2004-12-3 20:48:12 | 显示全部楼层
我看完了,有耐性吧
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-7 23:31 , Processed in 0.069997 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表