KDE 设置锁屏的时间格式
在 kde 中,锁屏的时间格式默认是使用 AM/PM 的方式表示的,如果要改成 24 小时制的表示方法,并不能在系统设置中直接修改,而是需要修改对应主题的 QML 脚本。
1. 定位脚本
脚本路径:/usr/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/Clock.qml
原文如下:
The lock screen is part of the look-and-feel: /usr/share/plasma/look-and-feel/. The Breeze date and time format can be edited from the /usr/share/plasma/look-and-feel/org.kde.breeze.desktop/contents/components/InfoPane.qml
就是说锁屏是 look-and-feel 的部分,可以在 InfoPane.qml 中编辑 Breeze 主题的日期和时间格式。但是按照他给的路径,并没有发现 InfoPane.qml,而是在 Clock.qml 中发现了设定日期和时间格式的内容,所以就直接编辑 Clock.qml 就好了。如果想要谨慎一点,可以先把原文件做个备份:sudo cp Clock.qml Clock.qml.bak
。
2. 修改脚本内容
在 formatTime
和formatDate
函数中填入想要的格式即可。
// 原格式
text:Qt.formatTime(timeSource.data ["Local"] ["DateTime"])
text:Qt.formatDate(timeSource.data ["Local"] ["DateTime"],Qt.DefaultLocaleLongDate)
// 新格式
text:Qt.formatTime(timeSource.data ["Local"] ["DateTime"],"hh:mm:ss")
text:Qt.formatDate(timeSource.data ["Local"] ["DateTime"],"yyyy-MM-dd ddd")
如果想要将其定制成自己想要的格式,请参阅 Qt 的时间格式文档,按文档填写相应内容即可。
3. 设置脚本为只读
需要删除用户对脚本的写权限,让它成为一个只读文件,否则,在后续的使用过程中,之前的修改可能会被覆盖掉。
sudo chmod u-w Clock.qml
4. 鸣谢
这篇博客是参考 kde 社区对这个问题的讨论并结合实际使用情况写出来的,在这里感谢 Rog131 的指导。在其中他们除了对锁屏时间格式的讨论,还有讨论如何设置登录屏幕的时间格式,有兴趣的读者可以参阅。