From e0d83a397bc843a7bdc0c88c391f0f1efd862b52 Mon Sep 17 00:00:00 2001 From: Wang Hong Date: Wed, 13 Dec 2023 13:57:38 +0800 Subject: [PATCH 1/3] fix icon missing bug --- computes/templates/computes/list.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/computes/templates/computes/list.html b/computes/templates/computes/list.html index 1a59d50..3a5f171 100644 --- a/computes/templates/computes/list.html +++ b/computes/templates/computes/list.html @@ -16,7 +16,7 @@ {% if not computes %}
- {% bs_icon 'exclamation-triangle '%} {% trans "Warning" %}: {% trans "You don't have any computes" %} + {% bs_icon 'exclamation-triangle'%} {% trans "Warning" %}: {% trans "You don't have any computes" %}
{% else %} From c58d6f484d3b66831f470bb99024faddb874fc7e Mon Sep 17 00:00:00 2001 From: Wang Hong Date: Wed, 13 Dec 2023 14:00:02 +0800 Subject: [PATCH 2/3] Corrected untranslated items --- instances/forms.py | 20 ++++++++++--------- .../templates/instances/settings_tab.html | 18 ++++++++--------- webvirtcloud/settings.py.template | 5 +++-- 3 files changed, 23 insertions(+), 20 deletions(-) diff --git a/instances/forms.py b/instances/forms.py index a3ef884..58ed049 100644 --- a/instances/forms.py +++ b/instances/forms.py @@ -15,16 +15,17 @@ class FlavorForm(forms.ModelForm): class ConsoleForm(forms.Form): - type = forms.ChoiceField() - listen_on = forms.ChoiceField() - generate_password = forms.BooleanField(required=False) - clear_password = forms.BooleanField(required=False) + type = forms.ChoiceField(label=_("Type")) + listen_on = forms.ChoiceField(label=_("Listen on")) + generate_password = forms.BooleanField(label=_("Generate password"), required=False) + clear_password = forms.BooleanField(label=_("Clear password"), required=False) password = forms.CharField( + label=_("Password"), widget=forms.PasswordInput(render_value=True), required=False ) - clear_keymap = forms.BooleanField(required=False) - keymap = forms.ChoiceField(required=False) + clear_keymap = forms.BooleanField(label=_("Clear keymap"), required=False) + keymap = forms.ChoiceField(label=_("Keymap"), required=False) def __init__(self, *args, **kwargs): super(ConsoleForm, self).__init__(*args, **kwargs) @@ -32,12 +33,13 @@ class ConsoleForm(forms.Form): (c, c) for c in AppSettings.objects.get(key="QEMU_CONSOLE_DEFAULT_TYPE").choices_as_list() ) - keymap_choices = [("auto", "Auto")] + list((c, c) for c in QEMU_KEYMAPS) - self.fields["type"] = forms.ChoiceField(choices=type_choices) + keymap_choices = [("auto", _("Auto"))] + list((c, c) for c in QEMU_KEYMAPS) + self.fields["type"] = forms.ChoiceField(label=_("Type"), choices=type_choices) self.fields["listen_on"] = forms.ChoiceField( + label=_("Listen on"), choices=QEMU_CONSOLE_LISTENER_ADDRESSES ) - self.fields["keymap"] = forms.ChoiceField(choices=keymap_choices) + self.fields["keymap"] = forms.ChoiceField(label=_("Keymap"), choices=keymap_choices) class NewVMForm(forms.ModelForm): diff --git a/instances/templates/instances/settings_tab.html b/instances/templates/instances/settings_tab.html index 0ea78d4..5008a3d 100644 --- a/instances/templates/instances/settings_tab.html +++ b/instances/templates/instances/settings_tab.html @@ -265,15 +265,15 @@ data-trigger="focus" data-bs-toggle="popover" data-bs-html="true" - data-bs-content="Bus: {{ disk.bus }}
- Format: {{ disk.format }}
- Cache: {{ disk.cache }}
- Serial: {{ disk.serial }}
- Readonly: {{ disk.readonly }}
- Shareable: {{ disk.shareable }}
- IO Mode: {{ disk.io }}
- Discard: {{ disk.discard }}
- Detect Zeroes: {{ disk.detect_zeroes }}"> + data-bs-content="{% trans 'Bus' %}: {{ disk.bus }}
+ {% trans 'Format' %}: {{ disk.format }}
+ {% trans 'Cache' %}: {{ disk.cache }}
+ {% trans 'Serial' %}: {{ disk.serial }}
+ {% trans 'Readonly' %}: {{ disk.readonly }}
+ {% trans 'Shareable' %}: {{ disk.shareable }}
+ {% trans 'IO Mode' %}: {{ disk.io }}
+ {% trans 'Discard' %}: {{ disk.discard }}
+ {% trans 'Detect Zeroes' %}: {{ disk.detect_zeroes }}"> {% bs_icon 'info' %} {{ disk.dev }} diff --git a/webvirtcloud/settings.py.template b/webvirtcloud/settings.py.template index 560ea0f..de07701 100644 --- a/webvirtcloud/settings.py.template +++ b/webvirtcloud/settings.py.template @@ -6,6 +6,7 @@ Django settings for webvirtcloud project. import ldap import subprocess from django_auth_ldap.config import LDAPSearch, NestedActiveDirectoryGroupType +from django.utils.translation import gettext_lazy as _ from pathlib import Path # Build paths inside the project like this: BASE_DIR / 'subdir'. @@ -213,8 +214,8 @@ SOCKETIO_PUBLIC_PATH = "socket.io/" # List of console listen addresses QEMU_CONSOLE_LISTENER_ADDRESSES = ( - ("127.0.0.1", "Localhost"), - ("0.0.0.0", "All interfaces"), + ("127.0.0.1", _("Localhost")), + ("0.0.0.0", _("All interfaces")), ) # List taken from http://qemu.weilnetz.de/qemu-doc.html#sec_005finvocation From 462e5d8403acbb1e922161aefa61f44d4f0751c2 Mon Sep 17 00:00:00 2001 From: Wang Hong Date: Wed, 13 Dec 2023 14:03:00 +0800 Subject: [PATCH 3/3] update translation for zh --- locale/zh/LC_MESSAGES/django.mo | Bin 77151 -> 76102 bytes locale/zh/LC_MESSAGES/django.po | 2252 ++++++++++++++----------------- 2 files changed, 1034 insertions(+), 1218 deletions(-) diff --git a/locale/zh/LC_MESSAGES/django.mo b/locale/zh/LC_MESSAGES/django.mo index f526f081b911e5db482191b498b3f40f930f2849..a5902a075a7985b6c34a975f8d0c309a7d325890 100644 GIT binary patch literal 76102 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� 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 literal 77151 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 diff --git a/locale/zh/LC_MESSAGES/django.po b/locale/zh/LC_MESSAGES/django.po index 9262427..a035ccb 100644 --- a/locale/zh/LC_MESSAGES/django.po +++ b/locale/zh/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2023-08-16 07:18+0000\n" +"POT-Creation-Date: 2023-12-13 11:49+0800\n" "PO-Revision-Date: \n" "Last-Translator: \n" "Language-Team: \n" @@ -15,7 +15,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 2.3\n" +"X-Generator: Poedit 3.0.1\n" "Plural-Forms: nplurals=1; plural=0;\n" #: accounts/forms.py:25 @@ -62,7 +62,7 @@ msgstr "任何整数值,\"-1\" 为没有限制" #: accounts/models.py:51 msgid "max CPUs" -msgstr "最大CPU数" +msgstr "最大 CPU 数" #: accounts/models.py:57 msgid "max memory" @@ -82,7 +82,7 @@ msgstr "用户资料" #: accounts/templates/account.html:12 msgid "Email OTP QR code" -msgstr "电子邮件OTP QR 码" +msgstr "电子邮件 OTP 二维码" #: accounts/templates/account.html:16 msgid "Edit user" @@ -135,7 +135,7 @@ msgstr "调整配置" #: accounts/templates/account.html:47 accounts/templates/account.html:65 #: accounts/templates/profile.html:55 admin/templates/admin/group_list.html:43 -#: admin/templates/admin/user_list.html:65 +#: admin/templates/admin/user_list.html:67 #: computes/templates/computes/list.html:53 #: instances/templates/instances/settings_tab.html:325 #: instances/templates/instances/settings_tab.html:329 @@ -143,7 +143,7 @@ msgstr "调整配置" #: nwfilters/templates/nwfilter.html:104 nwfilters/templates/nwfilter.html:144 #: nwfilters/templates/nwfilters.html:119 storages/templates/storage.html:64 #: storages/templates/storage.html:176 templates/common/confirm_delete.html:23 -#: venv/lib/python3.8/site-packages/django/forms/formsets.py:417 +#: venv/lib/python3.8/site-packages/django/forms/formsets.py:499 #: virtsecrets/templates/secrets.html:79 msgid "Delete" msgstr "删除" @@ -190,7 +190,7 @@ msgstr "退出" #: instances/templates/instances/settings_tab.html:676 #: instances/templates/instances/settings_tab.html:853 #: instances/templates/instances/settings_tab.html:855 -#: venv/lib/python3.8/site-packages/django/forms/widgets.py:405 +#: venv/lib/python3.8/site-packages/django/forms/widgets.py:465 msgid "Change" msgstr "变更" @@ -201,11 +201,11 @@ msgid "" "Scan this QR code to get OTP for account '%(user)s'\n" msgstr "" "\n" -"扫描此QR码以获取该帐户 '%(user)s' 的OTP\n" +"扫描此二维码以获取该帐户 '%(user)s' 的 OTP\n" #: accounts/templates/accounts/email/otp.html:8 msgid "Some e-mail clients does not render SVG, also generating PNG." -msgstr "" +msgstr "一些电子邮件客户端不会渲染 SVG,却可以生成 PNG。" #: accounts/templates/accounts/email_otp_form.html:12 msgid "" @@ -214,65 +214,66 @@ msgid "" " " msgstr "" "\n" -" 输入电子邮件地址,将发送OTP QR 码。\n" +" 输入电子邮件地址,将发送 OTP 二维码。\n" " " #: accounts/templates/accounts/email_otp_form.html:27 msgid "Send" msgstr "发送" -#: accounts/templates/accounts/otp_login.html:6 accounts/templates/login.html:6 -#: accounts/templates/logout.html:4 +#: accounts/templates/accounts/otp_login.html:7 +#: accounts/templates/accounts/otp_login.html:16 +#: accounts/templates/login.html:7 accounts/templates/login.html:16 +#: accounts/templates/logout.html:6 accounts/templates/logout.html:11 +#: templates/navbar.html:7 msgid "WebVirtCloud" msgstr "私有云平台" -#: accounts/templates/accounts/otp_login.html:6 -#, fuzzy -#| msgid "Sign In" +#: accounts/templates/accounts/otp_login.html:7 msgid "Sign In with OTP" -msgstr "登录" +msgstr "使用 OTP 登录" -#: accounts/templates/accounts/otp_login.html:26 -#: accounts/templates/accounts/otp_login.html:33 -#: accounts/templates/login.html:6 accounts/templates/login.html:26 -#: accounts/templates/login.html:31 +#: accounts/templates/accounts/otp_login.html:27 +#: accounts/templates/accounts/otp_login.html:34 +#: accounts/templates/login.html:7 accounts/templates/login.html:27 +#: accounts/templates/login.html:32 msgid "Sign In" msgstr "登录" -#: accounts/templates/accounts/otp_login.html:30 +#: accounts/templates/accounts/otp_login.html:31 msgid "I do not have/lost my OTP!" -msgstr "我没有或失去了我的OTP!" +msgstr "我还没有/丢失 OTP!" -#: accounts/templates/accounts/otp_login.html:50 -#: accounts/templates/login.html:48 console/templates/console-vnc-lite.html:221 +#: accounts/templates/accounts/otp_login.html:51 +#: accounts/templates/login.html:49 console/templates/console-vnc-lite.html:221 msgid "Loading" msgstr "载入中" -#: accounts/templates/login.html:22 +#: accounts/templates/login.html:23 msgid "Incorrect username or password." msgstr "用户名或密码错误。" -#: accounts/templates/login.html:27 admin/templates/admin/logs.html:32 +#: accounts/templates/login.html:28 admin/templates/admin/logs.html:32 #: computes/templates/computes/instances.html:64 #: instances/templates/add_instance_owner_block.html:19 -#: instances/templates/allinstances_index_grouped.html:9 +#: instances/templates/allinstances_index_grouped.html:8 #: instances/templates/allinstances_index_nongrouped.html:7 #: instances/templates/instances/stats_tab.html:88 msgid "User" msgstr "用户" -#: accounts/templates/login.html:28 admin/forms.py:78 +#: accounts/templates/login.html:29 admin/forms.py:78 #: console/templates/console-spice-full.html:206 #: console/templates/console-spice-lite.html:58 -#: console/templates/console-spice-lite.html:99 +#: console/templates/console-spice-lite.html:99 instances/forms.py:24 msgid "Password" msgstr "密码" -#: accounts/templates/logout.html:4 +#: accounts/templates/logout.html:6 msgid "Sign Out" msgstr "登出" -#: accounts/templates/logout.html:13 +#: accounts/templates/logout.html:15 msgid "Successful log out" msgstr "已成功注销" @@ -288,7 +289,7 @@ msgstr "编辑个人资料" #: accounts/templates/profile.html:20 #: instances/templates/instances/access_tab.html:20 msgid "SSH Keys" -msgstr "SSH密钥" +msgstr "SSH 密钥" #: accounts/templates/profile.html:38 #: instances/templates/instances/settings_tab.html:720 @@ -298,7 +299,7 @@ msgstr "更新" #: accounts/templates/profile.html:68 msgid "Add SSH Key" -msgstr "添加SSH密钥" +msgstr "添加 SSH 密钥" #: accounts/templates/profile.html:76 #: instances/templates/add_instance_network_block.html:61 @@ -310,11 +311,11 @@ msgstr "添加" #: accounts/utils.py:49 msgid "OTP QR Code" -msgstr "OTP QR 码" +msgstr "OTP 二维码" #: accounts/utils.py:50 msgid "Please view HTML version of this message." -msgstr "请查看此消息的HTML版本内容。" +msgstr "请查看此消息的 HTML 版本内容。" #: accounts/views.py:40 msgid "Profile updated" @@ -322,19 +323,19 @@ msgstr "个人资料已更新" #: accounts/views.py:58 msgid "SSH key added" -msgstr "SSH密钥已添加" +msgstr "SSH 密钥已添加" #: accounts/views.py:66 msgid "Add SSH key" -msgstr "添加SSH密钥" +msgstr "添加 SSH 密钥" #: accounts/views.py:75 msgid "SSH key deleted" -msgstr "SSH密钥已删除" +msgstr "SSH 密钥已删除" #: accounts/views.py:83 msgid "Delete SSH key" -msgstr "删除SSH密钥" +msgstr "删除 SSH 密钥" #: accounts/views.py:115 msgid "Password Changed" @@ -351,20 +352,20 @@ msgstr "更新用户实例" #: accounts/views.py:190 #, python-format msgid "OTP Sent to %(email)s" -msgstr "OTP发送到 %(email)s" +msgstr "OTP 发送到 %(email)s" #: accounts/views.py:199 msgid "Email OTP" -msgstr "电子邮件OTP" +msgstr "电子邮件 OTP" #: accounts/views.py:211 #, python-format msgid "OTP QR code was emailed to user %(user)s" -msgstr "OTP QR 码已通过电子邮件发送给用户 %(user)s" +msgstr "OTP 二维码已通过电子邮件发送给用户 %(user)s" #: accounts/views.py:214 msgid "User email not set, failed to send QR code" -msgstr "未设置用户电子邮件,无法发送QR码" +msgstr "未设置用户电子邮件,无法发送二维码" #: admin/forms.py:49 msgid "Permissions" @@ -376,20 +377,14 @@ msgid "Groups" msgstr "用户组" #: admin/forms.py:81 -#, fuzzy -#| msgid "" -#| "Raw passwords are not stored, so there is no way to see\n" -#| " this user's password, but you can change the password " -#| "using this form." msgid "" "Raw passwords are not stored, so there is no way to see this user's " "password, \n" " but you can change the password using this " "form." msgstr "" -"原始密码未存储,因此无法查看\n" -" 该用户的密码,但是您可以使用 此表单更改" -"密码。" +"原始密码未存储,因此无法查看该用户的密码,\n" +" 但是您可以使用 此表单更改密码。" #: admin/templates/admin/group_list.html:5 admin/views.py:86 #: instances/templates/instances/settings_tab.html:69 templates/navbar.html:29 @@ -409,17 +404,17 @@ msgstr "警告" #: admin/templates/admin/group_list.html:20 msgid "You don't have any groups" -msgstr "您还没有任何用户组" +msgstr "您还没有用户组" #: admin/templates/admin/group_list.html:28 msgid "Group Name" msgstr "用户组名称" #: admin/templates/admin/group_list.html:29 -#: admin/templates/admin/user_list.html:36 +#: admin/templates/admin/user_list.html:37 #: computes/templates/computes/instances.html:68 #: computes/templates/computes/list.html:30 -#: instances/templates/allinstances_index_grouped.html:16 +#: instances/templates/allinstances_index_grouped.html:15 #: instances/templates/allinstances_index_nongrouped.html:15 #: instances/templates/instances/settings_tab.html:355 #: instances/templates/instances/settings_tab.html:525 @@ -429,7 +424,7 @@ msgid "Actions" msgstr "应用" #: admin/templates/admin/group_list.html:40 -#: admin/templates/admin/user_list.html:59 +#: admin/templates/admin/user_list.html:61 #: computes/templates/computes/list.html:52 networks/templates/network.html:83 #: nwfilters/templates/nwfilter.html:60 virtsecrets/templates/secrets.html:76 msgid "Edit" @@ -442,7 +437,7 @@ msgstr "日志" #: admin/templates/admin/logs.html:22 msgid "You don't have any Logs" -msgstr "您还没有任何日志" +msgstr "您还没有日志" #: admin/templates/admin/logs.html:31 #: instances/templates/instances/snapshots_tab.html:75 @@ -479,44 +474,48 @@ msgstr "用户名" #: admin/templates/admin/user_list.html:32 #: computes/templates/computes/instances.html:65 #: computes/templates/computes/list.html:28 -#: instances/templates/allinstances_index_grouped.html:10 +#: instances/templates/allinstances_index_grouped.html:9 #: instances/templates/allinstances_index_nongrouped.html:9 msgid "Status" msgstr "状态" #: admin/templates/admin/user_list.html:33 +msgid "Last Login" +msgstr "最近登陆" + +#: admin/templates/admin/user_list.html:34 msgid "Staff" msgstr "普通用户" -#: admin/templates/admin/user_list.html:34 +#: admin/templates/admin/user_list.html:35 msgid "Superuser" msgstr "超级用户" -#: admin/templates/admin/user_list.html:35 +#: admin/templates/admin/user_list.html:36 msgid "Can Clone" msgstr "可以克隆" -#: admin/templates/admin/user_list.html:48 +#: admin/templates/admin/user_list.html:49 #: computes/templates/computes/instances.html:91 -#: instances/templates/allinstances_index_grouped.html:66 +#: instances/templates/allinstances_index_grouped.html:65 #: instances/templates/allinstances_index_nongrouped.html:44 #: instances/templates/instance.html:20 msgid "Active" msgstr "激活" -#: admin/templates/admin/user_list.html:50 +#: admin/templates/admin/user_list.html:51 msgid "Blocked" msgstr "锁定" -#: admin/templates/admin/user_list.html:58 +#: admin/templates/admin/user_list.html:60 msgid "View Profile" msgstr "查看用户资料" -#: admin/templates/admin/user_list.html:61 +#: admin/templates/admin/user_list.html:63 msgid "Block" msgstr "锁定" -#: admin/templates/admin/user_list.html:63 +#: admin/templates/admin/user_list.html:65 msgid "Unblock" msgstr "解锁" @@ -555,7 +554,7 @@ msgstr "Bootstrap CSS & Bootswatch主题" #: appsettings/migrations/0002_auto_20200527_1603.py:12 msgid "Theme SASS Path" -msgstr "主题SASS路径" +msgstr "主题 SASS 路径" #: appsettings/migrations/0002_auto_20200527_1603.py:12 msgid "Bootstrap SASS & Bootswatch SASS Directory" @@ -611,11 +610,11 @@ msgstr "实例磁盘总线类型" #: appsettings/migrations/0002_auto_20200527_1603.py:19 msgid "Disk SCSI Controller" -msgstr "磁盘SCSI控制器" +msgstr "磁盘 SCSI 控制器" #: appsettings/migrations/0002_auto_20200527_1603.py:19 msgid "SCSI controller type" -msgstr "SCSI控制器类型" +msgstr "SCSI 控制器类型" #: appsettings/migrations/0002_auto_20200527_1603.py:20 msgid "Disk Cache" @@ -627,11 +626,11 @@ msgstr "磁盘卷缓存类型" #: appsettings/migrations/0002_auto_20200527_1603.py:21 msgid "Disk IO Type" -msgstr "磁盘IO类型" +msgstr "磁盘 IO 类型" #: appsettings/migrations/0002_auto_20200527_1603.py:21 msgid "Volume io modes" -msgstr "卷IO模式" +msgstr "卷 IO 模式" #: appsettings/migrations/0002_auto_20200527_1603.py:22 msgid "Disk Detect Zeroes" @@ -651,27 +650,29 @@ msgstr "卷删除模式" #: appsettings/migrations/0002_auto_20200527_1603.py:24 msgid "Disk Owner UID" -msgstr "磁盘所有者UID" +msgstr "磁盘所有者 UID" #: appsettings/migrations/0002_auto_20200527_1603.py:24 msgid "Owner UID: up to os, 0=root, 107=qemu or libvirt-bin(for ubuntu)" -msgstr "所有者UID: 参考系统中, 0=root,107=qemu 或 libvirt-bin (对于ubuntu)" +msgstr "" +"所有者 UID: 参考系统中, 0=root,107=qemu 或 libvirt-bin (对于 Ubuntu)" #: appsettings/migrations/0002_auto_20200527_1603.py:25 msgid "Disk Owner GID" -msgstr "磁盘所有者GID" +msgstr "磁盘所有者 GID" #: appsettings/migrations/0002_auto_20200527_1603.py:25 msgid "Owner GID: up to os, 0=root, 107=qemu or libvirt-bin(for ubuntu)" -msgstr "所有者GID: 参考系统中, 0=root,107=qemu 或 libvirt-bin (对于ubuntu)" +msgstr "" +"所有者 GID: 参考系统中, 0=root,107=qemu 或 libvirt-bin (对于 Ubuntu)" #: appsettings/migrations/0002_auto_20200527_1603.py:26 msgid "VM CPU Mode" -msgstr "实例CPU模式" +msgstr "实例 CPU 模式" #: appsettings/migrations/0002_auto_20200527_1603.py:26 msgid "Cpu modes" -msgstr "CPU模式" +msgstr "CPU 模式" #: appsettings/migrations/0002_auto_20200527_1603.py:27 msgid "VM Machine Type" @@ -691,7 +692,7 @@ msgstr "固件类型" #: appsettings/migrations/0002_auto_20200527_1603.py:29 msgid "VM Architecture Type" -msgstr "实例 体系结构 (架构) 类型" +msgstr "实例架构类型" #: appsettings/migrations/0002_auto_20200527_1603.py:29 msgid "Architecture type: x86_64, i686, etc" @@ -739,19 +740,19 @@ msgstr "底部导航栏用于显示实例详细信息" #: appsettings/migrations/0002_auto_20200527_1603.py:35 msgid "Show Access Root Pass" -msgstr "显示访问用户的Root密码" +msgstr "显示访问用户的 Root 密码" #: appsettings/migrations/0002_auto_20200527_1603.py:35 msgid "Show access root password" -msgstr "显示访问用户的Root密码" +msgstr "显示访问用户的 Root 密码" #: appsettings/migrations/0002_auto_20200527_1603.py:36 msgid "Show Access SSH Keys" -msgstr "显示访问用户的SSH密钥" +msgstr "显示访问用户的 SSH 密钥" #: appsettings/migrations/0002_auto_20200527_1603.py:36 msgid "Show access ssh keys" -msgstr "显示访问用户的SSH密钥" +msgstr "显示访问用户的 SSH 密钥" #: appsettings/migrations/0004_auto_20200716_0637.py:11 msgid "Console Scale" @@ -786,42 +787,44 @@ msgid "Clip console viewport" msgstr "控制台剪切板查看窗口" #: appsettings/migrations/0006_auto_20220630_0717.py:10 -#, fuzzy -#| msgid "Status" msgid "VM DRBD Status" -msgstr "状态" +msgstr "实例 DRBD 状态" #: appsettings/migrations/0006_auto_20220630_0717.py:10 msgid "Show VM DRBD Status" -msgstr "" +msgstr "显示实例 DRBD 状态" #: appsettings/migrations/0008_auto_20220905_1459.py:10 msgid "VM CD-ROM Device" -msgstr "" +msgstr "实例 CD-ROM 设备" #: appsettings/migrations/0008_auto_20220905_1459.py:10 msgid "Add or not cdrom device while instance creating" -msgstr "" +msgstr "创建实例时是否添加 CD-ROM 设备" #: appsettings/migrations/0008_auto_20220905_1459.py:11 -#, fuzzy -#| msgid "VM Machine Type" msgid "VM Video Type" -msgstr "实例机器类型" +msgstr "实例视频类型" #: appsettings/migrations/0008_auto_20220905_1459.py:11 -#, fuzzy -#| msgid "Change instance XML" msgid "Change instance default video type" -msgstr "更改实例XML" +msgstr "更改实例默认视频类型" #: appsettings/migrations/0008_auto_20220905_1459.py:12 msgid "VM Input Device" -msgstr "" +msgstr "实例输入设备" #: appsettings/migrations/0008_auto_20220905_1459.py:12 msgid "Add or not input device with specify its type" -msgstr "" +msgstr "是否添在加输入设备时指定其类型" + +#: appsettings/migrations/0010_auto_20231030_1305.py:10 +msgid "VM NIC Type" +msgstr "实例网卡类型" + +#: appsettings/migrations/0010_auto_20231030_1305.py:10 +msgid "Change instance default NIC type" +msgstr "更改实例默认网卡类型" #: appsettings/models.py:9 computes/models.py:11 instances/models.py:27 #: interfaces/models.py:8 networks/models.py:8 storages/models.py:8 @@ -860,7 +863,7 @@ msgstr "语言" #: appsettings/templates/appsettings.html:48 msgid "After change please full refresh page with 'Ctrl + F5' " -msgstr "更改后,请使用\"Ctrl+F5\"完整刷新页面 " +msgstr "更改后,请使用 \"Ctrl+F5\" 完整刷新页面 " #: appsettings/templates/appsettings.html:53 msgid "Other Settings" @@ -869,7 +872,7 @@ msgstr "其他设置" #: appsettings/views.py:40 #, python-format msgid "SASS directory path is changed. Now: %(dir)s" -msgstr "SASS目录路径已更改。现在是:%(dir)s" +msgstr "SASS 目录路径已更改。现在是:%(dir)s" #: appsettings/views.py:76 #, python-format @@ -877,10 +880,9 @@ msgid "Theme is changed. Now: %(theme)s" msgstr "主题已更改。现在是: %(theme)s" #: appsettings/views.py:91 -#, fuzzy, python-format -#| msgid "{setting.name} is changed. Now: {setting.value}" +#, python-format msgid "%(setting)s is changed. Now: %(value)s" -msgstr "%(setting)s 已改变。现在是: %(value)s" +msgstr "%(setting)s 已更改。现在是: %(value)s" #: computes/forms.py:21 msgid "FQDN/IP" @@ -960,7 +962,7 @@ msgstr "接口" #: nwfilters/templates/nwfilters.html:36 storages/templates/storage.html:36 #: storages/templates/storages.html:32 virtsecrets/templates/secrets.html:38 msgid "NWFilters" -msgstr "NWFilter规则" +msgstr "NWFilter 规则" #: computes/templates/computes/instances.html:45 #: computes/templates/overview.html:33 interfaces/templates/interface.html:32 @@ -982,7 +984,7 @@ msgstr "虚拟机监控程序没有检测到任何实例" #: computes/templates/computes/list.html:27 #: instances/templates/add_instance_volume.html:45 #: instances/templates/add_instance_volume.html:47 -#: instances/templates/allinstances_index_grouped.html:8 +#: instances/templates/allinstances_index_grouped.html:7 #: instances/templates/allinstances_index_nongrouped.html:5 #: instances/templates/create_inst_block.html:21 #: instances/templates/create_instance_w2.html:76 @@ -1014,7 +1016,7 @@ msgid "Name" msgstr "名称" #: computes/templates/computes/instances.html:63 -#: instances/templates/allinstances_index_grouped.html:8 +#: instances/templates/allinstances_index_grouped.html:7 #: instances/templates/allinstances_index_nongrouped.html:5 #: instances/templates/instances/settings_tab.html:811 #: instances/templates/instances/settings_tab.html:834 @@ -1022,7 +1024,7 @@ msgid "Description" msgstr "描述" #: computes/templates/computes/instances.html:66 -#: instances/templates/allinstances_index_grouped.html:14 +#: instances/templates/allinstances_index_grouped.html:13 #: instances/templates/allinstances_index_nongrouped.html:13 #: instances/templates/create_inst_block.html:22 #: instances/templates/create_instance_w2.html:77 @@ -1030,11 +1032,11 @@ msgstr "描述" #: instances/templates/create_instance_w2.html:607 #: instances/templates/instance.html:46 instances/templates/instance.html:48 msgid "VCPU" -msgstr "虚拟CPU" +msgstr "虚拟 CPU" #: computes/templates/computes/instances.html:67 #: computes/templates/overview.html:80 -#: instances/templates/allinstances_index_grouped.html:15 +#: instances/templates/allinstances_index_grouped.html:14 #: instances/templates/allinstances_index_nongrouped.html:14 #: instances/templates/create_inst_block.html:24 #: instances/templates/instances/resize_tab.html:12 @@ -1042,14 +1044,14 @@ msgid "Memory" msgstr "内存" #: computes/templates/computes/instances.html:94 -#: instances/templates/allinstances_index_grouped.html:67 +#: instances/templates/allinstances_index_grouped.html:66 #: instances/templates/allinstances_index_nongrouped.html:46 #: instances/templates/instance.html:17 msgid "Off" msgstr "关闭" #: computes/templates/computes/instances.html:97 -#: instances/templates/allinstances_index_grouped.html:69 +#: instances/templates/allinstances_index_grouped.html:68 #: instances/templates/allinstances_index_nongrouped.html:48 msgid "Suspended" msgstr "暂停" @@ -1071,7 +1073,7 @@ msgid "Details" msgstr "细节 (描述)" #: computes/templates/computes/list.html:40 -#: instances/templates/allinstances_index_grouped.html:32 +#: instances/templates/allinstances_index_grouped.html:31 #: instances/templates/instances/settings_tab.html:906 msgid "Connected" msgstr "已连接" @@ -1143,7 +1145,7 @@ msgstr "架构" #: computes/templates/overview.html:84 msgid "Logical CPUs" -msgstr "逻辑CPU" +msgstr "逻辑 CPU" #: computes/templates/overview.html:86 msgid "Processor" @@ -1160,7 +1162,7 @@ msgstr "性能" #: computes/templates/overview.html:100 msgid "CPU Utilization" -msgstr "CPU利用率" +msgstr "CPU 利用率" #: computes/templates/overview.html:109 msgid "RAM Utilization" @@ -1173,7 +1175,7 @@ msgstr "主机名必须仅包含数字,或以 \".\" 分隔的域名格式。" #: computes/validators.py:20 msgid "Wrong IP address" -msgstr "错误的IP地址" +msgstr "错误的 IP 地址" #: computes/validators.py:26 msgid "The hostname must not contain any special characters" @@ -1201,7 +1203,7 @@ msgstr "断开连接" #: console/templates/console-spice-full.html:114 #: console/templates/console-spice-lite.html:167 msgid "File API is not supported" -msgstr "文件API不支持" +msgstr "不支持文件 AP" #: console/templates/console-spice-full.html:204 msgid "Port" @@ -1225,14 +1227,12 @@ msgstr "必须在 URL 中指定主机和端口" #: console/templates/console-vnc-full.html:78 msgid "noVNC encountered an error" -msgstr "noVNC遇到错误" +msgstr "noVNC 遇到错误" #: console/views.py:61 -#, fuzzy -#| msgid "You do not have permission to access this page." msgid "" "User does not have permission to access console or host/instance not exist" -msgstr "您没有权限访问此页面" +msgstr "用户没有权限访问控制台或主机/实例不存在" #: console/views.py:106 msgid "Fail to get console. Please check the console configuration of your VM." @@ -1243,7 +1243,43 @@ msgstr "获取控制台失败。 请检查您虚拟机的控制台配置。" msgid "Console type '%(type)s' has not support" msgstr "不支持的 '%(type)s' 控制台类型" -#: instances/forms.py:76 +#: instances/forms.py:19 instances/forms.py:38 +#: interfaces/templates/create_iface_block.html:45 +#: interfaces/templates/interface.html:77 +#: interfaces/templates/interfaces.html:64 +#: storages/templates/create_stg_block.html:50 +#: storages/templates/create_stg_block.html:79 +#: storages/templates/create_stg_block.html:108 +#: storages/templates/create_stg_block.html:173 +#: storages/templates/storages.html:60 +msgid "Type" +msgstr "类型" + +#: instances/forms.py:20 instances/forms.py:40 +msgid "Listen on" +msgstr "监听" + +#: instances/forms.py:21 +msgid "Generate password" +msgstr "生成密码" + +#: instances/forms.py:22 +msgid "Clear password" +msgstr "清空密码" + +#: instances/forms.py:28 +msgid "Clear keymap" +msgstr "清空键盘映射" + +#: instances/forms.py:29 instances/forms.py:43 +msgid "Keymap" +msgstr "键盘映射" + +#: instances/forms.py:37 +msgid "Auto" +msgstr "自动" + +#: instances/forms.py:79 msgid "The name of the virtual machine must not contain any special characters" msgstr "虚拟机的名称不得包含任何特殊字符" @@ -1257,7 +1293,7 @@ msgstr "内存" #: instances/models.py:13 msgid "vcpu" -msgstr "虚拟CPU" +msgstr "虚拟 CPU" #: instances/models.py:14 msgid "disk" @@ -1277,43 +1313,35 @@ msgstr "已创建" #: instances/models.py:31 msgid "drbd" -msgstr "" +msgstr "分布式复制块设备" #: instances/models.py:221 msgid "Live" -msgstr "" +msgstr "实时" #: instances/models.py:222 -#, fuzzy -#| msgid "Edit XML" msgid "Undefine XML" -msgstr "编辑XML" +msgstr "未定义 XML" #: instances/models.py:223 msgid "Offline" -msgstr "" +msgstr "离线" #: instances/models.py:224 -#, fuzzy -#| msgid "Auto converge" msgid "Auto Converge" msgstr "自动收敛" #: instances/models.py:225 -#, fuzzy -#| msgid "Compressed" msgid "Compress" -msgstr "已压缩" +msgstr "压缩" #: instances/models.py:226 -#, fuzzy -#| msgid "Post copy" msgid "Post Copy" msgstr "发布副本" #: instances/models.py:227 msgid "Unsafe" -msgstr "" +msgstr "不安全" #: instances/models.py:239 msgid "No Virtual Machine name has been entered" @@ -1321,7 +1349,7 @@ msgstr "没有输入虚拟机的名称" #: instances/models.py:243 msgid "No VCPU has been entered" -msgstr "未设置 VCPU 数量" +msgstr "未设置虚拟 CPU 数量" #: instances/models.py:248 msgid "No RAM size has been entered" @@ -1362,7 +1390,7 @@ msgstr "添加实例网络" #: networks/templates/modify_ipv4_fixed_address.html:25 #: networks/templates/network.html:173 msgid "MAC" -msgstr "MAC地址" +msgstr "MAC 地址" #: instances/templates/add_instance_network_block.html:25 #: instances/templates/create_instance_w2.html:163 @@ -1392,7 +1420,7 @@ msgstr "NWFilter 过滤规则列表" #: instances/templates/create_instance_w2.html:651 #: instances/templates/create_instance_w2.html:670 #: instances/templates/create_instance_w2.html:719 -#: instances/templates/instances/access_tab.html:123 +#: instances/templates/instances/access_tab.html:122 #: instances/templates/instances/settings_tab.html:191 #: instances/templates/instances/settings_tab.html:434 #: instances/templates/instances/stats_tab.html:94 @@ -1408,10 +1436,8 @@ msgstr "空" #: instances/templates/create_instance_w2.html:199 #: instances/templates/create_instance_w2.html:475 #: instances/templates/create_instance_w2.html:727 -#, fuzzy -#| msgid "Type" msgid "NIC Type" -msgstr "类型" +msgstr "网卡类型" #: instances/templates/add_instance_network_block.html:60 #: instances/templates/add_instance_owner_block.html:31 @@ -1479,6 +1505,7 @@ msgid "Storage" msgstr "存储" #: instances/templates/add_instance_volume.html:51 +#: instances/templates/instances/settings_tab.html:269 #: storages/templates/create_stg_block.html:198 #: storages/templates/storage.html:101 storages/templates/storage.html:139 msgid "Format" @@ -1500,11 +1527,13 @@ msgstr "GB" #: instances/templates/instances/edit_instance_volume.html:90 #: instances/templates/instances/settings_tab.html:181 #: instances/templates/instances/settings_tab.html:220 +#: instances/templates/instances/settings_tab.html:268 msgid "Bus" msgstr "总线" #: instances/templates/add_instance_volume.html:78 #: instances/templates/add_instance_volume.html:138 +#: instances/templates/instances/settings_tab.html:270 msgid "Cache" msgstr "缓存" @@ -1526,14 +1555,12 @@ msgstr "卷" msgid "Problem occurred with host" msgstr "主机发生问题" -#: instances/templates/allinstances_index_grouped.html:12 +#: instances/templates/allinstances_index_grouped.html:11 #: instances/templates/allinstances_index_nongrouped.html:11 -#, fuzzy -#| msgid "Disk" msgid "Role/Disk" -msgstr "磁盘" +msgstr "角色/磁盘" -#: instances/templates/allinstances_index_grouped.html:16 +#: instances/templates/allinstances_index_grouped.html:15 #: instances/templates/create_inst_block.html:25 msgid "Mem Usage" msgstr "使用内存" @@ -1553,7 +1580,7 @@ msgstr "选择新实例的计算节点" #: instances/templates/create_inst_block.html:23 #: instances/templates/instances/stats_tab.html:23 msgid "CPU Usage" -msgstr "CPU使用率" +msgstr "CPU 使用率" #: instances/templates/create_inst_block.html:52 msgid "Choose" @@ -1629,7 +1656,7 @@ msgstr "选择一个规格来创建虚拟机" #: instances/templates/create_instance_w2.html:67 msgid "Hypervisor doesn't have any Flavors" -msgstr "虚拟机监控程序还没有任何的实例规格定义" +msgstr "虚拟机管理程序没有任何的实例规格定义" #: instances/templates/create_instance_w2.html:78 #: instances/templates/create_instance_w2.html:387 @@ -1666,7 +1693,7 @@ msgstr "固件" #: instances/templates/create_instance_w2.html:365 #: instances/templates/create_instance_w2.html:613 msgid "VCPU Config" -msgstr "VCPU 配置" +msgstr "虚拟 CPU 配置" #: instances/templates/create_instance_w2.html:129 #: instances/templates/create_instance_w2.html:368 @@ -1716,10 +1743,8 @@ msgstr "控制台密码" #: instances/templates/create_instance_w2.html:262 #: instances/templates/create_instance_w2.html:527 #: instances/templates/create_instance_w2.html:779 -#, fuzzy -#| msgid "Add CD-ROM" msgid "Add CD-Rom" -msgstr "添加CD-ROM" +msgstr "添加 CD-ROM" #: instances/templates/create_instance_w2.html:265 #: instances/templates/create_instance_w2.html:278 @@ -1728,15 +1753,13 @@ msgstr "添加CD-ROM" #: instances/templates/create_instance_w2.html:782 #: instances/templates/create_instance_w2.html:795 msgid "False" -msgstr "" +msgstr "否" #: instances/templates/create_instance_w2.html:275 #: instances/templates/create_instance_w2.html:540 #: instances/templates/create_instance_w2.html:792 -#, fuzzy -#| msgid "Add a network device" msgid "Add Input Device" -msgstr "添加一个网络设备" +msgstr "添加输入设备" #: instances/templates/create_instance_w2.html:288 #: instances/templates/create_instance_w2.html:553 @@ -1790,7 +1813,7 @@ msgstr "预分配元数据" #: instances/templates/create_instance_w2.html:450 #: instances/templates/create_instance_w2.html:702 -#: venv/lib/python3.8/site-packages/django/db/models/fields/files.py:375 +#: venv/lib/python3.8/site-packages/django/db/models/fields/files.py:393 msgid "Image" msgstr "镜像" @@ -1803,10 +1826,8 @@ msgid "Template Disk" msgstr "模板磁盘" #: instances/templates/create_instance_w2.html:676 -#, fuzzy -#| msgid "Network" msgid "Network/MAC" -msgstr "网络/MAC地址" +msgstr "网络/MAC 地址" #: instances/templates/instance.html:23 #: instances/templates/instance_actions.html:14 @@ -1836,8 +1857,6 @@ msgid "Disk" msgstr "磁盘" #: instances/templates/instance.html:62 -#, fuzzy -#| msgid "Remove Instance's data" msgid "Show Instance OS details" msgstr "显示实例操作系统详细信息" @@ -1911,7 +1930,7 @@ msgstr "电源重置" #: instances/templates/instance_actions.html:17 #: instances/templates/instance_actions.html:30 msgid "VNC Console" -msgstr "VNC控制台" +msgstr "VNC 控制台" #: instances/templates/instance_actions.html:22 #: instances/templates/instances/power_tab.html:33 @@ -1931,9 +1950,9 @@ msgstr "强制关闭" #: instances/templates/instance_actions.html:41 #: instances/templates/instances/access_tab.html:7 #: instances/templates/instances/access_tab.html:67 -#: instances/templates/instances/access_tab.html:75 -#: instances/templates/instances/access_tab.html:78 -#: instances/templates/instances/access_tab.html:82 +#: instances/templates/instances/access_tab.html:74 +#: instances/templates/instances/access_tab.html:77 +#: instances/templates/instances/access_tab.html:81 #: instances/templates/instances/settings_tab.html:29 msgid "Console" msgstr "控制台" @@ -1943,7 +1962,7 @@ msgid "Root Password" msgstr "Root 密码" #: instances/templates/instances/access_tab.html:27 -#: instances/templates/instances/access_tab.html:143 +#: instances/templates/instances/access_tab.html:142 msgid "VDI" msgstr "VDI" @@ -1970,58 +1989,54 @@ msgstr "调整会话大小" msgid "View Clipboard" msgstr "查看剪切板" -#: instances/templates/instances/access_tab.html:70 -msgid "Toggle Dropdown" -msgstr "下拉切换" - -#: instances/templates/instances/access_tab.html:74 -#: instances/templates/instances/access_tab.html:77 +#: instances/templates/instances/access_tab.html:73 +#: instances/templates/instances/access_tab.html:76 msgid "Console port" msgstr "控制台端口" -#: instances/templates/instances/access_tab.html:75 +#: instances/templates/instances/access_tab.html:74 msgid "Lite" msgstr "标准" -#: instances/templates/instances/access_tab.html:78 +#: instances/templates/instances/access_tab.html:77 msgid "Full" msgstr "全功能" -#: instances/templates/instances/access_tab.html:88 +#: instances/templates/instances/access_tab.html:87 msgid "You need shut down your instance and enter a new root password." -msgstr "您需要关闭您的实例并输入新的root密码。" +msgstr "您需要关闭您的实例并输入新的 Root 密码。" -#: instances/templates/instances/access_tab.html:95 +#: instances/templates/instances/access_tab.html:94 msgid "Enter Password" msgstr "输入密码" -#: instances/templates/instances/access_tab.html:100 -#: instances/templates/instances/access_tab.html:103 +#: instances/templates/instances/access_tab.html:99 +#: instances/templates/instances/access_tab.html:102 msgid "Reset Root Password" msgstr "重置Root密码" -#: instances/templates/instances/access_tab.html:111 +#: instances/templates/instances/access_tab.html:110 msgid "You need shut down your instance and choose your public key." msgstr "您需要关闭您的实例并选择您的公钥。" -#: instances/templates/instances/access_tab.html:130 -#: instances/templates/instances/access_tab.html:132 +#: instances/templates/instances/access_tab.html:129 +#: instances/templates/instances/access_tab.html:131 msgid "Add Public Key" msgstr "添加公钥" -#: instances/templates/instances/access_tab.html:140 +#: instances/templates/instances/access_tab.html:139 msgid "" "This action opens a remote viewer with a connection to the console of the " "instance." msgstr "该操作将打开一个远程查看器来连接到实例控制台。" -#: instances/templates/instances/access_tab.html:145 +#: instances/templates/instances/access_tab.html:144 msgid "To download console.vv file for virt-viewer." -msgstr "为virt-viewer下载console.vv文件。" +msgstr "为 virt-viewer 下载 console.vv 文件。" -#: instances/templates/instances/access_tab.html:146 +#: instances/templates/instances/access_tab.html:145 msgid "Get console.vv" -msgstr "获取console.vv" +msgstr "获取 console.vv" #: instances/templates/instances/destroy_instance_form.html:4 msgid "Confirm Destroy" @@ -2045,7 +2060,7 @@ msgstr "删除实例数据" #: instances/templates/instances/destroy_instance_form.html:30 msgid "Remove Instance's NVRAM" -msgstr "删除实例NVRAM数据" +msgstr "删除实例 NVRAM 数据" #: instances/templates/instances/destroy_instance_form.html:41 msgid "You cannot destroy instance!" @@ -2076,10 +2091,12 @@ msgid "Volume Path" msgstr "卷路径" #: instances/templates/instances/edit_instance_volume.html:43 +#: instances/templates/instances/settings_tab.html:272 msgid "Readonly" msgstr "只读" #: instances/templates/instances/edit_instance_volume.html:47 +#: instances/templates/instances/settings_tab.html:273 msgid "Shareable" msgstr "可共享" @@ -2089,7 +2106,7 @@ msgstr "缓存模式" #: instances/templates/instances/edit_instance_volume.html:62 msgid "IO mode" -msgstr "IO模式" +msgstr "IO 模式" #: instances/templates/instances/edit_instance_volume.html:70 msgid "Discard mode" @@ -2108,20 +2125,14 @@ msgid "Storage Format" msgstr "储存格式" #: instances/templates/instances/edit_instance_volume.html:112 -#, fuzzy -#| msgid "Are you sure to detach volume?" msgid "Are you sure to change volume properties?" msgstr "您确定要更改存储卷属性吗?" #: instances/templates/instances/info_tab.html:3 -#, fuzzy -#| msgid "Guest Agent" msgid "Guest Info" msgstr "客户机信息" #: instances/templates/instances/info_tab.html:7 -#, fuzzy -#| msgid "Name" msgid "OS Name" msgstr "系统名称" @@ -2134,8 +2145,6 @@ msgid "Kernel Release" msgstr "发布的内核" #: instances/templates/instances/info_tab.html:15 -#, fuzzy -#| msgid "Version" msgid "Kernel Version" msgstr "内核版本" @@ -2145,7 +2154,7 @@ msgstr "时区/偏移量" #: instances/templates/instances/power_tab.html:55 msgid "This action sends an ACPI shutdown signal to the instance." -msgstr "此操作将ACPI关闭信号发送到实例。" +msgstr "此操作将 ACPI 关闭信号发送到实例。" #: instances/templates/instances/power_tab.html:63 msgid "" @@ -2181,11 +2190,11 @@ msgstr "模板实例无法启动。" #: instances/templates/instances/resize_tab.html:7 msgid "CPU" -msgstr "中央处理器" +msgstr "CPU" #: instances/templates/instances/resize_tab.html:28 msgid "Logical host CPUs" -msgstr "逻辑主机CPU" +msgstr "逻辑主机 CPU" #: instances/templates/instances/resize_tab.html:30 #: instances/templates/instances/resize_tab.html:95 @@ -2200,7 +2209,7 @@ msgstr "最大分配" #: instances/templates/instances/resize_tab.html:62 msgid "Logical Instance Active/Maximum CPUs" -msgstr "逻辑实例 活动/最大CPU" +msgstr "逻辑实例活动/最大 CPU" #: instances/templates/instances/resize_tab.html:70 #: instances/templates/instances/settings_tab.html:86 @@ -2255,7 +2264,6 @@ msgid "Migrate" msgstr "迁移" #: instances/templates/instances/settings_tab.html:62 -#: venv/lib/python3.8/site-packages/click/core.py:1357 msgid "Options" msgstr "选项" @@ -2307,7 +2315,7 @@ msgstr "实例媒体" #: instances/templates/instances/settings_tab.html:159 msgid "Add CD-ROM" -msgstr "添加CD-ROM" +msgstr "添加 CD-ROM" #: instances/templates/instances/settings_tab.html:182 #: instances/templates/instances/settings_tab.html:221 @@ -2330,7 +2338,7 @@ msgstr "挂载" #: instances/templates/instances/settings_tab.html:201 msgid "Detach CD-ROM (remove device)" -msgstr "分离CD-ROM (删除设备)" +msgstr "分离 CD-ROM (删除设备)" #: instances/templates/instances/settings_tab.html:227 #: instances/templates/instances/settings_tab.html:229 @@ -2339,7 +2347,7 @@ msgstr "卸载" #: instances/templates/instances/settings_tab.html:238 msgid "There is not any CD-ROM device." -msgstr "没有任何CD-ROM设备。" +msgstr "没有 CD-ROM 设备。" #: instances/templates/instances/settings_tab.html:243 msgid "Instance Volume" @@ -2358,6 +2366,22 @@ msgstr "容量" msgid "Source" msgstr "源" +#: instances/templates/instances/settings_tab.html:271 +msgid "Serial" +msgstr "序列号" + +#: instances/templates/instances/settings_tab.html:274 +msgid "IO Mode" +msgstr "IO 模式" + +#: instances/templates/instances/settings_tab.html:275 +msgid "Discard" +msgstr "删除模式" + +#: instances/templates/instances/settings_tab.html:276 +msgid "Detect Zeroes" +msgstr "零写入检测" + #: instances/templates/instances/settings_tab.html:309 #: instances/templates/instances/settings_tab.html:313 msgid "Detach" @@ -2444,7 +2468,7 @@ msgstr "IPv6" msgid "" "In most configurations, macvtap does not work for host to guest network " "communication" -msgstr "在大多数配置中,macvtap不适用于主机与客户机之间的网络通信" +msgstr "在大多数配置中,macvtap 不适用于主机与客户机之间的网络通信" #: instances/templates/instances/settings_tab.html:515 #: networks/templates/network.html:323 @@ -2478,12 +2502,12 @@ msgstr "突发" #: instances/templates/instances/settings_tab.html:549 #: networks/templates/network.html:354 msgid "Edit QoS" -msgstr "编辑QoS" +msgstr "编辑 QoS" #: instances/templates/instances/settings_tab.html:559 #: networks/templates/network.html:359 msgid "Delete QoS" -msgstr "删除QoS" +msgstr "删除 QoS" #: instances/templates/instances/settings_tab.html:575 msgid "For migration both host servers must have equal settings and OS type" @@ -2499,7 +2523,7 @@ msgstr "主机迁移" #: instances/templates/instances/settings_tab.html:602 msgid "Live migration" -msgstr "实时(在线)迁移" +msgstr "实时 (在线) 迁移" #: instances/templates/instances/settings_tab.html:610 msgid "Unsafe migration" @@ -2519,7 +2543,7 @@ msgstr "发布副本" #: instances/templates/instances/settings_tab.html:642 msgid "Forces CPU convergence during live migration" -msgstr "在实时迁移期间强制CPU收敛" +msgstr "在实时迁移期间强制 CPU 收敛" #: instances/templates/instances/settings_tab.html:642 msgid "Auto converge" @@ -2535,7 +2559,7 @@ msgstr "已压缩" #: instances/templates/instances/settings_tab.html:663 msgid "If you need to edit XML please Power Off the instance" -msgstr "如果您需要编辑XML,请关闭实例电源" +msgstr "如果您需要编辑 XML,请关闭实例电源" #: instances/templates/instances/settings_tab.html:685 msgid "Instance owners" @@ -2606,11 +2630,11 @@ msgstr "设置" #: instances/templates/instances/settings_tab.html:883 msgid "To set instance vCPUs hotpluggable" -msgstr "设置实例vCPU热插拔" +msgstr "设置实例虚拟 CPU 热插拔" #: instances/templates/instances/settings_tab.html:886 msgid "vCPU Hot Plug" -msgstr "vCPU热插拔" +msgstr "虚拟 CPU 热插拔" #: instances/templates/instances/settings_tab.html:890 #: instances/templates/instances/settings_tab.html:919 @@ -2624,73 +2648,59 @@ msgstr "禁用" #: instances/templates/instances/settings_tab.html:903 msgid "To Enable/Disable Qemu Guest Agent. Status" -msgstr "启用/禁用Qemu客户机代理。 状态" +msgstr "启用/禁用 Qemu 客户机代理。 状态" #: instances/templates/instances/settings_tab.html:908 msgid "Disconnected" msgstr "断开连接" #: instances/templates/instances/settings_tab.html:911 -#: venv/lib/python3.8/site-packages/django/forms/widgets.py:714 +#: venv/lib/python3.8/site-packages/django/forms/widgets.py:794 msgid "Unknown" msgstr "未知" #: instances/templates/instances/settings_tab.html:915 msgid "Qemu Guest Agent" -msgstr "Qemu客户机代理" +msgstr "Qemu 客户机代理" #: instances/templates/instances/snapshots_tab.html:8 -#, fuzzy -#| msgid "Take Snapshot" msgid "Take Snapshot - Internal" -msgstr "创建快照" +msgstr "创建快照 - 内部" #: instances/templates/instances/snapshots_tab.html:13 -#, fuzzy -#| msgid "Take Snapshot" msgid "Take Snapshot - External" -msgstr "创建快照" +msgstr "创建快照 - 外部" #: instances/templates/instances/snapshots_tab.html:18 msgid "Manage Snapshots" msgstr "管理快照" #: instances/templates/instances/snapshots_tab.html:26 -#, fuzzy -#| msgid "" -#| "This may take more than an hour, depending on how much content is on your " -#| "instance and how large the disk is." msgid "" "With running machine, internal snapshots may take more than an hour, " "depending on how much memory has on your instance and how large the disk is." msgstr "" -"这可能需要一个多小时,具体取决于您的实例上的。内容以及磁盘大小。 它可能导致" -"Web服务器超时..." +"对于正在运行的机器,内部快照可能需要一个多小时,这取决于您的实例上有多少内存" +"和磁盘有多大。" #: instances/templates/instances/snapshots_tab.html:27 msgid "" "Live snapshot could cause server timeout and instance might be paused!!!" -msgstr "" +msgstr "实时快照可能会导致服务器超时和实例暂停!!!" #: instances/templates/instances/snapshots_tab.html:29 -#, fuzzy -#| msgid "Create new instance" msgid "Create an internal snapshot" -msgstr "创建新实例" +msgstr "创建新的内部快照" #: instances/templates/instances/snapshots_tab.html:34 #: instances/templates/instances/snapshots_tab.html:56 -#, fuzzy -#| msgid "Enter Snapshot Name" msgid "Snapshot Name" -msgstr "输入快照名称" +msgstr "快照名称" #: instances/templates/instances/snapshots_tab.html:36 #: instances/templates/instances/snapshots_tab.html:58 -#, fuzzy -#| msgid "Description" msgid "Snapshot Description" -msgstr "描述" +msgstr "快照描述" #: instances/templates/instances/snapshots_tab.html:38 #: instances/templates/instances/snapshots_tab.html:40 @@ -2701,37 +2711,35 @@ msgstr "创建快照" #: instances/templates/instances/snapshots_tab.html:48 msgid "You can get external snapshots within this tab." -msgstr "" +msgstr "您可以在此选项卡中获取外部快照。" #: instances/templates/instances/snapshots_tab.html:50 msgid "Create an external snapshot" -msgstr "" +msgstr "创建一个外部快照" #: instances/templates/instances/snapshots_tab.html:52 msgid "" "External snapshots are experimental in this stage, use it if you know what " "you are doing. 'Revert Snapshot' may require manual operation with CLI." msgstr "" +"外部快照在这个阶段是实验性的,如果您知道自己在做什么,请使用它。“还原快照”可" +"能需要在命令行手动操作。" #: instances/templates/instances/snapshots_tab.html:65 msgid "WebVirtCloud supports only one external snapshot at the moment." -msgstr "" +msgstr "目前只支持一个外部快照。" #: instances/templates/instances/snapshots_tab.html:71 msgid "Choose a snapshot for restore/delete" msgstr "选择要 还原/删除 的快照" #: instances/templates/instances/snapshots_tab.html:77 -#, fuzzy -#| msgid "Description" msgid "Type - Description" -msgstr "描述" +msgstr "类型 - 描述" #: instances/templates/instances/snapshots_tab.html:86 -#, fuzzy -#| msgid "Interface" msgid "Internal" -msgstr "接口" +msgstr "内部" #: instances/templates/instances/snapshots_tab.html:92 #: instances/templates/instances/snapshots_tab.html:125 @@ -2749,7 +2757,7 @@ msgstr "删除快照" #: instances/templates/instances/snapshots_tab.html:118 msgid "External" -msgstr "" +msgstr "外部" #: instances/templates/instances/snapshots_tab.html:145 msgid "You do not have any snapshots" @@ -2769,7 +2777,7 @@ msgstr "带宽设备" #: instances/templates/instances/stats_tab.html:68 msgid "Disk I/O device" -msgstr "磁盘I/O设备" +msgstr "磁盘 I/O 设备" #: instances/utils.py:99 msgid "None available device name" @@ -2780,14 +2788,13 @@ msgid "Templates cannot be started." msgstr "模板无法启动。" #: instances/views.py:464 -#, fuzzy, python-format -#| msgid "Instance is migrated to %(hostname)s" +#, python-format msgid "Instance is migrated(%(method)s) to %(hostname)s" -msgstr "实例已迁移到 %(hostname)s" +msgstr "实例已从 %(method)s) 迁移到 %(hostname)s" #: instances/views.py:490 msgid "Reset root password" -msgstr "重置Root密码" +msgstr "重置 Root 密码" #: instances/views.py:498 instances/views.py:533 msgid "Please shutdown down your instance and then try again" @@ -2796,7 +2803,7 @@ msgstr "请关闭您的实例,然后重试" #: instances/views.py:523 #, python-format msgid "Installed new SSH public key %(keyname)s" -msgstr "安装了新的SSH公钥 %(keyname)s" +msgstr "安装了新的 SSH 公钥 %(keyname)s" #: instances/views.py:555 #, python-format @@ -2808,7 +2815,7 @@ msgstr "" #: instances/views.py:565 #, python-format msgid "CPU is resized: %(old)s to %(new)s" -msgstr "CPU已调整大小: %(old)s 至 %(new)s" +msgstr "CPU 已调整大小: %(old)s 至 %(new)s" #: instances/views.py:601 #, python-format @@ -2898,8 +2905,7 @@ msgid "Create snapshot: %(snap)s" msgstr "创建快照:%(snap)s" #: instances/views.py:997 -#, fuzzy, python-format -#| msgid "Delete snapshot: %(snap_name)s" +#, python-format msgid "Delete snapshot: %(snap)s" msgstr "删除快照:%(snap)s" @@ -2908,38 +2914,34 @@ msgid "Successful revert snapshot: " msgstr "成功还原快照: " #: instances/views.py:1015 -#, fuzzy, python-format -#| msgid "Revert snapshot: %(snap)" +#, python-format msgid "Revert snapshot: %(snap)s" msgstr "还原快照: %(snap)s" #: instances/views.py:1032 -#, fuzzy, python-format -#| msgid "Create snapshot: %(snap)s" +#, python-format msgid "Create external snapshot: %(snap)s" -msgstr "创建快照:%(snap)s" +msgstr "创建外部快照:%(snap)s" #: instances/views.py:1066 -#, fuzzy, python-format -#| msgid "Revert snapshot: %(snap)" +#, python-format msgid "Revert external snapshot: %(snap)s" -msgstr "还原快照: %(snap)s" +msgstr "还原外部快照: %(snap)s" #: instances/views.py:1087 -#, fuzzy, python-format -#| msgid "Delete snapshot: %(snap_name)s" +#, python-format msgid "Delete external snapshot: %(snap)s" -msgstr "删除快照:%(snap)s" +msgstr "删除外部快照:%(snap)s" #: instances/views.py:1104 #, python-format msgid "VCPU %(id)s is enabled=%(enabled)s" -msgstr "VCPU %(id)s 已启用=%(enabled)s" +msgstr "虚拟 CPU %(id)s 已启用=%(enabled)s" #: instances/views.py:1113 #, python-format msgid "VCPU Hot-plug is enabled=%(status)s" -msgstr "VCPU 热插拔 已启用=%(status)s" +msgstr "虚拟 CPU 热插拔已启用=%(status)s" #: instances/views.py:1123 msgid "Set autostart" @@ -2971,7 +2973,7 @@ msgstr "启动顺序已成功更改。" #: instances/views.py:1187 msgid "Change instance XML" -msgstr "更改实例XML" +msgstr "更改实例 XML" #: instances/views.py:1201 #, python-format @@ -2979,8 +2981,7 @@ msgid "Set Guest Agent: %(status)s" msgstr "设置客户机代理:%(status)s" #: instances/views.py:1211 -#, fuzzy, python-format -#| msgid "Set Video Model" +#, python-format msgid "Set Video Model: %(model)s" msgstr "设置视频模式:%(model)s" @@ -3018,13 +3019,13 @@ msgid "" "%(qos_dir)s QoS is set. Network XML is changed. Stop and " "start network to activate new config." msgstr "" -"%(qos_dir)s QoS已设置。网络XML已更改。 停止并启动网络以激活新" -"的配置。" +"%(qos_dir)s QoS 已设置。网络 XML 已更改。 停止并启动网络以激" +"活新的配置。" #: instances/views.py:1338 networks/views.py:275 #, python-format msgid "%(qos_dir)s QoS is deleted" -msgstr "%(qos_dir)s QoS已删除" +msgstr "%(qos_dir)s QoS 已删除" #: instances/views.py:1344 #, python-format @@ -3032,8 +3033,8 @@ msgid "" "%(qos_dir)s QoS is deleted. Network XML is changed. Stop and " "start network to activate new config." msgstr "" -"%(qos_dir)s QoS已删除。网络XML已更改。 停止并启动网络以激活新" -"的配置。" +"%(qos_dir)s QoS 已删除。网络XML已更改。 停止并启动网络以激活" +"新的配置。" #: instances/views.py:1364 msgid "Only one owner is allowed and the one already added" @@ -3082,19 +3083,19 @@ msgstr "设置控制台密码时出错。 您应检查实例是否具有图形 #: instances/views.py:1501 msgid "Set VNC password" -msgstr "设置VNC密码" +msgstr "设置 VNC 密码" #: instances/views.py:1512 msgid "Set VNC keymap" -msgstr "设置VNC键盘" +msgstr "设置 VNC 键盘" #: instances/views.py:1519 msgid "Set VNC type" -msgstr "设置VNC类型" +msgstr "设置 VNC 类型" #: instances/views.py:1526 msgid "Set VNC listen address" -msgstr "设置VNC监听地址" +msgstr "设置 VNC 监听地址" #: instances/views.py:1551 msgid "Edit options" @@ -3102,95 +3103,95 @@ msgstr "编辑选项" #: instances/views.py:1565 msgid "Send console.vv file" -msgstr "发送console.vv文件" +msgstr "发送 console.vv 文件" -#: instances/views.py:1634 instances/views.py:1739 +#: instances/views.py:1634 instances/views.py:1740 msgid "A virtual machine with this name already exists" msgstr "具有该名称的虚拟机已存在" -#: instances/views.py:1721 +#: instances/views.py:1722 msgid "You haven't defined any storage pools" msgstr "您尚未定义任何存储资源池" -#: instances/views.py:1723 +#: instances/views.py:1724 msgid "You haven't defined any network pools" msgstr "您尚未定义任何网络资源池" -#: instances/views.py:1744 +#: instances/views.py:1745 msgid "There is an instance with same name. Remove it and try again!" msgstr "有一个同名实例。 删除它,然后再试一次!" -#: instances/views.py:1751 +#: instances/views.py:1752 msgid "No Virtual Machine MAC has been entered" -msgstr "没有输入虚拟机MAC地址" +msgstr "没有输入虚拟机 MAC 地址" -#: instances/views.py:1786 +#: instances/views.py:1787 msgid "Image has already exist. Please check volumes or change instance name" msgstr "镜像已经存在。 请检查卷或更改实例名称" -#: instances/views.py:1815 +#: instances/views.py:1816 msgid "First you need to create or select an image" msgstr "首先,您需要创建或选择镜像" -#: instances/views.py:1838 +#: instances/views.py:1839 msgid "Invalid cache mode" msgstr "无效的缓存模式" -#: instances/views.py:1884 +#: instances/views.py:1885 msgid "Instance is created" msgstr "实例已创建" -#: instances/views.py:1913 +#: instances/views.py:1914 msgid "Flavor Created" msgstr "规格已创建" -#: instances/views.py:1919 +#: instances/views.py:1920 msgid "Create Flavor" msgstr "创建规格" -#: instances/views.py:1929 +#: instances/views.py:1930 msgid "Flavor Updated" msgstr "规格已更新" -#: instances/views.py:1935 +#: instances/views.py:1936 msgid "Update Flavor" msgstr "更新规格" -#: instances/views.py:1944 +#: instances/views.py:1945 msgid "Flavor Deleted" msgstr "规格已删除" #: interfaces/forms.py:37 msgid "The IPv4 address must not contain any special characters" -msgstr "IPv4地址不得包含任何特殊字符" +msgstr "IPv4 地址不得包含任何特殊字符" #: interfaces/forms.py:41 msgid "The IPv4 address must not exceed 20 characters" -msgstr "IPv4地址不得超过20个字符" +msgstr "IPv4 地址不得超过 20 个字符" #: interfaces/forms.py:50 msgid "The IPv4 gateway must not contain any special characters" -msgstr "IPv4网关不得包含任何特殊字符" +msgstr "IPv4 网关不得包含任何特殊字符" #: interfaces/forms.py:54 msgid "The IPv4 gateway must not exceed 20 characters" -msgstr "IPv4网关不得超过20个字符" +msgstr "IPv4 网关不得超过 20 个字符" #: interfaces/forms.py:63 msgid "The IPv6 address must not contain any special characters" -msgstr "IPv6地址不得包含任何特殊字符" +msgstr "IPv6 地址不得包含任何特殊字符" #: interfaces/forms.py:67 msgid "The IPv6 address must not exceed 100 characters" -msgstr "IPv6地址不得超过100个字符" +msgstr "IPv6 地址不得超过 100 个字符" #: interfaces/forms.py:76 msgid "The IPv6 gateway must not contain any special characters" -msgstr "IPv6网关不得包含任何特殊字符" +msgstr "IPv6 网关不得包含任何特殊字符" #: interfaces/forms.py:80 msgid "The IPv6 gateway must not exceed 100 characters" -msgstr "IPv6网关不得超过100个字符" +msgstr "IPv6 网关不得超过 100 个字符" #: interfaces/forms.py:89 interfaces/forms.py:102 msgid "The interface must not contain any special characters" @@ -3198,30 +3199,22 @@ msgstr "接口不得包含任何特殊字符" #: interfaces/forms.py:93 interfaces/forms.py:106 msgid "The interface must not exceed 10 characters" -msgstr "接口不得超过10个字符" +msgstr "接口不得超过 10 个字符" #: interfaces/models.py:10 -#, fuzzy -#| msgid "No Virtual Machine name has been entered" msgid "No interface name has been entered" -msgstr "没有输入虚拟机的名称" +msgstr "没有输入接口名称" #: interfaces/models.py:12 networks/models.py:12 storages/models.py:12 #: storages/models.py:46 -#, fuzzy -#| msgid "Status" msgid "status" msgstr "状态" #: interfaces/models.py:13 networks/models.py:13 -#, fuzzy -#| msgid "Device" msgid "device" msgstr "设备" #: interfaces/models.py:14 networks/models.py:14 -#, fuzzy -#| msgid "Forward" msgid "forward" msgstr "转发" @@ -3245,17 +3238,6 @@ msgstr "启动时" msgid "hotplug" msgstr "热插拔" -#: interfaces/templates/create_iface_block.html:45 -#: interfaces/templates/interface.html:77 -#: interfaces/templates/interfaces.html:64 -#: storages/templates/create_stg_block.html:50 -#: storages/templates/create_stg_block.html:79 -#: storages/templates/create_stg_block.html:108 -#: storages/templates/create_stg_block.html:173 -#: storages/templates/storages.html:60 -msgid "Type" -msgstr "类型" - #: interfaces/templates/create_iface_block.html:48 msgid "bridge" msgstr "网桥网络" @@ -3266,7 +3248,7 @@ msgstr "以太网络" #: interfaces/templates/create_iface_block.html:54 msgid "STP" -msgstr "STP生成树协议" +msgstr "STP 生成树协议" #: interfaces/templates/create_iface_block.html:58 msgid "on" @@ -3282,7 +3264,7 @@ msgstr "延迟" #: interfaces/templates/create_iface_block.html:87 msgid "IPv4 Mode" -msgstr "IPv4模式" +msgstr "IPv4 模式" #: interfaces/templates/create_iface_block.html:90 #: interfaces/templates/create_iface_block.html:117 @@ -3302,23 +3284,23 @@ msgstr "没有配置" #: interfaces/templates/create_iface_block.html:97 msgid "IPv4 Address" -msgstr "IPv4地址" +msgstr "IPv4 地址" #: interfaces/templates/create_iface_block.html:103 msgid "IPv4 Gateway" -msgstr "IPv4网关" +msgstr "IPv4 网关" #: interfaces/templates/create_iface_block.html:113 msgid "IPv6 Mode" -msgstr "IPv6类型" +msgstr "IPv6 类型" #: interfaces/templates/create_iface_block.html:123 msgid "IPv6 Address" -msgstr "IPv6地址" +msgstr "IPv6 地址" #: interfaces/templates/create_iface_block.html:129 msgid "IPv6 Gateway" -msgstr "IPv6网关" +msgstr "IPv6 网关" #: interfaces/templates/interface.html:48 msgid "Interface Type" @@ -3360,8 +3342,6 @@ msgid "user" msgstr "用户" #: logs/models.py:6 -#, fuzzy -#| msgid "hostname" msgid "host" msgstr "主机" @@ -3383,11 +3363,11 @@ msgstr "没有输入资源池名称" #: networks/forms.py:13 msgid "No IPv4 subnet has been entered" -msgstr "没有输入IPv4子网" +msgstr "没有输入 IPv4 子网" #: networks/forms.py:18 msgid "No IPv6 subnet has been entered" -msgstr "没有输入IPv6子网" +msgstr "没有输入 IPv6 子网" #: networks/forms.py:34 storages/forms.py:30 msgid "The pool name must not contain any special characters" @@ -3395,23 +3375,23 @@ msgstr "资源池名称不得包含任何特殊字符" #: networks/forms.py:38 storages/forms.py:34 msgid "The pool name must not exceed 20 characters" -msgstr "资源池名称不能超过20个字符" +msgstr "资源池名称不能超过 20 个字符" #: networks/forms.py:47 msgid "The IPv4 subnet must not contain any special characters" -msgstr "IPv4子网不得包含任何特殊字符" +msgstr "IPv4 子网不得包含任何特殊字符" #: networks/forms.py:51 msgid "The IPv4 subnet must not exceed 20 characters" -msgstr "IPv4子网不得超过20个字符" +msgstr "IPv4 子网不得超过 20 个字符" #: networks/forms.py:60 msgid "The IPv6 subnet must not contain any special characters" -msgstr "IPv6子网不得包含任何特殊字符" +msgstr "IPv6 子网不得包含任何特殊字符" #: networks/forms.py:64 msgid "The IPv6 subnet must not exceed 42 characters" -msgstr "IPv6子网不得超过42个字符" +msgstr "IPv6 子网不得超过 42 个字符" #: networks/forms.py:74 msgid "The pool bridge name must not contain any special characters" @@ -3419,17 +3399,15 @@ msgstr "资源池网桥名称不得包含任何特殊字符" #: networks/forms.py:78 msgid "The pool bridge name must not exceed 20 characters" -msgstr "资源池网桥名称不得超过20个字符" +msgstr "资源池网桥名称不得超过 20 个字符" #: networks/models.py:10 -#, fuzzy -#| msgid "No pool name has been entered" msgid "No network name has been entered" -msgstr "没有输入资源池名称" +msgstr "没有输入网络名称" #: networks/templates/add_network_qos.html:14 msgid "Add QoS for Network" -msgstr "为网络添加QoS流控" +msgstr "为网络添加 QoS 流控" #: networks/templates/add_network_qos.html:22 msgid "Inbound" @@ -3485,7 +3463,7 @@ msgstr "MACVTAP" #: networks/templates/create_net_block.html:37 msgid "IPv4 Subnet pool" -msgstr "IPv4子网资源池" +msgstr "IPv4 子网资源池" #: networks/templates/create_net_block.html:43 msgid "DHCPv4" @@ -3497,11 +3475,11 @@ msgstr "固定地址" #: networks/templates/create_net_block.html:55 msgid "Enable IPv6" -msgstr "启用IPv6" +msgstr "启用 IPv6" #: networks/templates/create_net_block.html:61 msgid "IPv6 Subnet pool" -msgstr "IPv6子网资源池" +msgstr "IPv6 子网资源池" #: networks/templates/create_net_block.html:67 msgid "DHCPv6" @@ -3517,7 +3495,7 @@ msgstr "虚拟交换机" #: networks/templates/modify_ipv4_fixed_address.html:13 msgid "Add IPv4 Fixed Address" -msgstr "添加IPv4固定地址" +msgstr "添加 IPv4 固定地址" #: networks/templates/modify_ipv4_fixed_address.html:19 #: networks/templates/modify_ipv6_fixed_address.html:19 @@ -3532,7 +3510,7 @@ msgstr "地址" #: networks/templates/modify_ipv6_fixed_address.html:13 msgid "Add IPV6 Fixed Address" -msgstr "添加IPV6固定地址" +msgstr "添加 IPV6 固定地址" #: networks/templates/modify_ipv6_fixed_address.html:25 #: networks/templates/network.html:282 @@ -3545,11 +3523,11 @@ msgstr "网络名称" #: networks/templates/network.html:90 msgid "IPv4 Configuration" -msgstr "IPv4配置" +msgstr "IPv4 配置" #: networks/templates/network.html:93 msgid "IPv4 Forwarding" -msgstr "IPv4转发" +msgstr "IPv4 转发" #: networks/templates/network.html:113 networks/templates/network.html:225 msgid "ON" @@ -3566,11 +3544,11 @@ msgstr "结束" #: networks/templates/network.html:136 networks/templates/network.html:249 msgid "Edit DHCP Range" -msgstr "编辑DHCP范围" +msgstr "编辑 DHCP 范围" #: networks/templates/network.html:150 msgid "IPv4 Fixed Addresses" -msgstr "IPv4固定地址" +msgstr "IPv4 固定地址" #: networks/templates/network.html:159 networks/templates/network.html:269 #: nwfilters/templates/nwfilters.html:84 @@ -3578,7 +3556,7 @@ msgid "Show" msgstr "查看" #: networks/templates/network.html:166 networks/templates/network.html:276 -#: venv/lib/python3.8/site-packages/django/forms/widgets.py:403 +#: venv/lib/python3.8/site-packages/django/forms/widgets.py:463 msgid "Clear" msgstr "清除" @@ -3592,15 +3570,15 @@ msgstr "删除条目" #: networks/templates/network.html:208 msgid "IPv6 Configuration" -msgstr "IPv6配置" +msgstr "IPv6 配置" #: networks/templates/network.html:211 msgid "IPv6 Forwarding" -msgstr "IPv6转发" +msgstr "IPv6 转发" #: networks/templates/network.html:262 msgid "IPv6 Fixed Addresses" -msgstr "IPv6固定地址" +msgstr "IPv6 固定地址" #: networks/templates/networks.html:46 msgid "Hypervisor doesn't have any Network" @@ -3616,11 +3594,11 @@ msgstr "网络资源池名称已被使用" #: networks/views.py:50 msgid "Please enter bridge/dev name" -msgstr "请输入 网桥/设备 名称" +msgstr "请输入网桥/设备名称" #: networks/views.py:65 msgid "For libvirt, the IPv6 network prefix must be /64" -msgstr "对于libvirt,IPv6网络前缀必须为/64" +msgstr "对于 libvirt,IPv6 网络前缀必须为 /64" #: networks/views.py:138 msgid "Unknown Network Family" @@ -3639,39 +3617,37 @@ msgstr "%(family)s 固定地址已被删除。" #: networks/views.py:215 #, python-format msgid "%(family)s DHCP Range is Changed." -msgstr "%(family)s DHCP范围已更改。" +msgstr "%(family)s DHCP 范围已更改。" #: networks/views.py:228 msgid "" "Network XML is changed. \\Stop and start network to activate new config." -msgstr "网络XML已更改。\\停止并启动网络以激活新配置。" +msgstr "网络XML已更改。停止并启动网络以激活新配置。" #: networks/views.py:233 msgid "Network XML is changed." -msgstr "网络XML已更改。" +msgstr "网络 XML 已更改。" #: networks/views.py:247 #, python-format msgid "" "%(qos_dir)s QoS is updated. Network XML is changed. Stop and start network " "to activate new config" -msgstr "%(qos_dir)s 的QoS已更新。 网络XML已更改。 停止并启动网络以激活新配置" +msgstr "" +"%(qos_dir)s 的 QoS 已更新。 网络 XML 已更改。 停止并启动网络以激活新配置" #: networks/views.py:267 -#, fuzzy, python-format -#| msgid "" -#| "%(qos_dir)s QoS is deleted. Network XML is changed. Stop " -#| "and start network to activate new config." +#, python-format msgid "" "%(qos_dir)s QoS is deleted. Network XML is changed. " "Stop and start network to activate new config" msgstr "" -"%(qos_dir)s QoS 已删除。网络XML已更改。 停止并启动网" -"络以激活新的配置" +"%(qos_dir)s QoS 已删除。网络 XML 已更改。 停止并启动" +"网络以激活新的配置" #: nwfilters/templates/add_nwf_rule.html:13 msgid "Add New NWFilter Rule" -msgstr "添加新的NWFilter规则" +msgstr "添加新的 NWFilter 规则" #: nwfilters/templates/add_nwf_rule.html:23 msgid "If there is a rule which has same attributes it replaces that rule" @@ -3679,7 +3655,7 @@ msgstr "如果存在具有相同属性的规则,它将替换该规则" #: nwfilters/templates/create_nwfilter_block.html:13 msgid "Create New NWFilter" -msgstr "创建新的NWFilter" +msgstr "创建新的 NWFilter" #: nwfilters/templates/nwfilter.html:40 nwfilters/templates/nwfilters.html:54 #: virtsecrets/templates/secrets.html:61 @@ -3720,15 +3696,15 @@ msgstr "指令" #: nwfilters/templates/nwfilters.html:70 msgid "Details of NWFilter" -msgstr "NWFilter的详细信息" +msgstr "NWFilter 的详细信息" #: nwfilters/templates/nwfilters.html:93 msgid "Clone NWFilter" -msgstr "克隆NWFilter" +msgstr "克隆 NWFilter" #: nwfilters/templates/nwfilters.html:133 msgid "Hypervisor doesn't have any NWFilters" -msgstr "虚拟机监控程序没有检测到任何NWFilter" +msgstr "虚拟机监控程序没有检测到任何 NWFilter" #: nwfilters/views.py:50 msgid "A network filter with this name already exists" @@ -3736,7 +3712,7 @@ msgstr "具有该名称的网络过滤器已存在" #: nwfilters/views.py:55 msgid "A network filter with this UUID already exists" -msgstr "具有该UUID的网络过滤器已存在" +msgstr "具有该 UUID 的网络过滤器已存在" #: nwfilters/views.py:60 #, python-format @@ -3751,13 +3727,12 @@ msgstr "%(filter)s 网络过滤器已删除" #: nwfilters/views.py:98 #, python-format msgid "NWFilter is in use by %(instance)s. Cannot be deleted." -msgstr "%(instance)s 正在使用NWFilter。无法删除。" +msgstr "%(instance)s 正在使用 NWFilter。无法删除。" #: nwfilters/views.py:118 -#, fuzzy, python-format -#| msgid "Cloning NWFilter {name} as {cln_name}" +#, python-format msgid "Cloning NWFilter %(name)s as %(clone)s" -msgstr "将NWFilter %(name)s 克隆为 %(clone)s" +msgstr "将 NWFilter %(name)s 克隆为 %(clone)s" #: storages/forms.py:13 storages/forms.py:47 msgid "No path has been entered" @@ -3781,57 +3756,41 @@ msgstr "镜像名称不得包含任何特殊字符" #: storages/forms.py:102 msgid "The image name must not exceed 120 characters" -msgstr "镜像名称不得超过120个字符" +msgstr "镜像名称不得超过 120 个字符" #: storages/models.py:13 storages/models.py:48 -#, fuzzy -#| msgid "Pool type" msgid "type" -msgstr "资源池类型" +msgstr "类型" #: storages/models.py:14 storages/models.py:32 storages/models.py:44 -#, fuzzy -#| msgid "Resize" msgid "size" -msgstr "调整配置" +msgstr "大小" #: storages/models.py:15 -#, fuzzy -#| msgid "Volumes" msgid "volumes" msgstr "卷" #: storages/models.py:27 -#, fuzzy -#| msgid "Format" msgid "format" msgstr "格式" #: storages/models.py:31 -#, fuzzy -#| msgid "Maximum Allocation" msgid "allocation" -msgstr "最大分配" +msgstr "分配" #: storages/models.py:43 -#, fuzzy -#| msgid "State" msgid "state" msgstr "状态" #: storages/models.py:45 msgid "free" -msgstr "" +msgstr "空闲" -#: storages/models.py:47 venv/lib/python3.8/site-packages/click/types.py:815 -#, fuzzy -#| msgid "Pool path" +#: storages/models.py:47 msgid "path" msgstr "路径" #: storages/models.py:49 -#, fuzzy -#| msgid "Autostart" msgid "autostart" msgstr "自动启动" @@ -3866,15 +3825,15 @@ msgstr "路径" #: storages/templates/create_stg_block.html:121 msgid "Ceph User" -msgstr "Ceph用户" +msgstr "Ceph 用户" #: storages/templates/create_stg_block.html:127 msgid "Ceph Pool" -msgstr "Ceph资源池" +msgstr "Ceph 资源池" #: storages/templates/create_stg_block.html:133 msgid "Ceph Host" -msgstr "Ceph主机" +msgstr "Ceph 主机" #: storages/templates/create_stg_block.html:192 msgid "Remote Path" @@ -3902,7 +3861,7 @@ msgstr "本地路径" #: storages/templates/create_stg_vol_block.html:16 msgid "Upload ISO Image" -msgstr "上传ISO镜像" +msgstr "上传 ISO 镜像" #: storages/templates/create_stg_vol_block.html:30 msgid "Upload" @@ -3990,14 +3949,13 @@ msgid "File not found. Check the path variable and filename" msgstr "未找到文件。 请检查路径变量和文件名" #: storages/views.py:168 -#, fuzzy, python-format -#| msgid "Volume: %(volume)s is deleted." +#, python-format msgid "Volume: %(vol)s is deleted." msgstr "卷:%(vol)s 已删除。" #: storages/views.py:174 msgid "ISO image already exist" -msgstr "ISO镜像已存在" +msgstr "ISO 镜像已存在" #: storages/views.py:180 #, python-format @@ -4009,14 +3967,12 @@ msgid "Name of volume already in use" msgstr "已使用的卷的名称" #: storages/views.py:204 -#, fuzzy, python-format -#| msgid "%(image)s image cloned as %(clone)s successfully" +#, python-format msgid "%(image)s image cloned as %(name)s successfully" msgstr "镜像 %(image)s 已成功克隆为 %(name)s" #: storages/views.py:254 -#, fuzzy, python-format -#| msgid "Image file {name} is created successfully" +#, python-format msgid "Image file %(name)s is created successfully" msgstr "镜像文件 %(name)s 已成功创建" @@ -4030,7 +3986,7 @@ msgstr "糟糕!" #: templates/403.html:9 msgid "403 Forbidden" -msgstr "403被禁止" +msgstr "403 被禁止" #: templates/403.html:11 msgid "You do not have permission to access this page." @@ -4046,7 +4002,7 @@ msgstr "404" #: templates/404.html:9 msgid "404 Not Found" -msgstr "404未找到" +msgstr "404 未找到" #: templates/404.html:11 msgid "The requested page was not found on this server." @@ -4058,7 +4014,7 @@ msgstr "500" #: templates/500.html:9 msgid "500 Internal Server Error" -msgstr "500服务器内部错误" +msgstr "500 服务器内部错误" #: templates/500.html:11 msgid "" @@ -4082,306 +4038,7 @@ msgstr "处理中" msgid "Search" msgstr "搜索" -#: venv/lib/python3.8/site-packages/click/_termui_impl.py:496 -#, python-brace-format -msgid "{editor}: Editing failed" -msgstr "{editor}: 编辑失败" - -#: venv/lib/python3.8/site-packages/click/_termui_impl.py:500 -#, python-brace-format -msgid "{editor}: Editing failed: {e}" -msgstr "{editor}: 编辑失败: {e}" - -#: venv/lib/python3.8/site-packages/click/core.py:1097 -msgid "Aborted!" -msgstr "中止!" - -#: venv/lib/python3.8/site-packages/click/core.py:1282 -#: venv/lib/python3.8/site-packages/click/decorators.py:495 -#, fuzzy -#| msgid "show this help message and exit" -msgid "Show this message and exit." -msgstr "显示此消息并退出。" - -#: venv/lib/python3.8/site-packages/click/core.py:1313 -#: venv/lib/python3.8/site-packages/click/core.py:1339 -#, python-brace-format -msgid "(Deprecated) {text}" -msgstr "(已弃用) {text}" - -#: venv/lib/python3.8/site-packages/click/core.py:1383 -#, fuzzy, python-brace-format -#| msgid "expected %s argument(s)" -msgid "Got unexpected extra argument ({args})" -msgid_plural "Got unexpected extra arguments ({args})" -msgstr[0] "有意外的额外参数 ({args})" - -#: venv/lib/python3.8/site-packages/click/core.py:1399 -msgid "DeprecationWarning: The command {name!r} is deprecated." -msgstr "弃用警告:命令 {name!r} 已弃用。" - -#: venv/lib/python3.8/site-packages/click/core.py:1605 -msgid "Commands" -msgstr "命令" - -#: venv/lib/python3.8/site-packages/click/core.py:1637 -msgid "Missing command." -msgstr "缺少命令。" - -#: venv/lib/python3.8/site-packages/click/core.py:1715 -msgid "No such command {name!r}." -msgstr "没有这样的命令 {name!r} 。" - -#: venv/lib/python3.8/site-packages/click/core.py:2271 -#, fuzzy -#| msgid "'%(value)s' value must be an integer." -msgid "Value must be an iterable." -msgstr "值必须是可迭代的。" - -#: venv/lib/python3.8/site-packages/click/core.py:2291 -#, python-brace-format -msgid "Takes {nargs} values but 1 was given." -msgid_plural "Takes {nargs} values but {len} were given." -msgstr[0] "取 {nargs} 值,但给出 {len} 。" - -#: venv/lib/python3.8/site-packages/click/core.py:2734 -#, python-brace-format -msgid "env var: {var}" -msgstr "环境变量: {var}" - -#: venv/lib/python3.8/site-packages/click/core.py:2764 -msgid "(dynamic)" -msgstr "(动态的)" - -#: venv/lib/python3.8/site-packages/click/core.py:2777 -#, python-brace-format -msgid "default: {default}" -msgstr "默认值:{default}" - -#: venv/lib/python3.8/site-packages/click/core.py:2790 -msgid "required" -msgstr "必需的" - -#: venv/lib/python3.8/site-packages/click/decorators.py:400 -#, python-format -msgid "%(prog)s, version %(version)s" -msgstr "%(prog)s , 版本 %(version)s" - -#: venv/lib/python3.8/site-packages/click/decorators.py:464 -#, fuzzy -#| msgid "show this help message and exit" -msgid "Show the version and exit." -msgstr "显示版本并退出。" - -#: venv/lib/python3.8/site-packages/click/exceptions.py:43 -#: venv/lib/python3.8/site-packages/click/exceptions.py:79 -#, fuzzy, python-brace-format -#| msgid "message" -msgid "Error: {message}" -msgstr "错误:{message}" - -#: venv/lib/python3.8/site-packages/click/exceptions.py:71 -#, python-brace-format -msgid "Try '{command} {option}' for help." -msgstr "尝试通过 '{command} {option}' 来寻求帮助。" - -#: venv/lib/python3.8/site-packages/click/exceptions.py:120 -#, fuzzy, python-brace-format -#| msgid "invalid %s value: %r" -msgid "Invalid value: {message}" -msgstr "无效的数值:{message}" - -#: venv/lib/python3.8/site-packages/click/exceptions.py:122 -#, python-brace-format -msgid "Invalid value for {param_hint}: {message}" -msgstr "{param_hint} 的值无效:{message}" - -#: venv/lib/python3.8/site-packages/click/exceptions.py:178 -#, fuzzy -#| msgid "positional arguments" -msgid "Missing argument" -msgstr "缺少参数" - -#: venv/lib/python3.8/site-packages/click/exceptions.py:180 -#, fuzzy -#| msgid "Edit options" -msgid "Missing option" -msgstr "缺少选项" - -#: venv/lib/python3.8/site-packages/click/exceptions.py:182 -msgid "Missing parameter" -msgstr "缺少参数" - -#: venv/lib/python3.8/site-packages/click/exceptions.py:184 -#, python-brace-format -msgid "Missing {param_type}" -msgstr "缺少 {param_type}" - -#: venv/lib/python3.8/site-packages/click/exceptions.py:191 -#, python-brace-format -msgid "Missing parameter: {param_name}" -msgstr "缺少参数:{param_name}" - -#: venv/lib/python3.8/site-packages/click/exceptions.py:211 -#, python-brace-format -msgid "No such option: {name}" -msgstr "没有这样的选项:{name}" - -#: venv/lib/python3.8/site-packages/click/exceptions.py:223 -#, python-brace-format -msgid "Did you mean {possibility}?" -msgid_plural "(Possible options: {possibilities})" -msgstr[0] "(可能的选项:{possibilities} )" - -#: venv/lib/python3.8/site-packages/click/exceptions.py:261 -#, fuzzy -#| msgid "Unknown" -msgid "unknown error" -msgstr "未知错误" - -#: venv/lib/python3.8/site-packages/click/exceptions.py:268 -msgid "Could not open file {filename!r}: {message}" -msgstr "无法打开文件 {filename!r}: {message}" - -#: venv/lib/python3.8/site-packages/click/parser.py:231 -msgid "Argument {name!r} takes {nargs} values." -msgstr "参数 {name!r} 采用 {nargs} 值。" - -#: venv/lib/python3.8/site-packages/click/parser.py:413 -msgid "Option {name!r} does not take a value." -msgstr "选项 {name!r} 没有值。" - -#: venv/lib/python3.8/site-packages/click/parser.py:474 -msgid "Option {name!r} requires an argument." -msgid_plural "Option {name!r} requires {nargs} arguments." -msgstr[0] "选项 {name!r} 需要 {nargs} 参数。" - -#: venv/lib/python3.8/site-packages/click/shell_completion.py:316 -msgid "Shell completion is not supported for Bash versions older than 4.4." -msgstr "早于4.4的Bash版本不支持完成Shell动作执行。" - -#: venv/lib/python3.8/site-packages/click/shell_completion.py:322 -msgid "Couldn't detect Bash version, shell completion is not supported." -msgstr "无法检测 Bash 版本,不支持完成shell动作执行。" - -#: venv/lib/python3.8/site-packages/click/termui.py:160 -#, fuzzy -#| msgid "No configuration" -msgid "Repeat for confirmation" -msgstr "重复确认" - -#: venv/lib/python3.8/site-packages/click/termui.py:176 -msgid "Error: The value you entered was invalid." -msgstr "错误:您输入的值无效。" - -#: venv/lib/python3.8/site-packages/click/termui.py:178 -#, python-brace-format -msgid "Error: {e.message}" -msgstr "错误:{e.message}" - -#: venv/lib/python3.8/site-packages/click/termui.py:189 -msgid "Error: The two entered values do not match." -msgstr "错误:输入的两个值不匹配。" - -#: venv/lib/python3.8/site-packages/click/termui.py:245 -msgid "Error: invalid input" -msgstr "错误:无效的输入" - -#: venv/lib/python3.8/site-packages/click/termui.py:776 -msgid "Press any key to continue..." -msgstr "按任意键继续..." - -#: venv/lib/python3.8/site-packages/click/types.py:265 -#, python-brace-format -msgid "" -"Choose from:\n" -"\t{choices}" -msgstr "" -"选择:\n" -"\t{choices}" - -#: venv/lib/python3.8/site-packages/click/types.py:297 -#, fuzzy -#| msgid "Value %(value)r is not a valid choice." -msgid "{value!r} is not {choice}." -msgid_plural "{value!r} is not one of {choices}." -msgstr[0] "{value!r} 不是 {choice} / {choices} 之一。" - -#: venv/lib/python3.8/site-packages/click/types.py:387 -msgid "{value!r} does not match the format {format}." -msgid_plural "{value!r} does not match the formats {formats}." -msgstr[0] "{value!r} 与格式 {formats} 不匹配。" - -#: venv/lib/python3.8/site-packages/click/types.py:409 -#, fuzzy -#| msgid "Value %(value)r is not a valid choice." -msgid "{value!r} is not a valid {number_type}." -msgstr "{value!r} 不是有效的 {number_type}。" - -#: venv/lib/python3.8/site-packages/click/types.py:465 -#, python-brace-format -msgid "{value} is not in the range {range}." -msgstr "{value} 不在范围 {range} 内。" - -#: venv/lib/python3.8/site-packages/click/types.py:606 -#, fuzzy -#| msgid "Value %(value)r is not a valid choice." -msgid "{value!r} is not a valid boolean." -msgstr "{value!r} 不是有效的布尔值。" - -#: venv/lib/python3.8/site-packages/click/types.py:630 -#, fuzzy -#| msgid "'%(value)s' is not a valid UUID." -msgid "{value!r} is not a valid UUID." -msgstr "{value!r} 不是有效的UUID 。" - -#: venv/lib/python3.8/site-packages/click/types.py:811 -#, fuzzy -#| msgid "Profile" -msgid "file" -msgstr "文件" - -#: venv/lib/python3.8/site-packages/click/types.py:813 -#, fuzzy -#| msgid "Direction" -msgid "directory" -msgstr "目录" - -#: venv/lib/python3.8/site-packages/click/types.py:861 -msgid "{name} {filename!r} does not exist." -msgstr "{name} {filename!r} 不存在。" - -#: venv/lib/python3.8/site-packages/click/types.py:870 -msgid "{name} {filename!r} is a file." -msgstr "{name} {filename!r} 是一个文件。" - -#: venv/lib/python3.8/site-packages/click/types.py:878 -#, fuzzy, python-brace-format -#| msgid "{name} {filename!r} is a directory." -msgid "{name} '{filename}' is a directory." -msgstr "{name} {filename!r} 是一个目录。" - -#: venv/lib/python3.8/site-packages/click/types.py:887 -msgid "{name} {filename!r} is not readable." -msgstr "{name} {filename!r} 不可读。" - -#: venv/lib/python3.8/site-packages/click/types.py:896 -msgid "{name} {filename!r} is not writable." -msgstr "{name} {filename!r} 不可写。" - -#: venv/lib/python3.8/site-packages/click/types.py:905 -#, fuzzy -#| msgid "{name} {filename!r} is not writable." -msgid "{name} {filename!r} is not executable." -msgstr "{name} {filename!r} 不可写。" - -#: venv/lib/python3.8/site-packages/click/types.py:972 -#, python-brace-format -msgid "{len_type} values are required, but {len_value} was given." -msgid_plural "{len_type} values are required, but {len_value} were given." -msgstr[0] "{len_type} 值是必需的,但给出了 {len_value} 。" - -#: venv/lib/python3.8/site-packages/django/contrib/messages/apps.py:7 +#: venv/lib/python3.8/site-packages/django/contrib/messages/apps.py:15 msgid "Messages" msgstr "信息" @@ -4403,91 +4060,88 @@ msgstr "联合组织" msgid "…" msgstr "…" -#: venv/lib/python3.8/site-packages/django/core/paginator.py:51 +#: venv/lib/python3.8/site-packages/django/core/paginator.py:50 msgid "That page number is not an integer" msgstr "该页码不是整数" -#: venv/lib/python3.8/site-packages/django/core/paginator.py:53 +#: venv/lib/python3.8/site-packages/django/core/paginator.py:52 msgid "That page number is less than 1" -msgstr "该页码少于1" +msgstr "该页码少于 1" -#: venv/lib/python3.8/site-packages/django/core/paginator.py:58 +#: venv/lib/python3.8/site-packages/django/core/paginator.py:54 msgid "That page contains no results" -msgstr "该页面没有任何结果" +msgstr "该页面不包含任何结果" #: venv/lib/python3.8/site-packages/django/core/validators.py:22 msgid "Enter a valid value." msgstr "请输入有效值。" -#: venv/lib/python3.8/site-packages/django/core/validators.py:93 -#: venv/lib/python3.8/site-packages/django/forms/fields.py:675 +#: venv/lib/python3.8/site-packages/django/core/validators.py:104 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:752 msgid "Enter a valid URL." msgstr "请输入有效的URL地址。" -#: venv/lib/python3.8/site-packages/django/core/validators.py:150 +#: venv/lib/python3.8/site-packages/django/core/validators.py:165 msgid "Enter a valid integer." msgstr "请输入有效的整数。" -#: venv/lib/python3.8/site-packages/django/core/validators.py:161 +#: venv/lib/python3.8/site-packages/django/core/validators.py:176 msgid "Enter a valid email address." msgstr "请输入有效的电子邮件地址。" #. Translators: "letters" means latin letters: a-z and A-Z. -#: venv/lib/python3.8/site-packages/django/core/validators.py:262 -#, fuzzy -#| msgid "" -#| "Enter a valid 'slug' consisting of letters, numbers, underscores or " -#| "hyphens." +#: venv/lib/python3.8/site-packages/django/core/validators.py:259 msgid "" "Enter a valid “slug” consisting of letters, numbers, underscores or hyphens." -msgstr "输入由字母、数字、下划线或连字符组成的有效“slug”。" +msgstr "输入由字母、数字、下划线或连字符组成的有效 “slug”。" -#: venv/lib/python3.8/site-packages/django/core/validators.py:269 -#, fuzzy -#| msgid "" -#| "Enter a valid 'slug' consisting of Unicode letters, numbers, underscores, " -#| "or hyphens." +#: venv/lib/python3.8/site-packages/django/core/validators.py:267 msgid "" "Enter a valid “slug” consisting of Unicode letters, numbers, underscores, or " "hyphens." -msgstr "输入由 Unicode 字母、数字、下划线或连字符组成的有效“slug”。" +msgstr "输入由 Unicode 字母、数字、下划线或连字符组成的有效 “slug”。" -#: venv/lib/python3.8/site-packages/django/core/validators.py:278 -#: venv/lib/python3.8/site-packages/django/core/validators.py:288 -#: venv/lib/python3.8/site-packages/django/core/validators.py:311 +#: venv/lib/python3.8/site-packages/django/core/validators.py:279 +#: venv/lib/python3.8/site-packages/django/core/validators.py:287 +#: venv/lib/python3.8/site-packages/django/core/validators.py:316 msgid "Enter a valid IPv4 address." -msgstr "请输入有效的IPv4地址。" +msgstr "请输入有效的 IPv4 地址。" #: venv/lib/python3.8/site-packages/django/core/validators.py:296 -#: venv/lib/python3.8/site-packages/django/core/validators.py:312 +#: venv/lib/python3.8/site-packages/django/core/validators.py:317 msgid "Enter a valid IPv6 address." -msgstr "请输入有效的IPv6地址。" +msgstr "请输入有效的 IPv6 地址。" -#: venv/lib/python3.8/site-packages/django/core/validators.py:306 -#: venv/lib/python3.8/site-packages/django/core/validators.py:310 +#: venv/lib/python3.8/site-packages/django/core/validators.py:308 +#: venv/lib/python3.8/site-packages/django/core/validators.py:315 msgid "Enter a valid IPv4 or IPv6 address." -msgstr "请输入有效的IPv4或IPv6地址。" +msgstr "请输入有效的 IPv4 或 IPv6 地址。" -#: venv/lib/python3.8/site-packages/django/core/validators.py:340 +#: venv/lib/python3.8/site-packages/django/core/validators.py:351 msgid "Enter only digits separated by commas." msgstr "仅输入用逗号分隔的数字。" -#: venv/lib/python3.8/site-packages/django/core/validators.py:346 +#: venv/lib/python3.8/site-packages/django/core/validators.py:357 #, python-format msgid "Ensure this value is %(limit_value)s (it is %(show_value)s)." -msgstr "确保此值是 %(limit_value)s(它是 %(show_value)s )。" +msgstr "确保此值是 %(limit_value)s (它是 %(show_value)s)。" -#: venv/lib/python3.8/site-packages/django/core/validators.py:379 +#: venv/lib/python3.8/site-packages/django/core/validators.py:392 #, python-format msgid "Ensure this value is less than or equal to %(limit_value)s." msgstr "确保此值小于或等于 %(limit_value)s 。" -#: venv/lib/python3.8/site-packages/django/core/validators.py:388 +#: venv/lib/python3.8/site-packages/django/core/validators.py:401 #, python-format msgid "Ensure this value is greater than or equal to %(limit_value)s." msgstr "确保此值大于或等于 %(limit_value)s 。" -#: venv/lib/python3.8/site-packages/django/core/validators.py:398 +#: venv/lib/python3.8/site-packages/django/core/validators.py:410 +#, python-format +msgid "Ensure this value is a multiple of step size %(limit_value)s." +msgstr "确保此值是步进值 %(limit_value)s 的倍数。" + +#: venv/lib/python3.8/site-packages/django/core/validators.py:420 #, python-format msgid "" "Ensure this value has at least %(limit_value)d character (it has " @@ -4495,9 +4149,9 @@ msgid "" msgid_plural "" "Ensure this value has at least %(limit_value)d characters (it has " "%(show_value)d)." -msgstr[0] "确保此值至少具有 %(limit_value)d 个字符(具有 %(show_value)d 个)。" +msgstr[0] "确保此值至少有 %(limit_value)d 个字符 (已有 %(show_value)d 个)。" -#: venv/lib/python3.8/site-packages/django/core/validators.py:413 +#: venv/lib/python3.8/site-packages/django/core/validators.py:438 #, python-format msgid "" "Ensure this value has at most %(limit_value)d character (it has " @@ -4505,27 +4159,27 @@ msgid "" msgid_plural "" "Ensure this value has at most %(limit_value)d characters (it has " "%(show_value)d)." -msgstr[0] "确保此值最多具有 %(limit_value)d 个字符(具有 %(show_value)d 个)。" +msgstr[0] "确保此值最多有 %(limit_value)d 个字符 (已有 %(show_value)d 个)。" -#: venv/lib/python3.8/site-packages/django/core/validators.py:432 -#: venv/lib/python3.8/site-packages/django/forms/fields.py:292 -#: venv/lib/python3.8/site-packages/django/forms/fields.py:327 +#: venv/lib/python3.8/site-packages/django/core/validators.py:461 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:347 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:386 msgid "Enter a number." msgstr "请输入一个数字。" -#: venv/lib/python3.8/site-packages/django/core/validators.py:434 +#: venv/lib/python3.8/site-packages/django/core/validators.py:463 #, python-format msgid "Ensure that there are no more than %(max)s digit in total." msgid_plural "Ensure that there are no more than %(max)s digits in total." msgstr[0] "确保总数不超过 %(max)s 个数字。" -#: venv/lib/python3.8/site-packages/django/core/validators.py:439 +#: venv/lib/python3.8/site-packages/django/core/validators.py:468 #, python-format msgid "Ensure that there are no more than %(max)s decimal place." msgid_plural "Ensure that there are no more than %(max)s decimal places." msgstr[0] "确保不超过 %(max)s 个小数位。" -#: venv/lib/python3.8/site-packages/django/core/validators.py:444 +#: venv/lib/python3.8/site-packages/django/core/validators.py:473 #, python-format msgid "" "Ensure that there are no more than %(max)s digit before the decimal point." @@ -4533,119 +4187,114 @@ msgid_plural "" "Ensure that there are no more than %(max)s digits before the decimal point." msgstr[0] "确保小数点前的位数不超过 %(max)s 个。" -#: venv/lib/python3.8/site-packages/django/core/validators.py:506 -#, fuzzy, python-format -#| msgid "" -#| "File extension '%(extension)s' is not allowed. Allowed extensions are: " -#| "'%(allowed_extensions)s'." +#: venv/lib/python3.8/site-packages/django/core/validators.py:544 +#, python-format msgid "" "File extension “%(extension)s” is not allowed. Allowed extensions are: " "%(allowed_extensions)s." msgstr "" -"不允许使用文件扩展名“%(extension)s”。 允许的扩展名是:" +"不允许使用文件扩展名 “%(extension)s”。 允许的扩展名是:" "%(allowed_extensions)s 。" -#: venv/lib/python3.8/site-packages/django/core/validators.py:559 +#: venv/lib/python3.8/site-packages/django/core/validators.py:605 msgid "Null characters are not allowed." msgstr "不允许使用空字符。" -#: venv/lib/python3.8/site-packages/django/db/models/base.py:1210 -#: venv/lib/python3.8/site-packages/django/forms/models.py:768 +#: venv/lib/python3.8/site-packages/django/db/models/base.py:1423 +#: venv/lib/python3.8/site-packages/django/forms/models.py:893 msgid "and" msgstr "和" -#: venv/lib/python3.8/site-packages/django/db/models/base.py:1212 +#: venv/lib/python3.8/site-packages/django/db/models/base.py:1425 #, python-format msgid "%(model_name)s with this %(field_labels)s already exists." msgstr "具有此 %(field_labels)s 的 %(model_name)s 已存在。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:100 +#: venv/lib/python3.8/site-packages/django/db/models/constraints.py:17 +#, python-format +msgid "Constraint “%(name)s” is violated." +msgstr "违反约束“%(name)s”。" + +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:128 #, python-format msgid "Value %(value)r is not a valid choice." msgstr "值 %(value)r 不是有效的选择。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:101 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:129 msgid "This field cannot be null." msgstr "该字段不能为空。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:102 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:130 msgid "This field cannot be blank." msgstr "该字段不能为空。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:103 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:131 #, python-format msgid "%(model_name)s with this %(field_label)s already exists." msgstr "具有此 %(field_label)s 的 %(model_name)s 已存在。" -#. Translators: The 'lookup_type' is one of 'date', 'year' or 'month'. -#. Eg: "Title must be unique for pub_date year" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:107 +#. Translators: The 'lookup_type' is one of 'date', 'year' or +#. 'month'. Eg: "Title must be unique for pub_date year" +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:135 #, python-format msgid "" "%(field_label)s must be unique for %(date_field_label)s %(lookup_type)s." msgstr "" "%(field_label)s 对于 %(date_field_label)s %(lookup_type)s 必须是唯一的。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:126 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:173 #, python-format msgid "Field of type: %(field_type)s" msgstr "类型的字段:%(field_type)s" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:958 -#, fuzzy, python-format -#| msgid "'%(value)s' value must be either True or False." +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1094 +#, python-format msgid "“%(value)s” value must be either True or False." msgstr "“%(value)s” 值必须为 True 或 False 。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:959 -#, fuzzy, python-format -#| msgid "'%(value)s' value must be either True, False, or None." +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1095 +#, python-format msgid "“%(value)s” value must be either True, False, or None." msgstr "“%(value)s”值必须为 True,False 或 None 。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:961 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1097 msgid "Boolean (Either True or False)" -msgstr "布尔值(True 或 False)" +msgstr "布尔值 (True 或 False)" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1002 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1147 #, python-format msgid "String (up to %(max_length)s)" msgstr "字符串 (最多 %(max_length)s)" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1096 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1149 +msgid "String (unlimited)" +msgstr "字符串 (无限制)" + +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1253 msgid "Comma-separated integers" msgstr "逗号分隔的整数" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1145 -#, fuzzy, python-format -#| msgid "" -#| "'%(value)s' value has an invalid date format. It must be in YYYY-MM-DD " -#| "format." +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1354 +#, python-format msgid "" "“%(value)s” value has an invalid date format. It must be in YYYY-MM-DD " "format." msgstr "“%(value)s” 值的日期格式无效。 必须为 YYYY-MM-DD 格式。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1147 -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1290 -#, fuzzy, python-format -#| msgid "" -#| "'%(value)s' value has the correct format (YYYY-MM-DD) but it is an " -#| "invalid date." +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1358 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1493 +#, python-format msgid "" "“%(value)s” value has the correct format (YYYY-MM-DD) but it is an invalid " "date." -msgstr "“%(value)s”值具有正确的格式(YYYY-MM-DD),但它是无效的日期。" +msgstr "“%(value)s” 值具有正确的格式 (YYYY-MM-DD),但它是无效的日期。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1150 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1362 msgid "Date (without time)" -msgstr "日期(不包含时间)" +msgstr "日期 (不包含时间)" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1288 -#, fuzzy, python-format -#| msgid "" -#| "'%(value)s' value has an invalid format. It must be in YYYY-MM-DD HH:MM[:" -#| "ss[.uuuuuu]][TZ] format." +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1489 +#, python-format msgid "" "“%(value)s” value has an invalid format. It must be in YYYY-MM-DD HH:MM[:ss[." "uuuuuu]][TZ] format." @@ -4653,309 +4302,289 @@ msgstr "" "“%(value)s” 值的格式无效。 它必须采用 YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ] 格" "式。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1292 -#, fuzzy, python-format -#| msgid "" -#| "'%(value)s' value has the correct format (YYYY-MM-DD HH:MM[:ss[.uuuuuu]]" -#| "[TZ]) but it is an invalid date/time." +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1497 +#, python-format msgid "" "“%(value)s” value has the correct format (YYYY-MM-DD HH:MM[:ss[.uuuuuu]]" "[TZ]) but it is an invalid date/time." msgstr "" -"“%(value)s” 值具有正确的格式(YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ]),但它是无" -"效的日期/时间。" +"“%(value)s” 值具有正确的格式 (YYYY-MM-DD HH:MM[:ss[.uuuuuu]][TZ]),但它是无效" +"的日期/时间。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1296 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1502 msgid "Date (with time)" -msgstr "日期(包含时间)" +msgstr "日期 (包含时间)" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1444 -#, fuzzy, python-format -#| msgid "'%(value)s' value must be a decimal number." +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1626 +#, python-format msgid "“%(value)s” value must be a decimal number." msgstr "“%(value)s” 值必须是十进制数字。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1446 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1628 msgid "Decimal number" msgstr "小数" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1585 -#, fuzzy, python-format -#| msgid "" -#| "'%(value)s' value has an invalid format. It must be in [DD] [HH:[MM:]]ss[." -#| "uuuuuu] format." +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1789 +#, python-format msgid "" "“%(value)s” value has an invalid format. It must be in [DD] [[HH:]MM:]ss[." "uuuuuu] format." -msgstr "“%(value)s” 值的格式无效。 它必须为 [DD] [HH:[MM:]]ss[.uuuuuu] 格式。" +msgstr "“%(value)s” 值的格式无效。 它必须为 [DD] [HH:[MM:]]ss[.uuuuuu] 格式。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1588 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1793 msgid "Duration" msgstr "持续时间" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1638 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1845 msgid "Email address" msgstr "电子邮件地址" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1661 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1870 msgid "File path" msgstr "文件路径" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1727 -#, fuzzy, python-format -#| msgid "'%(value)s' value must be a float." +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1948 +#, python-format msgid "“%(value)s” value must be a float." -msgstr "“%(value)s”值必须是浮点数。" +msgstr "“%(value)s” 值必须是浮点数。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1729 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1950 msgid "Floating point number" msgstr "浮点数" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1767 -#, fuzzy, python-format -#| msgid "'%(value)s' value must be an integer." +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1990 +#, python-format msgid "“%(value)s” value must be an integer." -msgstr "“%(value)s”值必须是整数。" +msgstr "“%(value)s” 值必须是整数。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1769 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1992 msgid "Integer" msgstr "整数" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1852 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2088 msgid "Big (8 byte) integer" -msgstr "大(8字节) 整数" +msgstr "大整数 (8 字节)" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1867 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2105 msgid "Small integer" msgstr "小整数" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1875 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2113 msgid "IPv4 address" msgstr "IPv4 地址" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1906 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2144 msgid "IP address" msgstr "IP 地址" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1986 -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1987 -#, fuzzy, python-format -#| msgid "'%(value)s' value must be either None, True or False." +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2237 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2238 +#, python-format msgid "“%(value)s” value must be either None, True or False." msgstr "“%(value)s” 值必须为 None,True 或 False 。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:1989 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2240 msgid "Boolean (Either True, False or None)" -msgstr "布尔值(True,False 或 None)" +msgstr "布尔值 (True,False 或 None)" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2043 -#, fuzzy -#| msgid "Positive integer" +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2291 msgid "Positive big integer" msgstr "正的大整数" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2056 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2306 msgid "Positive integer" msgstr "正整数" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2069 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2321 msgid "Positive small integer" msgstr "正小整数" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2083 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2337 #, python-format msgid "Slug (up to %(max_length)s)" msgstr "Slug (最多到 %(max_length)s)" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2115 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2373 msgid "Text" msgstr "文本" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2181 -#, fuzzy, python-format -#| msgid "" -#| "'%(value)s' value has an invalid format. It must be in HH:MM[:ss[." -#| "uuuuuu]] format." +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2448 +#, python-format msgid "" "“%(value)s” value has an invalid format. It must be in HH:MM[:ss[.uuuuuu]] " "format." -msgstr "“%(value)s”值的格式无效。 它必须为 HH:MM[:ss[.uuuuuu]] 格式。" +msgstr "“%(value)s” 值的格式无效。 它必须为 HH:MM[:ss[.uuuuuu]] 格式。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2183 -#, fuzzy, python-format -#| msgid "" -#| "'%(value)s' value has the correct format (HH:MM[:ss[.uuuuuu]]) but it is " -#| "an invalid time." +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2452 +#, python-format msgid "" "“%(value)s” value has the correct format (HH:MM[:ss[.uuuuuu]]) but it is an " "invalid time." -msgstr "“%(value)s” 值具有正确的格式(HH:MM[:ss[.uuuuuu]]),但时间无效。" +msgstr "“%(value)s” 值具有正确的格式 (HH:MM[:ss[.uuuuuu]]),但时间无效。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2186 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2456 msgid "Time" msgstr "时间" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2312 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2564 msgid "URL" msgstr "URL 地址" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2334 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2588 msgid "Raw binary data" msgstr "原始二进制数据" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2399 -#, fuzzy, python-format -#| msgid "'%(value)s' is not a valid UUID." +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2653 +#, python-format msgid "“%(value)s” is not a valid UUID." -msgstr "“%(value)s”不是有效的UUID 。" +msgstr "“%(value)s” 不是有效的 UUID 。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2401 +#: venv/lib/python3.8/site-packages/django/db/models/fields/__init__.py:2655 msgid "Universally unique identifier" msgstr "通用唯一标识符" -#: venv/lib/python3.8/site-packages/django/db/models/fields/files.py:226 +#: venv/lib/python3.8/site-packages/django/db/models/fields/files.py:232 msgid "File" msgstr "文件" -#: venv/lib/python3.8/site-packages/django/db/models/fields/json.py:18 +#: venv/lib/python3.8/site-packages/django/db/models/fields/json.py:26 msgid "A JSON object" -msgstr "一个JSON对象" +msgstr "一个 JSON 对象" -#: venv/lib/python3.8/site-packages/django/db/models/fields/json.py:20 +#: venv/lib/python3.8/site-packages/django/db/models/fields/json.py:28 msgid "Value must be valid JSON." -msgstr "值必须是有效的JSON。" +msgstr "值必须是有效的 JSON。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/related.py:790 +#: venv/lib/python3.8/site-packages/django/db/models/fields/related.py:919 #, python-format msgid "%(model)s instance with %(field)s %(value)r does not exist." msgstr "具有 %(field)s %(value)r 的 %(model)s 实例不存在。" -#: venv/lib/python3.8/site-packages/django/db/models/fields/related.py:792 +#: venv/lib/python3.8/site-packages/django/db/models/fields/related.py:921 msgid "Foreign Key (type determined by related field)" -msgstr "外键(类型由相关字段决定)" +msgstr "外键 (类型由相关字段决定)" -#: venv/lib/python3.8/site-packages/django/db/models/fields/related.py:1045 +#: venv/lib/python3.8/site-packages/django/db/models/fields/related.py:1212 msgid "One-to-one relationship" msgstr "一对一关系" -#: venv/lib/python3.8/site-packages/django/db/models/fields/related.py:1099 +#: venv/lib/python3.8/site-packages/django/db/models/fields/related.py:1269 #, python-format msgid "%(from)s-%(to)s relationship" msgstr "%(from)s-%(to)s 关系" -#: venv/lib/python3.8/site-packages/django/db/models/fields/related.py:1100 +#: venv/lib/python3.8/site-packages/django/db/models/fields/related.py:1271 #, python-format msgid "%(from)s-%(to)s relationships" msgstr "%(from)s-%(to)s 关系" -#: venv/lib/python3.8/site-packages/django/db/models/fields/related.py:1142 +#: venv/lib/python3.8/site-packages/django/db/models/fields/related.py:1319 msgid "Many-to-many relationship" msgstr "多对多关系" #. Translators: If found as last label character, these punctuation #. characters will prevent the default label_suffix to be appended to the label -#: venv/lib/python3.8/site-packages/django/forms/boundfield.py:150 +#: venv/lib/python3.8/site-packages/django/forms/boundfield.py:184 msgid ":?.!" msgstr ":?.!" -#: venv/lib/python3.8/site-packages/django/forms/fields.py:54 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:91 msgid "This field is required." msgstr "这是必填栏。" -#: venv/lib/python3.8/site-packages/django/forms/fields.py:247 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:298 msgid "Enter a whole number." msgstr "请输入一个整数。" -#: venv/lib/python3.8/site-packages/django/forms/fields.py:402 -#: venv/lib/python3.8/site-packages/django/forms/fields.py:1143 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:467 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:1241 msgid "Enter a valid date." msgstr "请输入一个有效日期。" -#: venv/lib/python3.8/site-packages/django/forms/fields.py:426 -#: venv/lib/python3.8/site-packages/django/forms/fields.py:1144 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:490 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:1242 msgid "Enter a valid time." msgstr "请输入有效时间。" -#: venv/lib/python3.8/site-packages/django/forms/fields.py:454 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:517 msgid "Enter a valid date/time." msgstr "请输入有效的日期/时间。" -#: venv/lib/python3.8/site-packages/django/forms/fields.py:488 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:551 msgid "Enter a valid duration." msgstr "请输入有效期限。" -#: venv/lib/python3.8/site-packages/django/forms/fields.py:489 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:552 #, python-brace-format msgid "The number of days must be between {min_days} and {max_days}." -msgstr "天数必须在 {min_days} 和 {max_days} 之间。" +msgstr "天数必须在 {min_days} 和 {max_days} 之间。" -#: venv/lib/python3.8/site-packages/django/forms/fields.py:549 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:621 msgid "No file was submitted. Check the encoding type on the form." msgstr "没有文件被提交。 检查表单上的编码类型。" -#: venv/lib/python3.8/site-packages/django/forms/fields.py:550 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:622 msgid "No file was submitted." msgstr "没有文件被提交。" -#: venv/lib/python3.8/site-packages/django/forms/fields.py:551 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:623 msgid "The submitted file is empty." msgstr "提交的文件为空。" -#: venv/lib/python3.8/site-packages/django/forms/fields.py:553 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:625 #, python-format msgid "Ensure this filename has at most %(max)d character (it has %(length)d)." msgid_plural "" "Ensure this filename has at most %(max)d characters (it has %(length)d)." -msgstr[0] "确保此文件名最多具有 %(max)d 个字符(具有 %(length)d 个)。" +msgstr[0] "确保此文件名最多有 %(max)d 个字符 (已有 %(length)d 个)。" -#: venv/lib/python3.8/site-packages/django/forms/fields.py:556 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:630 msgid "Please either submit a file or check the clear checkbox, not both." msgstr "请提交文件或选中清除复选框,不能两者都选。" -#: venv/lib/python3.8/site-packages/django/forms/fields.py:617 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:694 msgid "" "Upload a valid image. The file you uploaded was either not an image or a " "corrupted image." msgstr "上载有效镜像。 您上传的文件不是镜像或镜像已损坏。" -#: venv/lib/python3.8/site-packages/django/forms/fields.py:779 -#: venv/lib/python3.8/site-packages/django/forms/fields.py:869 -#: venv/lib/python3.8/site-packages/django/forms/models.py:1309 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:857 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:949 +#: venv/lib/python3.8/site-packages/django/forms/models.py:1566 #, python-format msgid "Select a valid choice. %(value)s is not one of the available choices." msgstr "请选择一个有效的选择。 %(value)s 不是可用的选择之一。" -#: venv/lib/python3.8/site-packages/django/forms/fields.py:870 -#: venv/lib/python3.8/site-packages/django/forms/fields.py:985 -#: venv/lib/python3.8/site-packages/django/forms/models.py:1308 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:951 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:1070 +#: venv/lib/python3.8/site-packages/django/forms/models.py:1564 msgid "Enter a list of values." msgstr "请输入值列表。" -#: venv/lib/python3.8/site-packages/django/forms/fields.py:986 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:1071 msgid "Enter a complete value." msgstr "请输入一个完整的值。" -#: venv/lib/python3.8/site-packages/django/forms/fields.py:1202 +#: venv/lib/python3.8/site-packages/django/forms/fields.py:1310 msgid "Enter a valid UUID." -msgstr "请输入有效的UUID。" +msgstr "请输入有效的 UUID。" -#: venv/lib/python3.8/site-packages/django/forms/fields.py:1232 -#, fuzzy -#| msgid "Enter a valid URL." +#: venv/lib/python3.8/site-packages/django/forms/fields.py:1340 msgid "Enter a valid JSON." msgstr "输入有效的 JSON。" #. Translators: This is the default suffix added to form field labels -#: venv/lib/python3.8/site-packages/django/forms/forms.py:76 +#: venv/lib/python3.8/site-packages/django/forms/forms.py:98 msgid ":" msgstr ":" -#: venv/lib/python3.8/site-packages/django/forms/forms.py:203 +#: venv/lib/python3.8/site-packages/django/forms/forms.py:244 +#: venv/lib/python3.8/site-packages/django/forms/forms.py:328 #, python-format msgid "(Hidden field %(name)s) %(error)s" -msgstr "(隐藏字段 %(name)s ) %(error)s" +msgstr "(隐藏字段 %(name)s) %(error)s" -#: venv/lib/python3.8/site-packages/django/forms/formsets.py:61 +#: venv/lib/python3.8/site-packages/django/forms/formsets.py:63 #, python-format msgid "" "ManagementForm data is missing or has been tampered with. Missing fields: " @@ -4964,38 +4593,34 @@ msgstr "" "管理表格数据丢失或被篡改。 缺少字段:%(field_names)s 。 如果问题仍然存在,您" "可能需要提交错误报告。" -#: venv/lib/python3.8/site-packages/django/forms/formsets.py:370 -#, fuzzy, python-format -#| msgid "Please submit %d or more forms." -#| msgid_plural "Please submit %d or more forms." -msgid "Please submit at most %d form." -msgid_plural "Please submit at most %d forms." -msgstr[0] "请最多提交 %d 个表格。" +#: venv/lib/python3.8/site-packages/django/forms/formsets.py:67 +#, python-format +msgid "Please submit at most %(num)d form." +msgid_plural "Please submit at most %(num)d forms." +msgstr[0] "请最多提交 %(num)d 个表格。" -#: venv/lib/python3.8/site-packages/django/forms/formsets.py:377 -#, fuzzy, python-format -#| msgid "Please submit %d or more forms." -#| msgid_plural "Please submit %d or more forms." -msgid "Please submit at least %d form." -msgid_plural "Please submit at least %d forms." -msgstr[0] "请至少提交 %d 个表格。" +#: venv/lib/python3.8/site-packages/django/forms/formsets.py:72 +#, python-format +msgid "Please submit at least %(num)d form." +msgid_plural "Please submit at least %(num)d forms." +msgstr[0] "请至少提交 %(num)d 个表格。" -#: venv/lib/python3.8/site-packages/django/forms/formsets.py:405 -#: venv/lib/python3.8/site-packages/django/forms/formsets.py:412 +#: venv/lib/python3.8/site-packages/django/forms/formsets.py:484 +#: venv/lib/python3.8/site-packages/django/forms/formsets.py:491 msgid "Order" msgstr "排序" -#: venv/lib/python3.8/site-packages/django/forms/models.py:763 +#: venv/lib/python3.8/site-packages/django/forms/models.py:886 #, python-format msgid "Please correct the duplicate data for %(field)s." msgstr "请更正 %(field)s 的重复数据。" -#: venv/lib/python3.8/site-packages/django/forms/models.py:767 +#: venv/lib/python3.8/site-packages/django/forms/models.py:891 #, python-format msgid "Please correct the duplicate data for %(field)s, which must be unique." msgstr "请更正 %(field)s 的重复数据,该数据必须唯一。" -#: venv/lib/python3.8/site-packages/django/forms/models.py:773 +#: venv/lib/python3.8/site-packages/django/forms/models.py:898 #, python-format msgid "" "Please correct the duplicate data for %(field_name)s which must be unique " @@ -5004,29 +4629,25 @@ msgstr "" "请更正 %(field_name)s 的重复数据,该数据对于 %(date_field)s 中的 %(lookup)s " "必须是唯一的。" -#: venv/lib/python3.8/site-packages/django/forms/models.py:782 +#: venv/lib/python3.8/site-packages/django/forms/models.py:907 msgid "Please correct the duplicate values below." msgstr "请更正以下重复的值。" -#: venv/lib/python3.8/site-packages/django/forms/models.py:1109 +#: venv/lib/python3.8/site-packages/django/forms/models.py:1338 msgid "The inline value did not match the parent instance." msgstr "内联值与父实例不匹配。" -#: venv/lib/python3.8/site-packages/django/forms/models.py:1193 +#: venv/lib/python3.8/site-packages/django/forms/models.py:1429 msgid "Select a valid choice. That choice is not one of the available choices." msgstr "选择一个有效的选择。 该选择不是可用的选择之一。" -#: venv/lib/python3.8/site-packages/django/forms/models.py:1311 -#, fuzzy, python-format -#| msgid "\"%(pk)s\" is not a valid value." +#: venv/lib/python3.8/site-packages/django/forms/models.py:1568 +#, python-format msgid "“%(pk)s” is not a valid value." msgstr "“%(pk)s”不是有效值。" -#: venv/lib/python3.8/site-packages/django/forms/utils.py:172 -#, fuzzy, python-format -#| msgid "" -#| "%(datetime)s couldn't be interpreted in time zone %(current_timezone)s; " -#| "it may be ambiguous or it may not exist." +#: venv/lib/python3.8/site-packages/django/forms/utils.py:226 +#, python-format msgid "" "%(datetime)s couldn’t be interpreted in time zone %(current_timezone)s; it " "may be ambiguous or it may not exist." @@ -5034,466 +4655,448 @@ msgstr "" "%(datetime)s 无法在时区 %(current_timezone)s 中解释; 它可能不明确,也可能不" "存在。" -#: venv/lib/python3.8/site-packages/django/forms/widgets.py:404 +#: venv/lib/python3.8/site-packages/django/forms/widgets.py:464 msgid "Currently" msgstr "现在" -#: venv/lib/python3.8/site-packages/django/forms/widgets.py:715 +#: venv/lib/python3.8/site-packages/django/forms/widgets.py:795 msgid "Yes" msgstr "是" -#: venv/lib/python3.8/site-packages/django/forms/widgets.py:716 +#: venv/lib/python3.8/site-packages/django/forms/widgets.py:796 msgid "No" msgstr "否" #. Translators: Please do not add spaces around commas. -#: venv/lib/python3.8/site-packages/django/template/defaultfilters.py:817 +#: venv/lib/python3.8/site-packages/django/template/defaultfilters.py:861 msgid "yes,no,maybe" msgstr "是,否,也许" -#: venv/lib/python3.8/site-packages/django/template/defaultfilters.py:846 -#: venv/lib/python3.8/site-packages/django/template/defaultfilters.py:863 +#: venv/lib/python3.8/site-packages/django/template/defaultfilters.py:891 +#: venv/lib/python3.8/site-packages/django/template/defaultfilters.py:908 #, python-format msgid "%(size)d byte" msgid_plural "%(size)d bytes" msgstr[0] "%(size)d 个字节" -#: venv/lib/python3.8/site-packages/django/template/defaultfilters.py:865 +#: venv/lib/python3.8/site-packages/django/template/defaultfilters.py:910 #, python-format msgid "%s KB" msgstr "%s KB" -#: venv/lib/python3.8/site-packages/django/template/defaultfilters.py:867 +#: venv/lib/python3.8/site-packages/django/template/defaultfilters.py:912 #, python-format msgid "%s MB" msgstr "%s MB" -#: venv/lib/python3.8/site-packages/django/template/defaultfilters.py:869 +#: venv/lib/python3.8/site-packages/django/template/defaultfilters.py:914 #, python-format msgid "%s GB" msgstr "%s GB" -#: venv/lib/python3.8/site-packages/django/template/defaultfilters.py:871 +#: venv/lib/python3.8/site-packages/django/template/defaultfilters.py:916 #, python-format msgid "%s TB" msgstr "%s TB" -#: venv/lib/python3.8/site-packages/django/template/defaultfilters.py:873 +#: venv/lib/python3.8/site-packages/django/template/defaultfilters.py:918 #, python-format msgid "%s PB" msgstr "%s PB" -#: venv/lib/python3.8/site-packages/django/utils/dateformat.py:66 +#: venv/lib/python3.8/site-packages/django/utils/dateformat.py:73 msgid "p.m." -msgstr "下午." +msgstr "下午" -#: venv/lib/python3.8/site-packages/django/utils/dateformat.py:67 +#: venv/lib/python3.8/site-packages/django/utils/dateformat.py:74 msgid "a.m." -msgstr "上午." +msgstr "上午" -#: venv/lib/python3.8/site-packages/django/utils/dateformat.py:72 +#: venv/lib/python3.8/site-packages/django/utils/dateformat.py:79 msgid "PM" msgstr "下午" -#: venv/lib/python3.8/site-packages/django/utils/dateformat.py:73 +#: venv/lib/python3.8/site-packages/django/utils/dateformat.py:80 msgid "AM" msgstr "上午" -#: venv/lib/python3.8/site-packages/django/utils/dateformat.py:146 +#: venv/lib/python3.8/site-packages/django/utils/dateformat.py:152 msgid "midnight" msgstr "午夜" -#: venv/lib/python3.8/site-packages/django/utils/dateformat.py:148 +#: venv/lib/python3.8/site-packages/django/utils/dateformat.py:154 msgid "noon" msgstr "中午" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:6 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:7 msgid "Monday" msgstr "星期一" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:6 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:8 msgid "Tuesday" msgstr "星期二" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:6 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:9 msgid "Wednesday" msgstr "星期三" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:6 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:10 msgid "Thursday" msgstr "星期四" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:6 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:11 msgid "Friday" msgstr "星期五" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:7 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:12 msgid "Saturday" msgstr "星期六" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:7 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:13 msgid "Sunday" msgstr "星期日" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:10 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:16 msgid "Mon" msgstr "星期一" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:10 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:17 msgid "Tue" msgstr "星期二" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:10 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:18 msgid "Wed" msgstr "星期三" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:10 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:19 msgid "Thu" msgstr "星期四" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:10 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:20 msgid "Fri" msgstr "星期五" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:11 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:21 msgid "Sat" msgstr "星期六" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:11 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:22 msgid "Sun" msgstr "星期日" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:14 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:25 msgid "January" msgstr "一月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:14 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:26 msgid "February" msgstr "二月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:14 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:27 msgid "March" msgstr "三月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:14 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:28 msgid "April" msgstr "四月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:14 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:29 msgid "May" msgstr "五月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:14 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:30 msgid "June" msgstr "六月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:15 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:31 msgid "July" msgstr "七月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:15 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:32 msgid "August" msgstr "八月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:15 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:33 msgid "September" msgstr "九月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:15 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:34 msgid "October" msgstr "十月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:15 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:35 msgid "November" msgstr "十一月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:16 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:36 msgid "December" msgstr "十二月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:19 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:39 msgid "jan" msgstr "一月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:19 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:40 msgid "feb" msgstr "二月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:19 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:41 msgid "mar" msgstr "三月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:19 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:42 msgid "apr" msgstr "四月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:19 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:43 msgid "may" msgstr "五月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:19 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:44 msgid "jun" msgstr "六月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:20 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:45 msgid "jul" msgstr "七月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:20 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:46 msgid "aug" msgstr "八月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:20 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:47 msgid "sep" msgstr "九月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:20 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:48 msgid "oct" msgstr "十月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:20 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:49 msgid "nov" msgstr "十一月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:20 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:50 msgid "dec" msgstr "十二月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:23 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:53 msgctxt "abbrev. month" msgid "Jan." -msgstr "一月." +msgstr "一月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:24 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:54 msgctxt "abbrev. month" msgid "Feb." -msgstr "二月." +msgstr "二月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:25 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:55 msgctxt "abbrev. month" msgid "March" msgstr "三月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:26 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:56 msgctxt "abbrev. month" msgid "April" msgstr "四月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:27 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:57 msgctxt "abbrev. month" msgid "May" msgstr "五月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:28 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:58 msgctxt "abbrev. month" msgid "June" msgstr "六月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:29 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:59 msgctxt "abbrev. month" msgid "July" msgstr "七月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:30 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:60 msgctxt "abbrev. month" msgid "Aug." -msgstr "八月." +msgstr "八月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:31 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:61 msgctxt "abbrev. month" msgid "Sept." -msgstr "九月." +msgstr "九月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:32 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:62 msgctxt "abbrev. month" msgid "Oct." -msgstr "十月." +msgstr "十月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:33 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:63 msgctxt "abbrev. month" msgid "Nov." -msgstr "十一月." +msgstr "十一月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:34 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:64 msgctxt "abbrev. month" msgid "Dec." -msgstr "十二月." +msgstr "十二月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:37 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:67 msgctxt "alt. month" msgid "January" msgstr "一月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:38 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:68 msgctxt "alt. month" msgid "February" msgstr "二月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:39 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:69 msgctxt "alt. month" msgid "March" msgstr "三月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:40 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:70 msgctxt "alt. month" msgid "April" msgstr "四月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:41 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:71 msgctxt "alt. month" msgid "May" msgstr "五月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:42 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:72 msgctxt "alt. month" msgid "June" msgstr "六月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:43 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:73 msgctxt "alt. month" msgid "July" msgstr "七月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:44 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:74 msgctxt "alt. month" msgid "August" msgstr "八月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:45 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:75 msgctxt "alt. month" msgid "September" msgstr "九月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:46 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:76 msgctxt "alt. month" msgid "October" msgstr "十月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:47 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:77 msgctxt "alt. month" msgid "November" msgstr "十一月" -#: venv/lib/python3.8/site-packages/django/utils/dates.py:48 +#: venv/lib/python3.8/site-packages/django/utils/dates.py:78 msgctxt "alt. month" msgid "December" msgstr "十二月" #: venv/lib/python3.8/site-packages/django/utils/ipv6.py:8 msgid "This is not a valid IPv6 address." -msgstr "这不是有效的IPv6地址。" +msgstr "这不是有效的 IPv6 地址。" -#: venv/lib/python3.8/site-packages/django/utils/text.py:71 +#: venv/lib/python3.8/site-packages/django/utils/text.py:84 #, python-format msgctxt "String to return when truncating text" msgid "%(truncated_text)s…" msgstr "%(truncated_text)s …" -#: venv/lib/python3.8/site-packages/django/utils/text.py:240 +#: venv/lib/python3.8/site-packages/django/utils/text.py:269 msgid "or" msgstr "或" #. Translators: This string is used as a separator between list elements -#: venv/lib/python3.8/site-packages/django/utils/text.py:259 -#: venv/lib/python3.8/site-packages/django/utils/timesince.py:94 +#: venv/lib/python3.8/site-packages/django/utils/text.py:288 +#: venv/lib/python3.8/site-packages/django/utils/timesince.py:135 msgid ", " msgstr ", " +#: venv/lib/python3.8/site-packages/django/utils/timesince.py:8 +#, python-format +msgid "%(num)d year" +msgid_plural "%(num)d years" +msgstr[0] "%(num)d 年" + #: venv/lib/python3.8/site-packages/django/utils/timesince.py:9 #, python-format -msgid "%d year" -msgid_plural "%d years" -msgstr[0] "%d 年" +msgid "%(num)d month" +msgid_plural "%(num)d months" +msgstr[0] "%(num)d 月" #: venv/lib/python3.8/site-packages/django/utils/timesince.py:10 #, python-format -msgid "%d month" -msgid_plural "%d months" -msgstr[0] "%d 月" +msgid "%(num)d week" +msgid_plural "%(num)d weeks" +msgstr[0] "%(num)d 星期" #: venv/lib/python3.8/site-packages/django/utils/timesince.py:11 #, python-format -msgid "%d week" -msgid_plural "%d weeks" -msgstr[0] "%d 星期" +msgid "%(num)d day" +msgid_plural "%(num)d days" +msgstr[0] "%(num)d 日" #: venv/lib/python3.8/site-packages/django/utils/timesince.py:12 #, python-format -msgid "%d day" -msgid_plural "%d days" -msgstr[0] "%d 日" +msgid "%(num)d hour" +msgid_plural "%(num)d hours" +msgstr[0] "%(num)d 小时" #: venv/lib/python3.8/site-packages/django/utils/timesince.py:13 #, python-format -msgid "%d hour" -msgid_plural "%d hours" -msgstr[0] "%d 小时" +msgid "%(num)d minute" +msgid_plural "%(num)d minutes" +msgstr[0] "%(num)d 分钟" -#: venv/lib/python3.8/site-packages/django/utils/timesince.py:14 -#, python-format -msgid "%d minute" -msgid_plural "%d minutes" -msgstr[0] "%d 分钟" - -#: venv/lib/python3.8/site-packages/django/views/csrf.py:110 +#: venv/lib/python3.8/site-packages/django/views/csrf.py:111 msgid "Forbidden" msgstr "被禁止" -#: venv/lib/python3.8/site-packages/django/views/csrf.py:111 +#: venv/lib/python3.8/site-packages/django/views/csrf.py:112 msgid "CSRF verification failed. Request aborted." -msgstr "CSRF验证失败。 请求中止。" +msgstr "CSRF 验证失败。 请求中止。" -#: venv/lib/python3.8/site-packages/django/views/csrf.py:115 -#, fuzzy -#| msgid "" -#| "You are seeing this message because this HTTPS site requires a 'Referer " -#| "header' to be sent by your Web browser, but none was sent. This header is " -#| "required for security reasons, to ensure that your browser is not being " -#| "hijacked by third parties." +#: venv/lib/python3.8/site-packages/django/views/csrf.py:116 msgid "" "You are seeing this message because this HTTPS site requires a “Referer " -"header” to be sent by your Web browser, but none was sent. This header is " +"header” to be sent by your web browser, but none was sent. This header is " "required for security reasons, to ensure that your browser is not being " "hijacked by third parties." msgstr "" -"您看到此消息是因为此 HTTPS 站点需要您的 Web 浏览器发送“Referer 标头”,但没有" +"您看到此消息是因为此 HTTPS 站点需要您的 Web 浏览器发送 “Referer 标头”,但没有" "发送。 出于安全原因,此标头是必需的,以确保您的浏览器不被第三方劫持。" -#: venv/lib/python3.8/site-packages/django/views/csrf.py:120 -#, fuzzy -#| msgid "" -#| "If you have configured your browser to disable 'Referer' headers, please " -#| "re-enable them, at least for this site, or for HTTPS connections, or for " -#| "'same-origin' requests." +#: venv/lib/python3.8/site-packages/django/views/csrf.py:122 msgid "" "If you have configured your browser to disable “Referer” headers, please re-" "enable them, at least for this site, or for HTTPS connections, or for “same-" "origin” requests." msgstr "" -"如果您已将浏览器配置为禁用“Referer”标头,请重新启用它们,至少对于此站点、" +"如果您已将浏览器配置为禁用 “Referer” 标头,请重新启用它们,至少对于此站点、" "HTTPS 连接或“同源”请求。" -#: venv/lib/python3.8/site-packages/django/views/csrf.py:124 -#, fuzzy -#| msgid "" -#| "If you are using the tag " -#| "or including the 'Referrer-Policy: no-referrer' header, please remove " -#| "them. The CSRF protection requires the 'Referer' header to do strict " -#| "referer checking. If you're concerned about privacy, use alternatives " -#| "like for links to third-party sites." +#: venv/lib/python3.8/site-packages/django/views/csrf.py:127 msgid "" "If you are using the tag or " "including the “Referrer-Policy: no-referrer” header, please remove them. The " "CSRF protection requires the “Referer” header to do strict referer checking. " -"If you’re concerned about privacy, use alternatives like for links to third-party sites." +"If you’re concerned about privacy, use alternatives like for links to third-party sites." msgstr "" -"如果您使用的是 标记或包" -"含“Referrer-Policy: no-referrer”标头,请删除它们。 CSRF保护要求“Referer”标头" -"进行严格的引用检查。 如果您担心隐私问题,请使用 之" -"类的替代方法来链接到第三方网站。" +"如果您使用的是 标记或包含 " +"“Referrer-Policy: no-referrer” 标头,请删除它们。 CSRF 保护要求 “Referer” 标" +"头进行严格的引用检查。 如果您担心隐私问题,请使用 " +"之类的替代方法来链接到第三方网站。" -#: venv/lib/python3.8/site-packages/django/views/csrf.py:132 +#: venv/lib/python3.8/site-packages/django/views/csrf.py:136 msgid "" "You are seeing this message because this site requires a CSRF cookie when " "submitting forms. This cookie is required for security reasons, to ensure " @@ -5502,107 +5105,98 @@ msgstr "" "您看到此消息是因为提交表单时此站点需要 CSRF cookie 。 出于安全原因,此 " "cookie 是必需的,以确保您的浏览器不会被第三方劫持。" -#: venv/lib/python3.8/site-packages/django/views/csrf.py:137 -#, fuzzy -#| msgid "" -#| "If you have configured your browser to disable cookies, please re-enable " -#| "them, at least for this site, or for 'same-origin' requests." +#: venv/lib/python3.8/site-packages/django/views/csrf.py:142 msgid "" "If you have configured your browser to disable cookies, please re-enable " "them, at least for this site, or for “same-origin” requests." msgstr "" "如果您已将浏览器配置为禁用 cookie,请至少对本网站或“同源”请求重新启用它们。" -#: venv/lib/python3.8/site-packages/django/views/csrf.py:142 +#: venv/lib/python3.8/site-packages/django/views/csrf.py:148 msgid "More information is available with DEBUG=True." msgstr "DEBUG=True 提供了更多信息。" -#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:41 +#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:44 msgid "No year specified" msgstr "未指定年份" -#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:61 -#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:111 -#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:208 +#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:64 +#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:115 +#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:214 msgid "Date out of range" msgstr "超出日期范围" -#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:90 +#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:94 msgid "No month specified" msgstr "没有指定月份" -#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:142 +#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:147 msgid "No day specified" msgstr "没有指定日期" -#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:188 +#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:194 msgid "No week specified" msgstr "未指定周" -#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:338 -#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:367 +#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:349 +#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:380 #, python-format msgid "No %(verbose_name_plural)s available" msgstr "没有可用的 %(verbose_name_plural)s" -#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:594 +#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:652 #, python-format msgid "" "Future %(verbose_name_plural)s not available because %(class_name)s." "allow_future is False." msgstr "" -"将来的 %(verbose_name_plural)s 不可用,因为 %(class_name)s.allow_future 为" +"未来 %(verbose_name_plural)s 将不可用,因为 %(class_name)s.allow_future 为 " "False。" -#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:628 -#, fuzzy, python-format -#| msgid "Invalid date string '%(datestr)s' given format '%(format)s'" +#: venv/lib/python3.8/site-packages/django/views/generic/dates.py:692 +#, python-format msgid "Invalid date string “%(datestr)s” given format “%(format)s”" -msgstr "给定格式 “%(datestr)s”的无效日期字符串 “%(format)s”" +msgstr "给定格式 “%(format)s” 的无效日期字符串 “%(datestr)s”" -#: venv/lib/python3.8/site-packages/django/views/generic/detail.py:54 +#: venv/lib/python3.8/site-packages/django/views/generic/detail.py:56 #, python-format msgid "No %(verbose_name)s found matching the query" msgstr "找不到与查询匹配的 %(verbose_name)s" -#: venv/lib/python3.8/site-packages/django/views/generic/list.py:67 -#, fuzzy -#| msgid "Page is not 'last', nor can it be converted to an int." +#: venv/lib/python3.8/site-packages/django/views/generic/list.py:70 msgid "Page is not “last”, nor can it be converted to an int." msgstr "页不是 “last”,也不能转换为 int。" -#: venv/lib/python3.8/site-packages/django/views/generic/list.py:72 +#: venv/lib/python3.8/site-packages/django/views/generic/list.py:77 #, python-format msgid "Invalid page (%(page_number)s): %(message)s" msgstr "页面无效 (%(page_number)s): %(message)s" -#: venv/lib/python3.8/site-packages/django/views/generic/list.py:154 -#, fuzzy, python-format -#| msgid "Empty list and '%(class_name)s.allow_empty' is False." +#: venv/lib/python3.8/site-packages/django/views/generic/list.py:169 +#, python-format msgid "Empty list and “%(class_name)s.allow_empty” is False." -msgstr "空列表,并且“%(class_name)s.allow_empty” 为False。" +msgstr "空列表,并且“%(class_name)s.allow_empty” 为 False。" -#: venv/lib/python3.8/site-packages/django/views/static.py:40 +#: venv/lib/python3.8/site-packages/django/views/static.py:38 msgid "Directory indexes are not allowed here." msgstr "目录索引在这里是不允许的。" -#: venv/lib/python3.8/site-packages/django/views/static.py:42 -#, fuzzy, python-format -#| msgid "\"%(path)s\" does not exist" +#: venv/lib/python3.8/site-packages/django/views/static.py:40 +#, python-format msgid "“%(path)s” does not exist" msgstr "“%(path)s” 不存在" -#: venv/lib/python3.8/site-packages/django/views/static.py:80 +#: venv/lib/python3.8/site-packages/django/views/static.py:79 #, python-format msgid "Index of %(directory)s" msgstr "%(directory)s 的索引" #: venv/lib/python3.8/site-packages/django/views/templates/default_urlconf.html:7 -#: venv/lib/python3.8/site-packages/django/views/templates/default_urlconf.html:221 +#: venv/lib/python3.8/site-packages/django/views/templates/default_urlconf.html:220 msgid "The install worked successfully! Congratulations!" msgstr "安装成功! 恭喜您!" -#: venv/lib/python3.8/site-packages/django/views/templates/default_urlconf.html:207 +#: venv/lib/python3.8/site-packages/django/views/templates/default_urlconf.html:206 #, python-format msgid "" "View 发行说明" -#: venv/lib/python3.8/site-packages/django/views/templates/default_urlconf.html:222 +#: venv/lib/python3.8/site-packages/django/views/templates/default_urlconf.html:221 #, python-format msgid "" "You are seeing this page because DEBUG=True is in your settings file and you have not configured any " -"URLs." +"%(version)s/ref/settings/#debug\" target=\"_blank\" " +"rel=\"noopener\">DEBUG=True is in your settings file and you have not " +"configured any URLs." msgstr "" "您之所以会看到此页面,是因为 DEBUG=True 位于您的设置文件中,并且您尚未配置任何URL 。" +"%(version)s/ref/settings/#debug\" target=\"_blank\" " +"rel=\"noopener\">DEBUG=True 位于您的设置文件中,并且您尚未配置任何URL 。" + +#: venv/lib/python3.8/site-packages/django/views/templates/default_urlconf.html:229 +msgid "Django Documentation" +msgstr "Django 文档" #: venv/lib/python3.8/site-packages/django/views/templates/default_urlconf.html:230 -msgid "Django Documentation" -msgstr "Django文档" - -#: venv/lib/python3.8/site-packages/django/views/templates/default_urlconf.html:231 -#, fuzzy -#| msgid "Topics, references, & how-to's" msgid "Topics, references, & how-to’s" msgstr "主题,参考资料, & 操作方法" -#: venv/lib/python3.8/site-packages/django/views/templates/default_urlconf.html:239 +#: venv/lib/python3.8/site-packages/django/views/templates/default_urlconf.html:238 msgid "Tutorial: A Polling App" msgstr "教程:轮询应用" -#: venv/lib/python3.8/site-packages/django/views/templates/default_urlconf.html:240 +#: venv/lib/python3.8/site-packages/django/views/templates/default_urlconf.html:239 msgid "Get started with Django" msgstr "开始使用 Django" -#: venv/lib/python3.8/site-packages/django/views/templates/default_urlconf.html:248 +#: venv/lib/python3.8/site-packages/django/views/templates/default_urlconf.html:247 msgid "Django Community" msgstr "Django 社区" -#: venv/lib/python3.8/site-packages/django/views/templates/default_urlconf.html:249 +#: venv/lib/python3.8/site-packages/django/views/templates/default_urlconf.html:248 msgid "Connect, get help, or contribute" msgstr "连接,获得帮助或贡献" @@ -5653,63 +5245,9 @@ msgstr "连接,获得帮助或贡献" msgid "close" msgstr "关闭" -#: venv/lib/python3.8/site-packages/django_icons/renderers/image.py:217 -msgid "Icon of {}" -msgstr "{} 的图标" - -#: venv/lib/python3.8/site-packages/isort/main.py:158 -msgid "show this help message and exit" -msgstr "显示此帮助消息并退出" - -#: venv/lib/python3.8/site-packages/template_profiler_panel/panels/template.py:144 -#, fuzzy -#| msgid "Template Disk" -msgid "Template Profiler" -msgstr "模板磁盘" - -#: venv/lib/python3.8/site-packages/template_profiler_panel/panels/template.py:148 -msgid "{} calls in {:.2f} ms" -msgstr "" - -#: venv/lib/python3.8/site-packages/template_profiler_panel/panels/template.py:153 -msgid "Template Rendering Time" -msgstr "" - -#: venv/lib/python3.8/site-packages/template_profiler_panel/templates/template_profiler_panel/template.html:2 -msgid "calls to Template.render()" -msgstr "" - -#: venv/lib/python3.8/site-packages/template_profiler_panel/templates/template_profiler_panel/template.html:15 -msgid "Stack Level" -msgstr "" - -#: venv/lib/python3.8/site-packages/template_profiler_panel/templates/template_profiler_panel/template.html:16 -#: venv/lib/python3.8/site-packages/template_profiler_panel/templates/template_profiler_panel/template.html:78 -#, fuzzy -#| msgid "Template" -msgid "Template Name" -msgstr "模板" - -#: venv/lib/python3.8/site-packages/template_profiler_panel/templates/template_profiler_panel/template.html:17 -#, fuzzy -#| msgid "Time" -msgid "Timeline" -msgstr "时间" - -#: venv/lib/python3.8/site-packages/template_profiler_panel/templates/template_profiler_panel/template.html:18 -#: venv/lib/python3.8/site-packages/template_profiler_panel/templates/template_profiler_panel/template.html:79 -#, fuzzy -#| msgid "Time" -msgid "Time (ms)" -msgstr "时间" - -#: venv/lib/python3.8/site-packages/template_profiler_panel/templates/template_profiler_panel/template.html:74 -msgid "Summary" -msgstr "" - #: virtsecrets/templates/create_secret_block.html:13 msgid "Create New Secret" -msgstr "创建新的 密码/密钥" +msgstr "创建新的密码/密钥" #: virtsecrets/templates/create_secret_block.html:19 msgid "Ephemeral" @@ -5736,7 +5274,7 @@ msgstr "数据" #: virtsecrets/templates/secrets.html:52 msgid "Hypervisor doesn't have any Secrets" -msgstr "虚拟机监控程序没有检测到任何 密码/密钥" +msgstr "虚拟机监控程序没有检测到任何密码/密钥" #: virtsecrets/templates/secrets.html:62 msgid "Usage Type" @@ -5744,7 +5282,7 @@ msgstr "使用类型" #: virtsecrets/templates/secrets.html:90 msgid "Set secret value" -msgstr "设定 密钥/密码 值" +msgstr "设定密钥/密码值" #: virtsecrets/templates/secrets.html:96 msgid "Value" @@ -5753,7 +5291,288 @@ msgstr "数值" #: webvirtcloud/middleware.py:18 #, python-format msgid "libvirt Error - %(exception)s" -msgstr "libvirt 错误- %(exception)s" +msgstr "libvirt 错误 - %(exception)s" + +#: webvirtcloud/settings.py:223 +msgid "Localhost" +msgstr "本地" + +#: webvirtcloud/settings.py:224 +msgid "All interfaces" +msgstr "所有接口" + +#, fuzzy +#~| msgid "Disconnected" +#~ msgid "Disconnecting..." +#~ msgstr "断开连接" + +#, fuzzy +#~| msgid "Connection" +#~ msgid "Reconnecting..." +#~ msgstr "连接" + +#, fuzzy +#~| msgid "Internal" +#~ msgid "Internal error" +#~ msgstr "内部" + +#, fuzzy +#~| msgid "must set host and port" +#~ msgid "Must set host" +#~ msgstr "必须设置主机和端口" + +#, fuzzy +#~| msgid "No network name has been entered" +#~ msgid "New connection has been rejected" +#~ msgstr "没有输入网络名称" + +#, fuzzy +#~| msgid "argument %s is required" +#~ msgid "Credentials are required" +#~ msgstr "参数 %s 是必需的" + +#~ msgid "Toggle Dropdown" +#~ msgstr "下拉切换" + +#, python-brace-format +#~ msgid "{editor}: Editing failed" +#~ msgstr "{editor}: 编辑失败" + +#, python-brace-format +#~ msgid "{editor}: Editing failed: {e}" +#~ msgstr "{editor}: 编辑失败: {e}" + +#~ msgid "Aborted!" +#~ msgstr "中止!" + +#~ msgid "Show this message and exit." +#~ msgstr "显示此消息并退出。" + +#, python-brace-format +#~ msgid "(Deprecated) {text}" +#~ msgstr "(已弃用) {text}" + +#, python-brace-format +#~ msgid "Got unexpected extra argument ({args})" +#~ msgid_plural "Got unexpected extra arguments ({args})" +#~ msgstr[0] "有意外的额外参数 ({args})" + +#~ msgid "DeprecationWarning: The command {name!r} is deprecated." +#~ msgstr "弃用警告:命令 {name!r} 已弃用。" + +#~ msgid "Commands" +#~ msgstr "命令" + +#~ msgid "Missing command." +#~ msgstr "缺少命令。" + +#~ msgid "No such command {name!r}." +#~ msgstr "没有这样的命令 {name!r} 。" + +#~ msgid "Value must be an iterable." +#~ msgstr "值必须是可迭代的。" + +#, python-brace-format +#~ msgid "Takes {nargs} values but 1 was given." +#~ msgid_plural "Takes {nargs} values but {len} were given." +#~ msgstr[0] "取 {nargs} 值,但给出 {len} 。" + +#, python-brace-format +#~ msgid "env var: {var}" +#~ msgstr "环境变量: {var}" + +#~ msgid "(dynamic)" +#~ msgstr "(动态的)" + +#, python-brace-format +#~ msgid "default: {default}" +#~ msgstr "默认值:{default}" + +#~ msgid "required" +#~ msgstr "必需的" + +#, python-format +#~ msgid "%(prog)s, version %(version)s" +#~ msgstr "%(prog)s , 版本 %(version)s" + +#~ msgid "Show the version and exit." +#~ msgstr "显示版本并退出。" + +#, python-brace-format +#~ msgid "Error: {message}" +#~ msgstr "错误:{message}" + +#, python-brace-format +#~ msgid "Try '{command} {option}' for help." +#~ msgstr "尝试通过 '{command} {option}' 来寻求帮助。" + +#, python-brace-format +#~ msgid "Invalid value: {message}" +#~ msgstr "无效的数值:{message}" + +#, python-brace-format +#~ msgid "Invalid value for {param_hint}: {message}" +#~ msgstr "{param_hint} 的值无效:{message}" + +#~ msgid "Missing argument" +#~ msgstr "缺少参数" + +#~ msgid "Missing option" +#~ msgstr "缺少选项" + +#~ msgid "Missing parameter" +#~ msgstr "缺少参数" + +#, python-brace-format +#~ msgid "Missing {param_type}" +#~ msgstr "缺少 {param_type}" + +#, python-brace-format +#~ msgid "Missing parameter: {param_name}" +#~ msgstr "缺少参数:{param_name}" + +#, python-brace-format +#~ msgid "No such option: {name}" +#~ msgstr "没有这样的选项:{name}" + +#, python-brace-format +#~ msgid "Did you mean {possibility}?" +#~ msgid_plural "(Possible options: {possibilities})" +#~ msgstr[0] "(可能的选项:{possibilities} )" + +#~ msgid "unknown error" +#~ msgstr "未知错误" + +#~ msgid "Could not open file {filename!r}: {message}" +#~ msgstr "无法打开文件 {filename!r}: {message}" + +#~ msgid "Argument {name!r} takes {nargs} values." +#~ msgstr "参数 {name!r} 采用 {nargs} 值。" + +#~ msgid "Option {name!r} does not take a value." +#~ msgstr "选项 {name!r} 没有值。" + +#~ msgid "Option {name!r} requires an argument." +#~ msgid_plural "Option {name!r} requires {nargs} arguments." +#~ msgstr[0] "选项 {name!r} 需要 {nargs} 参数。" + +#~ msgid "Shell completion is not supported for Bash versions older than 4.4." +#~ msgstr "早于4.4的Bash版本不支持完成Shell动作执行。" + +#~ msgid "Couldn't detect Bash version, shell completion is not supported." +#~ msgstr "无法检测 Bash 版本,不支持完成shell动作执行。" + +#~ msgid "Repeat for confirmation" +#~ msgstr "重复确认" + +#~ msgid "Error: The value you entered was invalid." +#~ msgstr "错误:您输入的值无效。" + +#, python-brace-format +#~ msgid "Error: {e.message}" +#~ msgstr "错误:{e.message}" + +#~ msgid "Error: The two entered values do not match." +#~ msgstr "错误:输入的两个值不匹配。" + +#~ msgid "Error: invalid input" +#~ msgstr "错误:无效的输入" + +#~ msgid "Press any key to continue..." +#~ msgstr "按任意键继续..." + +#, python-brace-format +#~ msgid "" +#~ "Choose from:\n" +#~ "\t{choices}" +#~ msgstr "" +#~ "选择:\n" +#~ "\t{choices}" + +#~ msgid "{value!r} is not {choice}." +#~ msgid_plural "{value!r} is not one of {choices}." +#~ msgstr[0] "{value!r} 不是 {choice} / {choices} 之一。" + +#~ msgid "{value!r} does not match the format {format}." +#~ msgid_plural "{value!r} does not match the formats {formats}." +#~ msgstr[0] "{value!r} 与格式 {formats} 不匹配。" + +#~| msgid "Value %(value)r is not a valid choice." +#~ msgid "{value!r} is not a valid {number_type}." +#~ msgstr "{value!r} is not a valid {number_type}." + +#, python-brace-format +#~ msgid "{value} is not in the range {range}." +#~ msgstr "{value} 不在范围 {range} 内。" + +#~ msgid "{value!r} is not a valid boolean." +#~ msgstr "{value!r} 不是有效的布尔值。" + +#~ msgid "{value!r} is not a valid UUID." +#~ msgstr "{value!r} 不是有效的UUID 。" + +#~ msgid "file" +#~ msgstr "文件" + +#~ msgid "directory" +#~ msgstr "目录" + +#~ msgid "{name} {filename!r} does not exist." +#~ msgstr "{name} {filename!r} 不存在。" + +#~ msgid "{name} {filename!r} is a file." +#~ msgstr "{name} {filename!r} 是一个文件。" + +#, python-brace-format +#~ msgid "{name} '{filename}' is a directory." +#~ msgstr "{name} '{filename}' 是一个目录。" + +#~ msgid "{name} {filename!r} is not readable." +#~ msgstr "{name} {filename!r} 不可读。" + +#~ msgid "{name} {filename!r} is not writable." +#~ msgstr "{name} {filename!r} 不可写。" + +#~ msgid "{name} {filename!r} is not executable." +#~ msgstr "{name} {filename!r} 不可执行。" + +#, python-brace-format +#~ msgid "{len_type} values are required, but {len_value} was given." +#~ msgid_plural "{len_type} values are required, but {len_value} were given." +#~ msgstr[0] "{len_type} 值是必需的,但给出了 {len_value} 。" + +#~ msgid "Icon of {}" +#~ msgstr "{} 的图标" + +#~ msgid "show this help message and exit" +#~ msgstr "显示此帮助消息并退出" + +#~ msgid "Template Profiler" +#~ msgstr "模板分析器" + +#~ msgid "{} calls in {:.2f} ms" +#~ msgstr "{} 次调用于 {:.2f} 毫秒内" + +#~ msgid "Template Rendering Time" +#~ msgstr "模板呈现时间" + +#~ msgid "calls to Template.render()" +#~ msgstr "调用 Template.render()" + +#~ msgid "Stack Level" +#~ msgstr "堆栈级别" + +#~ msgid "Template Name" +#~ msgstr "模板名称" + +#~ msgid "Timeline" +#~ msgstr "时间轴" + +#~ msgid "Time (ms)" +#~ msgstr "时间(毫秒)" + +#~ msgid "Summary" +#~ msgstr "概要" #, fuzzy #~| msgid "CPU Usage" @@ -6030,9 +5849,6 @@ msgstr "libvirt 错误- %(exception)s" #~ msgid "too few arguments" #~ msgstr "参数太少" -#~ msgid "argument %s is required" -#~ msgstr "参数 %s 是必需的" - #~ msgid "one of the arguments %s is required" #~ msgstr "参数 %s 之一是必需的"