分类 技术 下的文章

这几天在搞一个网站,里面涉及到对一些数据进行排序显示的问题。后来做完之后自己用着发现因为默认是按英文排序的,当语言是中文的时候要找一个项特别麻烦。那么问题就来了,中文要怎么样才能按照用户习惯的顺序来排序呢(中国大陆来说,就是拼音排序)?

经过一番百度Google,找到的资料要么就是转成GB2312然后排序,要么就是查表之类的,费劲又不安全(转码的时候可能会有意外字符导致失败之类的,而且GB2312并不完全是按拼音排序的;查表的话数据的正确性难以有保障)。作为一个对代码正确性要求很高的人,这显然不符合我的风格。

然后我突然想到了万能的UnicodeUnicode并不只是单纯的一个编码系统,而是有关语言文字的很多内容的一整套完整的编码、属性体系。我这个项目里面用到的翻译部分就是使用了PHP的intl扩展,而这个扩展是基于ICU这个项目实现的,而ICU又是基于Unicode组织提供的CLDR数据开发的一套完整的国际化解决方案。CLDR,全称叫做Unicode Common Locale Data Repository,是Unicode组织提供的一套基本的语言相关的数据,包含了日期时间货币数字格式等等东西,也包含了排序规则,这就是本文要用到的东西。

阅读全文

好久好久之前,在微博上出现了这样一张图片:

语言不通的故事.gif

今天偶然看到,想到Google Translate的强大,最近又一直在研究Unicode,于是就想试着把它翻译一下,于是便有了这篇DT的文章。

阅读全文

说实话我的这个需求太BT了

  • 首先,我需要能通过键盘快捷键迅速锁定屏幕
  • 其次,不能睡眠(不完美黑苹果伤不起,一睡下去就再也醒不来了,而且据说睡眠会断网)
  • 再次,不能注销。。
  • 还有,我希望屏保后恢复可以是不锁定状态

百度了好久就是没找到一个靠谱给力的办法,要么就是要用鼠标,要么就是要把屏保设置成立即锁定苹果官方终于给了我一个靠谱的快捷键,就是control+shift+eject(没有eject即介质推出键(⏏)的,可以用电源键代替)

最后综合各种搜索结果,自己总结出一个目前来看较靠谱的方案

阅读全文