Fedora 21顶栏“日”字和“星期”缺失的解决方案 经常使用Fedora 21的朋友可能注意到了一个不大不小的界面问题:系统顶栏的日期显示里,“月”和“日”之间缺了个“日”字,同时星期几也直接显示为“一”、“二”,没有“星期”前缀。对于追求界面完美的用户来说,这确实有点碍眼。其实,这个问题源于本
经常使用Fedora 21的朋友可能注意到了一个不大不小的界面问题:系统顶栏的日期显示里,“月”和“日”之间缺了个“日”字,同时星期几也直接显示为“一”、“二”,没有“星期”前缀。对于追求界面完美的用户来说,这确实有点碍眼。其实,这个问题源于本地化文件的一处格式定义,调整起来并不复杂。
问题的关键文件藏在系统深处:/usr/share/locale/zh_CN/LC_MESSAGES目录下。你需要找到那个名为gnome-desktop-3.0.mo的文件。在动手之前,强烈建议先做个备份,这是避免操作失误的好习惯。
长期稳定更新的攒劲资源: >>>点此立即查看<<<
整个过程可以分解为几个清晰的步骤:
第一步,将编译好的.mo文件还原为可编辑的.po格式。打开终端,执行以下命令:
msgunfmt gnome-desktop-3.0.mo -o gnome-desktop-3.0.po
第二步,用你熟悉的文本编辑器(如vi或gedit)打开新生成的gnome-desktop-3.0.po文件。在里面找到一系列以msgid和msgstr开头的条目。
修改的核心就在这里:在msgstr部分,找到代表日期的格式串。你需要把原先类似%b%-e(表示“X月X”)的格式,手动在%e后面加上“日”字,变成%b%-e日。同时,把代表星期缩写的%a改成代表星期全称的%A,这样就能完整显示“星期一”、“星期二”了。
第三步,将修改好的.po文件重新编译回.mo格式。命令与第一步类似:
msgfmt gnome-desktop-3.0.po -o gnome-desktop-3.0.mo
最后,用编译好的新文件覆盖原来的/usr/share/locale/zh_CN/LC_MESSAGES/gnome-desktop-3.0.mo。覆盖完成后,按Alt+F2,输入r并回车,重启GNOME桌面环境,改动就立刻生效了。

上图就是修改后的效果。如果你不确定具体改哪些条目,可以参考下面这份已经调整好的格式对照。修改主要集中在文件前部的几个关键条目:
msgid “%a %b %e, %R”
msgstr “%b%-e日 %A, %R”
msgid “%a %b %e, %R:%S”
msgstr “%b%-e日 %A, %R:%S”
msgid “%a %b %e, %l:%M %p”
msgstr “%b%-e日 %A, %p %l:%M”
msgid “%a %b %e, %l:%M:%S %p”
msgstr “%b%-e日 %A, %p %l:%M:%S”
msgid “%a %l:%M %p”
msgstr “%A %p %l:%M”
通常情况下,按照上面的示例修改前几组条目就足够了,后面的条目可以保持原状。完成这一切,你的Fedora 21顶栏日期显示就会变得完整而规范了。
侠游戏发布此文仅为了传递信息,不代表侠游戏网站认同其观点或证实其描述