更改 gpg2.exe 的输出语言

Joh*_*nes 1 config gnupg

我正在自动化一个过程,并为此使用 GPG2.exe。因为我需要解析控制台输出 - 可能来自不同的系统,我需要将语言设置为受控值。

我正在遵循手册中的说明,其中指出

LANGUAGE
除了被 GNU 使用外,它还在 W32 版本中用于覆盖通过注册表完成的语言选择。如果使用并设置为有效且可用的语言名称 (langid),则带有翻译的文件将从 gpgdir/gnupg.nls/langid.mo 加载。这里 gpgdir 是加载 gpg 二进制文件的目录。如果无法加载,则尝试注册表并作为最后的手段使用本机 Windows 语言环境系统。

我发现了2011 年的一个线程,它更详细地介绍了这个问题,但这实际上可能涉及不同的版本。

我创建了一个批处理文件用于手动测试。

@echo off
REM C is meant to display untranslated messages according to one internet source
set LANGUAGE="C"
call "C:\Program Files (x86)\GNU\GnuPG\gpg2.exe" --version
pause
Run Code Online (Sandbox Code Playgroud)

我将输出为英语,但它仍然是德语。

在此处输入图片说明

手册说明了一些关于在某处开始“gnupg.nls”文件夹的内容。我找不到这个文件夹,这让我想知道德语是从哪里加载的。手册页中是否有错误?手册页的 pdf 版本显示与安装附带的手册页相同的内容。

有人可以对此有所了解吗?

eri*_*rik 5

我有同样的问题,虽然我想要英文输出,但输出是瑞典语。Windows 显示语言设置为英语,我也尝试设置环境变量,但为我解决的是删除此处找到的 gnupg 文件的瑞典语翻译:

 C:\Program Files (x86)\gnupg\share\locale
Run Code Online (Sandbox Code Playgroud)

删除“sv”目录后,所有输出都是英文的。