* [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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox