public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
* [pve-devel] [PATCH manager 1/2] add context to translatable strings
@ 2025-10-23  8:30 Maximiliano Sandoval
  2025-10-23  8:30 ` [pve-devel] [PATCH manager 2/2] improve some " Maximiliano Sandoval
  0 siblings, 1 reply; 2+ messages in thread
From: Maximiliano Sandoval @ 2025-10-23  8:30 UTC (permalink / raw)
  To: pve-devel

These will be displayed in translator editors and provide context for
translators.

Some strings like "Verify State" are not clear in meaning without added
context. It is a reasonable assumption for "Verify" to be a verb, since
button labels should start with a verb and we do not have enough context
in the i18n context to see this is not part of such a label, but in this
case we actually mean the state of the verification task.

Signed-off-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
---
 www/manager6/dc/MetricServerView.js               | 3 +++
 www/manager6/grid/BackupView.js                   | 1 +
 www/manager6/sdn/fabrics/openfabric/FabricEdit.js | 3 +++
 www/manager6/sdn/zones/VxlanEdit.js               | 1 +
 www/manager6/storage/BackupView.js                | 1 +
 www/manager6/storage/Base.js                      | 1 +
 www/manager6/window/Backup.js                     | 1 +
 www/manager6/window/Migrate.js                    | 1 +
 8 files changed, 12 insertions(+)

diff --git a/www/manager6/dc/MetricServerView.js b/www/manager6/dc/MetricServerView.js
index 26e89923..1cb9d516 100644
--- a/www/manager6/dc/MetricServerView.js
+++ b/www/manager6/dc/MetricServerView.js
@@ -585,6 +585,7 @@ Ext.define('PVE.dc.OpenTelemetryEdit', {
                     name: 'server',
                     fieldLabel: gettext('Server'),
                     allowBlank: false,
+                    // TRANSLATORS: otel-collector is a property of OpenTelemetry.
                     emptyText: gettext('otel-collector.example.com'),
                 },
                 {
@@ -680,6 +681,7 @@ Ext.define('PVE.dc.OpenTelemetryEdit', {
                             name: 'headers_advanced',
                             fieldLabel: gettext('HTTP Headers (JSON)'),
                             labelAlign: 'top',
+                            // TRANSLATORS: These are sample json payloads, only translate the values
                             emptyText: gettext(
                                 '{\n  "Authorization": "Bearer token",\n  "X-Custom-Header": "value"\n}',
                             ),
@@ -701,6 +703,7 @@ Ext.define('PVE.dc.OpenTelemetryEdit', {
                             name: 'resource_attributes_advanced',
                             fieldLabel: gettext('Resource Attributes (JSON)'),
                             labelAlign: 'top',
+                            // TRANSLATORS: These are sample json payloads, only translate the values
                             emptyText: gettext(
                                 '{\n  "environment": "production",\n  "datacenter": "dc1",\n  "region": "us-east-1"\n}',
                             ),
diff --git a/www/manager6/grid/BackupView.js b/www/manager6/grid/BackupView.js
index d17c94b9..c1474e04 100644
--- a/www/manager6/grid/BackupView.js
+++ b/www/manager6/grid/BackupView.js
@@ -376,6 +376,7 @@ Ext.define('PVE.grid.BackupView', {
                     renderer: PVE.Utils.render_backup_encryption,
                 },
                 {
+		    // TRANSLATORS: The state of the verification task
                     header: gettext('Verify State'),
                     dataIndex: 'verification',
                     renderer: PVE.Utils.render_backup_verification,
diff --git a/www/manager6/sdn/fabrics/openfabric/FabricEdit.js b/www/manager6/sdn/fabrics/openfabric/FabricEdit.js
index 46dd61c4..14b71fae 100644
--- a/www/manager6/sdn/fabrics/openfabric/FabricEdit.js
+++ b/www/manager6/sdn/fabrics/openfabric/FabricEdit.js
@@ -43,6 +43,7 @@ Ext.define('PVE.sdn.Fabric.OpenFabric.Fabric.Edit', {
         },
         {
             xtype: 'proxmoxintegerfield',
+            // TRANSLATORS: See https://en.wikipedia.org/wiki/IS-IS#Packet_types
             fieldLabel: gettext('Hello Interval'),
             labelWidth: 120,
             name: 'hello_interval',
@@ -55,6 +56,8 @@ Ext.define('PVE.sdn.Fabric.OpenFabric.Fabric.Edit', {
         },
         {
             xtype: 'proxmoxintegerfield',
+            // TRANSLATORS: Stands for Complete Sequence Number Packet, see
+            // https://datatracker.ietf.org/doc/html/draft-ietf-lsr-distoptflood#name-flooding-failures
             fieldLabel: gettext('CSNP Interval'),
             labelWidth: 120,
             name: 'csnp_interval',
diff --git a/www/manager6/sdn/zones/VxlanEdit.js b/www/manager6/sdn/zones/VxlanEdit.js
index 43494dec..4b53c2ff 100644
--- a/www/manager6/sdn/zones/VxlanEdit.js
+++ b/www/manager6/sdn/zones/VxlanEdit.js
@@ -62,6 +62,7 @@ Ext.define('PVE.sdn.zones.VxlanInputPanel', {
                     width: 600,
                     columns: [
                         {
+                            // TRANSLATORS: As in "Network Fabric": https://en.wikipedia.org/wiki/Switched_fabric
                             header: gettext('Fabric'),
                             width: 90,
                             dataIndex: 'iface',
diff --git a/www/manager6/storage/BackupView.js b/www/manager6/storage/BackupView.js
index d2d1c0e6..f43c172d 100644
--- a/www/manager6/storage/BackupView.js
+++ b/www/manager6/storage/BackupView.js
@@ -213,6 +213,7 @@ Ext.define('PVE.storage.BackupView', {
                 },
             };
             me.extraColumns.verification = {
+		// TRANSLATORS: The state of the verification task
                 header: gettext('Verify State'),
                 dataIndex: 'verification',
                 renderer: PVE.Utils.render_backup_verification,
diff --git a/www/manager6/storage/Base.js b/www/manager6/storage/Base.js
index cf89ef6d..43b988a1 100644
--- a/www/manager6/storage/Base.js
+++ b/www/manager6/storage/Base.js
@@ -81,6 +81,7 @@ Ext.define('PVE.panel.StorageBase', {
             addAdvancedWidget({
                 xtype: 'proxmoxcheckbox',
                 name: 'snapshot-as-volume-chain',
+                // TRANSLATORS: As in "following the chain of volumes"
                 boxLabel: gettext('Allow Snapshots as Volume-Chain'),
                 deleteEmpty: !me.isCreate,
                 // can only allow to enable this on creation for storages that previously already
diff --git a/www/manager6/window/Backup.js b/www/manager6/window/Backup.js
index 65ec9659..7c1c54de 100644
--- a/www/manager6/window/Backup.js
+++ b/www/manager6/window/Backup.js
@@ -41,6 +41,7 @@ Ext.define('PVE.window.Backup', {
             xtype: 'proxmoxKVComboBox',
             comboItems: [
                 ['notification-system', gettext('Use global settings')],
+                // TRANSLATORS: sendmail is a piece of software
                 ['legacy-sendmail', gettext('Use sendmail (legacy)')],
             ],
             fieldLabel: gettext('Notification'),
diff --git a/www/manager6/window/Migrate.js b/www/manager6/window/Migrate.js
index 88d09189..ff80c70c 100644
--- a/www/manager6/window/Migrate.js
+++ b/www/manager6/window/Migrate.js
@@ -645,6 +645,7 @@ Ext.define('PVE.window.Migrate', {
                         {
                             xtype: 'proxmoxcheckbox',
                             name: 'withConntrackState',
+                            // TRANSLATORS: See https://www.kernel.org/doc/html/next/networking/netlink_spec/conntrack.html
                             fieldLabel: gettext('Conntrack state'),
                             autoEl: {
                                 tag: 'div',
-- 
2.47.3



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel


^ permalink raw reply	[flat|nested] 2+ messages in thread

* [pve-devel] [PATCH manager 2/2] improve some translatable strings
  2025-10-23  8:30 [pve-devel] [PATCH manager 1/2] add context to translatable strings Maximiliano Sandoval
@ 2025-10-23  8:30 ` Maximiliano Sandoval
  0 siblings, 0 replies; 2+ messages in thread
