# xmms 菜单与播放列表的乱码问题

## xmwxd

xmms右键乱码和播放清单乱码等问题到底是什么原因

虽然解决了问题

但是不知道原因阿

有没有兄弟讲讲阿Last edited by xmwxd on Thu Dec 16, 2004 10:18 am; edited 1 time in total

----------

## EricHsu

因历史原因, Linux 系统里有两套字体系统, 一个是老的核心 X 字体子系统 (Core X Font Subsystem) , 另一个是新的 Fontconfig 字体子系统 (Fontconfig Font Subsystem).

xmms 使用的是 gtk1 的图形控件库, 因此它的字体受 gtk1 对字体支持的影响. 而 gtk1 使用的是核心 X 那个老的字体子系统, 它的字体配置必须通过如:

```

-misc-simsun-medium-r-normal-*-*-120-*-*-c-*-koi8-r

```

这样非常丑陋的方式来指定. 而到了 Fontconfig 中, 只需使用 simsun 这样 "人类友好" 的方式来指定字体.

所有 gtk1 程序的字体都是在 /etc/gtk/gtkrc.* 文件中指定, 例如要让你的 xmms 使用简体中文界面且字体为 simsun, 你就需要编辑 /etc/gtk/gtkrc.zh_CN 中的 fontset 值, 让它等于上面那个很丑的字体描述 (-misc....). 然后你所有的 gtk1 程序里的中文都会使用 simsun. (包括 xmms 的右键菜单)

至于 xmms 播放列表里的字体, 这个是 xmms 自己本身的设置, 也就是说, 它不听从 gtkrc.zh_CN 里的设置. 这个设置是保存到 ~/.xmms/ 目录里的. 因此你还得为播放列表本身的中文指定字体. (同样, 指定字体的时候你会发现里面的字体名一样是 -misc-... 这样的方式)

不知道我说清楚了没有, 希望对你明白这个问题有帮助!

另外, 建议你把题目改成 "xmms 菜单与播放列表的乱码问题", 以让主题鲜明 . 谢谢!

请仔细看过发贴指引.

----------

## songhero

不应该直接修改/etc/gtk/gtkrc.*

正确的方法应该是cp /etc/gtk/gtkrc.zh_CN ~/.gtkrc.mine

然后对~/.gtkrc.mine进行编辑

可以参考这里http://www.linuxsir.org/bbs/showthread.php?s=&threadid=146550

----------

## EricHsu

 *songhero wrote:*   

> 不应该直接修改/etc/gtk/gtkrc.*
> 
> 正确的方法应该是cp /etc/gtk/gtkrc.zh_CN ~/.gtkrc.mine
> 
> 然后对~/.gtkrc.mine进行编辑

 

呵呵, 选择的问题, 改 /etc/gtk/gtkrc.* 的话是系统全局有效的, 每个帐号都因此统一字体 (或说不必每个帐号都去设置一次自己的 ~/.gtkrc.mine - 是这个文件么? 还是 ~/.gtkrc 就可以? 我自己没试过). 当然, 如果用户本身没有 root 权限, 则可以通过改自己目录下的 ~/.gtkrc.mine (?) 来为自己设置.

如果有 root 权限, 考虑到 /etc/gtk/gtkrc.* 这些也不是什么重要的系统文件, 直接修改也没有安全方面的问题, 如果担心自己改错, 则不妨先 copy 一个备份, 或者像我注释掉原来那行然后依样画瓢:

```

style "gtk-default-zh-cn" {

#       fontset = "-adobe-helvetica-medium-r-normal--16-*-*-*-*-*-iso8859-1,\

#                 -*-*-medium-r-normal--16-*-*-*-*-*-gb2312.1980-0,*-r-*"

        fontset = "-bitstream-bitstream vera sans-medium-r-normal-*-*-120-*-*-p-*-microsoft-cp1252,-misc-simsun-medium-r-normal-*-*-120-*-*-c-*-koi8-r"

}

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

```

大家自己选择自己喜欢的方式吧  :Smile: 

----------

## qing

看有些什么中文字体先。。。然后来添加。。。

```
 xlsfonts | grep simsun
```

----------

## xevix

hi, can somebody make a summary of the solution to this in english?  including how to install the fonts needed maybe?  thanks in advance.

----------

