all lists on lists.proxmox.com
 help / color / mirror / Atom feed
* [pve-devel] [PATCH pve_manager, proxmox-widget-toolkit 0/2] fix 4551: Storage units should be gettextized to be translated
@ 2023-04-04 10:14 Noel Ullreich
  2023-04-04 10:14 ` [pve-devel] [PATCH pve_manager 1/1] Translate units Noel Ullreich
  2023-04-04 10:14 ` [pve-devel] [PATCH proxmox-widget-toolkit 1/1] translate units in `format_size` Noel Ullreich
  0 siblings, 2 replies; 4+ messages in thread
From: Noel Ullreich @ 2023-04-04 10:14 UTC (permalink / raw)
  To: pve-devel

added a `gettext` instance of the units in a formatting function.
All the units that were not affected by this but needed translation were
manually put into a `gettext` instance.

Noel Ullreich (2):
  Translate units
  translate units in `format_size`

 www/manager6/ceph/OSD.js                 | 4 ++--
 www/manager6/form/DiskStorageSelector.js | 2 +-
 www/manager6/lxc/MPResize.js             | 2 +-
 www/manager6/qemu/HDResize.js            | 2 +-
 src/Utils.js                             | 14 ++++++++------
 5 files changed, 13 insertions(+), 11 deletions(-)

-- 
2.30.2





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

* [pve-devel] [PATCH pve_manager 1/1] Translate units
  2023-04-04 10:14 [pve-devel] [PATCH pve_manager, proxmox-widget-toolkit 0/2] fix 4551: Storage units should be gettextized to be translated Noel Ullreich
@ 2023-04-04 10:14 ` Noel Ullreich
  2023-04-04 13:18   ` Thomas Lamprecht
  2023-04-04 10:14 ` [pve-devel] [PATCH proxmox-widget-toolkit 1/1] translate units in `format_size` Noel Ullreich
  1 sibling, 1 reply; 4+ messages in thread
From: Noel Ullreich @ 2023-04-04 10:14 UTC (permalink / raw)
  To: pve-devel

added `gettext` to units that were "hardcoded"

Signed-off-by: Noel Ullreich <n.ullreich@proxmox.com>
---
 www/manager6/ceph/OSD.js                 | 4 ++--
 www/manager6/form/DiskStorageSelector.js | 2 +-
 www/manager6/lxc/MPResize.js             | 2 +-
 www/manager6/qemu/HDResize.js            | 2 +-
 4 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/www/manager6/ceph/OSD.js b/www/manager6/ceph/OSD.js
index 2f12f94d..40226f7a 100644
--- a/www/manager6/ceph/OSD.js
+++ b/www/manager6/ceph/OSD.js
@@ -83,7 +83,7 @@ Ext.define('PVE.CephCreateOsd', {
 			{
 			    xtype: 'numberfield',
 			    name: 'db_dev_size',
-			    fieldLabel: gettext('DB size') + ' (GiB)',
+			    fieldLabel: gettext('DB size') + ' ' + gettext('GiB'),
 			    minValue: 1,
 			    maxValue: 128*1024,
 			    decimalPrecision: 2,
@@ -137,7 +137,7 @@ Ext.define('PVE.CephCreateOsd', {
 			{
 			    xtype: 'numberfield',
 			    name: 'wal_dev_size',
-			    fieldLabel: gettext('WAL size') + ' (GiB)',
+			    fieldLabel: gettext('WAL size') + ' ' + gettext('GiB'),
 			    minValue: 0.5,
 			    maxValue: 128*1024,
 			    decimalPrecision: 2,
diff --git a/www/manager6/form/DiskStorageSelector.js b/www/manager6/form/DiskStorageSelector.js
index abd46deb..0e6dee40 100644
--- a/www/manager6/form/DiskStorageSelector.js
+++ b/www/manager6/form/DiskStorageSelector.js
@@ -148,7 +148,7 @@ Ext.define('PVE.form.DiskStorageSelector', {
 		itemId: 'disksize',
 		reference: 'disksize',
 		name: 'disksize',
-		fieldLabel: gettext('Disk size') + ' (GiB)',
+		fieldLabel: gettext('Disk size') + ' ' + gettext('GiB'),
 		hidden: me.hideSize,
 		disabled: me.hideSize,
 		minValue: 0.001,
diff --git a/www/manager6/lxc/MPResize.js b/www/manager6/lxc/MPResize.js
index 881c037b..292979b6 100644
--- a/www/manager6/lxc/MPResize.js
+++ b/www/manager6/lxc/MPResize.js
@@ -52,7 +52,7 @@ Ext.define('PVE.window.MPResize', {
 	    maxValue: 128*1024,
 	    decimalPrecision: 3,
 	    value: '0',
-	    fieldLabel: gettext('Size Increment') + ' (GiB)',
+	    fieldLabel: gettext('Size Increment') + ' ' + gettext('GiB'),
 	    allowBlank: false,
 	});
 
diff --git a/www/manager6/qemu/HDResize.js b/www/manager6/qemu/HDResize.js
index f9c7290d..d8131663 100644
--- a/www/manager6/qemu/HDResize.js
+++ b/www/manager6/qemu/HDResize.js
@@ -49,7 +49,7 @@ Ext.define('PVE.window.HDResize', {
 	    maxValue: 128*1024,
 	    decimalPrecision: 3,
 	    value: '0',
-	    fieldLabel: gettext('Size Increment') + ' (GiB)',
+	    fieldLabel: gettext('Size Increment') + ' ' + gettext('GiB'),
 	    allowBlank: false,
 	});
 
-- 
2.30.2





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

* [pve-devel] [PATCH proxmox-widget-toolkit 1/1] translate units in `format_size`
  2023-04-04 10:14 [pve-devel] [PATCH pve_manager, proxmox-widget-toolkit 0/2] fix 4551: Storage units should be gettextized to be translated Noel Ullreich
  2023-04-04 10:14 ` [pve-devel] [PATCH pve_manager 1/1] Translate units Noel Ullreich
