`
isiqi
  • 浏览: 16466318 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

[转贴]Debian的汉化步骤【转自http://www.linuxsir.org】

阅读更多

前提是假设已经安装好了debian的基本系统以及X Window。

1、安装语言环境 locale
apt-get install locales # 注意是复数

如果已经安装,需要改变的话,请用下面命令:
dpkg-reconfigure locales # dpkg-reconfigure 是 dpkg 中一个很常用的工具

在配置表单中,我们只需选择两个 locale:
[*] en_US ISO-8859-1 # 美式英语,带 ISO-8859-1 西欧字符集, en_GB 为英式英语
[*] zh_CN.GBK GBK # 基于 GBK 的简体中文环境

参考文章:
http://www.cs.uu.nl/wais/html/na-di...1-charset.html
如果你对 locale 还没有概念,请参考于明俭老师的文章 “ Linux 国际化本地化和中文化”
http://www.opencjk.org/~yumj/i18n.html

2、我习惯用 startx 脚本启动 X ,把传递给它参数以及环境变量都写到一个文件.xsession,此文件存放在当前用户的 HOME 目录下,. 开头,故隐藏,用 ls -a 才能看到,如没有请自行建立。

编辑 ~/.xsession 文件,加入类似语句
LANGUAGE=zh_CN.GBK
LANG=zh_CN.GBK
LC_ALL=zh_CN.GBK
export LANGUAGE LANG LC_ALL
export XMODIFIERS=@im=fcitx
fcitx&
exec fvwm2
killall fcitx

手工添加的话,对于 bash 可用命令:

$ set LANG = zh_CN.GBK
$ export LANG
$ set LC_ALL = zh_CN.GBK
$ export LC_ALL
$ echo $LANG
$ echo $LC_ALL
$ ......

配置好后,用 locale 命令检查,范例如下:
$ locale
LANG=zh_CN.GBK
LC_CTYPE="zh_CN.GBK"
LC_NUMERIC="zh_CN.GBK"
LC_TIME="zh_CN.GBK"
LC_COLLATE="zh_CN.GBK"
LC_MONETARY="zh_CN.GBK"
LC_MESSAGES="zh_CN.GBK"
LC_PAPER="zh_CN.GBK"
LC_NAME="zh_CN.GBK"
LC_ADDRESS="zh_CN.GBK"
LC_TELEPHONE="zh_CN.GBK"
LC_MEASUREMENT="zh_CN.GBK"
LC_IDENTIFICATION="zh_CN.GBK"
LC_ALL=zh_CN.GBK

3、/etc/environment
加入
LANG=zh_CN.GBK
(有人要问,为什么上面写了,这里还写,:(我也不知道,反正有用:)

/etc/environment 这里可以书写一些环境变量,作用同 ~/.bashrc,不过是系统泛读。
例如我可以在这两处设置 ftp_proxy 与 http_proxy 两个环境变数
......
ftp_proxy=http://LOCAL-PROXY:PORT/
http_proxy=http://LOCAL-PROXY:PORT/
export ftp_proxy http_proxy
......

参考文章:
http://www.unet.univie.ac.at/aix/fi...environment.htm

4、fcitx 输入法中的 locale 设置

  安装选项有二,一是Debian官方的1.8.5版,二是非官方的2.0.1版
  (1) 安装Debian中自带的fcitx 1.8.5
  apt-get install fcitx
  运行一下 fcitx ,在 ~/ 下多了一个 .gWuBi 目录。
  vi ~/.gWuBi/profile
  检查一下里面的是不是都是 zh_CN.GBK

  (2) 安装非官方的fcitx 2.0.1
  在/etc/apt/sources.list中添加

源码:
deb http://211.92.88.40/apt/debian/ sid/i386/

  然后执行
源码:
apt-get update; apt-get install fcitx

  此非官方包的显示字体缺省使用文鼎楷体,fcitx 2.x的用户设置是存在 %HOME/.fcitx 中。

5、配置 XFree86,是使用 xtt 模块,去掉 freetype 模块

$ dpkg-reconfigure xserver-xfree86
......
[ ] freetype
......
[*] xtt
......

6、安装字体渲染引擎和管理工具,以及相关中文字体

软件简介:

老一辈: xtt(传统 X 字体服务器,XFree86 带了模块) + defoma
defoma - Debian Font Manager -- automatic font configuration framework
再也不用手工写字体,让 defoma 帮你管理吧
dfontmgr - GUI frontend for defoma, DEbian FOnt MAnager
一个很方便的图形化 defoma 字体管理工具
psfontmgr - PostScript font manager -- part of Defoma, Debian Font Manager
x-ttcidfont-conf - Configure TrueType and CID fonts for X.

新生代: xft2 + fontconfig
fontconfig - generic font configuration library
libxft2 - advanced font drawing library for X
libxft2-dev - advanced font drawing library for X (development files)
libpango1.0-0 - Layout and rendering of internationalized text

自动中文编码转换工具:
zh-autoconvert - Chinese HZ/GB/BIG5/UNI/UTF7/UTF8 encodings auto-converter

GPL字体:
ttf-arphic-bsmi00lp :文鼎PL细上海宋(Big5 码)
ttf-arphic-bkai00mp :文鼎PL中楷(Big5 码)
ttf-arphic-gbsn00lp :文鼎PL简报宋(GB 码)
ttf-arphic-gkai00mp :文鼎PL简中楷(GB 码)

其它字体请看:
http://www.debian.org/intl/zh/software

xfonts-intl-chinese - International fonts for X -- Chinese.
xfonts-intl-chinese-big - International fonts for X -- Chinese big.

中文帮助:
doc-linux-zh-s - Linux HOWTOs and mini-HOWTOs in Simplified Chinese in HTML
manpages-zh - Chinese manual pages

$ apt-get install defoma dfontmgr psfontmgr x-ttcidfont-conf fontconfig libxft2 libxft2-dev libpango1.0-0 zh-autoconvert ttf-arphic-bsmi00lp ttf-arphic-bkai00mp ttf-arphic-gbsn00lp ttf-arphic-gkai00mp xfonts-intl-chinese xfonts-intl-chinese-big doc-linux-zh-s manpages-zh

7、简单介绍:
gtk1 程序使用 xtt + defoma 来处理字体,向后兼容
gtk2 程序使用 fontconfig/xft2 来处理字体,将来的趋势

目前,有两种带有不同特点的子系统:

- 原始的(已有 15 年以上历史)子系统被称为“核心 X 字体子系统”。由这个子系统绘制的字体不是平滑字体,它们由 X 服务器处理,名称类似:
-misc-fixed-medium-r-normal--10-100-75-75-c-60-iso8859-1

- 新的字体子系统被称为“fontconfig”。它允许应用程序直接使用字体文件。fontconfig 经常与“Xft”库一起使用,这会允许应用程序在屏幕上绘制平滑字体。fontconfig 显示的字体更有“人情味儿”。

随着时间的推移,fontconfig/Xft 将会取代核心 X 字体子系统。目前,使用 Qt 3 或 GTK 2 工具包(包括 KDE 和 GNOME 应用程序)的应用程序使用fontconfig 和 Xft 字体子系统;其它部分程序(如 xmms 、gimp) 还在使用核心 X 字体。
Debian(包括 Redhat) 在未来可能会仅支持 fontconfig/Xft 作为默认的本地字体访问方法来取代传统的字体服务器。

注意:以上列出的字体子系统用法有两个例外。它们是 OpenOffice.org(使用它自己的字体绘制技术)和 Mozilla (使用 fontconfig,但不是 GTK 2)。
(以上文字摘自网上论坛)

8、使用 M$ 字体
首先准备好以下字体(win 用户到 c:\windows\Fonts\ 拷贝):

simsun.ttc mingliu.ttc simhei.ttf tahoma.ttf

其它字体看你需要,如果嫌麻烦,只需拷贝 simsun.ttc

cd /usr/share/fonts/truetype/
mkdir DIY
这里用来保存自定义字体,你可以随意添加,拷贝字体到该目录。

1) 下面我们让 defoma 来管理这些字体:
每一种字体都需要编写一个hints文件,为了方便大家,我提供两个常用的 hints:
http://211.92.88.40/public/xft/ttf-dynalab-simsun.hints
http://211.92.88.40/public/xft/ttf-...b-mingliu.hints

把它们下载到某个目录,现在我们把每个字体的 hints 文件都注册到 defoma
defoma-font reregister-all ttf-dynalab-simsun.hints
defoma-font reregister-all ttf-dynalab-mingliu.hints

如何知道是否注册成功,可以用 dfontmgr 来看,绝对简单。

修改 /etc/X11/XF86Config-4 文件,主要是在这两个文件中增加字体的路径,当然还要在 XF86Config-4 这个文件中用 xtt 代替 freetype 来渲染字体。
Add path:
FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"
FontPath "/var/lib/defoma/x-ttcidfont-conf.d/dirs/CID"

关于 hints 的制作方法请看参考文章:
losska 写的:
http://www.linuxsir.com/bbs/showthr...ighlight=defoma
经典教程:无痛起步
http://linux.nctu.edu.tw/web/moto/t...tall-Guide.html

2) 让 fontconfig 来管理字体
把新字体添加到 fontconfig 字体子系统比较简单明了,fontconfig 使用配置文件 font.conf 。

这里注意一下,由于 debian 提供几个包在 mozilla 上的表现稍不近人如意,会出现乱码,几位高人做了几个补丁,请到这里下载:
在/etc/apt/sources.list中添加
源码:
deb http://211.92.88.40/apt/debian/ sid/i386/
如果你在前面安装fcitx 2.0.1时已经添加了这一行,就不必再重复了。
然后执行
源码:
apt-get update; apt-get install libxft2

再执行
源码:
wget http://211.92.88.40/~carlos/setting_files/dot_fonts.conf -O $HOME/.fonts.conf

以上的 $HOME/.fonts.conf 是用户个人的细微设置,如果您希望其它用户也使用相同设置,请将此文件复制到其 $HOME 目录中。

单独用户可以把新字体复制到 ~/.fonts/ 目录中。
复制了新字体后,使用 fc-cache 来更新字体信息缓存:

as root:
$ fc-cache -f -v
as user
$ fc-cache -v

$ fc-cache <directory>

(这里的 <directory> 应该是 /usr/share/fonts/ 或 ~/.fonts/ 目录。)

其它:
(还待进一步验证)
如果字体文件名以“.gz”结尾,这表明它使用 gzip 被压缩,因而必须使用
gunzip 来解压后,fontconfig 字体子系统才能使用这个字体。
例:bitmap fonts in xxxxx.pcf.gz
* 拷贝相应的 xxxxx.pcf.gz 到一个新目录
* 解压文件 gzip -d xxxxx.pcf.gz 成 xxxxx.pcf.gz
* 在 /etc/fonts/fonts.conf 中建立 <dir> 路径,好让 xft 能找到 fonts
* 运行 fc-cache -f -v

9、退出 X , startx

调整好各个软件的字体到你满意为止。

注意对于 gtk1 程序,还得修改一个地方:
如果你把系统的字体改为simsun字体,需要修改 /etc/gtk/gtkrc.zh_CN 文件中的字体设置:

style "gtk-default-zh-cn" {
fontset = "-adobe-helvelica-medium-r-normal--14-*-*-*-*-*-iso8859-1,\
-dynalab-simsun-medium-r-normal--14-*-*-*-*-*-gbk-0,fixed"
}
class "GtkWidget" style "gtk-default-zh-cn"

注意:”-dynalab-simsun-medium-r-normal--14-*-*-*-*-*-gbk-0“ 是你系统里已有的,如果你用了上面提供的 hints ,那么填这个就不会有错,如果你是自己做的 hints,那么你先用 dfontmgt 查看一下。

quit X ,startx again.

10、让我想想还得干些什么呢?好象没了:)对了,感谢 Carlos 和 losska,都是他们教的,我只是代笔,希望不会太差,能看懂就给个及格吧!

屏幕抓图:
http://211.92.88.40/home/carlos/200...9x523_scrot.png
http://211.92.88.40/photos/screensh...4x768_scrot.png
http://211.92.88.40/photos/screensh...4x768_scrot.png
http://211.92.88.40/photos/screensh...4x768_scrot.png
http://211.92.88.40/photos/screensh...4x768_scrot.png
http://211.92.88.40/photos/screensh...4x768_scrot.png
以上截图 fvwm 窗体来得及汉化就抓了,所以标题栏是乱码。

11、补遗

1) 使用 Bitstream 字体美化菜单栏
大家可能注意到我的 mozilla-firebird 菜单栏显示的字体偏小偏淡,不够美观。
在 irc 里热心的 sev3n 兄向我提出了这个问题,并向我推荐用 Debian 自带的 Bitstream 字体,简单安装了一下,发现果然效果明显,漂亮很多。
这里感谢 sev3n!

简单介绍:
Bitstream Vera family 字体是一组免费的高质量 TrueType 字体,由 Bitstream 公司提高,以 DFSG-free 许可发布。目的是为了填补自由桌面环境没有免费高质量字体的空缺。
完全覆盖 西欧语言 ( ISO-8859-1, ISO-8859-15) 以及 Turkish (ISO-8859-9).同时还包含了一些数学和其它符号,对东欧语言提高有限支持 ( 部分 ISO-8859-2).

安装:
apt-get install ttf-bitstream-vera
安装是 fontsconfig 自动会帮你管理好。
查看是否安装正确
$ fc-list
NSimSun:style=Regular
Bitstream Vera Sans Mono:style=Bold
Bitstream Vera Sans:style=Oblique
SimSun:style=Regular
Bitstream Vera Sans:style=Roman
AR PL KaitiM GB:style=Regular
Bitstream Vera Sans Mono:style=Oblique
Tahoma:style=Regular
Bitstream Vera Sans:style=Bold
AR PL KaitiM Big5:style=Regular
PMingLiU:style=Regular
Bitstream Vera Serif:style=Roman
Bitstream Vera Sans Mono:style=Bold Oblique
Bitstream Vera Sans:style=Bold Oblique
Tahoma:style=Bold
Bitstream Vera Sans Mono:style=Roman
SimHei:style=Regular
AR PL Mingti2L Big5:style=Reguler
Bitstream Vera Serif:style=Bold
MingLiU:style=Regular
[/color]

如果未发现,请运行
$ fc-cache -v -f
fc-cache: "/usr/share/fonts": caching, 0 fonts, 1 dirs
fc-cache: "/usr/share/fonts/truetype": caching, 0 fonts, 3 dirs
fc-cache: "/usr/share/fonts/truetype/DIY": caching, 4 fonts, 0 dirs
fc-cache: "/usr/share/fonts/truetype/arphic": caching, 3 fonts, 0 dirs
fc-cache: "/usr/share/fonts/truetype/ttf-bitstream-vera": caching, 10 fonts, 0 dirs
fc-cache: "/usr/X11R6/lib/X11/fonts/Type1": skipping, no such directory
fc-cache: "/root/.fonts": caching, 7 fonts, 0 dirs
fc-cache: succeeded

安装前后效果图比较,大家仔细看 mozilla-fire 菜单栏字体以及网页中的英文字体:
未安装前:
http://211.92.88.40/photos/screensh...4x768_scrot.png
安装后:
http://211.92.88.40/photos/screensh...4x768_scrot.png

写后感:
现在 Debian 下的汉化已经比较完美,过程也比较简单。现在大家应该把学习的重心转移到该花时间的地方。
如果你热衷于汉化,不妨一起来研究一下 fontsconfig 的配置文件,如 fonts.conf。

1月20日0.2版(更新者:carlos):
1. 不再需要修改 /etc/fonts/fonts.conf 中的字体路径,因为 fontconfig 能跟 defoma 配合使用,自动找到用 defoma 安装的字体
2. 使用 $HOME/.fonts.conf 来完成字体细微调整
3. 增加安装 fcitx 2.x 选项
4. 使用~/.xsession而不是~/.xinitrcLocale是软件在运行时的语言环境,它包括语言(Language),地域(Territory)和字符集(Codeset)。其格式为:“语言_地域.字符集”,如zh_CN.GBK。
分享到:
评论

相关推荐

    debian软件包sources.list

    # deb http://ftp.debian.org/debian/ experimental main deb http://mirrors.ustc.edu.cn/debian/ jessie main contrib non-free deb-src http://mirrors.ustc.edu.cn/debian/ jessie main contrib non-free deb...

    在 CentOS 8 上安装Jenkins的方法

    因为Jenkins是使用Java编写的,所以...运行以下命令下载并导入GPG密钥 sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo sudo rpm –import https://jenkins-ci.org/

    wc_deb-1.0-src.zip_http://wc439.com/_linux wc.c_wc.439com_wc439

    描述中提到"Unpack Debian Linux .DEB packages",意味着这个软件的主要功能是解压Debian Linux的.deb包,它是一个用于安装和管理Debian及其衍生系统软件的包管理格式。"Source available"表示源代码是公开的,用户...

    解决usrlib64libstdc++.so.6和lib64libc.so.6版本过低问题

    [root@haughty software] wget http://ftp.de.debian.org/debian/pool/main/g/gcc-4.7/libstdc++6_4.7.2-5_amd64.deb ``` 2. **提取库文件**: - 使用 `ar` 和 `tar` 命令提取 `.deb` 包中的库文件。 ```bash ...

    FFmpeg win64

    This build was compiled on Debian 8.4 (64-bit): &lt;http://www.debian.org/&gt; GCC 5.3.0 was used to compile this FFmpeg build: &lt;http://gcc.gnu.org/&gt; This build was compiled using the MinGW-w64 toolchain:...

    ffmpeg-2.5.2-win64-shared.7z

    This build was compiled on Debian 8.0 (64-bit): &lt;http://www.debian.org/&gt; GCC 4.9.2 was used to compile this FFmpeg build: &lt;http://gcc.gnu.org/&gt; This build was compiled using the MinGW-w64 toolchain:...

    ffmpeg-2.5.2-win64-dev.7z

    This build was compiled on Debian 8.0 (64-bit): &lt;http://www.debian.org/&gt; GCC 4.9.2 was used to compile this FFmpeg build: &lt;http://gcc.gnu.org/&gt; This build was compiled using the MinGW-w64 toolchain:...

    Debian Reference

    Debian 的官方安装文档位于 http://www.debian.org/releases/stable/ 和 http:// www.debian.org/releases/stable/installmanual 。 开 发 中 的 版 本 位 于 http://www.debian.org/releases/testing/ 和 ...

    详解Docker源码编译安装

    执行以下步骤来设置仓库: 1. 添加Docker仓库到`/etc/apt/sources.list.d/docker.list`: ``` echo "deb https://apt.dockerproject.org/repo ubuntu-trusty main" | sudo tee /etc/apt/sources.list.d/docker....

    嵌入式 Linux 的网上资源

    3. **Debian**([http://www.debian.org.com/](http://www.debian.org.com/)):Debian是最早也是最著名的开源操作系统之一,以其稳定性著称,是许多其他Linux发行版的基础。 4. **Mandrake**(...

    DELL R410-debian 6.0 网卡驱动文件

    debian-6.0.1a安装DELL R410网卡驱动,因为没有备用的机器做图解教程,以后有机器再做。 这是一台 DELL R410机器,debian-6.0.1a里并没有它的网卡驱动。安装方法如下: (1)一个U盘,格式化成FAT格式。 (2)在...

    kali 源 解决软件无法正确安装

    # deb cdrom:[Debian GNU/Linux 2019.4 _Kali-rolling_ - Official Snapshot amd64 LIVE/INSTALL Binary 20191125-10:47]/ kali-last-snapshot contrib main non-free #deb cdrom:[Debian GNU/Linux 2019.4 _Kali-...

    Debian中下载DLBD 46G镜像的步骤办法(采用jigdo方式)

    jigdo-lite https://cdimage.debian.org/debian-cd/current/amd64/jigdo-dlbd/debian-10.6.0-amd64-DLBD-1.jigdo ``` jigdo程序将开始从网络源下载所需的文件片段,并根据这些片段组合成完整的ISO镜像。这个过程...

    ubuntu linux镜像下载

    Ubuntu Linux 是一款基于Debian的开源操作系统,深受开发者和服务器管理员的喜爱。它的用户界面友好,且提供了丰富的软件包,使其成为个人电脑、服务器甚至嵌入式设备的理想选择。Ubuntu 的发行版按照每六个月发布一...

    xiangrikui.7z

    libjavascriptcoregtk-3.0-0_2.4.11-3_amd64.deb(http://ftp.br.debian.org/debian/pool/main/w/webkitgtk/libjavascriptcoregtk-3.0-0_2.4.11-3_amd64.deb) libjpeg62-turbo_1.5.1-2_amd64.deb...

    Linux Dictionary

    Awk to Perl translator From whatis http://www.tldp.org/LDP/Linux−Dictionary/html/index.html a2ps GNU a2ps 'Anything to PostScript' converter and pretty−printer a2ps converts files into PostScript ...

    在线自动升级openssh9.0p1的shell脚本,亲测可用!

    zlib_download="http://www.zlib.net/$zlib_version.tar.gz" openssl_download="https://www.openssl.org/source/$openssl_version.tar.gz" openssh_download=...

    ubuntu9.04更新源

    deb-src http://debian.ustc.edu.cn/ubuntu jaunty-backports main restricted universe multiverse deb-src http://debian.ustc.edu.cn/ubuntu jaunty-proposed main restricted universe multiverse deb-src ...

    ubuntu8.04配置指南

    deb-src http://debian.ustc.edu.cn/ubuntu/hardy-backports main multiverse restricted universe deb-src http://debian.ustc.edu.cn/ubuntu/hardy-proposed main multiverse restricted universe deb-src ...

    debian6升级到debian7的简单升级.docx

    deb http://http.us.debian.org/debian wheezy main contrib non-free deb http://non-us.debian.org/debian-non-US wheezy/non-US main contrib non-free ``` 这些命令将更新源文件,允许您从Debian 6升级到Debian ...

Global site tag (gtag.js) - Google Analytics