Hi Vagrant and Danny,
First of all, I cannot start without saying: thank you for you effort and time. Danny Milosavljevic <dan...@scratchpost.org> writes: > On Thu, 01 Oct 2020 10:15:40 -0700 > Vagrant Cascadian <vagr...@debian.org> wrote: >> Maybe make-u-boot-package should be extended to support passing a list >> of "common" names for boards, which could then be appended to the >> description? > > Translators should say what they think about that. As a translator I could have a personal say, but the best practices are already encoded on gettext manual[1]. > (Long ago, I stopped doing string concatenations like this because > translating that into some languages isn't easy) Thank you for raising awareness of this. I've seen plenty of bad translations because of this anti-pattern, and some of them are hilarious. > Other than that, sure, something like that would be nice. > > Maybe just make it possible to add any sentence(s) to the description, > though. That should be translatable enough... I think. I see two main possibilities for the "translation units" in these cases: - When the extra data is a "non-localizable string", I'd rather use a format string for the template, and insert the data through the format specifier, possibly with a message to the translators to make clearer the inserted data if it isn't clearly deduced from the message: ----------------------8<---------------------- (let ((desc (format #f ;; TRANSLATORS: ~a is substituted by the board ids. (_ "Description.~{~% - Board: ~a~}~%") (list "id1" "id2" ... "idn")))) ...) ---------------------->8---------------------- - In any other case, I'd concatenate them as two separate paragraphs[2] and let the translators face them up separately: ----------------------8<---------------------- (let ((desc (format #f "~s~%~%~s" ; Translating this may be an overkill... (_ "First paragraph(s).") (_ "Other paragraph(s).")))) ...) ---------------------->8---------------------- Happy hacking! Miguel [1] https://www.gnu.org/software/gettext/manual/gettext.html#Preparing-Strings [2] My two cents: As a programmer use as few as possible implicit references to each other paragraph, please. :-) They are ok inside the same translation unit, but they can lead to mismatches if the sentence is common and/or short enough to be used somewhere else.