@ 2023-04-04 10:14 ` Noel Ullreich
  1 sibling, 0 replies; 4+ messages in thread
From: Noel Ullreich @ 2023-04-04 10:14 UTC (permalink / raw)
  To: pve-devel

By `gettext`ing the units in the `format_size` function, we can
translate the units for (almost) all of the web interface.

Signed-off-by: Noel Ullreich <n.ullreich@proxmox.com>
---
 src/Utils.js | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/src/Utils.js b/src/Utils.js
index 5e1a6f3..529e552 100644
--- a/src/Utils.js
+++ b/src/Utils.js
@@ -688,21 +688,23 @@ utilities: {
     },
 
     format_size: function(size, useSI) {
-	let units = ['', 'K', 'M', 'G', 'T', 'P', 'E', 'Z', 'Y'];
+	let unitsSI = [gettext('B'), gettext('KB'), gettext('MB'), gettext('GB'),
+	    gettext('TB'), gettext('PB'), gettext('EB'), gettext('ZB'), gettext('YB')];
+	let unitsIEC = [gettext('B'), gettext('KiB'), gettext('MiB'), gettext('GiB'),
+	    gettext('TiB'), gettext('PiB'), gettext('EiB'), gettext('ZiB'), gettext('YiB')];
 	let order = 0;
+	let commaDigits = 2;
 	const baseValue = useSI ? 1000 : 1024;
-	while (size >= baseValue && order < units.length) {
+	while (size >= baseValue && order < unitsSI.length) {
 	    size = size / baseValue;
 	    order++;
 	}
 
-	let unit = units[order], commaDigits = 2;
+	let unit = useSI ? unitsSI[order] : unitsIEC[order];
 	if (order === 0) {
 	    commaDigits = 0;
-	} else if (!useSI) {
-	    unit += 'i';
 	}
-	return `${size.toFixed(commaDigits)} ${unit}B`;
+	return `${size.toFixed(commaDigits)} ${unit}`;
     },
 
     SizeUnits: {
-- 
2.30.2





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

* Re: [pve-devel] [PATCH pve_manager 1/1] Translate units
  2023-04-04 10:14 ` [pve-devel] [PATCH pve_manager 1/1] Translate units Noel Ullreich
