* [yew-devel] [PATCH proxmox-yew-comp v2] apt_repositories: Add context to conflicting string with plural form
@ 2025-01-27 9:46 Maximiliano Sandoval
0 siblings, 0 replies; only message in thread
From: Maximiliano Sandoval @ 2025-01-27 9:46 UTC (permalink / raw)
To: yew-devel
The combination of `msgid` and `msgctxt` uniquely identifies a
translatable string. At the moment there is a message:
```
msgid "Warning"
msgstr ""
```
that conflicts with
```
msgid "Warning"
msgid_plural "Warnings"
msgstr[0] ""
msgstr[1] ""
```
Normally, `msgmerge` or similar will merge messages containing the same
`msgid` and `msgctxt`, but in this case these two cannot be merged as
one has plurals forms and the other does not. On the app-side one will
be retrieved with `gettext("Warning")` while the other by
`ngettext("Warning", 1)` which explains why they can't be merged.
Additionally, xgettext will throw the following error message:
```sh
$ xgettext proxmox-yew-comp.pot proxmox-widget-toolkit.pot
proxmox-widget-toolkit.pot:2080: duplicate message definition...
proxmox-yew-comp.pot:187: ...this is the location of the first definition
xgettext: found 1 fatal error
```
By adding a context, we can go around the issue without the need to
replace either string.
More info on contexts can be found at [1].
[1] https://www.gnu.org/software/gettext/manual/html_node/Contexts.html
Signed-off-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
---
Differences from v1:
- Expand commit message
src/apt_repositories.rs | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/apt_repositories.rs b/src/apt_repositories.rs
index b671d01e..487ca7f 100644
--- a/src/apt_repositories.rs
+++ b/src/apt_repositories.rs
@@ -873,7 +873,8 @@ fn render_text_with_warnings(text: &str, warnings: &[String]) -> Html {
<i class="fa fa-fw fa-exclamation-circle"/>
</span>
};
- let title = tr!("Warning" | "Warnings" % warnings.len());
+ let title =
+ tr!("This is a title" => "Warning" | "Warnings" % warnings.len());
let mut tip = Container::new().with_child(html! {<h4>{title}</h4>});
for message in warnings {
tip.add_child(html! {<p>{message}</p>});
--
2.39.5
_______________________________________________
yew-devel mailing list
yew-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/yew-devel
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2025-01-27 9:46 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-01-27 9:46 [yew-devel] [PATCH proxmox-yew-comp v2] apt_repositories: Add context to conflicting string with plural form Maximiliano Sandoval
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox