* [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
* 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
* [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
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