diff options
author | saturneric <[email protected]> | 2025-04-17 16:54:03 +0000 |
---|---|---|
committer | saturneric <[email protected]> | 2025-04-17 16:54:03 +0000 |
commit | b84e661438dc0dba5862ee741fd4d1d0f881e2f6 (patch) | |
tree | 2822bffc3f1d4496837988bcffd00cfcce498790 /resource/lfs/locale/ts/GpgFrontend.zh_CN.ts | |
parent | feat: generate cark keys (diff) | |
download | GpgFrontend-b84e661438dc0dba5862ee741fd4d1d0f881e2f6.tar.gz GpgFrontend-b84e661438dc0dba5862ee741fd4d1d0f881e2f6.zip |
chore: update and check translations
Diffstat (limited to 'resource/lfs/locale/ts/GpgFrontend.zh_CN.ts')
-rw-r--r-- | resource/lfs/locale/ts/GpgFrontend.zh_CN.ts | 3378 |
1 files changed, 2082 insertions, 1296 deletions
diff --git a/resource/lfs/locale/ts/GpgFrontend.zh_CN.ts b/resource/lfs/locale/ts/GpgFrontend.zh_CN.ts index 806b5fcd..8d69b915 100644 --- a/resource/lfs/locale/ts/GpgFrontend.zh_CN.ts +++ b/resource/lfs/locale/ts/GpgFrontend.zh_CN.ts @@ -4,74 +4,74 @@ <context> <name>GpgFrontend::GpgDecryptResultAnalyse</name> <message> - <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="41"/> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="40"/> <source>Decrypt Operation</source> <translation>解密操作</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="44"/> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="43"/> <source>Success</source> <translation>成功</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="46"/> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="45"/> <source>Failed</source> <translation>失败</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="51"/> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="50"/> <source>Unsupported Algo</source> <translation>不被支持的算法</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="59"/> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="58"/> <source>General State</source> <translation>总览</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="62"/> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="61"/> <source>File Name</source> <translation>文件名</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="65"/> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="64"/> <source>MIME</source> <translation>MIME</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="66"/> - <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="69"/> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="65"/> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="68"/> <source>false</source> <translation>否</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="66"/> - <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="69"/> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="65"/> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="68"/> <source>true</source> <translation>是</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="68"/> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="67"/> <source>Message Integrity Protection</source> <translation>信息完整性保护</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="74"/> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="73"/> <source>Symmetric Encryption Algorithm</source> <translation>对称加密算法</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="79"/> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="78"/> <source>Session Key</source> <translation>会话密钥</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="88"/> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="87"/> <source>Recipient(s)</source> <translation>接收者列表</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="94"/> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="93"/> <source>Recipient</source> <translation>接收者</translation> </message> @@ -86,12 +86,22 @@ <translation>密钥ID</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="124"/> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="127"/> + <source>Subkey</source> + <translation>子密钥</translation> + </message> + <message> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="128"/> + <source>Primary Key</source> + <translation>主密钥</translation> + </message> + <message> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="134"/> <source>Public Key Algo</source> <translation>公钥算法</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="126"/> + <location filename="../../../../src/core/function/result_analyse/GpgDecryptResultAnalyse.cpp" line="136"/> <source>Status</source> <translation>状态</translation> </message> @@ -135,181 +145,123 @@ </message> </context> <context> - <name>GpgFrontend::GpgKeyTableModel</name> - <message> - <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="40"/> - <source>Select</source> - <translation>选择</translation> - </message> - <message> - <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="40"/> - <source>Type</source> - <translation>类型</translation> - </message> - <message> - <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="40"/> - <source>Name</source> - <translation>名称</translation> - </message> - <message> - <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="41"/> - <source>Email Address</source> - <translation>电子邮件地址</translation> - </message> - <message> - <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="41"/> - <source>Usage</source> - <translation>用法</translation> - </message> - <message> - <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="41"/> - <source>Trust</source> - <translation>信任</translation> - </message> - <message> - <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="42"/> - <source>Key ID</source> - <translation>密钥ID</translation> - </message> - <message> - <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="42"/> - <source>Create Date</source> - <translation>创建时间</translation> - </message> - <message> - <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="42"/> - <source>Algorithm</source> - <translation>算法</translation> - </message> - <message> - <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="43"/> - <source>Subkey(s)</source> - <translation>子密钥</translation> - </message> - <message> - <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="43"/> - <source>Comment</source> - <translation>注释</translation> - </message> -</context> -<context> <name>GpgFrontend::GpgSignResultAnalyse</name> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="44"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="43"/> <source>Sign Operation</source> <translation>签名操作</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="47"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="46"/> <source>Success</source> <translation>成功</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="49"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="48"/> <source>Failed</source> <translation>失败</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="61"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="60"/> <source>New Signature</source> <translation>新签名</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="64"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="63"/> <source>Sign Mode</source> <translation>签名模式</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="66"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="65"/> <source>Normal</source> <translation>标准签名</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="68"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="67"/> <source>Clear</source> <translation>明文签名</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="70"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="69"/> <source>Detach</source> <translation>分离式签名</translation> </message> <message> <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="78"/> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="99"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="92"/> <source>Signed By</source> <translation>被...签名</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="89"/> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="92"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="82"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="85"/> <source>Key ID</source> <translation>密钥编号</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="90"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="83"/> <source>Subkey</source> <translation>子密钥</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="93"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="86"/> <source>Primary Key</source> <translation>主密钥</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="95"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="88"/> <source>Key Create Date</source> <translation>密钥创建时间</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="100"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="93"/> <source><unknown></source> <translation><未知></translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="106"/> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="108"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="100"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="102"/> <source>Sign Date</source> <translation>签署日期</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="129"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="123"/> <source>Signer</source> <translation>签署人</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="102"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="96"/> <source>Public Key Algo</source> <translation>公钥算法</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="104"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="98"/> <source>Hash Algo</source> <translation>哈希算法</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="106"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="100"/> <source>UTC</source> <translation>世界标准时间</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="108"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="102"/> <source>Localized</source> <translation>本地化</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="123"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="117"/> <source>Invalid Signers</source> <translation>无效签署人</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="99"/> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="131"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="92"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="125"/> <source>Fingerprint</source> <translation>指纹</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="133"/> + <location filename="../../../../src/core/function/result_analyse/GpgSignResultAnalyse.cpp" line="127"/> <source>Reason</source> <translation>原因</translation> </message> @@ -317,222 +269,222 @@ <context> <name>GpgFrontend::GpgVerifyResultAnalyse</name> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="43"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="42"/> <source>Verify Operation</source> <translation>验证操作</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="46"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="45"/> <source>Success</source> <translation>成功</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="48"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="47"/> <source>Failed</source> <translation>失败</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="57"/> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="60"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="56"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="59"/> <source>Signed On</source> <translation>签署于</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="57"/> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="192"/> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="237"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="56"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="191"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="226"/> <source>UTC</source> <translation>世界标准时间</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="60"/> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="194"/> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="239"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="59"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="193"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="228"/> <source>Localized</source> <translation>本地化</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="63"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="62"/> <source>Signatures List</source> <translation>签名列表</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="70"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="69"/> <source>Signature [%1]:</source> <translation>签名 [%1]:</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="71"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="70"/> <source>Status</source> <translation>状态</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="74"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="73"/> <source>A Bad Signature.</source> <translation>一个错误的签名。</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="76"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="75"/> <source>This Signature is invalid.</source> <translation>此签名无效。</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="81"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="80"/> <source>A</source> <translation>一种</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="83"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="82"/> <source>Good</source> <translation>正常</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="86"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="85"/> <source>Bad</source> <translation>异常</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="89"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="88"/> <source>Expired</source> <translation>已到期</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="92"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="91"/> <source>Missing Key's</source> <translation>密钥缺失</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="95"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="94"/> <source>Revoked Key's</source> <translation>撤销的密钥</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="98"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="97"/> <source>Expired Key's</source> <translation>过期的密钥</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="101"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="100"/> <source>Missing CRL's</source> <translation>CRL缺失</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="105"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="104"/> <source>Signature Fully Valid.</source> <translation>签名完全有效。</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="107"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="106"/> <source>Signature Not Fully Valid.</source> <translation>签名不完全有效。</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="108"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="107"/> <source>Tips</source> <translation>提示</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="109"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="108"/> <source>Adjust Trust Level to make it Fully Vaild</source> <translation>可以调整信任级别,使签名完全有效</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="185"/> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="228"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="184"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="217"/> <source>Fingerprint</source> <translation>指纹</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="186"/> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="229"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="185"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="218"/> <source><unknown></source> <translation><未知></translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="192"/> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="194"/> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="237"/> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="239"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="191"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="193"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="226"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="228"/> <source>Sign Date</source> <translation>签署日期</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="217"/> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="220"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="207"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="210"/> <source>Key ID</source> <translation>密钥编号</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="218"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="208"/> <source>Subkey</source> <translation>子密钥</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="221"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="211"/> <source>Primary Key</source> <translation>主密钥</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="223"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="213"/> <source>Key Create Date</source> <translation>密钥创建时间</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="116"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="115"/> <source>Key is NOT present with ID 0x</source> <translation>密钥不存在,ID 为 0x</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="125"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="124"/> <source>A signature could NOT be verified due to a Missing Key</source> <translation>由于缺少密钥,无法验证签名</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="133"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="132"/> <source>A signature is valid but the key used to verify the signature has been revoked</source> <translation>签名有效,但用于验证签名的密钥已被撤销</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="142"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="141"/> <source>A signature is valid but expired</source> <translation>签名有效但已过期</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="149"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="148"/> <source>A signature is valid but the key used to verify the signature has expired.</source> <translation>签名有效,但用于验证签名的密钥已过期。</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="157"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="156"/> <source>There was some other error which prevented the signature verification.</source> <translation>还有一些其他错误阻止了签名验证。</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="165"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="164"/> <source>Error for key with fingerprint</source> <translation>带指纹的密钥错误</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="176"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="175"/> <source>Could not find information that can be used for verification.</source> <translation>找不到可用于验证的信息。</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="185"/> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="205"/> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="228"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="184"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="204"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="217"/> <source>Signed By</source> <translation>被...签名</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="189"/> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="234"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="188"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="223"/> <source>Public Key Algo</source> <translation>公钥算法</translation> </message> <message> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="191"/> - <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="236"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="190"/> + <location filename="../../../../src/core/function/result_analyse/GpgVerifyResultAnalyse.cpp" line="225"/> <source>Hash Algo</source> <translation>哈希算法</translation> </message> @@ -548,12 +500,12 @@ <context> <name>GpgFrontend::Module::GlobalRegisterTable</name> <message> - <location filename="../../../../src/core/module/GlobalRegisterTable.cpp" line="47"/> + <location filename="../../../../src/core/module/GlobalRegisterTable.cpp" line="46"/> <source>NODE</source> <translation>结点</translation> </message> <message> - <location filename="../../../../src/core/module/GlobalRegisterTable.cpp" line="82"/> + <location filename="../../../../src/core/module/GlobalRegisterTable.cpp" line="81"/> <source>LEAF</source> <translation>叶结点</translation> </message> @@ -561,37 +513,100 @@ <context> <name>GpgFrontend::Module::GlobalRegisterTableTreeModel::Impl</name> <message> - <location filename="../../../../src/core/module/GlobalRegisterTable.cpp" line="193"/> + <location filename="../../../../src/core/module/GlobalRegisterTable.cpp" line="192"/> <source><EMPTY></source> <translation><空></translation> </message> <message> - <location filename="../../../../src/core/module/GlobalRegisterTable.cpp" line="232"/> + <location filename="../../../../src/core/module/GlobalRegisterTable.cpp" line="231"/> <source><UNSUPPORTED></source> <translation><不支持></translation> </message> <message> - <location filename="../../../../src/core/module/GlobalRegisterTable.cpp" line="267"/> + <location filename="../../../../src/core/module/GlobalRegisterTable.cpp" line="266"/> <source>Key</source> <translation>键</translation> </message> <message> - <location filename="../../../../src/core/module/GlobalRegisterTable.cpp" line="269"/> + <location filename="../../../../src/core/module/GlobalRegisterTable.cpp" line="268"/> <source>Type</source> <translation>类型</translation> </message> <message> - <location filename="../../../../src/core/module/GlobalRegisterTable.cpp" line="271"/> + <location filename="../../../../src/core/module/GlobalRegisterTable.cpp" line="270"/> <source>Value Type</source> <translation>值类型</translation> </message> <message> - <location filename="../../../../src/core/module/GlobalRegisterTable.cpp" line="273"/> + <location filename="../../../../src/core/module/GlobalRegisterTable.cpp" line="272"/> <source>Value</source> <translation>值</translation> </message> </context> <context> + <name>GpgFrontend::UI::ADSKsPicker</name> + <message> + <location filename="../../../../src/ui/dialog/ADSKsPicker.cpp" line="55"/> + <source>Confirm</source> + <translation>确认</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/ADSKsPicker.cpp" line="56"/> + <source>Cancel</source> + <translation>取消</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/ADSKsPicker.cpp" line="60"/> + <source>No Subkeys Selected</source> + <translation>没有选择任何子密钥</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/ADSKsPicker.cpp" line="61"/> + <source>Please select at least one Subkey.</source> + <translation>请至少选择一个子密钥</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/ADSKsPicker.cpp" line="73"/> + <source>Select ADSK(s)</source> + <translation>选择 ADSK: </translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/ADSKsPicker.cpp" line="77"/> + <source>ADSK (Additional Decryption Subkey) allows others to encrypt data for you without having access to your private key. You are only allow to check subkeys with encryption capability.</source> + <translation>ADSK(附加解密子密钥)允许他人为你加密数据,而无需访问你的私人密钥。您只能选中具有加密功能的子密钥。</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/ADSKsPicker.cpp" line="92"/> + <source>ADSKs Picker</source> + <translation>ADSK选择器</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/ADSKsPicker.cpp" line="108"/> + <source>Key ID: %1 Reason: %2</source> + <translation>密钥ID: %1 原因: %2</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/ADSKsPicker.cpp" line="123"/> + <source>Failed</source> + <translation>失败</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/ADSKsPicker.cpp" line="124"/> + <source>Partially Failed</source> + <translation>部分失败</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/ADSKsPicker.cpp" line="126"/> + <source>Failed to add all selected subkeys.</source> + <translation>无法添加任何选中的子密钥。</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/ADSKsPicker.cpp" line="127"/> + <source>Some subkeys failed to be added as ADSKs.</source> + <translation>无法添加选中的部分子密钥。</translation> + </message> +</context> +<context> <name>GpgFrontend::UI::AboutDialog</name> <message> <location filename="../../../../src/ui/dialog/help/AboutDialog.cpp" line="41"/> @@ -754,39 +769,39 @@ <context> <name>GpgFrontend::UI::CommonUtils</name> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="419"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="428"/> <source>Timeout</source> <translation>超时</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="162"/> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="294"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="163"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="303"/> <source>Success</source> <translation>成功</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="119"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="120"/> <source>Failed to Load GnuPG Context</source> <translation>加载 GnuPG 上下文失败</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="121"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="122"/> <source>It seems that GnuPG (gpg) is not properly installed. Please refer to the <a href='https://www.gpgfrontend.bktus.com/overview/faq/#troubleshooting-gnupg-installation-issues'>FAQ</a> for instructions on fixing the installation. After resolving the issue, relaunch GpgFrontend.<br /><br />Alternatively, you can open the GnuPG Controller to configure a custom GnuPG installation for GpgFrontend to use. Once set, GpgFrontend will restart automatically.<br /><br />Details: %1</source> <translation>GnuPG (gpg) 似乎未正确安装。请参阅 <a href='https://www.gpgfrontend.bktus.com/overview/faq/#troubleshooting-gnupg-installation-issues'>FAQ</a> 获取修复安装的说明。解决该问题后,重新启动 GpgFrontend。<br /><br />或者,你可以打开 GnuPG 控制器,配置供 GpgFrontend 使用的自定义 GnuPG 安装。设置完成后,GpgFrontend 将自动重启。<br /><br />详情: %1</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="163"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="164"/> <source>Gpg Operation succeed.</source> <translation>Gpg 操作成功。</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="173"/> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="286"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="174"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="295"/> <source>Failure</source> <translation>失败</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="174"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="175"/> <source>Gpg Operation failed. Error code: %1 @@ -799,101 +814,107 @@ Description: %3</source> 说明: %3</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="201"/> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="208"/> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="476"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="210"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="217"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="485"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="647"/> <source>Error</source> <translation>错误</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="193"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="202"/> <source>Open Key</source> <translation>打开密钥</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="194"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="203"/> <source>Keyring files</source> <translation>密钥圈文件</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="202"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="211"/> <source>Cannot open this file. Please make sure that this is a regular file and it's readable.</source> <translation>无法打开此文件。请确保这是一个普通文件,并且有读取权限。</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="209"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="218"/> <source>The target file is too large for a keyring.</source> <translation>目标文件对于一个密钥来说太大。</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="215"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="224"/> <source>File Open Failed</source> <translation>文件打开失败</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="216"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="225"/> <source>Failed to open file: </source> <translation>打开文件失败: </translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="267"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="276"/> <source>Processing</source> <translation>处理中</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="287"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="296"/> <source>Failed to execute command.</source> <translation>执行命令失败。</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="295"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="304"/> <source>Succeed in executing command.</source> <translation>成功执行命令。</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="297"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="306"/> <source>Warning</source> <translation>警告</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="298"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="307"/> <source>Finished executing command.</source> <translation>命令执行完毕。</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="319"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="327"/> <source>Default Keyserver Not Found</source> <translation>未找到默认密钥服务器</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="320"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="328"/> <source>Cannot read default keyserver from your settings, please set a default keyserver first</source> <translation>无法从您的设置中读取默认密钥服务器,请先设置默认密钥服务器</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="416"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="425"/> <source>Key Not Found</source> <translation>未找到密钥</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="422"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="431"/> <source>Key Server Not Found</source> <translation>未找到密钥服务器</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="425"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="434"/> <source>Connection Error</source> <translation>连接错误</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="364"/> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="436"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="647"/> + <source>Key Not Found.</source> + <translation>未找到密钥。</translation> + </message> + <message> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="375"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="445"/> <source>The key has been updated</source> <translation>密钥已更新</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="366"/> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="438"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="377"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="447"/> <source>No need to update the key</source> <translation>无需更新密钥</translation> </message> @@ -944,130 +965,130 @@ Description: %3</source> <context> <name>GpgFrontend::UI::ExportKeyPackageDialog</name> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="53"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="51"/> <source>Export Key Package</source> <translation>导出密钥包</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="55"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="53"/> <source>Key Package</source> <translation>密钥包</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="65"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="63"/> <source>Export Key Package Passphrase</source> <translation>导出密钥包密码</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="67"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="65"/> <source>Key File</source> <translation>密钥文件</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="74"/> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="111"/> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="145"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="72"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="103"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="137"/> <source>Error</source> <translation>错误</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="75"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="73"/> <source>An error occurred while generating the passphrase file.</source> <translation>生成密码短语文件时出错。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="84"/> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="91"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="82"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="89"/> <source>Forbidden</source> <translation>操作被禁止</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="85"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="83"/> <source>Please select an output path before exporting.</source> <translation>导出前请选择输出路径。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="92"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="90"/> <source>Please generate a password to protect your key before exporting, it is very important. Don't forget to back up your password in a safe place.</source> <translation>请在导出前生成密钥文件以保护您的密钥,这非常重要。不要忘记在安全的地方备份您的密码。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="112"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="104"/> <source>No key is suitable to export.</source> <translation>没有适合导出的密钥。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="117"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="109"/> <source>Generating</source> - <translation>生成</translation> + <translation>生成中</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="128"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="120"/> <source>Success</source> <translation>成功</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="130"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="122"/> <source>The Key Package has been successfully generated and has been protected by encryption algorithms(AES-256-ECB). You can safely transfer your Key Package.</source> <translation>密钥包已成功生成并受到加密算法AES-256-ECB的保护。您可以安全地转移您的密钥包。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="135"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="127"/> <source>But the key file cannot be leaked under any circumstances. Please delete the Key Package and key file as soon as possible after completing the transfer operation.</source> <translation>但密钥文件在任何情况下都不能泄露。请在完成传输操作后尽快删除密钥包和密钥文件。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="146"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="138"/> <source>An error occurred while exporting the key package.</source> <translation>导出密钥包时出错。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="155"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="147"/> <source>Key Package Name</source> <translation>密钥包名称</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="156"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="148"/> <source>Output Path</source> <translation>输出路径</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="157"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="149"/> <source>Passphrase</source> <translation>密钥文件</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="159"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="151"/> <source>Tips: You can use Key Package to safely and conveniently transfer your public and private keys between devices.</source> <translation>提示:您可以使用密钥包在设备之间安全方便地传输您的公钥和私钥。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="161"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="153"/> <source>Generate and Save Passphrase</source> <translation>生成并保存密码</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="162"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="154"/> <source>Generate Key Package Name</source> <translation>生成密钥包名</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="163"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="155"/> <source>Select Output Path</source> <translation>选择输出路径</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="166"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="158"/> <source>Include secret key (Think twice before acting)</source> <translation>一并导出私钥(勾选前请三思)</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="168"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="160"/> <source>Exclude keys that do not have a private key</source> <translation>只导出有私钥的钥对</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="171"/> + <location filename="../../../../src/ui/dialog/import_export/ExportKeyPackageDialog.cpp" line="163"/> <source>Export As Key Package</source> <translation>导出为密钥包</translation> </message> @@ -1075,22 +1096,22 @@ Description: %3</source> <context> <name>GpgFrontend::UI::FilePage</name> <message> - <location filename="../../../../src/ui/widgets/FilePage.cpp" line="46"/> + <location filename="../../../../src/ui/widgets/FilePage.cpp" line="45"/> <source>Switch Batch Mode</source> <translation>切换到批量模式</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FilePage.cpp" line="66"/> + <location filename="../../../../src/ui/widgets/FilePage.cpp" line="65"/> <source>Show Hidden File</source> <translation>显示隐藏文件</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FilePage.cpp" line="72"/> + <location filename="../../../../src/ui/widgets/FilePage.cpp" line="71"/> <source>Show System File</source> <translation>显示系统文件</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FilePage.cpp" line="78"/> + <location filename="../../../../src/ui/widgets/FilePage.cpp" line="77"/> <source>ASCII Mode</source> <translation>ASCII模式</translation> </message> @@ -1098,128 +1119,128 @@ Description: %3</source> <context> <name>GpgFrontend::UI::FileTreeView</name> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="93"/> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="106"/> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="164"/> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="209"/> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="232"/> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="279"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="128"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="141"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="199"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="244"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="267"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="314"/> <source>Error</source> <translation>错误</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="94"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="129"/> <source>The path is not exists, unprivileged or unreachable.</source> <translation>该路径不存在、没有特权或无法访问。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="107"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="142"/> <source>The file is unprivileged or unreachable.</source> <translation>该目录不存在,或者您的权限不足。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="157"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="192"/> <source>Warning</source> <translation>警告</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="158"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="193"/> <source>Are you sure you want to delete it?</source> <translation>你确定要删除吗?</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="165"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="200"/> <source>Unable to delete the file or folder.</source> <translation>无法删除文件或文件夹。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="174"/> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="187"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="209"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="222"/> <source>Make New Directory</source> <translation>新建目录</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="175"/> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="188"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="210"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="223"/> <source>Directory Name</source> <translation>目录名称</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="202"/> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="225"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="237"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="260"/> <source>Create Empty File</source> <translation>创建空文件</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="202"/> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="225"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="237"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="260"/> <source>Filename (you can given extension)</source> <translation>文件名(您可以指定扩展名)</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="210"/> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="233"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="245"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="268"/> <source>Unable to create the file.</source> <translation>无法创建文件。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="271"/> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="303"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="306"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="338"/> <source>Rename</source> <translation>改名</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="271"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="306"/> <source>New Filename</source> <translation>新文件名</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="280"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="315"/> <source>Unable to rename the file or folder.</source> <translation>无法重命名文件或文件夹。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="297"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="332"/> <source>Open</source> <translation>打开</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="308"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="343"/> <source>Delete</source> <translation>删除</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="313"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="348"/> <source>Calculate Hash</source> <translation>计算哈希值</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="318"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="353"/> <source>Directory</source> <translation>目录</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="323"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="358"/> <source>File</source> <translation>文件</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="328"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="363"/> <source>Compress...</source> <translation>压缩...</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="335"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="370"/> <source>Open with Default System Application</source> <translation>使用默认系统应用程序打开</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="340"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="375"/> <source>New</source> <translation>新建</translation> </message> <message> - <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="402"/> + <location filename="../../../../src/ui/widgets/FileTreeView.cpp" line="437"/> <source>Calculating</source> <translation>计算中</translation> </message> @@ -1235,268 +1256,326 @@ Description: %3</source> <context> <name>GpgFrontend::UI::GeneralTab</name> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="43"/> + <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="42"/> <source>Cache</source> <translation>缓存</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="45"/> + <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="44"/> <source>Clear gpg password cache when closing GpgFrontend.</source> <translation>关闭 GpgFrontend 时清除 gpg 密码缓存。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="47"/> + <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="46"/> <source>Automatically restore unsaved Text Editor pages after an application crash.</source> <translation>应用程序崩溃后自动恢复未保存的文本编辑器页面。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="50"/> + <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="49"/> <source>Operation</source> <translation>操作</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="52"/> + <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="51"/> <source>Import files dropped on the Key List without confirmation.</source> <translation>未经确认,导入放在密钥列表中的文件。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="54"/> + <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="53"/> <source>Disable loading of all modules (including integrated modules)</source> <translation>禁止加载所有的模组(包括被集成模组)</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="56"/> + <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="55"/> <source>Language</source> <translation>语言</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="58"/> + <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="57"/> <source>NOTE</source> <translation>提示</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="58"/> + <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="57"/> <source>: </source> <translation>: </translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="59"/> + <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="58"/> <source>GpgFrontend will restart automatically if you change the language!</source> <translation>如果您更改语言,GpgFrontend 将自动重启!</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="61"/> + <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="60"/> <source>Data</source> <translation>数据</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="63"/> - <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="81"/> + <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="62"/> + <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="80"/> <source>Clear All Log (Total Size: %1)</source> <translation>清除所有日志(总大小:%1)</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="66"/> - <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="95"/> + <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="65"/> + <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="94"/> <source>Clear All Data Objects (Total Size: %1)</source> <translation>清除所有数据对象(总大小:%1)</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="69"/> + <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="68"/> <source>Reveal in File Explorer</source> <translation>在文件资源管理器中显示</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="88"/> + <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="87"/> <source>Confirm</source> <translation>确认</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="89"/> + <location filename="../../../../src/ui/dialog/settings/SettingsGeneral.cpp" line="88"/> <source>Are you sure you want to clear all data objects? This will result in loss of all cached form positions, statuses, key servers, etc.</source> <translation>您确定要清除所有数据对象吗?这将导致所有缓存的页面位置、状态、密钥服务器等丢失。</translation> </message> </context> <context> + <name>GpgFrontend::UI::GenerateCardKeyDialog</name> + <message> + <location filename="../../../../src/ui/dialog/key_generate/GenerateCardKeyDialog.cpp" line="50"/> + <source>Name</source> + <translation>名称</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/key_generate/GenerateCardKeyDialog.cpp" line="51"/> + <source>Email</source> + <translation>电子邮件</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/key_generate/GenerateCardKeyDialog.cpp" line="52"/> + <source>Comment</source> + <translation>注释</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/key_generate/GenerateCardKeyDialog.cpp" line="53"/> + <source>Expire Date</source> + <translation>到期日期</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/key_generate/GenerateCardKeyDialog.cpp" line="54"/> + <source>Non Expire</source> + <translation>永不过期</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/key_generate/GenerateCardKeyDialog.cpp" line="56"/> + <source>Warning: This Operation will overwrite keys which exist on card!</source> + <translation>警告: 此操作会覆盖卡片上已存在的密钥!</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/key_generate/GenerateCardKeyDialog.cpp" line="57"/> + <source>Generate</source> + <translation>生成</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/key_generate/GenerateCardKeyDialog.cpp" line="67"/> + <source>Card Key Generation</source> + <translation>生成智能卡密钥</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/key_generate/GenerateCardKeyDialog.cpp" line="81"/> + <source>Name must contain at least five characters.</source> + <translation>名称必须至少包含五个字符。</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/key_generate/GenerateCardKeyDialog.cpp" line="87"/> + <source>Please give a email address.</source> + <translation>请提供一个电子邮件地址。</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/key_generate/GenerateCardKeyDialog.cpp" line="121"/> + <source>Generating</source> + <translation>生成中</translation> + </message> +</context> +<context> <name>GpgFrontend::UI::GnuPGControllerDialog</name> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="70"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="69"/> <source>General</source> <translation>通用</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="71"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="70"/> <source>Key Database</source> <translation>密钥数据库</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="72"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="71"/> <source>Advanced</source> <translation>高级</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="52"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="51"/> <source>Use Binary Mode for File Operations</source> <translation>使用二进制模式进行文件操作</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="54"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="53"/> <source>Use Pinentry as Password Input Dialog</source> <translation>使用 Pinentry 作为密码输入对话框</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="55"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="54"/> <source>Enable GpgME Debug Log</source> <translation>启用 GpgME 调试日志</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="56"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="55"/> <source>Use Custom GnuPG</source> <translation>使用自定义 GnuPG</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="57"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="56"/> <source>Select GnuPG Path</source> <translation>选择 GnuPG 路径</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="77"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="76"/> <source>Name</source> <translation>名称</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="77"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="76"/> <source>Path</source> <translation>路径</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="77"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="76"/> <source>Status</source> <translation>状态</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="77"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="76"/> <source>Real Path</source> <translation>实际路径</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="360"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="358"/> <source>Maximum Key Database Limit Reached</source> <translation>已达到密钥数据库上限</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="361"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="359"/> <source>Currently, GpgFrontend supports a maximum of 8 key databases. Please remove an existing database to add a new one.</source> <translation>目前,GpgFrontend 最多支持 8 个密钥数据库。要添加新数据库,请移除现有数据库。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="372"/> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="618"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="370"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="616"/> <source>Duplicate Key Database Paths</source> <translation>重复的密钥数据库路径</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="373"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="371"/> <source>The newly added key database path duplicates a previously existing one.</source> <translation>新添加的密钥数据库路径与先前存在的路径重复。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="382"/> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="629"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="380"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="627"/> <source>Invalid Key Database Paths</source> <translation>无效的密钥数据库地址</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="383"/> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="630"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="381"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="628"/> <source>The edited key database path is not a valid path that GpgFrontend can use</source> <translation>编辑的密钥数据库路径不是 GpgFrontend 可以使用的有效路径</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="430"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="428"/> <source>Active</source> <translation>启用</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="430"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="428"/> <source>Inactive</source> <translation>未启用</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="458"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="456"/> <source>Confirm Deletion</source> <translation>确认删除</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="459"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="457"/> <source>Are you sure you want to delete the selected key database?</source> <translation>您确定要删除选定的密钥数据库吗?</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="597"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="595"/> <source>No Key Database Selected</source> <translation>未选择任何密钥数据库</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="598"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="596"/> <source>Please select a key database to edit.</source> <translation>请选择要编辑的密钥数据库。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="619"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="617"/> <source>The edited key database path duplicates a previously existing one.</source> <translation>编辑后的密钥数据库路径与先前存在的路径重复。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="59"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="58"/> <source>Restart Gpg Agent on start</source> <translation>启动时重启 Gpg Agent</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="61"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="60"/> <source>Kill all gnupg daemon at close</source> <translation>在关闭程序时杀死所有GnuPG的守护进程</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="65"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="64"/> <source>Tips: please select a directory where "gpgconf" is located in.</source> <translation>提示:请选择一个包含有“gpgconf”可执行文件的目录</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="67"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="66"/> <source>Tips: notice that modify any of these settings will cause an Application restart.</source> <translation>提示:请注意,修改任何这些设置都会导致应用程序重新启动。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="108"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="107"/> <source>Open Directory</source> <translation>打开目录</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="184"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="182"/> <source>GnuPG Controller</source> <translation>GnuPG 控制器</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="328"/> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="335"/> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="347"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="326"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="333"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="345"/> <source>Illegal GnuPG Path</source> <translation>非法 GnuPG 路径</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="329"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="327"/> <source>Target GnuPG Path is not an exists readable directory.</source> <translation>目标 GnuPG 路径不是现有的可读目录。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="336"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="334"/> <source>Target GnuPG Path is not an absolute path.</source> <translation>目标 GnuPG 路径不是绝对路径。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="348"/> + <location filename="../../../../src/ui/dialog/controller/GnuPGControllerDialog.cpp" line="346"/> <source>Target GnuPG Path contains no "gpgconf" executable.</source> <translation>目标 GnuPG 路径不包含“gpgconf”可执行文件。</translation> </message> @@ -1527,10 +1606,10 @@ This will result in loss of all cached form positions, statuses, key servers, et <context> <name>GpgFrontend::UI::GpgOperaHelper</name> <message> - <location filename="../../../../src/ui/function/GpgOperaHelper.cpp" line="97"/> - <location filename="../../../../src/ui/function/GpgOperaHelper.cpp" line="133"/> - <location filename="../../../../src/ui/function/GpgOperaHelper.cpp" line="175"/> - <location filename="../../../../src/ui/function/GpgOperaHelper.cpp" line="213"/> + <location filename="../../../../src/ui/function/GpgOperaHelper.cpp" line="96"/> + <location filename="../../../../src/ui/function/GpgOperaHelper.cpp" line="132"/> + <location filename="../../../../src/ui/function/GpgOperaHelper.cpp" line="174"/> + <location filename="../../../../src/ui/function/GpgOperaHelper.cpp" line="212"/> <source>Critical Error</source> <translation>关键错误</translation> </message> @@ -1538,37 +1617,37 @@ This will result in loss of all cached form positions, statuses, key servers, et <context> <name>GpgFrontend::UI::InfoBoardWidget</name> <message> - <location filename="../../../../src/ui/widgets/InfoBoardWidget.cpp" line="46"/> + <location filename="../../../../src/ui/widgets/InfoBoardWidget.cpp" line="45"/> <source>Copy</source> <translation>复制</translation> </message> <message> - <location filename="../../../../src/ui/widgets/InfoBoardWidget.cpp" line="47"/> + <location filename="../../../../src/ui/widgets/InfoBoardWidget.cpp" line="46"/> <source>Save File</source> <translation>保存为文件</translation> </message> <message> - <location filename="../../../../src/ui/widgets/InfoBoardWidget.cpp" line="48"/> + <location filename="../../../../src/ui/widgets/InfoBoardWidget.cpp" line="47"/> <source>Clear</source> <translation>清空面板</translation> </message> <message> - <location filename="../../../../src/ui/widgets/InfoBoardWidget.cpp" line="158"/> + <location filename="../../../../src/ui/widgets/InfoBoardWidget.cpp" line="157"/> <source>Text (*.txt)</source> <translation>文本文件 (*.txt)</translation> </message> <message> - <location filename="../../../../src/ui/widgets/InfoBoardWidget.cpp" line="158"/> + <location filename="../../../../src/ui/widgets/InfoBoardWidget.cpp" line="157"/> <source>Save Status Panel's Content</source> <translation>保存状态面板内容</translation> </message> <message> - <location filename="../../../../src/ui/widgets/InfoBoardWidget.cpp" line="166"/> + <location filename="../../../../src/ui/widgets/InfoBoardWidget.cpp" line="165"/> <source>Error</source> <translation>错误</translation> </message> <message> - <location filename="../../../../src/ui/widgets/InfoBoardWidget.cpp" line="167"/> + <location filename="../../../../src/ui/widgets/InfoBoardWidget.cpp" line="166"/> <source>The file path is not exists, unprivileged or unreachable.</source> <translation>文件路径不存在、无特权或无法访问。</translation> </message> @@ -1662,57 +1741,57 @@ This will result in loss of all cached form positions, statuses, key servers, et <context> <name>GpgFrontend::UI::KeyDatabaseEditDialog</name> <message> - <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="50"/> + <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="47"/> <source>Key Database Name</source> <translation>密钥数据库名称</translation> </message> <message> - <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="51"/> + <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="48"/> <source>Key Database Path</source> <translation>密钥数据库路径</translation> </message> <message> - <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="52"/> + <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="49"/> <source>Select A Key Database Path</source> <translation>选择一个密钥数据库路径</translation> </message> <message> - <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="53"/> + <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="50"/> <source>Convert to Relative Path</source> <translation>转换为相对路径</translation> </message> <message> - <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="55"/> + <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="52"/> <source>Key Database Info</source> <translation>密钥数据库信息</translation> </message> <message> - <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="59"/> + <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="56"/> <source>Open Directory</source> <translation>打开目录</translation> </message> <message> - <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="62"/> + <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="59"/> <source>Illegal GnuPG Key Database Path</source> <translation>非法的 GnuPG 密钥数据库路径</translation> </message> <message> - <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="63"/> + <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="60"/> <source>Target GnuPG Key Database Path is not an exists readable directory.</source> <translation>目标 GnuPG 密钥数据库路径不是现有的可读目录。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="85"/> + <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="82"/> <source>The key database name cannot be empty.</source> <translation>密钥数据库名称不能为空</translation> </message> <message> - <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="90"/> + <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="87"/> <source>The key database path cannot be empty.</source> <translation>密钥数据库路径不能为空</translation> </message> <message> - <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="96"/> + <location filename="../../../../src/ui/dialog/KeyDatabaseEditDialog.cpp" line="93"/> <source>A key database with the name '%1' already exists. Please choose a different name.</source> <translation>名称为'%1'的密钥数据库已经存在。请选择其他名称。</translation> </message> @@ -1720,27 +1799,27 @@ This will result in loss of all cached form positions, statuses, key servers, et <context> <name>GpgFrontend::UI::KeyDetailsDialog</name> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyDetailsDialog.cpp" line="46"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyDetailsDialog.cpp" line="45"/> <source>KeyPair</source> <translation>密钥对</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyDetailsDialog.cpp" line="51"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyDetailsDialog.cpp" line="50"/> <source>UIDs</source> <translation>UID</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyDetailsDialog.cpp" line="55"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyDetailsDialog.cpp" line="53"/> <source>Keychain</source> <translation>钥匙链</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyDetailsDialog.cpp" line="58"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyDetailsDialog.cpp" line="56"/> <source>Operations</source> <translation>操作</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyDetailsDialog.cpp" line="76"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyDetailsDialog.cpp" line="74"/> <source>Key Details</source> <translation>密钥详情</translation> </message> @@ -1750,26 +1829,26 @@ This will result in loss of all cached form positions, statuses, key servers, et <message> <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="63"/> <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="70"/> - <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="579"/> - <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="585"/> + <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="575"/> + <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="581"/> <source>Custom</source> <translation>自定义</translation> </message> <message> <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="71"/> - <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="528"/> + <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="524"/> <source>3 Months</source> <translation>3个月</translation> </message> <message> <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="72"/> - <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="533"/> + <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="529"/> <source>6 Months</source> <translation>6个月</translation> </message> <message> <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="73"/> - <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="538"/> + <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="534"/> <source>1 Year</source> <translation>1年</translation> </message> @@ -1777,19 +1856,19 @@ This will result in loss of all cached form positions, statuses, key servers, et <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="74"/> <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="139"/> <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="144"/> - <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="543"/> + <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="539"/> <source>2 Years</source> <translation>2年</translation> </message> <message> <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="75"/> - <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="548"/> + <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="544"/> <source>5 Years</source> <translation>5年</translation> </message> <message> <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="76"/> - <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="553"/> + <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="549"/> <source>10 Years</source> <translation>10年</translation> </message> @@ -1797,14 +1876,14 @@ This will result in loss of all cached form positions, statuses, key servers, et <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="77"/> <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="100"/> <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="109"/> - <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="559"/> + <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="555"/> <source>Non Expired</source> <translation>不过期</translation> </message> <message> <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="81"/> <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="290"/> - <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="590"/> + <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="586"/> <source>Primary Key Only</source> <translation>仅主密钥</translation> </message> @@ -1949,131 +2028,232 @@ This will result in loss of all cached form positions, statuses, key servers, et <translation>距离子密钥过期时间不得少于 120 秒。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="618"/> + <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="614"/> <source>Error</source> <translation>错误</translation> </message> <message> - <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="619"/> + <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="615"/> <source>Unknown error occurred</source> <translation>发生未知错误</translation> </message> <message> - <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="631"/> + <location filename="../../../../src/ui/dialog/key_generate/KeyGenerateDialog.cpp" line="627"/> <source>Generating</source> - <translation>生成</translation> + <translation>生成中</translation> + </message> +</context> +<context> + <name>GpgFrontend::UI::KeyGroupCreationDialog</name> + <message> + <location filename="../../../../src/ui/dialog/KeyGroupCreationDialog.cpp" line="50"/> + <source>Create</source> + <translation>创建</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/KeyGroupCreationDialog.cpp" line="55"/> + <source>A Key Group is a collection of keys. It allows you to encrypt data for multiple recipients at once by grouping their public keys together.</source> + <translation>密钥组是密钥的集合,通过将多个接受者的公开密钥组合在一起,可以同时为多个接收者加密数据。</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/KeyGroupCreationDialog.cpp" line="63"/> + <source>Name</source> + <translation>名称</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/KeyGroupCreationDialog.cpp" line="64"/> + <source>Email</source> + <translation>电子邮件</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/KeyGroupCreationDialog.cpp" line="65"/> + <source>Comment</source> + <translation>注释</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/KeyGroupCreationDialog.cpp" line="84"/> + <source>New Key Group</source> + <translation>新建密钥组</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/KeyGroupCreationDialog.cpp" line="97"/> + <source>Name must contain at least five characters.</source> + <translation>名称必须至少包含五个字符。</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/KeyGroupCreationDialog.cpp" line="101"/> + <source>Please give a email address.</source> + <translation>请提供一个电子邮件地址。</translation> + </message> +</context> +<context> + <name>GpgFrontend::UI::KeyGroupManageDialog</name> + <message> + <location filename="../../../../src/ui/dialog/KeyGroupManageDialog.cpp" line="60"/> + <source>Key Group</source> + <translation>密钥组</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/KeyGroupManageDialog.cpp" line="73"/> + <source>Default</source> + <translation>默认</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/KeyGroupManageDialog.cpp" line="90"/> + <source>Key(s) in Key Group: </source> + <translation>密钥组中的密钥: </translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/KeyGroupManageDialog.cpp" line="91"/> + <source>Key(s) in Key Database: </source> + <translation>密钥数据库中的密钥: </translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/KeyGroupManageDialog.cpp" line="96"/> + <source>Key Group Management</source> + <translation>密钥组管理</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/KeyGroupManageDialog.cpp" line="128"/> + <source>Some Keys Failed</source> + <translation>操作部分失败</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/KeyGroupManageDialog.cpp" line="129"/> + <source>Some keys could not be added to the group: +%1</source> + <translation>一些密钥无法被添加到密钥组: +%1</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/KeyGroupManageDialog.cpp" line="161"/> + <source>This Key Group contains some invalid keys: + +%1 + +These keys are no longer available. Do you want to remove them from the group?</source> + <translation>这个密钥组有一些无效密钥: + +%1 + +这些密钥不再可用. 您是否希望从密钥组移除这些密钥?</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/KeyGroupManageDialog.cpp" line="167"/> + <source>Invalid Keys in Group</source> + <translation>密钥组中含有无效密钥</translation> </message> </context> <context> <name>GpgFrontend::UI::KeyImportDetailDialog</name> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="45"/> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="62"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="44"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="61"/> <source>Key Import Details</source> <translation>密钥导入详细信息</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="46"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="45"/> <source>No keys found to import</source> <translation>找不到要导入的密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="74"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="76"/> <source>General key info</source> <translation>一般密钥信息</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="77"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="79"/> <source>Considered</source> <translation>经过认证</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="83"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="85"/> <source>Public unchanged</source> <translation>公开且不变</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="89"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="91"/> <source>Imported</source> <translation>导入的密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="96"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="98"/> <source>Not Imported</source> <translation>未导入的密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="103"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="105"/> <source>Private Read</source> <translation>读取的私钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="111"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="113"/> <source>Private Imported</source> <translation>导入的私钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="118"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="120"/> <source>Private Unchanged</source> <translation>未变更的私钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="124"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="126"/> <source>New Revocations</source> <translation>新的吊销</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="140"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="142"/> <source>Name</source> <translation>名称</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="140"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="142"/> <source>Email</source> <translation>电子邮件</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="140"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="142"/> <source>Status</source> <translation>状态</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="141"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="143"/> <source>Fingerprint</source> <translation>指纹</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="168"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="172"/> <source>Private</source> <translation>私有的</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="171"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="175"/> <source>Public</source> <translation>公开的</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="174"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="178"/> <source>Unchanged</source> <translation>未变化</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="177"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="181"/> <source>New Key</source> <translation>新密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="180"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="184"/> <source>New Subkey</source> <translation>新子密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="184"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="188"/> <source>New Signature</source> <translation>新签名</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="188"/> + <location filename="../../../../src/ui/dialog/import_export/KeyImportDetailDialog.cpp" line="192"/> <source>New UID</source> <translation>新 UID</translation> </message> @@ -2081,132 +2261,122 @@ This will result in loss of all cached form positions, statuses, key servers, et <context> <name>GpgFrontend::UI::KeyList</name> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="250"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="275"/> <source>Refresh</source> <translation>刷新</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="252"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="277"/> <source>Refresh the key list to synchronize changes.</source> <translation>刷新密钥列表以同步更改。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="253"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="278"/> <source>Sync Public Key</source> <translation>同步公钥</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="255"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="280"/> <source>Sync public key with your default keyserver.</source> <translation>将公钥与您的默认密钥服务器同步。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="256"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="281"/> <source>Uncheck ALL</source> <translation>全不选</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="258"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="283"/> <source>Cancel all checked items in the current tab at once.</source> <translation>一次性取消选中当前选项卡中所有的项目。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="259"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="284"/> <source>Check ALL</source> <translation>全选</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="261"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="286"/> <source>Check all items in the current tab at once</source> <translation>一次性选中当前选项卡中的所有项目</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="262"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="287"/> <source>Search for keys...</source> <translation>搜索钥匙...</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="106"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="122"/> <source>Key ID</source> <translation>密钥编号</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="117"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="133"/> <source>Algorithm</source> <translation>算法</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="128"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="144"/> <source>Owner Trust</source> <translation>信任级别</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="140"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="156"/> <source>Create Date</source> <translation>创建时间</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="152"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="168"/> <source>Subkey(s)</source> <translation>子密钥</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="166"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="182"/> <source>Comment</source> <translation>注释</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="296"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="326"/> <source>Refreshing Key List...</source> <translation>正在刷新密钥列表...</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="473"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="419"/> <source>Import Keys</source> <translation>导入密钥</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="475"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="421"/> <source>You've dropped something on the table.</source> <translation>你刚刚把文件拖拽到密钥列表中。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="476"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="422"/> <source>GpgFrontend will now try to import key(s).</source> <translation>GpgFrontend 现在将尝试导入密钥。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="479"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="425"/> <source>Always import without bothering.</source> <translation>始终导入而无需打扰。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="645"/> - <source>Error</source> - <translation>错误</translation> - </message> - <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="645"/> - <source>Key Not Found.</source> - <translation>未找到密钥。</translation> - </message> - <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="301"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="331"/> <source>Key List Refreshed.</source> <translation>密钥列表已刷新。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="577"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="533"/> <source>Syncing Key List...</source> <translation>正在同步密钥列表...</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="586"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="539"/> <source>Sync [%1/%2] %3 %4</source> <translation>同步 [%1/%2] %3 %4</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="596"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="549"/> <source>Key List Sync Done.</source> <translation>密钥列表同步完成。</translation> </message> @@ -2214,17 +2384,17 @@ This will result in loss of all cached form positions, statuses, key servers, et <context> <name>GpgFrontend::UI::KeyMgmt</name> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="59"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="57"/> <source>All</source> <translation>全部</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="64"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="62"/> <source>Only Public Key</source> <translation>只有公钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="71"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="70"/> <source>Has Private Key</source> <translation>有私钥</translation> </message> @@ -2234,334 +2404,339 @@ This will result in loss of all cached form positions, statuses, key servers, et <translation>无主密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="87"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="88"/> <source>Revoked</source> <translation>已吊销</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="94"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="95"/> <source>Expired</source> <translation>已到期</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="114"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="102"/> + <source>Disabled</source> + <translation>已禁用</translation> + </message> + <message> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="121"/> <source>KeyPair Management</source> <translation>密钥对管理</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="135"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="147"/> <source>Open</source> <translation>打开</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="137"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="149"/> <source>Open Key File</source> <translation>打开密钥文件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="143"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="146"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="155"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="158"/> <source>Close</source> <translation>关闭</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="149"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="161"/> <source>New Keypair</source> <translation>新密钥对</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="152"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="164"/> <source>Generate KeyPair</source> <translation>生成密钥对</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="156"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="168"/> <source>New Subkey</source> <translation>新子密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="160"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="172"/> <source>Generate Subkey For Selected KeyPair</source> <translation>为选定的密钥对生成子密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="164"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="262"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="176"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="273"/> <source>File</source> <translation>文件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="166"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="178"/> <source>Import New Key From File</source> <translation>从文件导入新密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="172"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="184"/> <source>Clipboard</source> <translation>剪贴板</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="176"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="188"/> <source>Import New Key From Clipboard</source> <translation>从剪贴板导入新密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="187"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="199"/> <source>Keyserver</source> <translation>密钥服务器</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="191"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="203"/> <source>Import New Key From Keyserver</source> <translation>从密钥服务器导入新密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="198"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="543"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="210"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="528"/> <source>Key Package</source> <translation>密钥包</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="201"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="213"/> <source>Import Key(s) From a Key Package</source> <translation>从密钥包导入密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="205"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="217"/> <source>Export To Clipboard</source> <translation>导出到剪贴板</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="209"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="221"/> <source>Export Checked Key(s) To Clipboard</source> <translation>将选中的密钥导出到剪贴板</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="213"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="225"/> <source>Export As Key Package</source> <translation>导出为密钥包</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="216"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="228"/> <source>Export Checked Key(s) To a Key Package</source> <translation>将勾选的密钥导出到密钥包</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="220"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="232"/> <source>Export As OpenSSH</source> <translation>导出为OpenSSH密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="223"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="235"/> <source>Export Checked Key As OpenSSH Format to File</source> <translation>将校验过的密钥导出为 OpenSSH 格式文件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="227"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="239"/> <source>Delete Selected Key(s)</source> <translation>删除这些选定的密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="229"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="241"/> <source>Delete the Selected keys</source> <translation>删除这个选定的密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="233"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="245"/> <source>Delete Checked Key(s)</source> <translation>删除选中的密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="235"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="247"/> <source>Delete the Checked keys</source> <translation>删除选中的密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="240"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="252"/> <source>Show Key Details</source> <translation>显示密钥细节</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="242"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="254"/> <source>Show Details for this Key</source> <translation>显示此密钥的详细信息</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="246"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="248"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="258"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="260"/> <source>Set Owner Trust Level</source> <translation>设置所有者信任级别</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="266"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="286"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="277"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="297"/> <source>Key</source> <translation>密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="267"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="278"/> <source>Generate Key</source> <translation>生成密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="271"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="299"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="282"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="310"/> <source>Import Key</source> <translation>导入密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="277"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="307"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="308"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="288"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="318"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="319"/> <source>Export Key</source> <translation>导出密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="298"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="309"/> <source>Import key</source> <translation>导入密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="343"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="347"/> <source>Deleting Keys</source> <translation>删除密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="344"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="348"/> <source>Are you sure that you want to delete the following keys?</source> <translation>您确定要删除以下密钥吗?</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="346"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="350"/> <source>The action can not be undone.</source> <translation>该操作无法撤消。</translation> </message> <message> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="406"/> <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="418"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="430"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="497"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="508"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="521"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="552"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="560"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="576"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="584"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="600"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="482"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="493"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="506"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="537"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="545"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="561"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="569"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="585"/> <source>Error</source> <translation>错误</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="367"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="381"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="469"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="475"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="372"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="387"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="457"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="466"/> <source>Forbidden</source> <translation>操作被禁止</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="368"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="382"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="373"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="388"/> <source>Please check some keys before doing this operation.</source> <translation>请在执行此操作之前勾选一些密钥。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="374"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="535"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="380"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="520"/> <source>key(s) exported</source> <translation>导出的密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="408"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="487"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="396"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="472"/> <source>Exporting</source> <translation>导出中</translation> </message> <message> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="407"/> <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="419"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="431"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="498"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="509"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="483"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="494"/> <source>Unknown error occurred</source> <translation>发生了未知错误</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="453"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="441"/> <source>Invalid Operation</source> <translation>无效操作</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="454"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="442"/> <source>If a key pair does not have a private key then it will not be able to generate sub-keys.</source> <translation>如果密钥对没有私钥,那么它将无法生成子密钥。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="470"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="458"/> <source>Please check a key before performing this operation.</source> <translation>请在执行此操作前勾选一个密钥。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="476"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="467"/> <source>This operation accepts just a single key.</source> <translation>此操作只接受单个密钥。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="522"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="507"/> <source>This key may not be able to export as OpenSSH format. Please check the key-size of the subkey(s) used to sign.</source> <translation>此密钥可能无法导出为 OpenSSH 格式。请检查用于签名的子密钥的密钥大小。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="530"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="515"/> <source>Export OpenSSH Key To File</source> <translation>将 OpenSSH 密钥导出到文件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="531"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="516"/> <source>OpenSSH Public Key Files</source> <translation>OpenSSH 公钥文件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="543"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="528"/> <source>Import Key Package</source> <translation>导入密钥包</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="553"/> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="577"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="538"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="562"/> <source>Cannot open this file. Please make sure that this is a regular file and it's readable.</source> <translation>无法打开此文件。请确保这是一个普通文件,并且有读取权限。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="561"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="546"/> <source>The target file is too large for a key package.</source> <translation>目标文件对于密钥包来说太大。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="566"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="551"/> <source>Import Key Package Passphrase File</source> <translation>导入密钥包口令文件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="567"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="552"/> <source>Key Package Passphrase File</source> <translation>密钥包口令文件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="585"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="570"/> <source>The target file is too large for a key package passphrase.</source> <translation>目标文件对于密钥包口令来说太大。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="590"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="575"/> <source>Importing</source> <translation>导入中</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="607"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="592"/> <source>key(s) imported</source> <translation>导入的密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="601"/> + <location filename="../../../../src/ui/main_window/KeyMgmt.cpp" line="586"/> <source>An error occur in importing key package.</source> <translation>导入密钥包出错。</translation> </message> @@ -2569,37 +2744,37 @@ This will result in loss of all cached form positions, statuses, key servers, et <context> <name>GpgFrontend::UI::KeyNewUIDDialog</name> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyNewUIDDialog.cpp" line="55"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyNewUIDDialog.cpp" line="52"/> <source>Name</source> <translation>名称</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyNewUIDDialog.cpp" line="56"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyNewUIDDialog.cpp" line="53"/> <source>Email</source> <translation>电子邮件</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyNewUIDDialog.cpp" line="57"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyNewUIDDialog.cpp" line="54"/> <source>Comment</source> <translation>注释</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyNewUIDDialog.cpp" line="65"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyNewUIDDialog.cpp" line="62"/> <source>Notice: The New UID Created will be set as Primary.</source> <translation>注意:创建的新 UID 将设置为主要。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyNewUIDDialog.cpp" line="73"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyNewUIDDialog.cpp" line="70"/> <source>Create New UID</source> <translation>创建新的 UID</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyNewUIDDialog.cpp" line="90"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyNewUIDDialog.cpp" line="86"/> <source>Name must contain at least five characters.</source> <translation>名称必须至少包含五个字符。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyNewUIDDialog.cpp" line="94"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyNewUIDDialog.cpp" line="90"/> <source>Please give a email address.</source> <translation>请提供一个电子邮件地址。</translation> </message> @@ -2607,167 +2782,158 @@ This will result in loss of all cached form positions, statuses, key servers, et <context> <name>GpgFrontend::UI::KeyPairDetailTab</name> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="49"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="45"/> <source>Owner</source> <translation>所有者</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="50"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="46"/> <source>Primary Key</source> <translation>主密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="51"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="47"/> <source>Fingerprint</source> <translation>指纹</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="52"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="48"/> <source>Additional UIDs</source> <translation>额外的 UID</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="80"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="75"/> <source>Name</source> <translation>名称</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="81"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="76"/> <source>Email Address</source> <translation>电子邮件地址</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="82"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="77"/> <source>Comment</source> <translation>注释</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="87"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="82"/> <source>Key ID</source> <translation>密钥编号</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="88"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="83"/> <source>Algorithm</source> <translation>算法</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="89"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="84"/> <source>Algorithm Detail</source> <translation>算法细节</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="90"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="85"/> <source>Key Size</source> <translation>密钥大小</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="91"/> - <source>Nominal Usage</source> - <translation>名义用途</translation> - </message> - <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="92"/> - <source>Actual Usage</source> - <translation>实际使用</translation> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="86"/> + <source>Usage</source> + <translation>用法</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="93"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="87"/> <source>Owner Trust Level</source> <translation>所有者信级别</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="94"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="88"/> <source>Create Date (Local Time)</source> <translation>创建日期(本地时间)</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="95"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="89"/> <source>Expires on (Local Time)</source> <translation>到期时间(本地时间)</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="96"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="90"/> <source>Last Update (Local Time)</source> <translation>上次更新(本地时间)</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="97"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="91"/> <source>Primary Key Existence</source> <translation>主密钥存在</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="112"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="138"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="105"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="131"/> <source>Copy</source> <translation>复制</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="140"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="133"/> <source>copy fingerprint to clipboard</source> <translation>将指纹复制到剪贴板</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="186"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="179"/> <source>Exists</source> <translation>存在</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="186"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="179"/> <source>Not Exists</source> <translation>不存在</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="219"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="231"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="212"/> <source>Certificate</source> <translation>证书</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="221"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="234"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="214"/> <source>Encrypt</source> <translation>加密</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="222"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="237"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="215"/> <source>Sign</source> <translation>签名</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="223"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="240"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="216"/> <source>Auth</source> <translation>认证</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="256"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="231"/> <source>Never Expire</source> <translation>永不过期</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="267"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="242"/> <source>No Data</source> <translation>没有数据</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="284"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="258"/> <source>Warning: The primary key has expired.</source> <translation>警告:主密钥已过期。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="287"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="261"/> <source>Warning: The primary key has been revoked.</source> <translation>警告:主密钥已被撤销。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="290"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="264"/> <source>Warning: The primary key is not exists.</source> <translation>警告: 主密钥不存在</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="344"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairDetailTab.cpp" line="318"/> <source>Notice: The public key has been published on keys.openpgp.org.</source> <translation>提示: 公钥已在 keys.openpgp.org 上公布。</translation> </message> @@ -2775,125 +2941,127 @@ This will result in loss of all cached form positions, statuses, key servers, et <context> <name>GpgFrontend::UI::KeyPairOperaTab</name> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="61"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="57"/> <source>General Operations</source> <translation>一般操作</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="67"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="63"/> <source>Export Public Key</source> <translation>导出公钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="73"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="69"/> <source>Export Private Key</source> <translation>导出私钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="80"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="76"/> <source>Modify Expiration Datetime (Primary Key)</source> <translation>修改到期日期时间(主密钥)</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="83"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="79"/> <source>Modify Password</source> <translation>修改密码</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="207"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="204"/> <source>Generate Revoke Certificate</source> <translation>生成吊销证书</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="124"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="120"/> <source>Modify TOFU Policy</source> <translation>修改TOFU策略</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="100"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="96"/> <source>Key Server Operations</source> <translation>密钥服务器操作</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="108"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="687"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="104"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="659"/> <source>Import A Paper Key</source> <translation>导入纸密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="118"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="114"/> <source>Revoke Certificate Operation</source> <translation>吊销证书操作</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="131"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="127"/> <source>Set Owner Trust Level</source> <translation>设置所有者信任级别</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="155"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="153"/> <source>Publish Public Key to Key Server</source> <translation>向密钥服务器发布公钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="163"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="161"/> <source>Refresh Public Key From Key Server</source> <translation>从密钥服务器刷新本地公钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="178"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="176"/> <source>Export Full Secret Key</source> <translation>导出完整私钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="184"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="182"/> <source>Export Shortest Secret Key</source> <translation>导出最短私钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="195"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="192"/> <source>Export Secret Key As A Paper Key</source> <translation>将私钥导出为纸密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="212"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="209"/> <source>Import Revoke Certificate</source> <translation>导入吊销证书</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="241"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="290"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="341"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="633"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="231"/> + <source>Unknown Error</source> + <translation>未知错误</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="232"/> + <source>Caught unknown error while exporting the key.</source> + <translation>在导出密钥的过程中发生错误。</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="259"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="605"/> <source>Export Key To File</source> <translation>将密钥导出到文件</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="242"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="291"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="342"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="634"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="260"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="606"/> <source>Key Files</source> <translation>密钥文件</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="247"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="296"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="347"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="657"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="266"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="629"/> <source>Export Error</source> <translation>导出错误</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="248"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="297"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="348"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="658"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="267"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="630"/> <source>Couldn't open %1 for writing</source> <translation>无法打开 %1 进行写入</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="390"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="361"/> <source>Failed to upload public key to the server. Fingerprint: %1 Error: %2</source> @@ -2902,12 +3070,12 @@ Error: %2</source> 错误信息:%2</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="422"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="393"/> <source>Public Key Upload Successful</source> <translation>公钥上传成功</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="423"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="394"/> <source>The public key was successfully uploaded to the key server keys.openpgp.org. Fingerprint: %1 @@ -2924,236 +3092,236 @@ Note: For verification, you can find more information here: https://keys.openpgp 注:关于邮件地址验证,您可以在此处找到更多信息: https://keys.openpgp.org/about</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="464"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="553"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="436"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="525"/> <source>Revocation Certificates</source> <translation>吊销证书</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="475"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="447"/> <source>Generate revocation certificate</source> <translation>生成撤吊销证书</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="502"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="511"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="474"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="483"/> <source>Policy Auto</source> <translation>策略:自动</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="502"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="513"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="474"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="485"/> <source>Policy Good</source> <translation>策略:正常</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="502"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="515"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="474"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="487"/> <source>Policy Bad</source> <translation>策略:异常</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="503"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="517"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="475"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="489"/> <source>Policy Ask</source> <translation>策略:询问</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="503"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="519"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="475"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="491"/> <source>Policy Unknown</source> <translation>策略:未知</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="507"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="479"/> <source>Modify TOFU Policy(Default is Auto)</source> <translation>修改TOFU策略(默认为自动)</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="508"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="480"/> <source>Policy for the Key Pair:</source> <translation>密钥对策略:</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="525"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="497"/> <source>Not Successful</source> <translation>失败</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="526"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="498"/> <source>Modify TOFU policy not successfully.</source> <translation>修改 TOFU 策略失败。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="540"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="552"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="512"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="524"/> <source>Import Key Revocation Certificate</source> <translation>导入密钥吊销证书</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="541"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="513"/> <source>You are about to import the</source> <translation>您将导入</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="542"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="514"/> <source>REVOCATION CERTIFICATE</source> <translation>吊销证书</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="543"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="515"/> <source>A successful import will result in the key being irreversibly revoked.</source> <translation>导入成功后,密钥将被不可逆转地吊销。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="545"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="517"/> <source>Do you REALLY want to execute this operation?</source> <translation>您真的想执行这个操作吗?</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="561"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="570"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="579"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="650"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="696"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="704"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="712"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="730"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="533"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="542"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="551"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="622"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="668"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="676"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="684"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="702"/> <source>Error</source> <translation>错误</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="562"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="580"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="697"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="713"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="534"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="552"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="669"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="685"/> <source>Cannot open this file. Please make sure that this is a regular file and it's readable.</source> <translation>无法打开此文件。请确保这是一个普通文件,并且有读取权限。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="571"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="543"/> <source>The target file is too large for a key revocation certificate.</source> <translation>目标文件对于一个密钥吊销证书来说太大了。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="651"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="623"/> <source>An error occurred trying to generate Paper Key.</source> <translation>尝试生成纸密钥时发生错误。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="731"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="703"/> <source>An error occurred trying to recover the Paper Key back to the private key.</source> <translation>用纸密钥恢复私钥时发生了错误。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="688"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="660"/> <source>Paper Key File</source> <translation>纸密钥文件</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="255"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="306"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="594"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="283"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="305"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="566"/> <source>WARNING: You are about to export your</source> <translation>警告: 您将导出您的</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="256"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="307"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="595"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="284"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="306"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="567"/> <source>PRIVATE KEY</source> <translation>私钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="257"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="596"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="285"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="568"/> <source>This is NOT your Public Key, so <b>DO NOT</b> share it with anyone.</source> <translation>这不是公钥,因此切勿与任何人共享。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="260"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="288"/> <source>You are exporting a <b>minimum size</b> private key, which removes all signatures except for the latest self-signatures.</source> <translation>您正在导出一个最小尺寸的私钥,它会删除除最新自签名外的所有包含的签名数据。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="262"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="290"/> <source>Do you <b>REALLY</b> want to proceed?</source> <translation>您真的想要继续吗?</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="264"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="292"/> <source>Exporting Short Private Key</source> <translation>导出短私钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="308"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="307"/> <source>This operation will export your <b>private key</b>, including both the main key and all subkeys, into an external file. This key is extremely sensitive, and anyone with access to it can impersonate you. DO NOT share this file with anyone!</source> <translation>此操作会将您的 <b>私人密钥</b>(包括主密钥和所有子密钥)导出到一个外部文件中。此密钥极其敏感,任何可以访问它的人都可以冒充你。切勿与任何人共享此文件!</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="314"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="606"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="313"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="578"/> <source>Are you <b>ABSOLUTELY SURE</b> you want to proceed?</source> <translation>您是否<b>绝对确定</b>要继续?</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="317"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="316"/> <source>Exporting Private Key</source> <translation>导出私钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="389"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="360"/> <source>Key Upload Failed</source> <translation>密钥上传失败</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="405"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="376"/> <source>The following email addresses have status: </source> <translation>以下电子邮件地址处于状态:</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="417"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="388"/> <source>Could not parse status information.</source> <translation>无法解析状态信息。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="456"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="428"/> <source>0 -> No Reason.</source> <translation>0 -> 无理由。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="456"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="428"/> <source>1 -> This key is no more safe.</source> <translation>1 -> 密钥不再安全。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="457"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="429"/> <source>2 -> Key is outdated.</source> <translation>2 -> 密钥已经过时。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="457"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="429"/> <source>3 -> Key is no longer used</source> <translation>3 -> 密钥不再被使用。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="599"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="571"/> <source>A <b>PaperKey</b> is a human-readable printout of your private key, which can be used to recover your key if you lose access to your digital copy. </source> <translation>PaperKey<b>/b> 是私人密钥的人工可读打印件,如果丢失了数字副本,可以用它来恢复密钥。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="603"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="575"/> <source>Keep this paper copy in a safe and secure place, such as a fireproof safe or a trusted vault.</source> <translation>将纸质副本保存在安全可靠的地方,如防火保险箱或可信的保险库。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="609"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="581"/> <source>Exporting Private Key as a PaperKey</source> <translation>将私人密钥导出为 PaperKey</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="705"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairOperaTab.cpp" line="677"/> <source>The target file is too large for a paper key keyring.</source> <translation>目标文件对于一个纸密钥文件来说太大了。</translation> </message> @@ -3161,323 +3329,313 @@ Note: For verification, you can find more information here: https://keys.openpgp <context> <name>GpgFrontend::UI::KeyPairSubkeyTab</name> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="60"/> - <source>Generate A New Subkey</source> - <translation>生成新的子密钥</translation> - </message> - <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="77"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="183"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="81"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="189"/> <source>Key ID</source> <translation>密钥编号</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="79"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="183"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="83"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="189"/> <source>Algorithm</source> <translation>算法</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="80"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="184"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="84"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="190"/> <source>Algorithm Detail</source> <translation>算法细节</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="82"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="183"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="86"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="189"/> <source>Key Size</source> <translation>密钥大小</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="83"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="87"/> <source>Usage</source> <translation>用法</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="85"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="89"/> <source>Expires On (Local Time)</source> <translation>到期时间(本地时间)</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="87"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="91"/> <source>Create Date (Local Time)</source> <translation>创建日期(本地时间)</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="88"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="92"/> <source>Existence</source> <translation>存在</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="90"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="94"/> <source>Key in Smart Card</source> <translation>在智能卡中</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="92"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="96"/> <source>Fingerprint</source> <translation>指纹</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="55"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="54"/> <source>List of the primary key and subkey(s)</source> <translation>主密钥和子密钥列表</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="56"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="55"/> <source>Detail of Selected Primary Key/Subkey</source> <translation>选中的主密钥/子密钥详情</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="78"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="183"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="59"/> + <source>New Subkey</source> + <translation>新子密钥</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="60"/> + <source>Add ADSK(s)</source> + <translation>添加ADSK</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="82"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="189"/> <source>Key Type</source> <translation>密钥类型</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="89"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="93"/> <source>Revoked</source> <translation>已吊销</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="124"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="351"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="128"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="370"/> <source>Export Subkey</source> <translation>导出子密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="184"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="190"/> <source>Create Date</source> <translation>创建时间</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="184"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="190"/> <source>Expire Date</source> <translation>到期日期</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="208"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="355"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="213"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="374"/> <source>Primary Key</source> <translation>主密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="209"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="356"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="213"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="375"/> <source>Subkey</source> <translation>子密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="232"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="214"/> + <source>ADSK</source> + <translation>ADSK</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="238"/> <source>Never Expire</source> <translation>永不过期</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="288"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="309"/> <source>Never Expires</source> <translation>永不过期</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="310"/> - <source>Certificate</source> - <translation>证书</translation> - </message> - <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="312"/> - <source>Encrypt</source> - <translation>加密</translation> - </message> - <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="313"/> - <source>Sign</source> - <translation>签名</translation> - </message> - <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="314"/> - <source>Auth</source> - <translation>认证</translation> - </message> - <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="319"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="333"/> <source>Exists</source> <translation>存在</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="320"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="334"/> <source>Not Exists</source> <translation>不存在</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="323"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="358"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="337"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="377"/> <source>Yes</source> <translation>是</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="323"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="358"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="337"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="377"/> <source>No</source> <translation>否</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="351"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="369"/> <source>Export Primary Key</source> <translation>导出主密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="372"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="391"/> <source>Edit Expire Date</source> <translation>编辑到期日期</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="376"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="395"/> <source>Export</source> <translation>导出</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="380"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="399"/> <source>Delete</source> <translation>删除</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="384"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="403"/> <source>Revoke</source> <translation>吊销</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="437"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="456"/> <source>Exporting Subkey</source> <translation>正在导出子密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="438"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="457"/> <source>You are about to export a private subkey.</source> - <translation>您将导出一个子密钥。</translation> + <translation>您即将导出一个子密钥的私有部分。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="439"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="458"/> <source>While subkeys are less critical than the primary key, they should still be handled with care.</source> <translation>虽然子密钥没有主密钥那么重要,但仍应小心处理。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="442"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="461"/> <source>Do you want to proceed with exporting this subkey?</source> <translation>是否要继续导出该子密钥?</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="469"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="488"/> <source>Export Key To File</source> <translation>将密钥导出到文件</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="470"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="489"/> <source>Key Files</source> <translation>密钥文件</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="475"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="494"/> <source>Export Error</source> <translation>导出错误</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="476"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="495"/> <source>Couldn't open %1 for writing</source> <translation>无法打开 %1 进行写入</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="485"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="503"/> <source><h3>You are about to delete the subkey:</h3><br /><b>KeyID:</b> %1<br /><br />This action is irreversible. Please confirm.</source> <translation><h3>您即将删除子密钥:</h3><br /><b>KeyID:</b> %1<br /><br />此操作不可逆。请确认。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="491"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="509"/> <source>Delete Subkey Confirmation</source> <translation>确认删除子密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="506"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="556"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="524"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="573"/> <source>Illegal Operation</source> <translation>非法的操作</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="507"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="525"/> <source>Cannot delete the primary key or an invalid subkey.</source> - <translation>无法删除主密钥或无效的子密钥。</translation> + <translation>无法删除主密钥或者不可用的子密钥。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="515"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="533"/> <source>Operation Failed</source> <translation>操作失败</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="516"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="534"/> <source>The selected subkey could not be deleted. Please check your permissions or try again.</source> <translation>所选子密钥无法删除。请检查权限或重试。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="522"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="540"/> <source>Operation Successful</source> <translation>操作成功</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="523"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="541"/> <source>The subkey with KeyID %1 has been successfully deleted.</source> <translation>密钥ID为 %1 的子密钥已成功删除。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="533"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="550"/> <source><h3>Revoke Subkey Confirmation</h3><br /><b>KeyID:</b> %1<br /><br />Revoking a subkey will make it permanently unusable. This action is <b>irreversible</b>.<br />Are you sure you want to revoke this subkey?</source> <translation><h3>子密钥吊销确认</h3><br /><b>KeyID:</b>%1<br /><br />吊销子密钥将使其永久不可用。此操作是 <b>不可逆的</b>。<br />您确定要撤销此子密钥吗?</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="540"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="557"/> <source>Revoke Subkey</source> <translation>吊销子密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="557"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="574"/> <source>Cannot revoke the primary key or an invalid subkey.</source> - <translation>不可吊销主密钥或者一个无效的子密钥</translation> + <translation>无法吊销主密钥或者无效的子密钥。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="562"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="579"/> <source>0 -> No Reason.</source> <translation>0 -> 无理由。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="562"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="579"/> <source>1 -> This key is no more safe.</source> <translation>1 -> 密钥不再安全。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="563"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="580"/> <source>2 -> Key is outdated.</source> <translation>2 -> 密钥已经过时。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="563"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="580"/> <source>3 -> Key is no longer used</source> <translation>3 -> 密钥不再被使用。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="574"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="591"/> <source>Revocation Failed</source> <translation>吊销失败</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="575"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="592"/> <source>Failed to revoke the subkey. Please try again.</source> - <translation>吊销失败。请重试。</translation> + <translation>吊销子密钥失败。请重试。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="578"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="595"/> <source>Revocation Successful</source> <translation>吊销成功</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="579"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairSubkeyTab.cpp" line="596"/> <source>The subkey has been successfully revoked.</source> <translation>子密钥成功吊销</translation> </message> @@ -3485,227 +3643,227 @@ Note: For verification, you can find more information here: https://keys.openpgp <context> <name>GpgFrontend::UI::KeyPairUIDTab</name> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="58"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="55"/> <source>New UID</source> <translation>新 UID</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="73"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="70"/> <source>UIDs</source> <translation>UID</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="78"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="75"/> <source>TOFU</source> <translation>TOFU</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="90"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="87"/> <source>Signature of Selected UID</source> <translation>所选 UID 的签名</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="143"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="166"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="140"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="163"/> <source>Name</source> <translation>名称</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="143"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="166"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="140"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="163"/> <source>Email</source> <translation>电子邮件</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="143"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="140"/> <source>Comment</source> <translation>注释</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="143"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="140"/> <source>Index</source> <translation>索引号</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="166"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="163"/> <source>Key ID</source> <translation>密钥编号</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="166"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="163"/> <source>Create Date</source> <translation>创建时间</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="167"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="164"/> <source>Expired Date</source> <translation>过期时间</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="250"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="246"/> <source>TOFU %1</source> <translation>TOFU %1</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="298"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="294"/> <source>Never Expires</source> <translation>永不过期</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="355"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="481"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="490"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="536"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="565"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="349"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="475"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="484"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="530"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="559"/> <source>Invalid Operation</source> <translation>无效操作</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="364"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="358"/> <source>Are you sure that you want to delete the following UID?</source> <translation>您确定要删除以下 UID 吗?</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="543"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="537"/> <source><h3>Revoke UID Confirmation</h3><br /><b>UID:</b> %1<br /><br />Revoking a UID will make it permanently unusable. This action is <b>irreversible</b>.<br />Are you sure you want to revoke this UID?</source> <translation><h3>撤销 UID 确认</h3><br /><b>UID:</b>%1<br /><br />撤销 UID 将使其永久不可用。此操作是<b>不可逆的</b>。<br />您确定要撤销此UID吗?</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="571"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="565"/> <source>0 -> No Reason.</source> <translation>0 -> 无理由。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="571"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="565"/> <source>4 -> User ID is no longer valid.</source> <translation>4 -> UID不再有效。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="582"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="576"/> <source>Revocation Failed</source> <translation>吊销失败</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="583"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="577"/> <source>Failed to revoke the UID. Please try again.</source> <translation>吊销UID失败。请重试。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="586"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="580"/> <source>Revocation Successful</source> <translation>吊销成功</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="587"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="581"/> <source>The UID has been successfully revoked.</source> <translation>UID成功被吊销</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="330"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="324"/> <source>Successful Operation</source> <translation>操作成功</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="331"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="325"/> <source>Successfully added a new UID.</source> <translation>成功添加了新的 UID。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="333"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="373"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="404"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="512"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="327"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="367"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="398"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="506"/> <source>Operation Failed</source> <translation>操作失败</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="334"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="405"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="513"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="328"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="399"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="507"/> <source>An error occurred during the operation.</source> <translation>操作过程中发生错误。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="356"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="566"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="350"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="560"/> <source>Cannot delete the Primary UID.</source> <translation>无法删除主要 UID。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="361"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="355"/> <source>Deleting UIDs</source> <translation>删除 UID</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="366"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="397"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="506"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="360"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="391"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="500"/> <source>The action can not be undone.</source> <translation>该操作无法撤消。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="374"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="368"/> <source>An error occurred during the delete %1 operation.</source> <translation>删除 %1 操作期间出错。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="394"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="388"/> <source>Set Primary UID</source> <translation>设置主要 UID</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="395"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="389"/> <source>Are you sure that you want to set the Primary UID to?</source> <translation>您确定要将主要 UID 设置为: </translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="425"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="419"/> <source>Set As Primary</source> <translation>设为主要</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="428"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="422"/> <source>Sign UID</source> <translation>签署 UID</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="431"/> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="550"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="425"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="544"/> <source>Revoke UID</source> <translation>吊销 UID</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="434"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="428"/> <source>Delete UID</source> <translation>删除 UID</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="537"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="531"/> <source>Please select one UID before doing this operation.</source> <translation>请在执行此操作前选择一个 UID。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="470"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="464"/> <source>Delete(Revoke) Key Signature</source> <translation>删除(撤销)密钥签名</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="482"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="476"/> <source>Please select one Key Signature before doing this operation.</source> <translation>请在执行此操作前选择一个密钥签名。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="491"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="485"/> <source>To delete the signature, you need to have its corresponding public key in the local database.</source> <translation>要删除签名,您需要在本地数据库中有其对应的公钥。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="501"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="495"/> <source>Deleting Key Signature</source> <translation>删除密钥签名</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="503"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyPairUIDTab.cpp" line="497"/> <source>Are you sure that you want to delete the following signature?</source> <translation>您确定要删除以下签名吗?</translation> </message> @@ -3713,139 +3871,139 @@ Note: For verification, you can find more information here: https://keys.openpgp <context> <name>GpgFrontend::UI::KeyServerImportDialog</name> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="56"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="54"/> <source>Close</source> <translation>关闭</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="59"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="57"/> <source>Import ALL</source> <translation>全部导入</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="63"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="61"/> <source>Search</source> <translation>搜索</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="68"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="66"/> <source>Search String</source> <translation>搜索字符串</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="68"/> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="72"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="66"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="70"/> <source>: </source> <translation>: </translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="72"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="70"/> <source>Key Server</source> <translation>密钥服务器</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="113"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="111"/> <source>Import Keys from key server</source> <translation>从密钥服务器导入密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="156"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="154"/> <source>UID</source> <translation>UID</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="156"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="154"/> <source>Creation date</source> <translation>创建日期</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="156"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="154"/> <source>KeyID</source> <translation>密钥 ID</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="156"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="154"/> <source>Tag</source> <translation>标签</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="179"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="177"/> <source>Text is empty.</source> <translation>文字为空。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="222"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="220"/> <source>Not Key Found</source> <translation>未找到密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="225"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="223"/> <source>Timeout</source> <translation>超时</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="228"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="226"/> <source>Key Server Not Found</source> <translation>未找到密钥服务器</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="231"/> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="232"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="229"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="230"/> <source>Connection Error</source> <translation>连接错误</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="241"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="239"/> <source>Too many responses from keyserver!</source> <translation>来自密钥服务器的响应太多!</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="253"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="251"/> <source>No keys found, input may be kexId, retrying search with 0x.</source> <translation>未找到密钥,输入可能是 kexId,正在使用 0x 重试。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="263"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="261"/> <source>No keys found containing the search string!</source> <translation>未找到包含搜索字符串的密钥!</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="270"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="268"/> <source>Insufficiently specific search string!</source> <translation>不够具体的搜索字符串!</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="305"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="303"/> <source>revoked</source> <translation>撤销</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="308"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="306"/> <source>disabled</source> <translation>被禁用</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="353"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="351"/> <source>%1 keys found. Double click a key to import it.</source> <translation>找到 %1 个密钥。双击一个密钥来导入它。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="374"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="372"/> <source>Warning</source> <translation>警告</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="375"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="373"/> <source>Please select one KeyPair before doing this operation.</source> <translation>请在执行此操作前选择一个钥对。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="421"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="419"/> <source>Key Imported</source> <translation>密钥导入成功</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="434"/> + <location filename="../../../../src/ui/dialog/import_export/KeyServerImportDialog.cpp" line="436"/> <source>Processing ...</source> <translation>处理中 ......</translation> </message> @@ -3853,27 +4011,27 @@ Note: For verification, you can find more information here: https://keys.openpgp <context> <name>GpgFrontend::UI::KeyServerImportTask</name> <message> - <location filename="../../../../src/ui/thread/KeyServerImportTask.cpp" line="81"/> + <location filename="../../../../src/ui/thread/KeyServerImportTask.cpp" line="79"/> <source>Key not found in the Keyserver.</source> <translation>密钥服务器中找不到密钥。</translation> </message> <message> - <location filename="../../../../src/ui/thread/KeyServerImportTask.cpp" line="84"/> + <location filename="../../../../src/ui/thread/KeyServerImportTask.cpp" line="82"/> <source>Network connection timeout.</source> <translation>网络连接错误。</translation> </message> <message> - <location filename="../../../../src/ui/thread/KeyServerImportTask.cpp" line="87"/> + <location filename="../../../../src/ui/thread/KeyServerImportTask.cpp" line="85"/> <source>Cannot resolve the address of target key server.</source> <translation>网络连接超时。</translation> </message> <message> - <location filename="../../../../src/ui/thread/KeyServerImportTask.cpp" line="90"/> + <location filename="../../../../src/ui/thread/KeyServerImportTask.cpp" line="88"/> <source>General connection error occurred.</source> <translation>出现一般连接错误。</translation> </message> <message> - <location filename="../../../../src/ui/thread/KeyServerImportTask.cpp" line="99"/> + <location filename="../../../../src/ui/thread/KeyServerImportTask.cpp" line="97"/> <source>Success</source> <translation>成功</translation> </message> @@ -3881,58 +4039,45 @@ Note: For verification, you can find more information here: https://keys.openpgp <context> <name>GpgFrontend::UI::KeySetExpireDateDialog</name> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeySetExpireDateDialog.cpp" line="80"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeySetExpireDateDialog.cpp" line="77"/> <source>Success</source> <translation>成功</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeySetExpireDateDialog.cpp" line="81"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeySetExpireDateDialog.cpp" line="78"/> <source>The expire date of the key pair has been updated.</source> <translation>密钥对的到期日期已更新。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeySetExpireDateDialog.cpp" line="90"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeySetExpireDateDialog.cpp" line="87"/> <source>Failure</source> <translation>失败</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeySetExpireDateDialog.cpp" line="91"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeySetExpireDateDialog.cpp" line="88"/> <source>Failed to update the expire date of the key pair.</source> <translation>无法更新密钥对的过期日期。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeySetExpireDateDialog.cpp" line="124"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeySetExpireDateDialog.cpp" line="121"/> <source>Modified Expiration Date (Local Time)</source> <translation>修改到期日期(本地时间)</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeySetExpireDateDialog.cpp" line="125"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeySetExpireDateDialog.cpp" line="122"/> <source>No Expiration</source> <translation>无有效期</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeySetExpireDateDialog.cpp" line="126"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeySetExpireDateDialog.cpp" line="123"/> <source>Modified Expiration Date</source> <translation>修改到期日</translation> </message> </context> <context> - <name>GpgFrontend::UI::KeyTable</name> - <message> - <location filename="../../../../src/ui/widgets/KeyTable.cpp" line="84"/> - <source>Error</source> - <translation>错误</translation> - </message> - <message> - <location filename="../../../../src/ui/widgets/KeyTable.cpp" line="84"/> - <source>Key Not Found.</source> - <translation>未找到密钥。</translation> - </message> -</context> -<context> <name>GpgFrontend::UI::KeyUIDSignDialog</name> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyUIDSignDialog.cpp" line="53"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyUIDSignDialog.cpp" line="52"/> <source>Signers</source> <translation>签名者</translation> </message> @@ -3947,22 +4092,22 @@ Note: For verification, you can find more information here: https://keys.openpgp <translation>为密钥的 UID 签名</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyUIDSignDialog.cpp" line="120"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyUIDSignDialog.cpp" line="118"/> <source>Unsuccessful Operation</source> <translation>不成功的操作</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyUIDSignDialog.cpp" line="121"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyUIDSignDialog.cpp" line="119"/> <source>Signature operation failed for UID %1</source> <translation>UID %1 的签名操作失败</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyUIDSignDialog.cpp" line="125"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyUIDSignDialog.cpp" line="123"/> <source>Operation Complete</source> <translation>操作完成</translation> </message> <message> - <location filename="../../../../src/ui/dialog/keypair_details/KeyUIDSignDialog.cpp" line="126"/> + <location filename="../../../../src/ui/dialog/keypair_details/KeyUIDSignDialog.cpp" line="124"/> <source>The signature operation of the UID is complete</source> <translation>UID的签名操作完成</translation> </message> @@ -3970,52 +4115,52 @@ Note: For verification, you can find more information here: https://keys.openpgp <context> <name>GpgFrontend::UI::KeyUploadDialog</name> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="65"/> + <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="62"/> <source>Uploading Public Key</source> <translation>上传公钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="83"/> + <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="80"/> <source>Error</source> <translation>错误</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="84"/> + <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="81"/> <source>Unknown error occurred</source> <translation>发生未知错误</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="154"/> + <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="151"/> <source>Key Not Found</source> <translation>未找到密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="157"/> + <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="154"/> <source>Timeout</source> <translation>超时</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="160"/> + <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="157"/> <source>Key Server Not Found</source> <translation>未找到密钥服务器</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="163"/> + <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="160"/> <source>Connection Error</source> <translation>连接错误</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="165"/> + <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="162"/> <source>Upload Failed</source> <translation>上传失败</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="169"/> + <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="166"/> <source>Upload Success</source> <translation>上传成功</translation> </message> <message> - <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="170"/> + <location filename="../../../../src/ui/dialog/import_export/KeyUploadDialog.cpp" line="167"/> <source>Upload Public Key Successfully</source> <translation>上传公钥成功</translation> </message> @@ -4152,62 +4297,62 @@ Note: For verification, you can find more information here: https://keys.openpgp <context> <name>GpgFrontend::UI::MainWindow</name> <message> - <location filename="../../../../src/ui/main_window/MainWindow.cpp" line="151"/> - <location filename="../../../../src/ui/main_window/MainWindow.cpp" line="154"/> + <location filename="../../../../src/ui/main_window/MainWindow.cpp" line="157"/> + <location filename="../../../../src/ui/main_window/MainWindow.cpp" line="160"/> <source>Critical error occur while loading GpgFrontend.</source> <translation>加载 GpgFrontend 时发生严重错误。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindow.cpp" line="153"/> + <location filename="../../../../src/ui/main_window/MainWindow.cpp" line="159"/> <source>Loading Failed</source> <translation>加载失败</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="106"/> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="143"/> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="522"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="101"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="138"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="517"/> <source>Error</source> <translation>错误</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="523"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="518"/> <source>Cannot read from file: %1</source> <translation>无法读取文件:%1</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="119"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="114"/> <source>The target file %1 already exists, do you need to overwrite it?</source> <translation>目标文件 %1 已经存在,是否需要覆盖?</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="122"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="117"/> <source>Warning</source> <translation>警告</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="50"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="48"/> <source>Symmetric Encryption</source> <translation>对称加密</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="51"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="49"/> <source>No Key Selected. Do you want to encrypt with a symmetric cipher using a passphrase?</source> <translation>未选择密钥。您想使用密码使用对称密码进行加密吗?</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="172"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="164"/> <source>Invalid KeyPair</source> <translation>无效的密钥对</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="60"/> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="261"/> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="448"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="58"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="255"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="443"/> <source>The selected keypair cannot be used for encryption.</source> <translation>所选的密钥对不能用于加密。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="107"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="102"/> <source>Cannot read from the following files: %1</source> @@ -4216,7 +4361,7 @@ Note: For verification, you can find more information here: https://keys.openpgp %1</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="144"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="139"/> <source>Cannot write to the following files: %1</source> @@ -4225,86 +4370,86 @@ Note: For verification, you can find more information here: https://keys.openpgp %1</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="174"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="166"/> <source>For example the Following Key:</source> <translation>例如以下密钥:</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="196"/> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="323"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="654"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="188"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="317"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="639"/> <source>Encrypting</source> <translation>加密</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="231"/> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="358"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="224"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="352"/> <source>Decrypting</source> <translation>解密</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="158"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="153"/> <source>No Key Checked</source> <translation>未勾选任何密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="159"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="154"/> <source>Please check the key in the key toolbox on the right.</source> <translation>请勾选右侧密钥工具箱中的密钥。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="208"/> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="369"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="201"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="364"/> <source>The selected key contains a key that does not actually have a sign usage.</source> <translation>所选密钥包含一个实际上没有符号用法的密钥。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="217"/> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="388"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="721"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="210"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="383"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="708"/> <source>Signing</source> <translation>签名</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="414"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="409"/> <source>File to be Verified</source> <translation>被验证的文件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="415"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="410"/> <source>Please provide An ABSOLUTE Path If Data And Signature is COMBINED within a single file, KEEP THIS EMPTY: </source> <translation>请提供绝对路径 如果确认数据和签名都在一个文件中,请置空: </translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="245"/> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="434"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="326"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="238"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="429"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="308"/> <source>Verifying</source> <translation>验证</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="271"/> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="478"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="804"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="265"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="473"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="792"/> <source>Encrypting and Signing</source> <translation>加密和签名</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="285"/> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="512"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="868"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="279"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="507"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="856"/> <source>Decrypting and Verifying</source> <translation>解密和验证</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="402"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="384"/> <source>Missing Keys</source> <translation>公钥缺失</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="403"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="385"/> <source>Some signatures cannot be verified because the corresponding keys are missing. The following fingerprints are missing: @@ -4319,236 +4464,236 @@ Would you like to fetch these keys from the key server?</source> 您想从密钥服务器获取这些公钥吗?</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="417"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="399"/> <source>Verification Incomplete</source> <translation>验证未完成</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="418"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="400"/> <source>Verification was incomplete due to missing keys. You can manually import the keys later.</source> <translation>由于缺少公钥,验证不完整。您可以稍后手动导入密钥。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="529"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="524"/> <source>EML File Too Large</source> <translation>EML文件过大</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="530"/> + <location filename="../../../../src/ui/main_window/MainWindowGpgOperaFunction.cpp" line="525"/> <source>The EML file "%1" is larger than 32MB and will not be opened.</source> <translation>由于EML 文件"%1"大于 32MB,将不会被打开。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="106"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="91"/> <source>Localize</source> <translation>本地化</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="109"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="94"/> <source>UTC</source> <translation>世界标准时间</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="120"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="105"/> <source>Local Time</source> <translation>当地时间</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="274"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="256"/> <source>This version(%1) may have been withdrawn by the developer due to serious problems. Please stop using this version immediately and download the latest stable version (%2) on the Github Releases Page.</source> <translation>该版本(%1) 可能因严重问题已被开发者撤回。请立即停止使用此版本,并从 Github 发布页面下载最新的稳定版本 (%2)。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="288"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="270"/> <source>This may be a BETA Version (Latest Stable Version: %1).</source> <translation>这可能是 BETA 版本(最新稳定版本:%1)。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="301"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="283"/> <source>Commit Hash Mismatch</source> <translation>代码提交哈希值不匹配</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="302"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="284"/> <source>The current version's commit hash does not match the official release. This may indicate a modified or unofficial build. For security reasons, please verify your installation or download the official release from the Github Releases Page.</source> <translation>当前版本的提交哈希值与正式版本不匹配。这可能表明该版本为修改版或非官方版本。出于安全考虑,请验证您的安装,或从 Github 发布页面下载正式版本。</translation> </message> <message> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="414"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="428"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="430"/> <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="432"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="446"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="448"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="450"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="595"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="612"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="614"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="616"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="898"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="914"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="917"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="920"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="577"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="594"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="596"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="598"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="886"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="902"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="905"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="908"/> <source>None</source> <translation>无</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="440"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="606"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="907"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="422"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="588"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="895"/> <source>From</source> <translation>发件人</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="441"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="443"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="607"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="609"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="908"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="911"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="423"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="425"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="589"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="591"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="896"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="899"/> <source>Unknown</source> <translation>未知</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="443"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="609"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="910"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="425"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="591"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="898"/> <source>To</source> <translation>收件人</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="445"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="611"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="913"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="427"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="593"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="901"/> <source>Subject</source> <translation>主题</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="448"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="614"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="916"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="430"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="596"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="904"/> <source>CC</source> <translation>抄送</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="450"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="616"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="919"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="432"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="598"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="907"/> <source>BCC</source> <translation>密送</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="451"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="617"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="922"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="433"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="599"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="910"/> <source>Date</source> <translation>日期</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="456"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="927"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="438"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="915"/> <source>Signed EML Data Hash (SHA1)</source> <translation>签名 EML 数据哈希值 (SHA1)</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="459"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="931"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="441"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="919"/> <source>Message Integrity Check Algorithm</source> <translation>信息完整性检查算法</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="517"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="499"/> <source>FAIL</source> <translation>失败</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="521"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="503"/> <source>OK</source> <translation>成功</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="524"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="506"/> <source>WARN</source> <translation>警告</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="535"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="517"/> <source>Summary Report</source> <translation>总结报告</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="536"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="518"/> <source>Total Operations: %1 </source> <translation>所有操作: %1 </translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="537"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="519"/> <source>Successful: %1 </source> <translation>成功: %1 </translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="538"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="520"/> <source>Warnings: %1 </source> <translation>警告: %1 </translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="539"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="521"/> <source>Failures: %1 </source> <translation>失败: %1 </translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="543"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="525"/> <source>Failed Objects: %1 </source> <translation>失败对象: %1 </translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="548"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="530"/> <source>Warning Objects: %1 </source> <translation>警告对象: %1 </translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="647"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="707"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="773"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="790"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="629"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="692"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="759"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="776"/> <source>No Key Selected</source> <translation>未选择任何密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="648"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="774"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="630"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="760"/> <source>Please select a key for encrypt the EML.</source> <translation>请选择加密邮件数据的密钥。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="708"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="791"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="693"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="777"/> <source>Please select a key for signing the EML.</source> <translation>请选择用于签署邮件的密钥。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="713"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="796"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="698"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="782"/> <source>Multiple Keys Selected</source> <translation>已选择多个密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="714"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="797"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="699"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="783"/> <source>Please select only one key to sign the EML.</source> <translation>请只选择一个密钥来签署邮件。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="976"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="964"/> <source># EML Data Error The provided EML data does not conform to RFC 3156 standards and cannot be processed. @@ -4579,7 +4724,7 @@ EML 是一种表示电子邮件信息的文件格式,通常包括标题、正� 更正 EML 数据后,再次尝试操作。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="1002"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="990"/> <source># Email Operation Error An error occurred during the email operation. The process could not be completed. @@ -4622,705 +4767,722 @@ If the issue persists, consider seeking technical support or consulting the docu 如果问题仍然存在,请考虑寻求技术支持或查阅文档。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="262"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="244"/> <source>GpgFrontend Upgradeable (New Version: %1).</source> <translation>GpgFrontend 可升级(新版本:%1)。</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="269"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="296"/> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="296"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="251"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="278"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="305"/> <source>Update</source> <translation>更新</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="273"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotFunction.cpp" line="255"/> <source>Withdrawn Version</source> <translation>被召回的版本</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="43"/> - <source>New</source> - <translation>新建</translation> - </message> - <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="43"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="44"/> <source>Open a new file</source> <translation>打开一个新文件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="47"/> - <source>Open...</source> - <translation>打开...</translation> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="44"/> + <source>New Text</source> + <translation>新文本</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="48"/> - <source>Open an existing file</source> - <translation>打开现有文件</translation> - </message> - <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="52"/> - <source>File Panel</source> - <translation>文件操作面板</translation> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="49"/> + <source>Open File</source> + <translation>打开文件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="53"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="50"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="56"/> <source>Open a file panel</source> <translation>打开一个文件操作面板</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="57"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="55"/> + <source>Open Directory</source> + <translation>打开目录</translation> + </message> + <message> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="60"/> <source>Save File</source> <translation>保存文件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="58"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="61"/> <source>Save the current File</source> <translation>保存当前文件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="62"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="65"/> <source>Save As</source> <translation>另存为</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="63"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="66"/> <source>Save the current File as...</source> <translation>将当前文件另存为...</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="66"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="69"/> <source>Print</source> <translation>打印</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="67"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="70"/> <source>Print Document</source> <translation>打印文件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="70"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="73"/> <source>Close</source> <translation>关闭</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="71"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="74"/> <source>Close file</source> <translation>关闭文件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="74"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="77"/> <source>Quit</source> <translation>退出</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="75"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="78"/> <source>Quit Program</source> <translation>退出程序</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="79"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="82"/> <source>Undo</source> <translation>撤消</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="80"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="83"/> <source>Undo Last Edit Action</source> <translation>撤消上次编辑操作</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="83"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="86"/> <source>Redo</source> <translation>重做</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="84"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="87"/> <source>Redo Last Edit Action</source> <translation>重做上次编辑操作</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="87"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="90"/> <source>Zoom In</source> <translation>放大</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="88"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="91"/> <source>Zoom in</source> <translation>放大</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="92"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="95"/> <source>Zoom Out</source> <translation>缩小</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="93"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="96"/> <source>Zoom out</source> <translation>缩小</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="97"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="100"/> <source>Paste</source> <translation>粘贴</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="98"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="101"/> <source>Paste Text From Clipboard</source> <translation>从剪贴板粘贴文本</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="102"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="105"/> <source>Cut</source> <translation>剪切</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="103"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="106"/> <source>Cut the current selection's contents to the clipboard</source> <translation>将当前选择的内容剪切到剪贴板</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="108"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="111"/> <source>Copy</source> <translation>复制</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="109"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="112"/> <source>Copy the current selection's contents to the clipboard</source> <translation>将当前选择的内容复制到剪贴板</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="113"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="116"/> <source>Quote</source> <translation>引用</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="114"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="117"/> <source>Quote whole text</source> <translation>引用全文</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="118"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="121"/> <source>Select All</source> <translation>全选</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="119"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="122"/> <source>Select the whole text</source> <translation>选择整个文本</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="123"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="126"/> <source>Find</source> <translation>查找</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="124"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="127"/> <source>Find a word</source> <translation>找一个词</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="128"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="131"/> <source>Remove spacing</source> <translation>删除间距</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="130"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="133"/> <source>Remove double linebreaks, e.g. in pasted text from Web Mailer</source> <translation>删除双换行符,例如在来自 Web Mailer 的粘贴文本中</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="135"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="138"/> <source>Settings</source> <translation>设置</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="136"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="139"/> <source>Open settings dialog</source> <translation>打开设置对话框</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="144"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="147"/> <source>Encrypt</source> <translation>加密</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="145"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="148"/> <source>Encrypt Message</source> <translation>加密消息</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="151"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="154"/> <source>Encrypt Sign</source> <translation>加密签名</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="152"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="155"/> <source>Encrypt and Sign Message</source> <translation>加密和签名消息</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="157"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="160"/> <source>Decrypt</source> <translation>解密</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="158"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="161"/> <source>Decrypt Message</source> <translation>解密消息</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="164"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="167"/> <source>Decrypt Verify</source> <translation>解密验证</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="165"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="168"/> <source>Decrypt and Verify Message</source> <translation>解密和验证消息</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="170"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="173"/> <source>Sign</source> <translation>签名</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="171"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="174"/> <source>Sign Message</source> <translation>签名留言</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="175"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="178"/> <source>Verify</source> <translation>验证</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="176"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="179"/> <source>Verify Message</source> <translation>验证消息</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="184"/> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="401"/> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="486"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="187"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="410"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="499"/> <source>File</source> <translation>文件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="186"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="189"/> <source>Import New Key From File</source> <translation>从文件导入新密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="193"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="196"/> <source>Clipboard</source> <translation>剪贴板</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="195"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="198"/> <source>Import New Key From Clipboard</source> <translation>从剪贴板导入新密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="207"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="210"/> <source>Keyserver</source> <translation>密钥服务器</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="209"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="212"/> <source>Import New Key From Keyserver</source> <translation>从密钥服务器导入新密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="217"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="220"/> <source>Editor</source> <translation>编辑器</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="218"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="221"/> <source>Import New Key From Editor</source> <translation>从编辑器导入新密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="223"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="226"/> <source>Manage Keys</source> <translation>管理密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="224"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="227"/> <source>Open Key Management</source> <translation>打开密钥管理器</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="229"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="232"/> <source>Clear Password Cache</source> <translation>清除密码缓存</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="230"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="233"/> <source>Clear Password Cache of GnuPG</source> <translation>清除 GnuPG 的密码缓存</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="458"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="262"/> + <source>Open Smart Card Controller</source> + <translation>打开智能卡控制器</translation> + </message> + <message> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="263"/> + <source>Open Smart Card Controller Dialog</source> + <translation>打开智能卡控制器窗口</translation> + </message> + <message> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="418"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="508"/> + <source>Workspace</source> + <translation>工作空间</translation> + </message> + <message> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="470"/> <source>Advanced</source> <translation>高级</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="594"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="507"/> + <source>Open Workspace...</source> + <translation>打开工作空间...</translation> + </message> + <message> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="620"/> <source>Status Panel</source> <translation>状态面板</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="310"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="324"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="339"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="317"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="331"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="346"/> <source>Successful Operation</source> <translation>操作成功</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="311"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="318"/> <source>Clear password cache successfully</source> <translation>清除密码缓存成功</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="313"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="328"/> - <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="343"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="320"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="335"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="350"/> <source>Failed Operation</source> <translation>操作失败</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="314"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="321"/> <source>Failed to clear password cache of GnuPG</source> <translation>无法清除 GnuPG 的密码缓存</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="235"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="238"/> <source>Reload All Components</source> <translation>重新加载所有组件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="236"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="239"/> <source>Reload All GnuPG's Components</source> <translation>重新加载所有 GnuPG 的组件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="325"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="332"/> <source>Reload all the GnuPG's components successfully</source> <translation>成功重新加载所有 GnuPG 组件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="329"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="336"/> <source>Failed to reload all or one of the GnuPG's component(s)</source> <translation>未能重新加载所有或其中一个 GnuPG 组件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="241"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="244"/> <source>Restart All Components</source> <translation>重新启动所有组件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="242"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="245"/> <source>Restart All GnuPG's Components</source> <translation>重新启动所有 GnuPG 的组件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="340"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="347"/> <source>Restart all the GnuPG's components successfully</source> <translation>成功重启所有 GnuPG 组件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="344"/> + <location filename="../../../../src/ui/main_window/MainWindowSlotUI.cpp" line="351"/> <source>Failed to restart all or one of the GnuPG's component(s)</source> <translation>无法重新启动所有或其中一个 GnuPG 组件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="247"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="250"/> <source>Open GnuPG Controller</source> <translation>打开 GnuPG 控制器</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="248"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="251"/> <source>Open GnuPG Controller Dialog</source> <translation>打开 GnuPG 控制器对话框</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="253"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="256"/> <source>Open Module Controller</source> <translation>打开模组管理器</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="254"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="257"/> <source>Open Module Controller Dialog</source> <translation>打开模组管理器窗口</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="263"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="272"/> <source>New E-Mail</source> <translation>新邮件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="264"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="273"/> <source>Create A New E-Mail Tab</source> <translation>新建一个邮件标签页</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="272"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="281"/> <source>About</source> <translation>关于</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="273"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="282"/> <source>Show the application's About box</source> <translation>显示应用程序的关于界面</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="279"/> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="282"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="288"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="291"/> <source>GnuPG</source> <translation>GnuPG</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="280"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="289"/> <source>Information about Gnupg</source> <translation>关于 Gnupg</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="286"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="295"/> <source>Translate</source> <translation>翻译</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="287"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="296"/> <source>Information about translation</source> <translation>翻译信息</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="289"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="298"/> <source>Translators</source> <translation>翻译贡献者</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="293"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="302"/> <source>Check for Updates</source> <translation>检查更新</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="294"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="303"/> <source>Check for updates</source> <translation>检查更新</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="300"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="309"/> <source>Open Wizard</source> <translation>打开向导</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="301"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="310"/> <source>Open the wizard</source> <translation>打开向导</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="306"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="315"/> <source>Append Public Key to Editor</source> <translation>将公钥附加到编辑器</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="307"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="316"/> <source>Append selected Keypair's Public Key to Editor</source> <translation>将选定的密钥对的公钥附加到编辑器</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="312"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="321"/> <source>Append Create DateTime to Editor</source> <translation>将创建日期时间附加到编辑器</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="313"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="322"/> <source>Append selected Key's creation date and time to Editor</source> <translation>将所选密钥的创建日期和时间附加到编辑器</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="318"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="327"/> <source>Append Expire DateTime to Editor</source> <translation>将过期日期时间附加到编辑器</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="319"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="328"/> <source>Append selected Key's expiration date and time to Editor</source> <translation>将所选密钥的到期日期和时间附加到编辑器</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="324"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="333"/> <source>Append Fingerprint to Editor</source> <translation>将指纹附加到编辑器</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="325"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="334"/> <source>Append selected Key's Fingerprint to Editor</source> <translation>将所选密钥的指纹附加到编辑器</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="330"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="339"/> <source>Copy Email</source> <translation>复制电子邮件</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="331"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="340"/> <source>Copy selected Keypair's to clipboard</source> <translation>将选定的密钥对复制到剪贴板</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="336"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="345"/> <source>Copy Default UID</source> <translation>复制默认 UID</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="337"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="346"/> <source>Copy selected Keypair's default UID to clipboard</source> <translation>将所选密钥对的默认 UID 复制到剪贴板</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="342"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="351"/> <source>Copy Key ID</source> <translation>复制密钥 ID</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="343"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="352"/> <source>Copy selected Keypair's ID to clipboard</source> <translation>将所选密钥对的 ID 复制到剪贴板</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="348"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="357"/> <source>Show Key Details</source> <translation>显示密钥细节</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="349"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="358"/> <source>Show Details for this Key</source> <translation>显示此密钥的详细信息</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="354"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="363"/> <source>Add To Favourite</source> <translation>添加到收藏夹</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="355"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="364"/> <source>Add this key to Favourite Table</source> <translation>将此键添加到收藏夹表</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="361"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="370"/> <source>Remove From Favourite</source> <translation>从收藏夹中删除</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="362"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="371"/> <source>Remove this key from Favourite Table</source> <translation>从收藏表中删除此键</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="369"/> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="370"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="378"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="379"/> <source>Set Owner Trust Level</source> <translation>设置所有者信任级别</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="389"/> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="390"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="398"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="399"/> <source>Remove PGP Header</source> <translation>删除 PGP 标头</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="394"/> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="395"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="403"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="404"/> <source>Add PGP Header</source> <translation>添加 PGP 标头</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="419"/> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="508"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="431"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="531"/> <source>Edit</source> <translation>编辑</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="439"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="451"/> <source>Crypt</source> <translation>加密</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="449"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="461"/> <source>Keys</source> <translation>密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="450"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="462"/> <source>Import Key</source> <translation>导入密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="466"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="479"/> <source>View</source> <translation>查看</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="468"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="481"/> <source>Help</source> <translation>帮助</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="498"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="521"/> <source>Operations</source> <translation>操作</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="503"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="526"/> <source>Key</source> <translation>密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="516"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="539"/> <source>Special Edit</source> <translation>特殊编辑操作</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="530"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="553"/> <source>Import key from...</source> <translation>从···导入密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="531"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="554"/> <source>Import key</source> <translation>导入密钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="547"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="570"/> <source>Ready</source> <translation>准备好</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="554"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="577"/> <source>Key ToolBox</source> <translation>密钥工具箱</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="562"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="585"/> <source>Default</source> <translation>默认</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="569"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="593"/> <source>Favourite</source> <translation>最喜欢的</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="576"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="600"/> <source>Only Public Key</source> <translation>只有公钥</translation> </message> <message> - <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="583"/> + <location filename="../../../../src/ui/main_window/MainWindowUI.cpp" line="608"/> <source>Has Private Key</source> <translation>有私钥</translation> </message> @@ -5648,52 +5810,52 @@ If the issue persists, consider seeking technical support or consulting the docu <context> <name>GpgFrontend::UI::SetOwnerTrustLevel</name> <message> - <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="50"/> - <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="67"/> + <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="43"/> + <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="60"/> <source>Undefined</source> <translation>未定义</translation> </message> <message> - <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="50"/> - <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="65"/> + <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="43"/> + <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="58"/> <source>Never</source> <translation>绝不信任</translation> </message> <message> - <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="50"/> - <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="63"/> + <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="43"/> + <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="56"/> <source>Marginal</source> <translation>有限信任</translation> </message> <message> - <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="50"/> - <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="61"/> + <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="43"/> + <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="54"/> <source>Full</source> <translation>完全信任</translation> </message> <message> - <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="51"/> - <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="59"/> + <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="44"/> + <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="52"/> <source>Ultimate</source> <translation>无限信任</translation> </message> <message> - <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="53"/> + <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="46"/> <source>Modify Owner Trust Level</source> <translation>修改所有者信任级别</translation> </message> <message> - <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="54"/> + <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="47"/> <source>Trust for the Key Pair:</source> <translation>对密钥对的信任:</translation> </message> <message> - <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="78"/> + <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="71"/> <source>Failed</source> <translation>失败</translation> </message> <message> - <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="79"/> + <location filename="../../../../src/ui/function/SetOwnerTrustLevel.cpp" line="72"/> <source>Modify Owner Trust Level failed.</source> <translation>修改所有者信任级别失败。</translation> </message> @@ -5701,37 +5863,37 @@ If the issue persists, consider seeking technical support or consulting the docu <context> <name>GpgFrontend::UI::SettingsDialog</name> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsDialog.cpp" line="53"/> + <location filename="../../../../src/ui/dialog/settings/SettingsDialog.cpp" line="52"/> <source>General</source> <translation>通用</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsDialog.cpp" line="54"/> + <location filename="../../../../src/ui/dialog/settings/SettingsDialog.cpp" line="53"/> <source>Appearance</source> <translation>显示</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsDialog.cpp" line="55"/> + <location filename="../../../../src/ui/dialog/settings/SettingsDialog.cpp" line="54"/> <source>Key Server</source> <translation>密钥服务器</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsDialog.cpp" line="56"/> + <location filename="../../../../src/ui/dialog/settings/SettingsDialog.cpp" line="55"/> <source>Network</source> <translation>网络</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsDialog.cpp" line="71"/> + <location filename="../../../../src/ui/dialog/settings/SettingsDialog.cpp" line="69"/> <source>Settings</source> <translation>设置</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsDialog.cpp" line="61"/> + <location filename="../../../../src/ui/dialog/settings/SettingsDialog.cpp" line="59"/> <source>Preference</source> <translation>偏好</translation> </message> <message> - <location filename="../../../../src/ui/dialog/settings/SettingsDialog.cpp" line="123"/> + <location filename="../../../../src/ui/dialog/settings/SettingsDialog.cpp" line="124"/> <source>System Default</source> <translation>系统默认</translation> </message> @@ -5739,42 +5901,503 @@ If the issue persists, consider seeking technical support or consulting the docu <context> <name>GpgFrontend::UI::SignersPicker</name> <message> - <location filename="../../../../src/ui/dialog/SignersPicker.cpp" line="38"/> + <location filename="../../../../src/ui/dialog/SignersPicker.cpp" line="37"/> <source>Confirm</source> <translation>确认</translation> </message> <message> - <location filename="../../../../src/ui/dialog/SignersPicker.cpp" line="39"/> + <location filename="../../../../src/ui/dialog/SignersPicker.cpp" line="38"/> <source>Cancel</source> <translation>取消</translation> </message> <message> - <location filename="../../../../src/ui/dialog/SignersPicker.cpp" line="53"/> + <location filename="../../../../src/ui/dialog/SignersPicker.cpp" line="52"/> <source>Signers</source> <translation>签名者</translation> </message> <message> - <location filename="../../../../src/ui/dialog/SignersPicker.cpp" line="58"/> + <location filename="../../../../src/ui/dialog/SignersPicker.cpp" line="57"/> <source>Select Signer(s)</source> <translation>选择签名者</translation> </message> <message> - <location filename="../../../../src/ui/dialog/SignersPicker.cpp" line="61"/> + <location filename="../../../../src/ui/dialog/SignersPicker.cpp" line="60"/> <source>Please select one or more private keys you use for signing.</source> <translation>请选择您用于签名的一个或多个私钥。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/SignersPicker.cpp" line="62"/> + <location filename="../../../../src/ui/dialog/SignersPicker.cpp" line="61"/> <source>If no key is selected, the default key will be used for signing.</source> <translation>如果未选择密钥,则将使用默认密钥进行签名。</translation> </message> <message> - <location filename="../../../../src/ui/dialog/SignersPicker.cpp" line="72"/> + <location filename="../../../../src/ui/dialog/SignersPicker.cpp" line="71"/> <source>Signers Picker</source> <translation>签署人选择界面</translation> </message> </context> <context> + <name>GpgFrontend::UI::SmartCardControllerDialog</name> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="48"/> + <source>Smart Card(s):</source> + <translation>智能卡: </translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="49"/> + <source>Key Stub(s) in Key Database(s):</source> + <translation>在密钥数据库中的密钥桩: </translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="51"/> + <source>Change Name</source> + <translation>修改姓名</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="52"/> + <source>Change Language</source> + <translation>修改语言</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="53"/> + <source>Change Gender</source> + <translation>修改性别</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="54"/> + <source>Change Login Data</source> + <translation>修改登录信息</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="55"/> + <source>Change Public Key URL</source> + <translation>修改公钥链接</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="56"/> + <source>Change PIN</source> + <translation>修改PIN</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="57"/> + <source>Change Admin PIN</source> + <translation>修改管理员PIN</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="58"/> + <source>Change Reset Code</source> + <translation>修改重置代码</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="59"/> + <source>Fetch</source> + <translation>同步密钥信息</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="60"/> + <source>Restart All Gpg-Agents</source> + <translation>重启所有Gpg-Agents</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="61"/> + <source>Generate Card Keys</source> + <translation>生成智能卡密钥</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="62"/> + <source>Refresh</source> + <translation>刷新</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="64"/> + <source>Operations</source> + <translation>操作</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="115"/> + <source>Successful Operation</source> + <translation>操作成功</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="116"/> + <source>Restart all the GnuPG's components successfully</source> + <translation>成功重启所有 GnuPG 组件</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="119"/> + <source>Failed Operation</source> + <translation>操作失败</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="120"/> + <source>Failed to restart all or one of the GnuPG's component(s)</source> + <translation>无法重新启动所有或其中一个 GnuPG 组件</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="133"/> + <source>Generate card key failed.</source> + <translation>生成智能卡密钥失败。</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="151"/> + <source>Smart Card Controller</source> + <translation>智能卡控制器</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="205"/> + <source>OpenPGP Card Information</source> + <translation>OpenPGP智能卡信息</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="207"/> + <source>Basic Information</source> + <translation>基本信息</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="208"/> + <source>Reader</source> + <translation>读卡器</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="209"/> + <source>Serial Number</source> + <translation>序列号</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="211"/> + <source>Card Type</source> + <translation>卡片类型</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="213"/> + <source>Card Version</source> + <translation>卡片版本</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="215"/> + <source>App Type</source> + <translation>应用类型</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="217"/> + <source>App Version</source> + <translation>应用版本</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="219"/> + <source>Manufacturer ID</source> + <translation>制造商ID</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="221"/> + <source>Manufacturer</source> + <translation>制造商</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="223"/> + <source>Card Holder</source> + <translation>持卡人</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="225"/> + <source>Language</source> + <translation>语言</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="227"/> + <source>Sex</source> + <translation>性别</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="232"/> + <source>Signature Counter</source> + <translation>签名计数器</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="234"/> + <source>CHV1 Cached</source> + <translation>已缓存普通PIN</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="236"/> + <source>CHV Max Length</source> + <translation>PIN最大长度</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="242"/> + <source>CHV Retry Left</source> + <translation>PIN剩余重试次数</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="248"/> + <source>KDF Status</source> + <translation>密钥派生函数状态</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="264"/> + <source>UIF</source> + <translation>用户交互标志</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="265"/> + <source>Sign</source> + <translation>签名</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="266"/> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="268"/> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="270"/> + <source>Enabled</source> + <translation>已启用</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="266"/> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="268"/> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="270"/> + <source>Disabled</source> + <translation>已禁用</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="267"/> + <source>Encrypt</source> + <translation>加密</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="269"/> + <source>Authenticate</source> + <translation>验证</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="317"/> + <source>Status Indicator</source> + <translation>状态指示器</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="477"/> + <source>Male</source> + <translation>男</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="477"/> + <source>Female</source> + <translation>女</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="481"/> + <source>Select sex to store in '%1'</source> + <translation>选择存储在 '%1' 中的性别</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="496"/> + <source>Enter new value for attribute '%1'</source> + <translation>请输入 '%1' 的新值</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="231"/> + <source>Status</source> + <translation>状态</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="251"/> + <source>Not enabled</source> + <translation>未启用</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="254"/> + <source>Enabled (no protection)</source> + <translation>启用 (无保护)</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="257"/> + <source>Enabled with salt protection</source> + <translation>启用并开启加盐保护</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="260"/> + <source>Unknown</source> + <translation>未知</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="274"/> + <source>Key Information</source> + <translation>密钥信息</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="278"/> + <source>No key information available.</source> + <translation>未发现可用密钥信息</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="281"/> + <source>No.</source> + <translation>序号</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="281"/> + <source>Fingerprint</source> + <translation>指纹</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="282"/> + <source>Created</source> + <translation>已生成</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="282"/> + <source>Grip</source> + <translation>Grip</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="283"/> + <source>Type</source> + <translation>类型</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="283"/> + <source>Algorithm</source> + <translation>算法</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="284"/> + <source>Usage</source> + <translation>用法</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="284"/> + <source>Curve</source> + <translation>密钥曲线</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="302"/> + <source>Extended Capabilities</source> + <translation>扩展能力</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="304"/> + <source>Key Info (ki): %1</source> + <translation>密钥信息 (ki): %1</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="304"/> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="308"/> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="312"/> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="315"/> + <source>Yes</source> + <translation>是</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="304"/> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="308"/> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="312"/> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="315"/> + <source>No</source> + <translation>否</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="307"/> + <source>Additional Auth (aac): %1</source> + <translation>额外验证 (aac): %1</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="311"/> + <source>Biometric Terminal (bt): %1</source> + <translation>生物终端: %1</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="315"/> + <source>KDF Supported: %1</source> + <translation>密钥派生函数支持: %1</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="322"/> + <source>Additional Info</source> + <translation>额外信息</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="369"/> + <source>No OpenPGP Smart Card Found</source> + <translation>未发现OpenPGP智能卡</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="370"/> + <source>No OpenPGP-compatible smart card has been detected.</source> + <translation>未检测到兼容 OpenPGP 的智能卡。</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="374"/> + <source>An OpenPGP Smart Card is a physical device that securely stores your private cryptographic keys and can be used for digital signing, encryption, and authentication. Popular examples include YubiKey, Nitrokey, and other GnuPG-compatible tokens.</source> + <translation>OpenPGP 智能卡是一种物理设备,可以安全地存储你的私人加密密钥,并可用于数字签名、加密和身份验证。流行的例子包括 YubiKey、Nitrokey 和其他 GnuPG 兼容令牌。</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="382"/> + <source>Make sure your card is inserted and properly recognized by the system. You can also try reconnecting the card or restarting the application.</source> + <translation>确保您的卡已插入并被系统正确识别。您也可以尝试重新连接卡或重启应用程序。</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="387"/> + <source>Read the GnuPG Smart Card HOWTO: </source> + <translation>阅读 GnuPG 智能卡帮助文档</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="480"/> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="495"/> + <source>Modify Card Attribute</source> + <translation>修改智能卡属性</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="511"/> + <source>Failed</source> + <translation>失败</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="512"/> + <source>Failed to set attribute '%1'. Reason: %2. </source> + <translation>修改属性 '%1' 失败。 原因: %2。</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="515"/> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="540"/> + <source>Success</source> + <translation>成功</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="516"/> + <source>Attribute operation completed successfully.</source> + <translation>属性操作成功完成。</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="527"/> + <source>Failed to change Admin PIN.</source> + <translation>修改管理员PIN失败。</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="529"/> + <source>Failed to set the Reset Code.</source> + <translation>修改重置代码失败。</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="531"/> + <source>Failed to change PIN.</source> + <translation>修改PIN失败。</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="534"/> + <source>Reason: </source> + <translation>原因: </translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="132"/> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="536"/> + <source>Error</source> + <translation>错误</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="541"/> + <source>PIN operation completed successfully.</source> + <translation>PIN操作成功完成。</translation> + </message> +</context> +<context> <name>GpgFrontend::UI::SubkeyGenerateDialog</name> <message> <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="82"/> @@ -5787,47 +6410,47 @@ If the issue persists, consider seeking technical support or consulting the docu <translation>生成新子密钥</translation> </message> <message> - <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="65"/> + <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="63"/> <source>Authentication</source> <translation>验证</translation> </message> <message> - <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="59"/> + <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="57"/> <source>Algorithm</source> <translation>算法</translation> </message> <message> - <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="60"/> + <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="58"/> <source>Key Length</source> <translation>密钥长度</translation> </message> <message> - <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="61"/> + <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="59"/> <source>Expire Date</source> <translation>到期日期</translation> </message> <message> - <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="62"/> + <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="60"/> <source>Usage</source> <translation>用法</translation> </message> <message> - <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="63"/> + <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="61"/> <source>Encrypt</source> <translation>加密</translation> </message> <message> - <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="64"/> + <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="62"/> <source>Sign</source> <translation>签名</translation> </message> <message> - <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="66"/> + <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="64"/> <source>Non Expired</source> <translation>不过期</translation> </message> <message> - <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="67"/> + <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="65"/> <source>No Passphrase</source> <translation>无密码</translation> </message> @@ -5844,7 +6467,7 @@ If the issue persists, consider seeking technical support or consulting the docu <message> <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="204"/> <source>Generating</source> - <translation>生成</translation> + <translation>生成中</translation> </message> <message> <location filename="../../../../src/ui/dialog/key_generate/SubkeyGenerateDialog.cpp" line="215"/> @@ -5903,96 +6526,97 @@ If the issue persists, consider seeking technical support or consulting the docu <context> <name>GpgFrontend::UI::TextEdit</name> <message> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="74"/> - <source>Open Directory</source> - <translation>打开目录</translation> - </message> - <message> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="183"/> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="197"/> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="449"/> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="486"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="193"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="207"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="459"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="496"/> <source>Warning</source> <translation>警告</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="184"/> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="198"/> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="450"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="194"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="208"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="460"/> <source>Cannot read file %1: %2.</source> <translation>无法读取文件 %1: %2。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="121"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="131"/> <source>Open file</source> <translation>打开文件</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="84"/> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="92"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="78"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="85"/> + <source>Open File</source> + <translation>打开文件</translation> + </message> + <message> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="94"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="102"/> <source>Error</source> <translation>错误</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="85"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="95"/> <source>Cannot open this file. Please make sure that this is a regular file and it's readable.</source> <translation>无法打开此文件。请确保这是一个普通文件,并且有读取权限。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="93"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="103"/> <source>Cannot open this file. The file is TOO LARGE (>1MB) for GpgFrontend Text Editor.</source> <translation>无法打开此文件。文件对于 GpgFrontend 文本编辑器来说过大(>1MB)。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="101"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="111"/> <source>File Open Error</source> <translation>打开文件失败</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="102"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="112"/> <source>The file "%1" could not be opened.</source> <translation>无法打开文件 "%1"。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="110"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="120"/> <source>Binary File Detected</source> <translation>检测到二进制文件</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="111"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="121"/> <source>The file "%1" appears to be a binary file and will not be opened.</source> <translation>文件"%1"似乎是二进制文件,无法打开。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="233"/> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="249"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="243"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="259"/> <source>Save file</source> <translation>保存存档</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="310"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="320"/> <source>Unsaved document</source> <translation>未保存的文件</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="311"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="321"/> <source>The document "%1" has been modified. Do you want to save your changes?</source> <translation>文档“%1”已被修改。是否要保存更改?</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="314"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="324"/> <source>Note:</source> <translation>笔记:</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="315"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="325"/> <source>If you don't save these files, all changes are lost.</source> <translation>如果您不保存这些文件,所有更改都将丢失。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="486"/> + <location filename="../../../../src/ui/widgets/TextEdit.cpp" line="496"/> <source>No document to print</source> <translation>没有要打印的文件</translation> </message> @@ -6000,66 +6624,71 @@ If the issue persists, consider seeking technical support or consulting the docu <context> <name>GpgFrontend::UI::TextEditTabWidget</name> <message> - <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="59"/> + <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="65"/> <source>File Too Large</source> <translation>文件太大</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="60"/> + <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="66"/> <source>The file "%1" is larger than 1MB and will not be opened.</source> <translation>文件"%1"大于 1MB,将无法打开。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="68"/> + <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="74"/> <source>File Open Error</source> <translation>打开文件失败</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="69"/> + <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="75"/> <source>The file "%1" could not be opened.</source> <translation>无法打开文件 "%1"。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="77"/> + <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="83"/> <source>Binary File Detected</source> <translation>检测到二进制文件</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="78"/> + <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="84"/> <source>The file "%1" appears to be a binary file and will not be opened.</source> <translation>文件"%1"似乎是二进制文件,无法打开。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="95"/> + <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="101"/> <source>Directory Permission Denied</source> <translation>目录权限不足</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="96"/> + <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="102"/> <source>You do not have permission to access the directory "%1".</source> <translation>您没有权限访问目录 "%1"。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="128"/> - <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="155"/> + <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="134"/> + <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="161"/> <source>Warning</source> <translation>警告</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="129"/> - <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="156"/> + <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="135"/> + <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="162"/> <source>Cannot read file %1: %2.</source> <translation>无法读取文件 %1: %2。</translation> </message> <message> - <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="251"/> - <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="265"/> - <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="281"/> + <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="259"/> + <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="274"/> + <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="291"/> <source>untitled</source> <translation>无标题</translation> </message> + <message> + <location filename="../../../../src/ui/widgets/TextEditTabWidget.cpp" line="319"/> + <source>Default Workspace</source> + <translation>默认工作空间</translation> + </message> </context> <context> <name>GpgFrontend::UI::TranslatorsTab</name> @@ -6072,33 +6701,33 @@ If the issue persists, consider seeking technical support or consulting the docu <context> <name>GpgFrontend::UI::VerifyDetailsDialog</name> <message> - <location filename="../../../../src/ui/dialog/details/VerifyDetailsDialog.cpp" line="42"/> + <location filename="../../../../src/ui/dialog/details/VerifyDetailsDialog.cpp" line="41"/> <source>Signatures Details</source> <translation>签名详情</translation> </message> <message> - <location filename="../../../../src/ui/dialog/details/VerifyDetailsDialog.cpp" line="65"/> + <location filename="../../../../src/ui/dialog/details/VerifyDetailsDialog.cpp" line="64"/> <source>No valid input found</source> <translation>找不到有效的输入</translation> </message> <message> - <location filename="../../../../src/ui/dialog/details/VerifyDetailsDialog.cpp" line="75"/> + <location filename="../../../../src/ui/dialog/details/VerifyDetailsDialog.cpp" line="74"/> <source>Error Validating signature</source> <translation>验证签名时出错</translation> </message> <message> - <location filename="../../../../src/ui/dialog/details/VerifyDetailsDialog.cpp" line="78"/> + <location filename="../../../../src/ui/dialog/details/VerifyDetailsDialog.cpp" line="77"/> <source>File was signed on %1</source> <translation>文件已在 %1 上签名</translation> </message> <message> - <location filename="../../../../src/ui/dialog/details/VerifyDetailsDialog.cpp" line="79"/> - <location filename="../../../../src/ui/dialog/details/VerifyDetailsDialog.cpp" line="83"/> + <location filename="../../../../src/ui/dialog/details/VerifyDetailsDialog.cpp" line="78"/> + <location filename="../../../../src/ui/dialog/details/VerifyDetailsDialog.cpp" line="82"/> <source>It Contains</source> <translation>它包含了</translation> </message> <message> - <location filename="../../../../src/ui/dialog/details/VerifyDetailsDialog.cpp" line="82"/> + <location filename="../../../../src/ui/dialog/details/VerifyDetailsDialog.cpp" line="81"/> <source>Signed on %1</source> <translation>已在 %1 上签名</translation> </message> @@ -6188,72 +6817,72 @@ If the issue persists, consider seeking technical support or consulting the docu <translation>未知错误 </translation> </message> <message> - <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="181"/> + <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="180"/> <source>Signer Name</source> <translation>签名者名称</translation> </message> <message> - <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="182"/> + <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="181"/> <source>Signer Email</source> <translation>签名者电子邮件</translation> </message> <message> - <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="183"/> + <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="182"/> <source>Key's Fingerprint</source> <translation>密钥的指纹</translation> </message> <message> - <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="184"/> + <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="183"/> <source>Valid</source> <translation>有效的</translation> </message> <message> - <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="185"/> + <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="184"/> <source>Flags</source> <translation>标志</translation> </message> <message> - <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="192"/> + <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="191"/> <source>Fully Valid</source> <translation>完全有效</translation> </message> <message> - <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="194"/> + <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="193"/> <source>NOT Fully Valid</source> <translation>不完全有效</translation> </message> <message> - <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="201"/> + <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="200"/> <source>Good</source> <translation>正常</translation> </message> <message> - <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="204"/> + <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="203"/> <source>Bad</source> <translation>异常</translation> </message> <message> - <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="207"/> + <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="206"/> <source>Expired</source> <translation>已到期</translation> </message> <message> - <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="210"/> + <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="209"/> <source>Missing Key</source> <translation>缺少密钥</translation> </message> <message> - <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="213"/> + <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="212"/> <source>Revoked Key</source> <translation>撤销密钥</translation> </message> <message> - <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="216"/> + <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="215"/> <source>Expired Key</source> <translation>过期密钥</translation> </message> <message> - <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="219"/> + <location filename="../../../../src/ui/widgets/VerifyKeyDetailBox.cpp" line="218"/> <source>Missing CRL</source> <translation>缺少 CRL</translation> </message> @@ -6269,37 +6898,161 @@ If the issue persists, consider seeking technical support or consulting the docu <context> <name>GpgKey</name> <message> - <location filename="../../../../src/core/model/GpgKey.cpp" line="89"/> + <location filename="../../../../src/core/model/GpgKey.cpp" line="70"/> <source>Unknown</source> <translation>未知</translation> </message> <message> - <location filename="../../../../src/core/model/GpgKey.cpp" line="91"/> + <location filename="../../../../src/core/model/GpgKey.cpp" line="72"/> <source>Undefined</source> <translation>不明确</translation> </message> <message> - <location filename="../../../../src/core/model/GpgKey.cpp" line="93"/> + <location filename="../../../../src/core/model/GpgKey.cpp" line="74"/> <source>Never</source> <translation>绝不</translation> </message> <message> - <location filename="../../../../src/core/model/GpgKey.cpp" line="95"/> + <location filename="../../../../src/core/model/GpgKey.cpp" line="76"/> <source>Marginal</source> <translation>边缘</translation> </message> <message> - <location filename="../../../../src/core/model/GpgKey.cpp" line="97"/> + <location filename="../../../../src/core/model/GpgKey.cpp" line="78"/> <source>Full</source> <translation>完全</translation> </message> <message> - <location filename="../../../../src/core/model/GpgKey.cpp" line="99"/> + <location filename="../../../../src/core/model/GpgKey.cpp" line="80"/> <source>Ultimate</source> <translation>终极</translation> </message> </context> <context> + <name>GpgKeyTableModel</name> + <message> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="43"/> + <source>Select</source> + <translation>选择</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="43"/> + <source>Type</source> + <translation>类型</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="43"/> + <source>Name</source> + <translation>名称</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="44"/> + <source>Email Address</source> + <translation>电子邮件地址</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="44"/> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="159"/> + <source>Usage</source> + <translation>用法</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="44"/> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="160"/> + <source>Trust</source> + <translation>信任</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="45"/> + <source>Key ID</source> + <translation>密钥ID</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="45"/> + <source>Create Date</source> + <translation>创建时间</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="45"/> + <source>Algorithm</source> + <translation>算法</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="46"/> + <source>Subkey(s)</source> + <translation>子密钥</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="46"/> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="161"/> + <source>Comment</source> + <translation>注释</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="157"/> + <source>ID</source> + <translation>ID</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="158"/> + <source>Algo</source> + <translation>算法</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="162"/> + <source>No Comment</source> + <translation>无备注</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="168"/> + <source>SubKeys (up to 8):</source> + <translation>子密钥 (前8个): </translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTableModel.cpp" line="174"/> + <source>ID: %1 | Algo: %2 | Usage: %3</source> + <translation>ID: %1 | 算法: %2 | 用法: %3</translation> + </message> +</context> +<context> + <name>GpgKeyTreeModel</name> + <message> + <location filename="../../../../src/core/model/GpgKeyTreeModel.cpp" line="41"/> + <source>Select</source> + <translation>选择</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTreeModel.cpp" line="42"/> + <source>Type</source> + <translation>类型</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTreeModel.cpp" line="43"/> + <source>Identity</source> + <translation>标识</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTreeModel.cpp" line="44"/> + <source>Key ID</source> + <translation>密钥ID</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTreeModel.cpp" line="45"/> + <source>Usage</source> + <translation>用法</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTreeModel.cpp" line="46"/> + <source>Algorithm</source> + <translation>算法</translation> + </message> + <message> + <location filename="../../../../src/core/model/GpgKeyTreeModel.cpp" line="47"/> + <source>Create Date</source> + <translation>创建时间</translation> + </message> +</context> +<context> <name>QCoreApplication</name> <message> <location filename="../../../../src/ui/GpgFrontendUIInit.cpp" line="58"/> @@ -6312,75 +7065,75 @@ If the issue persists, consider seeking technical support or consulting the docu <translation>如果此过程太慢,请在 gnupg 配置文件中适当设置密钥服务器地址(取决于您所在国家或地区的网络情况)。</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="64"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="65"/> <source>Public key not found locally</source> <translation>本地未找到公钥</translation> </message> <message> - <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="65"/> + <location filename="../../../../src/ui/UserInterfaceUtils.cpp" line="66"/> <source>There is no target public key content in local for GpgFrontend to gather enough information about this Signature. Do you want to import the public key from Keyserver now?</source> <translation>本地没有目标公钥内容供 GpgFrontend 收集有关此签名的足够信息。现在要从密钥服务器导入公钥吗?</translation> </message> <message> - <location filename="../../../../src/core/utils/IOUtils.cpp" line="89"/> + <location filename="../../../../src/core/utils/IOUtils.cpp" line="88"/> <source>File Hash Information</source> <translation>文件哈希信息</translation> </message> <message> - <location filename="../../../../src/core/utils/IOUtils.cpp" line="90"/> - <location filename="../../../../src/core/utils/IOUtils.cpp" line="122"/> + <location filename="../../../../src/core/utils/IOUtils.cpp" line="89"/> + <location filename="../../../../src/core/utils/IOUtils.cpp" line="121"/> <source>Filename</source> <translation>文件名</translation> </message> <message> - <location filename="../../../../src/core/utils/IOUtils.cpp" line="90"/> - <location filename="../../../../src/core/utils/IOUtils.cpp" line="95"/> - <location filename="../../../../src/core/utils/IOUtils.cpp" line="99"/> - <location filename="../../../../src/core/utils/IOUtils.cpp" line="103"/> - <location filename="../../../../src/core/utils/IOUtils.cpp" line="108"/> - <location filename="../../../../src/core/utils/IOUtils.cpp" line="113"/> - <location filename="../../../../src/core/utils/IOUtils.cpp" line="122"/> + <location filename="../../../../src/core/utils/IOUtils.cpp" line="89"/> + <location filename="../../../../src/core/utils/IOUtils.cpp" line="94"/> + <location filename="../../../../src/core/utils/IOUtils.cpp" line="98"/> + <location filename="../../../../src/core/utils/IOUtils.cpp" line="102"/> + <location filename="../../../../src/core/utils/IOUtils.cpp" line="107"/> + <location filename="../../../../src/core/utils/IOUtils.cpp" line="112"/> + <location filename="../../../../src/core/utils/IOUtils.cpp" line="121"/> <source>: </source> <translation>: </translation> </message> <message> - <location filename="../../../../src/core/utils/IOUtils.cpp" line="94"/> - <location filename="../../../../src/core/utils/IOUtils.cpp" line="98"/> + <location filename="../../../../src/core/utils/IOUtils.cpp" line="93"/> + <location filename="../../../../src/core/utils/IOUtils.cpp" line="97"/> <source>File Size</source> <translation>文件大小</translation> </message> <message> - <location filename="../../../../src/core/utils/IOUtils.cpp" line="120"/> + <location filename="../../../../src/core/utils/IOUtils.cpp" line="119"/> <source>Error: cannot read target file</source> <translation>错误:无法读取目标文件</translation> </message> <message> - <location filename="../../../../src/core/utils/IOUtils.cpp" line="153"/> + <location filename="../../../../src/core/utils/IOUtils.cpp" line="152"/> <source>target path doesn't exists</source> <translation>目标路径不存在</translation> </message> <message> - <location filename="../../../../src/core/utils/IOUtils.cpp" line="159"/> + <location filename="../../../../src/core/utils/IOUtils.cpp" line="158"/> <source>do NOT have permission to write path</source> <translation>缺少写入路径的权限</translation> </message> <message> - <location filename="../../../../src/core/utils/IOUtils.cpp" line="165"/> + <location filename="../../../../src/core/utils/IOUtils.cpp" line="164"/> <source>do NOT have permission to read/write file</source> <translation>缺少读写文件的权限</translation> </message> <message> - <location filename="../../../../src/core/utils/IOUtils.cpp" line="168"/> + <location filename="../../../../src/core/utils/IOUtils.cpp" line="167"/> <source>Success</source> <translation>成功</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="555"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="516"/> <source>Sync All Public Key</source> <translation>同步所有公钥</translation> </message> <message> - <location filename="../../../../src/ui/widgets/KeyList.cpp" line="556"/> + <location filename="../../../../src/ui/widgets/KeyList.cpp" line="517"/> <source>You have not checked any public keys that you want to synchronize, do you want to synchronize all local public keys from the key server?</source> <translation>您没有选中任何要同步的公钥,是否要从密钥服务器同步所有本地公钥?</translation> </message> @@ -6410,14 +7163,47 @@ If the issue persists, consider seeking technical support or consulting the docu <translation>GpgME 初始化失败</translation> </message> <message> - <location filename="../../../../src/core/GpgCoreInit.cpp" line="545"/> + <location filename="../../../../src/core/GpgCoreInit.cpp" line="544"/> <source>GpgME Default Context Initiation Failed</source> <translation>GpgME 默认上下文初始化失败</translation> </message> <message> - <location filename="../../../../src/core/GpgCoreInit.cpp" line="556"/> + <location filename="../../../../src/core/GpgCoreInit.cpp" line="555"/> <source>Gpg Default Key Database Initiation Failed</source> <translation>Gpg 默认密钥数据库初始化失败</translation> </message> </context> +<context> + <name>QObject</name> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="446"/> + <source>Cardholder's Surname</source> + <translation>持卡人的姓氏</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="447"/> + <source>Please enter your surname (e.g., Lee):</source> + <translation>请输入您的姓氏 (如: 李): </translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="452"/> + <source>Cardholder's Given Name</source> + <translation>持卡人的名字</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="453"/> + <source>Please enter your given name (e.g., Chris):</source> + <translation>请输入您的名字 (如: 四): </translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="462"/> + <source>Too Long</source> + <translation>太长</translation> + </message> + <message> + <location filename="../../../../src/ui/dialog/controller/SmartCardControllerDialog.cpp" line="463"/> + <source>Combined name too long (max 39 characters).</source> + <translation>姓名合并后太长 (最长39个字符)。</translation> + </message> +</context> </TS> |