[分享]让你的系统能够按照拼音排序中文

为当前最终发行版之前的所有版本提供支持
Runner
帖子: 183
注册时间: 2006-10-04 23:16
送出感谢: 0
接收感谢: 0

[分享]让你的系统能够按照拼音排序中文

#1

帖子 Runner » 2007-05-05 0:48

一直以来, Linux环境下中文排序总以一种中国人无法理解的顺序排列,不信你可以打开Nautilus或者其它程序看看。
这其实是因为中文本地化数据并没有包含拼音排序的信息。
现在通过安装一种额外的中文本地化数据zh_CN@pinyin就可以让你在UTF-8和GB18030字符集下都可以正确的排序中文。

解决办法:安装locale-pinyin
下载地址:https://gro.clinux.org/frs/download.php ... 0.1.tar.gz
我放了一份到附件中,另外还有一个自己用checkinstall打包的deb

locale-pinyin 0.1自述文件

介绍
==
按拼音排序的中文locale。
在*nix中为了能够正确的排序电脑中的中文,你必须有能够正确对中文进行排序
的locale数据。而glibc包含的locale数据一直没能对中文按照拼音或者笔画排
序。本软件则是为你在电脑中增加一种按照拼音排序的中文locale。

安装
==
系统需求:
1、系统需要有符合X/Open标准的localedef工具
2、5.8.1以上的perl
安装:
$make
#make install

配置
==
为了生效,你必须正确配置locale环境变量。
推荐仅设置LC_COLLATE为本locale,比如:
LANG=zh_CN.UTF-8
LC_COLLATE=zh_CN@pinyin.utf8
注意:不要同时设置LC_ALL和LC_COLLATE,这样可能会导致本locale不能正确生
效。

测试系统
====
Fedora Core 6, glibc 2.5, perl 5.8.8
Debian Sarge, glibc 2.3.2, perl 5.8.4
Debian Etch, glibc 2.3.6, perl 5.8.8

联系方式
====
如果你发现有什么问题或有什么建议,请联系:
hellwolf DOT misty gmail DOT com

__________________________________________________

以上看看就行,不用管它。
下载我打包的deb并安装
编辑/etc/environment

代码: 全选

sudo gedit /etc/environment
则将下面的代码添加到文末尾(UTF-8.zh_CN环境适用)

代码: 全选

LC_COLLATE=zh_CN@pinyin.utf8
重新登录就行了。
之后无论Terminal、Nautilus还是Amarok(Sqlite后端),甚至是Gnome面板(没有自定义次序的话)里的中文都是拼音排序了!

附配置完成后的效果图一张。
附件
locale-pinyin-0.1.tar.gz
locale-pinyin的源码
(850 KiB) 下载 1019 次
locale-pinyin_0.1-1_i386.deb
checkinstall打包好的deb
(706.71 KiB) 下载 1166 次
Screenshot-1.png
效果图
上次由 Runner 在 2007-05-05 1:04,总共编辑 1 次。
applnk
帖子: 1485
注册时间: 2007-02-13 15:24
来自: 地球
送出感谢: 0
接收感谢: 0

#2

帖子 applnk » 2007-05-05 1:02

收藏了!
kiruoruo
帖子: 5
注册时间: 2007-04-27 0:54
送出感谢: 0
接收感谢: 0

#3

帖子 kiruoruo » 2007-05-05 9:38

谢谢。
ps: 楼主的桌面看起来好乱哦
andrew_t
帖子: 614
注册时间: 2006-12-14 3:00
送出感谢: 0
接收感谢: 0
联系:

#4

帖子 andrew_t » 2007-05-05 10:25

不错,装了,现在的确可以按拼音顺序排列了
Runner
帖子: 183
注册时间: 2006-10-04 23:16
送出感谢: 0
接收感谢: 0

#5

帖子 Runner » 2007-05-05 11:22

kiruoruo 写了:谢谢。
ps: 楼主的桌面看起来好乱哦
呵呵,只是为了向大家展示Terminal、Nautilus、Amarok和Gnome Panel的中文排序情况。
wsh9308
帖子: 15
注册时间: 2007-03-27 13:18
送出感谢: 0
接收感谢: 0

#6

帖子 wsh9308 » 2007-05-05 20:14

谢谢楼主,我先试试了
头像
islet8
帖子: 76
注册时间: 2006-04-09 15:21
送出感谢: 0
接收感谢: 0
联系:

#7

帖子 islet8 » 2007-05-12 22:44

非常好的包,严重赞,不知为什么源里不加进这种中国用户及其需要的包呢?
头像
xjj
帖子: 156
注册时间: 2006-10-22 20:49
送出感谢: 0
接收感谢: 1 次

#8

帖子 xjj » 2007-06-06 12:04

楼主你的主题那下的阿,分享一下。
Runner
帖子: 183
注册时间: 2006-10-04 23:16
送出感谢: 0
接收感谢: 0

#9

帖子 Runner » 2007-06-06 12:20

xjj 写了:楼主你的主题那下的阿,分享一下。
我把它放在附件里了。
附件
AquiGnome.tar.bz2
图标主题
(1.38 MiB) 下载 580 次
GTK2-Aquativo-1.5.tar.gz
gtk2主题
(72.87 KiB) 下载 366 次
Citrus.emerald.tar.gz
emerald主题
(30.85 KiB) 下载 360 次
头像
gnix_oag
帖子: 1994
注册时间: 2005-05-19 18:38
来自: 湖南永州
送出感谢: 0
接收感谢: 1 次
联系:

#10

帖子 gnix_oag » 2007-06-06 14:28

是转贴吧,在linuxsir中看过

不错
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

#11

帖子 eexpress » 2007-06-06 14:45

困扰已久的问题啊。
这样解决,非常好。
● 鸣学
头像
skyx
论坛版主
帖子: 9203
注册时间: 2006-12-23 13:46
来自: Azores Islands
送出感谢: 0
接收感谢: 1 次
联系:

#12

帖子 skyx » 2007-06-06 14:48

大家都说好,那就是好
no security measure is worth anything if an attacker has physical access to the machine
头像
zhan
帖子: 1880
注册时间: 2005-08-15 0:04
来自: 南7技校
送出感谢: 0
接收感谢: 0
联系:

#13

帖子 zhan » 2007-06-06 18:29

作者说已经进入 glibc ,在 fc7 中已经有了,不过怀疑是 rh 自己弄的补丁。我估计 7.10 中可能有的,待会弄个包放到 ubuntu-cn 中去。

glibc 的信息在这里 http://sourceware.org/cgi-bin/cvsweb.cg ... root=glibc

zh_CN 的 locale 那里中已经有相应的东西了。
飞得高,飞得低,学习再学习,多少大秘密!
http://zhan.blog.ubuntu.org.cn
头像
millenniumdark
论坛版主
帖子: 4160
注册时间: 2005-07-02 14:41
系统: Ubuntu 14.04 (Kylin)
送出感谢: 43 次
接收感谢: 9 次
联系:

#14

帖子 millenniumdark » 2007-06-06 18:34

赞的!
头像
zhan
帖子: 1880
注册时间: 2005-08-15 0:04
来自: 南7技校
送出感谢: 0
接收感谢: 0
联系:

#15

帖子 zhan » 2007-06-07 0:30

扔到 ubuntu-cn 源里面去了

viewtopic.php?p=327957#327957
飞得高,飞得低,学习再学习,多少大秘密!
http://zhan.blog.ubuntu.org.cn
回复

回到 “老旧版本支持”