如何将 Thunderbird 的显示时间更改为 24 小时格式?

pl1*_*1nk 23 time thunderbird locale

目前 Thunderbird 以 AM/PM 模式显示时间。

如何将其更改为 24 小时模式?

更新1:

$ locale |grep LC_TIME
LC_TIME="en_US.UTF-8"
Run Code Online (Sandbox Code Playgroud)

Fsa*_*ndo 16

好的,解决了:

1)确保你有你需要的语言环境,不能说你特别需要哪个但是当你知道你像这样创建它时(使用en_DK.utf8)

sudo locale-gen en_DK.utf8
Run Code Online (Sandbox Code Playgroud)

2) 要确保此语言环境对 Thunderbird 有效,请将其添加到启动 Thunderbird 的脚本中,因此首先找到该脚本:

2a) 找到正确的脚本

which thunderbird
Run Code Online (Sandbox Code Playgroud)

就我而言:/usr/bin/thunderbird

2b) 向脚本添加语言环境(我使用编辑器 geany):

gksudo geany /usr/bin/thunderbird
Run Code Online (Sandbox Code Playgroud)

在脚本的开头添加这个(我只是放在最开始的):

LC_ALL="en_DK.utf8"
export LC_ALL
Run Code Online (Sandbox Code Playgroud)

只想添加这个:

https://help.ubuntu.com/community/Locale

编辑:正如 pl1nk 所指出的,更好的解决方案是不要触摸 /usr/bin/thunderbird 脚本,而是使用此内容创建脚本 '/usr/local/bin/thunderbird'

#!/bin/sh
LC_ALL="en_DK.utf8"
export LC_ALL
/usr/bin/thunderbird $@
Run Code Online (Sandbox Code Playgroud)

确保它是可执行的

sudo chmod a+x /usr/local/bin/thunderbird
Run Code Online (Sandbox Code Playgroud)

然后检查它是否正在用于启动雷鸟:

which thunderbird
Run Code Online (Sandbox Code Playgroud)

应该这样回应:

/usr/local/bin/thunderbird
Run Code Online (Sandbox Code Playgroud)

现在thunderbird可以像以前一样启动了。


Ado*_*obe 11

有一个Super Date Format雷鸟插件:

在此处输入图片说明

在此处输入图片说明

  • 此插件不再受支持,仅兼容 Thunderbird 21 版 :( (2认同)

bma*_*pin 8

雷鸟 60

Thunderbird 60 中日期和时间的格式化方式已经改变。以下将提供如下所示的日期/时间格式2018-12-04 14:23

  1. 创建根语言环境

    sudo ln -s /usr/share/i18n/locales/en_DK /usr/share/i18n/locales/root
    sudo sh -c "echo 'root.UTF-8 UTF-8' > /var/lib/locales/supported.d/local"
    sudo locale-gen
    
    Run Code Online (Sandbox Code Playgroud)
  2. 在本地复制 Thunderbird 启动器

    cp /usr/share/applications/thunderbird.desktop ~/.local/share/applications/
    
    Run Code Online (Sandbox Code Playgroud)
  3. 更改 Thunderbird 的日期/时间区域设置

    sed -i.bak 's/^Exec=thunderbird %u/Exec=env LC_TIME=root.utf8 thunderbird %u/' ~/.local/share/applications/thunderbird.desktop
    
    Run Code Online (Sandbox Code Playgroud)

雷鸟 59 及以下

Fsando 的答案有效,但LC_ALL 将更改Thunderbird 使用的整个区域设置(日期、数字、货币格式等),而不仅仅是日期/时间格式,这是问题中要求的全部内容。不仅如此,如果我不需要,我不喜欢创建额外的脚本。这是我所做的:

  1. 确保 en_DK.utf8 语言环境可用(如果您的桌面语言是英语,它应该已经可用):

    locale -a | grep en_DK
    
    Run Code Online (Sandbox Code Playgroud)
  2. 如果不是,请安装语言环境,官方方式

    sudo apt-get -y install language-pack-en
    
    Run Code Online (Sandbox Code Playgroud)

    或者,如果您不想安装额外的软件包:

    sudo locale-gen en_DK.utf8
    
    Run Code Online (Sandbox Code Playgroud)
  3. 在本地复制 Thunderbird 启动器

    cp /usr/share/applications/thunderbird.desktop ~/.local/share/applications/
    
    Run Code Online (Sandbox Code Playgroud)
  4. 仅更改 Thunderbird 的日期/时间区域设置

    sed -i.bak 's/^Exec=thunderbird %u/Exec=env LC_TIME=en_DK.utf8 thunderbird %u/' ~/.local/share/applications/thunderbird.desktop
    
    Run Code Online (Sandbox Code Playgroud)
  5. 如果您使用 Xfce,更改会立即生效,但如果您使用 Unity,您可能必须注销/重新登录。不确定 GNOME。

下次从启动器打开 Thunderbird 时,它应该使用新的日期/时间格式。

好处:

  • 仅覆盖日期/时间格式
  • 不需要额外的脚本
  • 仅对您的用户进行更改,而不是系统上的所有用户

作为奖励,当thunderbird 包更新时,更改不应被覆盖,因为它不会触及您的本地启动器文件。

来源:http :
//kb.mozillazine.org/Date_display_format

注意: 正如 Sparhawk 提到的,LC_TIME 将更改日期格式和时间格式。但是,您可以找到具有相同日期格式和不同时间格式的语言环境,从而仅更改时间格式。

例如,这是en_US.utf8语言环境的样子:

$ python3 -c "import locale, time; locale.setlocale(locale.LC_TIME, 'en_US.utf8'); print(time.strftime('%x %X'))"
12/05/2018 03:40:50 PM
Run Code Online (Sandbox Code Playgroud)

将区域设置更改为en_DK.utf8也会更改日期格式:

$ python3 -c "import locale, time; locale.setlocale(locale.LC_TIME, 'en_DK.utf8'); print(time.strftime('%x %X'))"
2018-12-05 15:41:14
Run Code Online (Sandbox Code Playgroud)


小智 7

LC_TIME=en_DK.utf8 thunderbird
Run Code Online (Sandbox Code Playgroud)

我也将我的系统作为 en_US.UTF-8 运行,以防万一....