@ 2023-04-04 13:18   ` Thomas Lamprecht
  0 siblings, 0 replies; 4+ messages in thread
From: Thomas Lamprecht @ 2023-04-04 13:18 UTC (permalink / raw)
  To: Proxmox VE development discussion, Noel Ullreich

The subject is very lacking, if I'd stuble over this when skimming through a
git log --oneline or the like, which I find myself doing very often in repos,
I'd have no idea what this is about – translation is used for a myriad of things
in IT and units too; also no subsystem tag - so no idea if this is API, UI, or
something else. Also no reference to the enhancement request this addresses.

I'd prefer something like:

fix #4551: ui: use gettext for byte units

or

fix #4551: ui: make byte units translatable

Am 04/04/2023 um 12:14 schrieb Noel Ullreich:
> added `gettext` to units that were "hardcoded"

this doesn't adds that much information, as I can gather the "what?" from checking
the change itself, at least here as it's relatively trivial.

So rather add some reasoning, i.e., "why?"; something like that byte isn't actually
an SI-Unit and is not commonly used in some languages, like e.g., French, and that
some languages are even translating SI-Prefixes into their script.

> 
> Signed-off-by: Noel Ullreich <n.ullreich@proxmox.com>
> ---
>  www/manager6/ceph/OSD.js                 | 4 ++--
>  www/manager6/form/DiskStorageSelector.js | 2 +-
>  www/manager6/lxc/MPResize.js             | 2 +-
>  www/manager6/qemu/HDResize.js            | 2 +-
>  4 files changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/www/manager6/ceph/OSD.js b/www/manager6/ceph/OSD.js
> index 2f12f94d..40226f7a 100644
> --- a/www/manager6/ceph/OSD.js
> +++ b/www/manager6/ceph/OSD.js
> @@ -83,7 +83,7 @@ Ext.define('PVE.CephCreateOsd', {
>  			{
>  			    xtype: 'numberfield',
>  			    name: 'db_dev_size',
> -			    fieldLabel: gettext('DB size') + ' (GiB)',
> +			    fieldLabel: gettext('DB size') + ' ' + gettext('GiB'),

1. you dropped the parenthesis
2. can we please switch to template strings when touching such lines

fieldLabel: `${gettext('DB size')} (${gettext('GiB')})`,

>  			    minValue: 1,
>  			    maxValue: 128*1024,
>  			    decimalPrecision: 2,
> @@ -137,7 +137,7 @@ Ext.define('PVE.CephCreateOsd', {
>  			{
>  			    xtype: 'numberfield',
>  			    name: 'wal_dev_size',
> -			    fieldLabel: gettext('WAL size') + ' (GiB)',
> +			    fieldLabel: gettext('WAL size') + ' ' + gettext('GiB'),

same as above on both points

>  			    minValue: 0.5,
>  			    maxValue: 128*1024,
>  			    decimalPrecision: 2,
> diff --git a/www/manager6/form/DiskStorageSelector.js b/www/manager6/form/DiskStorageSelector.js
> index abd46deb..0e6dee40 100644
> --- a/www/manager6/form/DiskStorageSelector.js
> +++ b/www/manager6/form/DiskStorageSelector.js
> @@ -148,7 +148,7 @@ Ext.define('PVE.form.DiskStorageSelector', {
>  		itemId: 'disksize',
>  		reference: 'disksize',
>  		name: 'disksize',
> -		fieldLabel: gettext('Disk size') + ' (GiB)',
> +		fieldLabel: gettext('Disk size') + ' ' + gettext('GiB'),

same as above on both pointss



>  		hidden: me.hideSize,
>  		disabled: me.hideSize,
>  		minValue: 0.001,
> diff --git a/www/manager6/lxc/MPResize.js b/www/manager6/lxc/MPResize.js
> index 881c037b..292979b6 100644
> --- a/www/manager6/lxc/MPResize.js
> +++ b/www/manager6/lxc/MPResize.js
> @@ -52,7 +52,7 @@ Ext.define('PVE.window.MPResize', {
>  	    maxValue: 128*1024,
>  	    decimalPrecision: 3,
>  	    value: '0',
> -	    fieldLabel: gettext('Size Increment') + ' (GiB)',
> +	    fieldLabel: gettext('Size Increment') + ' ' + gettext('GiB'),

same as above on both points

>  	    allowBlank: false,
>  	});
>  
> diff --git a/www/manager6/qemu/HDResize.js b/www/manager6/qemu/HDResize.js
> index f9c7290d..d8131663 100644
> --- a/www/manager6/qemu/HDResize.js
> +++ b/www/manager6/qemu/HDResize.js
> @@ -49,7 +49,7 @@ Ext.define('PVE.window.HDResize', {
>  	    maxValue: 128*1024,
>  	    decimalPrecision: 3,
>  	    value: '0',
> -	    fieldLabel: gettext('Size Increment') + ' (GiB)',
> +	    fieldLabel: gettext('Size Increment') + ' ' + gettext('GiB'),

same as above on both points

>  	    allowBlank: false,
>  	});
>  





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

end of thread, other threads:[~2023-04-04 13:19 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-04-04 10:14 [pve-devel] [PATCH pve_manager, proxmox-widget-toolkit 0/2] fix 4551: Storage units should be gettextized to be translated Noel Ullreich
2023-04-04 10:14 ` [pve-devel] [PATCH pve_manager 1/1] Translate units Noel Ullreich
2023-04-04 13:18   ` Thomas Lamprecht
2023-04-04 10:14 ` [pve-devel] [PATCH proxmox-widget-toolkit 1/1] translate units in `format_size` Noel Ullreich

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal