焰火十二卷在 macOS 上自动选择默认语言以及语言的切换

 焰火十二卷是一款免费且实用的调色板软件。它可以帮助你从色轮或者其他地方生成一组和谐的色彩。你可以将这些色彩分享给其他人,或者应用到你自己的创作当中。

焰火十二卷(调色板软件)

焰火十二卷支持多种语言,包括中文、英文、日文等,并且可以根据系统语言选择默认语言。实现这一功能的关键代码:


# load default language.
default_locale = str(locale.getdefaultlocale()[0])
user_prefer_locale = "en"
if len(default_locale) > 1:
    self.lang = default_locale[:2]
else:
    self.lang = user_prefer_locale
if self.lang not in [x[1] for x in self.usr_langs]:
    if user_prefer_locale in [x[1] for x in self.usr_langs]:
        self.lang = user_prefer_locale
    else:
        self.lang = "default"

焰火十二卷自动选择默认语言的功能在 Windows 上和 Linux 上均可正常工作。然而, 在 macOS 系统上,这段代码却无法正常工作,会将默认语言重定向到挪威语上。

 

其原因在于,macOS 上运行“locale.getdefaultlocale()[0]”的返回结果是“None”,字符串化后取前两个字符“no”正好对应于挪威语的简写。修改后其默认语言为英文,暂时没有找到更好的解决方案。

# load default language.
default_locale = locale.getdefaultlocale()[0]
default_locale = str(default_locale).lower() if default_locale else ""
user_prefer_locale = "en"
if len(default_locale) > 1:
    self.lang = default_locale[:2]
else:
    self.lang = user_prefer_locale
if self.lang not in [x[1] for x in self.usr_langs]:
    if user_prefer_locale in [x[1] for x in self.usr_langs]:
        self.lang = user_prefer_locale
    else:
        self.lang = "default"

运行效果:

 

在 macOS 上修改语言为中文的方法:

1、点击齿轮图标,打开设置对话框。

2、选择第三个选项栏。

3、修改第一行的下拉菜单,选择结尾为“en”(英文)或者“zh”(中文)的选项。

4、点击确定,即可更改语言。

 

posted @ 2023-04-14 21:07  本征喵函数  阅读(32)  评论(0编辑  收藏  举报