Skip to content

Commit b11bdba

Browse files
committed
Fix locale for Windows
1 parent 2dee782 commit b11bdba

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

library/stats.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,13 @@
2121
# along with this program. If not, see <https://www.gnu.org/licenses/>.
2222

2323
import datetime
24+
import locale
2425
import math
2526
import os
2627
import platform
2728
import sys
2829

29-
from babel.dates import format_time, format_date
30+
import babel.dates
3031
from psutil._common import bytes2human
3132

3233
import library.config as config
@@ -758,10 +759,16 @@ class Date:
758759
def stats():
759760
date_now = datetime.datetime.now()
760761

762+
if platform.system() == "Windows":
763+
# Windows does not have LC_TIME environment variable, use deprecated getdefaultlocale() that returns language code following RFC 1766
764+
lc_time = locale.getdefaultlocale()[0]
765+
else:
766+
lc_time = babel.dates.LC_TIME
767+
761768
if config.THEME_DATA['STATS']['DATE']['DAY']['TEXT'].get("SHOW", False):
762769
date_format = config.THEME_DATA['STATS']['DATE']['DAY']['TEXT'].get("FORMAT", 'medium')
763770
display.lcd.DisplayText(
764-
text=f"{format_date(date_now, format=date_format)}",
771+
text=f"{babel.dates.format_date(date_now, format=date_format, locale=lc_time)}",
765772
x=config.THEME_DATA['STATS']['DATE']['DAY']['TEXT'].get("X", 0),
766773
y=config.THEME_DATA['STATS']['DATE']['DAY']['TEXT'].get("Y", 0),
767774
font=config.THEME_DATA['STATS']['DATE']['DAY']['TEXT'].get("FONT",
@@ -778,7 +785,7 @@ def stats():
778785
if config.THEME_DATA['STATS']['DATE']['HOUR']['TEXT'].get("SHOW", False):
779786
time_format = config.THEME_DATA['STATS']['DATE']['HOUR']['TEXT'].get("FORMAT", 'medium')
780787
display.lcd.DisplayText(
781-
text=f"{format_time(date_now, format=time_format)}",
788+
text=f"{babel.dates.format_time(date_now, format=time_format, locale=lc_time)}",
782789
x=config.THEME_DATA['STATS']['DATE']['HOUR']['TEXT'].get("X", 0),
783790
y=config.THEME_DATA['STATS']['DATE']['HOUR']['TEXT'].get("Y", 0),
784791
font=config.THEME_DATA['STATS']['DATE']['HOUR']['TEXT'].get("FONT",

0 commit comments

Comments
 (0)