From: Maximiliano Sandoval @ 2025-10-23  8:30 UTC (permalink / raw)
  To: pve-devel

Regarding the change in Restore.js: In certain languages (e.g. Spanish)
CT and VM would have different genders, hence it is not possible to use
the same string without having at least one wrong translation.

Regarding the batch size label, the `b` in batch size is not very
obvious in meaning from a i18n perspective.

Signed-off-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
---
 www/manager6/dc/MetricServerView.js | 2 +-
 www/manager6/window/Restore.js      | 7 +++----
 2 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/www/manager6/dc/MetricServerView.js b/www/manager6/dc/MetricServerView.js
index 1cb9d516..ebfdf2e4 100644
--- a/www/manager6/dc/MetricServerView.js
+++ b/www/manager6/dc/MetricServerView.js
@@ -369,7 +369,7 @@ Ext.define('PVE.dc.InfluxDBEdit', {
                 {
                     xtype: 'proxmoxintegerfield',
                     name: 'max-body-size',
-                    fieldLabel: gettext('Batch Size (b)'),
+                    fieldLabel: gettext('Batch Size (bits)'),
                     minValue: 1,
                     emptyText: '25000000',
                     submitEmpty: false,
diff --git a/www/manager6/window/Restore.js b/www/manager6/window/Restore.js
index 690116df..f376da9a 100644
--- a/www/manager6/window/Restore.js
+++ b/www/manager6/window/Restore.js
@@ -93,12 +93,11 @@ Ext.define('PVE.window.Restore', {
             };
 
             if (view.vmid) {
-                confirmMsg += `. ${Ext.String.format(
-                    gettext('This will permanently erase current {0} data.'),
-                    view.vmtype === 'lxc' ? 'CT' : 'VM',
-                )}`;
                 if (view.vmtype === 'lxc') {
+                    confirmMsg += `. ${gettext('This will permanently erase current CT data.')}`;
                     confirmMsg += `<br>${gettext('Mount point volumes are also erased.')}`;
+                } else {
+                    confirmMsg += `. ${gettext('This will permanently erase current VM data.')}`;
                 }
                 Ext.Msg.confirm(gettext('Confirm'), confirmMsg, function (btn) {
                     if (btn === 'yes') {
-- 
2.47.3



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2025-10-23  8:31 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-10-23  8:30 [pve-devel] [PATCH manager 1/2] add context to translatable strings Maximiliano Sandoval
2025-10-23  8:30 ` [pve-devel] [PATCH manager 2/2] improve some " Maximiliano Sandoval

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal