* [pve-devel] [PATCH pve-manager, proxmox-widget-toolkit v2 0/2] fix 4551: ui: translate byte units in web interface
@ 2023-04-06 11:38 Noel Ullreich
2023-04-06 11:38 ` [pve-devel] [PATCH proxmox-widget-toolkit v2 1/1] fix #4551: ui: use gettext on hardcoded byte units Noel Ullreich
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Noel Ullreich @ 2023-04-06 11:38 UTC (permalink / raw)
To: pve-devel
Since other languages translate byte units (such as 'GiB') or write them
in their own script, this patch series wraps byte units in the `gettext`
function, allowing them to be translated.
---
changes from v1:
* improved commit messages
* put hardcoded byte unit strings in a template string
Noel Ullreich (1):
fix #4551: ui: use gettext on hardcoded byte units
fix #4551: ui: translate byte unit 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] 6+ messages in thread
* [pve-devel] [PATCH proxmox-widget-toolkit v2 1/1] fix #4551: ui: use gettext on hardcoded byte units
2023-04-06 11:38 [pve-devel] [PATCH pve-manager, proxmox-widget-toolkit v2 0/2] fix 4551: ui: translate byte units in web interface Noel Ullreich
@ 2023-04-06 11:38 ` Noel Ullreich
2023-06-01 14:14 ` Thomas Lamprecht
2023-04-06 11:38 ` [pve-devel] [PATCH proxmox-widget-toolkit v2 1/1] fix 4551: ui: translate byte unit in `format_size` Noel Ullreich
2023-05-22 9:08 ` [pve-devel] [PATCH pve-manager, proxmox-widget-toolkit v2 0/2] fix 4551: ui: translate byte units in web interface Noel Ullreich
2 siblings, 1 reply; 6+ messages in thread
From: Noel Ullreich @ 2023-04-06 11:38 UTC (permalink / raw)
To: pve-devel
Since some languages translate byte units like 'GiB' or write them in their
own script, this patch wraps units in the `gettext` function.
While most occurrences of byte strings can be translated within the
`format_size` function in `proxmox-widget-toolkit/src/Utils.js`, this patch
catches those instances that are not translated.
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 +-
www/manager6/qemu/HardwareView.js | 2 +-
5 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/www/manager6/ceph/OSD.js b/www/manager6/ceph/OSD.js
index 2f12f94d..61fe5b06 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..d408b815 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..d560b788 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..29ff253b 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] 6+ messages in thread
* [pve-devel] [PATCH proxmox-widget-toolkit v2 1/1] fix 4551: ui: translate byte unit in `format_size`
2023-04-06 11:38 [pve-devel] [PATCH pve-manager, proxmox-widget-toolkit v2 0/2] fix 4551: ui: translate byte units in web interface Noel Ullreich
2023-04-06 11:38 ` [pve-devel] [PATCH proxmox-widget-toolkit v2 1/1] fix #4551: ui: use gettext on hardcoded byte units Noel Ullreich
@ 2023-04-06 11:38 ` Noel Ullreich
2023-06-01 14:16 ` [pve-devel] applied: " Thomas Lamprecht
2023-05-22 9:08 ` [pve-devel] [PATCH pve-manager, proxmox-widget-toolkit v2 0/2] fix 4551: ui: translate byte units in web interface Noel Ullreich
2 siblings, 1 reply; 6+ messages in thread
From: Noel Ullreich @ 2023-04-06 11:38 UTC (permalink / raw)
To: pve-devel
Some languages translate byte units like 'GiB' or write them in their
own script.
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] 6+ messages in thread
* Re: [pve-devel] [PATCH pve-manager, proxmox-widget-toolkit v2 0/2] fix 4551: ui: translate byte units in web interface
2023-04-06 11:38 [pve-devel] [PATCH pve-manager, proxmox-widget-toolkit v2 0/2] fix 4551: ui: translate byte units in web interface Noel Ullreich
2023-04-06 11:38 ` [pve-devel] [PATCH proxmox-widget-toolkit v2 1/1] fix #4551: ui: use gettext on hardcoded byte units Noel Ullreich
2023-04-06 11:38 ` [pve-devel] [PATCH proxmox-widget-toolkit v2 1/1] fix 4551: ui: translate byte unit in `format_size` Noel Ullreich
@ 2023-05-22 9:08 ` Noel Ullreich
2 siblings, 0 replies; 6+ messages in thread
From: Noel Ullreich @ 2023-05-22 9:08 UTC (permalink / raw)
To: pve-devel
Ping. Still applies
On 06-04-2023 13:38, Noel Ullreich wrote:
> Since other languages translate byte units (such as 'GiB') or write them
> in their own script, this patch series wraps byte units in the `gettext`
> function, allowing them to be translated.
>
> ---
> changes from v1:
> * improved commit messages
> * put hardcoded byte unit strings in a template string
>
> Noel Ullreich (1):
> fix #4551: ui: use gettext on hardcoded byte units
> fix #4551: ui: translate byte unit 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(-)
>
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [pve-devel] [PATCH proxmox-widget-toolkit v2 1/1] fix #4551: ui: use gettext on hardcoded byte units
2023-04-06 11:38 ` [pve-devel] [PATCH proxmox-widget-toolkit v2 1/1] fix #4551: ui: use gettext on hardcoded byte units Noel Ullreich
@ 2023-06-01 14:14 ` Thomas Lamprecht
0 siblings, 0 replies; 6+ messages in thread
From: Thomas Lamprecht @ 2023-06-01 14:14 UTC (permalink / raw)
To: Proxmox VE development discussion, Noel Ullreich
Used wrong tag, this is for manager, not widget-toolkit...
Am 06/04/2023 um 13:38 schrieb Noel Ullreich:
> Since some languages translate byte units like 'GiB' or write them in their
> own script, this patch wraps units in the `gettext` function.
>
> While most occurrences of byte strings can be translated within the
> `format_size` function in `proxmox-widget-toolkit/src/Utils.js`, this patch
> catches those instances that are not translated.
>
> 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 +-
> www/manager6/qemu/HardwareView.js | 2 +-
> 5 files changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/www/manager6/ceph/OSD.js b/www/manager6/ceph/OSD.js
> index 2f12f94d..61fe5b06 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..d408b815 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..d560b788 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..29ff253b 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,
> });
this seems to be cut-off here, missign the full context, thus I get:
Applying: fix #4551: ui: use gettext on hardcoded byte units
error: corrupt patch at line 70
^ permalink raw reply [flat|nested] 6+ messages in thread
* [pve-devel] applied: [PATCH proxmox-widget-toolkit v2 1/1] fix 4551: ui: translate byte unit in `format_size`
2023-04-06 11:38 ` [pve-devel] [PATCH proxmox-widget-toolkit v2 1/1] fix 4551: ui: translate byte unit in `format_size` Noel Ullreich
@ 2023-06-01 14:16 ` Thomas Lamprecht
0 siblings, 0 replies; 6+ messages in thread
From: Thomas Lamprecht @ 2023-06-01 14:16 UTC (permalink / raw)
To: Proxmox VE development discussion, Noel Ullreich
Am 06/04/2023 um 13:38 schrieb Noel Ullreich:
> Some languages translate byte units like 'GiB' or write them in their
> own script.
>
> 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>
> ---
-> add the v1 -> v2 changelog (filtered for the current patch) here too please
> src/Utils.js | 14 ++++++++------
> 1 file changed, 8 insertions(+), 6 deletions(-)
>
>
applied, thanks!
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2023-06-01 14:17 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-04-06 11:38 [pve-devel] [PATCH pve-manager, proxmox-widget-toolkit v2 0/2] fix 4551: ui: translate byte units in web interface Noel Ullreich
2023-04-06 11:38 ` [pve-devel] [PATCH proxmox-widget-toolkit v2 1/1] fix #4551: ui: use gettext on hardcoded byte units Noel Ullreich
2023-06-01 14:14 ` Thomas Lamprecht
2023-04-06 11:38 ` [pve-devel] [PATCH proxmox-widget-toolkit v2 1/1] fix 4551: ui: translate byte unit in `format_size` Noel Ullreich
2023-06-01 14:16 ` [pve-devel] applied: " Thomas Lamprecht
2023-05-22 9:08 ` [pve-devel] [PATCH pve-manager, proxmox-widget-toolkit v2 0/2] fix 4551: ui: translate byte units in web interface Noel Ullreich
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox