我习惯于在各种发行版中使用 XFCE,但我想尝试使用 GNOME 的 Ubuntu,以了解为什么这么多人使用它。
令人沮丧的是,我找不到如何将日期和时间格式更改为我喜欢的格式。这在 XFCE 中非常简单,但在使用 GNOME 的 Ubuntu 中显然不那么简单。在 XFCE 中,我的时间和日期设置将是%A %d %B %Y %H:%M:%S (%Z)
,这将产生Monday 05 February 2024 13:13:43 (GMT)
。设置菜单中的选项非常有限,但没有提供我喜欢的格式。
有没有办法在最新版本的 Ubuntu GNOME (23.10) 中加载它?Google 搜索似乎只提供有限的设置选项。
答案1
我制作了一个与 Ubuntu 23.10 上的 Gnome Shell 45 兼容的扩展:
将以下内容粘贴到:
~/.local/share/gnome-shell/extensions/[email protected]/metadata.json
{ "uuid": "[email protected]", "name": "Wall clock custom datetime formatter", "description": "Changes the wall clock date and time formatting to your preference", "shell-version": [ "45" ], "url": "https://askubuntu.com/q/1502527/1004020" }
将以下内容粘贴到
~/.local/share/gnome-shell/extensions/[email protected]/extension.js
import GLib from 'gi://GLib'; import {Extension} from 'resource:///org/gnome/shell/extensions/extension.js'; import {panel} from 'resource:///org/gnome/shell/ui/main.js'; export default class CustomDateTimeFormattingExtension extends Extension { enable() { const { _clock, _clockDisplay } = panel.statusArea.dateMenu; _clock.force_seconds = true; // Update every minute -> update every second _clock.connectObject('notify::clock', () => { // This runs after the original code, // so we can just overwrite the original text. _clockDisplay.set_text( // Change the string on the new line according to your preferences: GLib.DateTime.new_now_local().format('%A %d %B %Y %H:%M:%S (%Z)') // No semicolon should be placed here ); }, this); } disable() { const { _clock } = panel.statusArea.dateMenu; _clock.disconnectObject(this); _clock.force_seconds = false; } }
重新登录
跑步
gnome-extensions enable [email protected]
它没有小组日期格式扩展(目前停留在 Ubuntu ≤ 22.04 上的 gnome-shell 42 上),因为我的目标是简单。如果您想更改格式,只需编辑extension.js
并重新登录即可。我的扩展应该足以解决这个问题。如果您需要更多功能,您可以发表评论,或者等待面板日期格式扩展更新。