Rffontenelle (talk | contribs) (→Controlling parameters order: Translation) |
Rffontenelle (talk | contribs) (→Controlling parameters order: Translate title) |
||
Line 1: | Line 1: | ||
{{autolang}} | {{autolang}} | ||
{{Anchor|parameters}} | {{Anchor|parameters}} | ||
== | == Controlando a ordem dos parâmetros == | ||
Ao traduzir, algumas vezes a tradução de uma string específica requer ordem de parâmetro diferente. Mas geralmente não é permitido alterá-los na string traduzida. Existe uma solução alternativa para alterar a ordem na tradução e pode ser encontrada com o comando <code>info gettext</code>. | Ao traduzir, algumas vezes a tradução de uma string específica requer ordem de parâmetro diferente. Mas geralmente não é permitido alterá-los na string traduzida. Existe uma solução alternativa para alterar a ordem na tradução e pode ser encontrada com o comando <code>info gettext</code>. | ||
Latest revision as of 14:57, 29 July 2020
Controlando a ordem dos parâmetros
Ao traduzir, algumas vezes a tradução de uma string específica requer ordem de parâmetro diferente. Mas geralmente não é permitido alterá-los na string traduzida. Existe uma solução alternativa para alterar a ordem na tradução e pode ser encontrada com o comando info gettext
.
Por exemplo, em alemão, isso não funcionaria:
msgid "String '%s' has %d characters\n" msgstr "%d Zeichen lang ist die Zeichenkette '%s'\n"
Para especificar a ordem dos parâmetros, o número com a marca $ pode ser fornecido como abaixo:
msgstr "%2$d Zeichen lang ist die Zeichenkette '%1$s'\n"
Alternativas
Em alguns casos, você pode ver uma string semelhante a %(var)s
. Isso é chamado de variável e pode ser movido dentro de uma sequência em qualquer ordem.
msgid "String '%(str)s' has %(char)s characters\n"
Traduzida:
msgstr "%(char)s Zeichen lang ist die Zeichenkette '%(str)s'\n"
Nenhuma alteração mais é necessária.