Thanks for the contribution!

However, there are a few things that should be fixed before we integrate the 
new translation;
```console
$ msgfmt --check po/ta.po
po/ta.po:2383: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
In the directive number 2, the character 'U' is not a valid conversion 
specifier.
po/ta.po:2453: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:2458: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:2468: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:2536: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:2569: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:2694: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:2809: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:2854: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:2864: format specifications in 'msgid' and 'msgstr' for argument 1 are 
not the same
po/ta.po:2871: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:2880: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:2899: number of format specifications in 'msgid' and 'msgstr' does not 
match
po/ta.po:2904: format specifications in 'msgid' and 'msgstr' for argument 2 are 
not the same
po/ta.po:2909: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:2953: format specifications in 'msgid' and 'msgstr' for argument 1 are 
not the same
po/ta.po:2964: format specifications in 'msgid' and 'msgstr' for argument 1 are 
not the same
po/ta.po:2973: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:2980: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:2985: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:2992: format specifications in 'msgid' and 'msgstr' for argument 1 are 
not the same
po/ta.po:2997: format specifications in 'msgid' and 'msgstr' for argument 1 are 
not the same
po/ta.po:3018: format specifications in 'msgid' and 'msgstr' for argument 1 are 
not the same
po/ta.po:3023: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:3028: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:3036: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:3057: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:3238: format specifications in 'msgid' and 'msgstr' for argument 1 are 
not the same
po/ta.po:3248: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:3313: format specifications in 'msgid' and 'msgstr' for argument 1 are 
not the same
po/ta.po:4064: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4072: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4077: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4119: format specifications in 'msgid' and 'msgstr' for argument 1 are 
not the same
po/ta.po:4145: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4157: 'msgid' and 'msgstr' entries do not both begin with '\n'
po/ta.po:4167: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4212: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4245: format specifications in 'msgid' and 'msgstr' for argument 1 are 
not the same
po/ta.po:4310: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4315: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4327: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 2 is not a valid conversion 
specifier.
po/ta.po:4374: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4393: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4398: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4411: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4416: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4425: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4434: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
In the directive number 1, the character 'D' is not a valid conversion 
specifier.
po/ta.po:4448: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4453: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4458: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4467: format specifications in 'msgid' and 'msgstr' for argument 1 are 
not the same
po/ta.po:4476: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4669: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
In the directive number 1, the character 'U' is not a valid conversion 
specifier.
po/ta.po:4708: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4728: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4774: 'msgid' and 'msgstr' entries do not both end with '\n'
po/ta.po:4795: 'msgid' and 'msgstr' entries do not both end with '\n'
po/ta.po:4817: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4832: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4837: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4854: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:4861: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 2 is not a valid conversion 
specifier.
po/ta.po:5018: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:5023: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:5030: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:5142: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:5179: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:6045: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:6050: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 2 is not a valid conversion 
specifier.
po/ta.po:6180: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:6185: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
po/ta.po:6190: 'msgstr' is not a valid C format string, unlike 'msgid'. Reason: 
The character that terminates the directive number 1 is not a valid conversion 
specifier.
msgfmt: found 76 fatal errors
```

Hint: if the translation has the`c-format` flag, the placeholders (like `%s`, 
`%d`, `%u`, see [`man 3 
printf`](https://man7.org/linux/man-pages/man3/printf.3.html)) need to be the 
*exact same* ones (no `%U` when it was `%u`), and if the order has to be 
changed, you need to specify this explicitly using the `%m$` syntax -- again, 
see the manual for `printf()`.

Don't hesitate to run `msgfmt --check ta.po` on your end as well to verify 
everything is OK on that regard.

We'll also have to add `ta` to *po/LINGUAS*, but that we can also do ourselves, 
though it's easy:
```diff
diff --git a/po/LINGUAS b/po/LINGUAS
index e2931f8fa..1979150e6 100644
--- a/po/LINGUAS
+++ b/po/LINGUAS
@@ -1 +1 @@
-ar ast be bg ca cs da de el en_GB es et eu fa fi fr gl he hi hu id ie it ja kk 
ko ku lb lt lv mn nl nn pl pt pt_BR ro ru sk sl sr sv tr uk vi zh_CN zh_TW
+ar ast be bg ca cs da de el en_GB es et eu fa fi fr gl he hi hu id ie it ja kk 
ko ku lb lt lv mn nl nn pl pt pt_BR ro ru sk sl sr sv ta tr uk vi zh_CN zh_TW
```

-- 
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/3723#issuecomment-1859189536
You are receiving this because you are subscribed to this thread.

Message ID: <geany/geany/pull/3723/c1859189...@github.com>

Reply via email to