|
|
发表于 2006-8-17 12:21:44
|
显示全部楼层
Post by osbug
真希望哪位达人能写一篇最新的debian中文美化的教程,现在我还是晕,用simsun凑合着用。
其实你查一些资料,自己作个总结,就会对这个问题比较清楚。linuxsir上的资料很多,我一般用google这样搜索:
关键词 site:www.linuxsir.cn
下面是我参考网上众多美化文章做的总结的一部分,你可以参考一下。
这种中文化方法放弃使用传统的xtt模块,方法较简单,而且由于debian官方最近加入了粗体的支持,使得其显示效果有较大提升。
1.产生语系(locale)
若未安装locales则如下安装:
#aptitude install locales
若已经安装了locales,就重新设定语系:
#dpkg-reconfigure locales
选择生成下列语系的数据(酌情选择,我没有选en_US.UTF-8):
- en_US.ISO-8859-1
- en_US.UTF-8
- zh_CN.GB2312
- zh_CN.UTF-8
- zh_CN.GBK
- zh_TW.BIG5
- zh_TW.UTF-8
复制代码
再将默认locale选择为“C”(就是重设locale的时候选none,这会将root的locale设问C,用户的locale还是你安装时的那个,我的是zh_CN.UTF-8)。可以用“locale -a”命令查看现在系统中所有支持的语系,“locale”命令可以查看当前用户所使用的语系。在产生了语系后需重新登陆一次。
2.安装字体
首先安装必要的软件:
#aptitude install fontconfig fontconfig-config libfreetype6 libxft2 x-ttcidfont-conf
x-ttcidfont-conf不装的话打开某些软件好慢,如xterm,进x也很慢
安装自由中文字体
建议首先安装fireflysung字体!!香港和台湾的安装源有这个字体的最新版本,可以添加源并安装之。我不是这样装的,所以下面的只能作为参考:
在/etc/apt/sources.list中加上新宋字体的apt仓库源:
deb ftp://debian.linux.org.tw/pub/apt unstable main
或者 deb ftp://ftp.hk.debian.org/unoffical/dlot-apt unstable main
然后更新,就可以安装firefly的字体了。
#aptitude update
#aptitude install ttf-fireflysung
我是从网上下了一个firefly字体的.deb包(ttf-arphic-newsung_1.3.0-1_all.deb),然后安装:
#dpkg --install ttf-arphic-newsung_1.3.0-1_all.deb
linux中最常用的中文字体是文鼎的几套中文字体:
ttf-arphic-bsmi00lp - 文鼎PL细上海宋(AR PL Mingti2L Big5),包括了Big5中一万三千多个繁体字。
ttf-arphic-bkai00mp - 文鼎PL中楷(AR PL KaitiM Big5),包括了Big5中一万三千多个繁体字。
ttf-arphic-gbsn00lp - 文鼎PL简报宋(AR PL SungtiL GB),包括了GB2312中七千多个简体字。
ttf-arphic-gkai00mp - 文鼎PL简中楷(AR PL KaitiM GB),包括了GB2312中七千多个简体字。
ttf-arphic-uming - 文鼎PL上海宋Uni(AR PL ShanHeiSun Uni),包括了GB2312、Big5及HKSCS中二万多个繁简体字。
ttf-arphic-ukai - 文鼎PL中楷Uni(AR PL ZenKai Uni),包括了GB2312、Big5及HKSCS中二万多个繁简体字。
这些字体已经收进官方,可以直接安装。
#aptitude install ttf-arphic-bkai00mp ttf-arphic-bsmi00lp ttf-arphic-gbsn00lp \
ttf-arphic-gkai00mp ttf-arphic-uming ttf-arphic-ukai
安装英文字体(可选,这步我没做)
这两个字体效果不错,
#apt-get install ttf-bitstream-vera ttf-dejavu
为了提高对微软平台的兼容程度,也建议安装msttcorefonts这一套微软的英文字体。这套字体包含了Andal Mono、 Arial Black、Arial、Comic Sans MS、Georgia、Impact、Times New Roman、Times、Trebuchet、Verdana和Webdings等11种字体。
#apt-get install msttcorefonts
安装其它字体(可选,想装simsun的参考这里)
若还想安装其它truetype字体,如windows下优秀的simsun字体(非GPL授权),或者文泉驿点阵字体(GPL授权),可参考如下方法:
a.下载字体并放在目录/usr/share/fonts/truetype中(可在其下自建目录)。
b.打"fc-cache -f -v"重设fontconfig的cache。
c.可用"fc-list"列出所有fontconfig管理的字体,以检查新字体是否成功安装。
注意:我发现这样装了以后/etc/fonts/fonts.conf文件里并没有关于新安装的字体描述,解决方案看2楼吧。
3.粗斜体问题以及firefly修正包
官方解决方案(注意不要与firefly补丁混用)
在粗体和斜体的实现问题上,主要有两种思路,一是通过算法,使基本字体表现出粗体和斜体的效果,二是通过直接使用粗体斜体的字体来实现粗斜体的显示。第一种已经有官方的支持,推荐使用,我也是用的这种方法。
这里只需安装libfreetype6 libxft2即可(第2步已经装了),使用默认的fonts.conf文件已经可以看到粗体,但是firefox中看不到粗体。需要修改/etc/fonts/fonts.conf中如下一段,把其中的200换成180即可。
- <!--
- Synthetic emboldening for fonts that do not have bold face available
- -->
- <match target="font">
- <!-- check to see if the font is just regular -->
- <test name="weight" compare="less_eq">
- <int>100</int>
- </test>
- <!-- check to see if the pattern requests bold -->
- <test target="pattern" name="weight" compare="more_eq">
- <int>[color="Red"]200[/color]</int>
- </test>
- <!-- set the embolden flag -->
- <edit name="embolden" mode="assign">
- <bool>true</bool>
- </edit>
- </match>
复制代码
4.设置fontconfig
这一步非常重要,也许你是安装了非常好看的字体,但是如果你不修正你的fontconfig,再好看的效果也不一定出来。
首先编辑/etc/fonts/fonts.conf文件,检查字体的使用顺序,把用到的效果最好的字体放在最前面。
重排Serif字体显示顺序(我把DejaVu Serif提到了第一,添加了AR PL New Sung(firefly的字体)和SimSun):
- <alias>
- <family>serif</family>
- <prefer>
- <family>DejaVu Serif</family>
- <family>Bitstream Vera Serif</family>
- <family>Times New Roman</family>
- <family>Times</family>
- <family>Luxi Serif</family>
- <family>AR PL New Sung</family>
- <family>SimSun</family>
- <family>AR PL Mingti2L Big5</family>
- <family>AR PL SungtiL GB</family>
- <family>Ming(ISO10646)</family>
- <family>Kochi Mincho</family>
- <family>Baekmuk Batung</family>
- </prefer>
- </alias>
复制代码
重排sans-serif以及monospace的字体显示顺序,找到相应的描述段,操作和上面一样。需要注意的是,在fonts.conf文件的后面还有这样的描述段,也要改,我一共改了六个这样的描述段。
关于粗体,官方已经在fonts.conf里面添加了代码,不用修改。
关于关反锯齿,在/etc/local.conf或~/.fonts.conf里面设置吧,我只设了simsun的,firefly的字体已经自动设好,看2楼。我这里的设置是字体小于17px时关反锯齿,和网上的8-16px之间关反锯齿效果应该是一样的。
5.安装中文输入法
建议安装 SCIM 智能通用输入法平台,这些软件包必装:
scim - SCIM (智能通用输入法平台)
scim-chinese - SCIM中文智能汉语拼音输入模块(下一个版本会改名为 scim-pinying)
im-switch 有了这个就不用手动配置输入法了,装上im-switch即可自动配置。
sir上有文章说要在/etc/X11/XSession.d/目录下创建一个X的启动文件95locale-xinput-set,在此设定X的locale和中文输入法。我这里装了im-switch后什么都不用配置,照着那个做只会使你的X进不去。
6.其它应注意的事项
如果原来有windows下的文件,其编码是gbk,在utf-8下应先转换一下才能正常显示。用到的工具有:
iconv -f gbk -t utf8 file.txt > tofile.txt ;这个用来转换文本文档编码。
convmv -f gbk -t utf8 --notest filename ;转换文件名编码,对于目录需要加r参数。
终端我用的rxvt-unicode,建立~/.Xresources,添加如下内容之后就可以显示中文了,并且还比较好看。其中的Rxvt改成URxvt吧,我是直接拷的以前的配置,懒得修改。
- !! RXVT setting
- Rxvt.background:black
- Rxvt.foreground:white
- Rxvt.colorBD:yellow
- Rxvt.colorUL:green
- Rxvt.scrollBar:True
- Rxvt.scrollBar_right:True
- Rxvt.scrollBar_floating: False
- Rxvt.scrollstyle:next
- Rxvt.saveLines:3000
- Rxvt.color12:DodgerBlue
- !!Rxvt.font:xft:serif
- URxvt.font:7x14,xft:serif
- Rxvt.menu:/etc/X11/rxvt.menu
- Rxvt.preeditType:Root
复制代码
vim经过合适配置可以编辑各种中文编码的文档,我在~/.vimrc下添加了如下内容,至于原因可以参考ibm developerworks上的一篇文章,在http://www.ibm.com/developerworks/cn/上搜一下吧。
- "Carlos 大侠的 vimrc :让vi根据打开文件的编码自动进行设置。
- "现在打开gbk编码的文件没问题了。
- if has("multi_byte")
- "set bomb
- set fileencodings=ucs-bom,utf-8,cp936,big5,euc-jp,euc-kr,latin1
- " CJK environment detection and corresponding setting
- if v:lang =~ "^zh_CN"
- " Use cp936 to support GBK, euc-cn == gb2312
- set encoding=cp936
- set termencoding=cp936
- set fileencoding=cp936
- elseif v:lang =~ "^zh_TW"
- " cp950, big5 or euc-tw
- " Are they equal to each other?
- set encoding=big5
- set termencoding=big5
- set fileencoding=big5
- elseif v:lang =~ "^ko"
- " Copied from someone's dotfile, untested
- set encoding=euc-kr
- set termencoding=euc-kr
- set fileencoding=euc-kr
- elseif v:lang =~ "^ja_JP"
- " Copied from someone's dotfile, untested
- set encoding=euc-jp
- set termencoding=euc-jp
- set fileencoding=euc-jp
- endif
- " Detect UTF-8 locale, and replace CJK setting if needed
- if v:lang =~ "utf8$" || v:lang =~ "UTF-8$"
- set encoding=utf-8
- set termencoding=utf-8
- set fileencoding=utf-8
- endif
- else
- echoerr "Sorry, this version of (g)vim was not compiled with multi_byte"
- endif
复制代码
能想到的就是这些了,icewm也没啥好说的,要善用google,多作总结。 |
|