mmx384 发表于 2006-4-2 22:17:24

求助,关于程序用utf8编码的问题

我在Linux中想使用zh_CN.utf8显示处理中文,用en_US.utf8显示处理英文,未能尽善,请各位大侠帮帮忙,指点一下:

1.现象为:一些程序能正确显示中文,保存文件时却用的不是utf8编码
    能用utf8编码保存文件的程序有:
        rox-2.4.1(譬如重命名文件,就能以utf8编码)
        Gvim-6.3 (文件内容能够以utf8编码保存)
        mldonkey-2.7.4
    不能用utf8编码保存文件的程序有:
        OpenOffice.org-2.0.1(正体中文预编译)
        Azureus-2.4.0 (预编译)
        Gimp-2.2.8
        firefox-1.0.6

2.系统为按官方文档安装的LFS+BLFS
    BLFS安装了:
        xorg-6.8.2
        fvwm-2.5.14
        rox-2.4.1
        gtk+1.2.0
        gtk2+2.6.7
        qt-3.3.4 (没有安装)
       
3.本地语言设置为:
    $ locale
        LANG=en_US.utf8
        LC_CTYPE=zh_CN
        LC_NUMERIC="en_US.utf8"
        LC_TIME="en_US.utf8"
        LC_COLLATE="en_US.utf8"
        LC_MONETARY="en_US.utf8"
        LC_MESSAGES="en_US.utf8"
        LC_PAPER="en_US.utf8"
        LC_NAME="en_US.utf8"
        LC_ADDRESS="en_US.utf8"
        LC_TELEPHONE="en_US.utf8"
        LC_MEASUREMENT="en_US.utf8"
        LC_IDENTIFICATION="en_US.utf8"
        LC_ALL=

4.和语言相关的环境变量还设置了:
    $ env
        ......
        LANG=en_US.utf8
        G_FILENAME_ENCODING=@locale
        ......

5.gtkrc的设置:/etc/gtk/gtkrc.zh_CN & /etc/gtk/gtkrc.zh_CN.utf8 两个文件内容一样:

        style "gtk-default-zh-cn" {
             fontset = "-adobe-helvetica-medium-r-normal--16-*-*-*-*-*-iso8859-1,\
                          -*-*-medium-r-normal--16-*-*-*-*-*-gb2312.1980-0,*-r-*"
        }
        class "GtkWidget" style "gtk-default-zh-cn"

疑问:
1)我的要求很简单,只要各个程序能正确显示utf8编码的文件,以utf8编码保存文件。我猜测显示中文视程序源码所用的库(如QT或GTK、GTK2等)不同而不同,譬如vim用的是GTK2,显示中文依赖GTK2对中文的支持,而XMMS用的GTK,中文显示则依赖GTK对中文的支持;而以utf8编码保存文件,则是根据各个程序自身对utf8编码的支持情况而不同,如vim能支持以utf8编码保存文件,只要在vim自己的配置文件中设置了"set encoding=utf8"选项后就能以utf8编码保存文件。不知猜测是否正确,请高手证实。

2)如果上面猜测正确。我的Azureus-2.4.0和OpenOffice2这两个程序在如上设置的locale下都能正确显示中文,OO用中文文件名保存文件,用的并不是utf8编码,azureus下载电影如果是中文目录,显示的也不是utf8编码。在rox浏览中文文件夹时,如果不是以utf8编码的文件,会显示file('bad utf-8'),难道这两个程序本身不支持utf8编码?(我试过用LC_ALL=zh_CN.utf8启动,保存文件后还是bad utf-8)

3)gimp,firefox均无法用utf8编码以中文文件名保存文件(rox能正确显示中文文件名,但还是提示bad utf-8)

以上几个问题请各位大侠多多指教。
页: [1]
查看完整版本: 求助,关于程序用utf8编码的问题