Localização da cadeia de caracteres de texto text-string-localization
A localização da sequência de caracteres de texto permite que os catálogos de imagem contenham várias representações específicas do local para o mesmo valor da sequência de caracteres.
O servidor retorna ao cliente a representação correspondente à localidade especificada com locale=
, evitando a localização no lado do cliente e permitindo que os aplicativos alternem as localidades simplesmente enviando o valor locale=
apropriado com as solicitações de texto IS.
Escopo section-a03f48e3bc0e4ab281909a2bd441a3c2
A localização da cadeia de caracteres de texto é aplicada a todos os elementos de cadeia de caracteres que incluem o token de localização ^loc= *
locId*^
nos seguintes campos de catálogo:
Qualquer subelemento que contenha uma string traduzível (delimitada por qualquer combinação de separadores ',' ';' ':' e/ou o início/fim do campo).
Um valor de cor 0xrggbb no início de um campo localizável é excluído da localização e passado sem modificação.
Sintaxe de string section-d12320edf300409f8e17565b143acafc
Os elementos string
habilitados para localização no catálogo de imagens consistem em uma ou mais cadeias de caracteres localizadas, cada uma precedida por um token de localização.
locId
deve ser ASCII e não pode incluir '^'.
O '^' pode ocorrer em qualquer lugar em substrings com ou sem codificação HTTP. O servidor corresponde todo o padrão localizationToken
^loc=locId^
para separar subsequências.
Os stringElements
, que não incluem pelo menos um localizationToken
, não são considerados para localização.
O mapa de tradução section-f7ce3df91b724adf95cee44eac4915d4
attribute::LocaleStrMap
define as regras usadas pelo servidor para determinar qual localizedStrings
retornar ao cliente. Consiste em uma lista de entradas locales
(correspondendo aos valores especificados com locale=
), cada uma com nenhuma ou mais IDs de localidade internas ( locId
). Por exemplo:
attribute::LocaleStrMap= en,E|nl,N|de,D|,
Valores de locId
vazios indicam que defaultString
deve ser retornado, se disponível.
Consulte a descrição de attribute::LocaleStrMap
para obter detalhes.
O processo de tradução section-a2a8a3e5850f4f7c9d2318267afe98a2
Dado o exemplo de mapa de tradução acima e a solicitação /is/image/myCat/myItem?req=&locale=nl
, o servidor primeiro procura por " nl
" no mapa de localidade. A entrada correspondente nl,N
indica que, para cada stringElement
, o localizedString
marcado com ^loc=N^
deve ser retornado. Se este localizationToken
não estiver presente no stringElement
, um valor vazio será retornado.
Digamos que catalog::UserData
para myCat/myItem
contém o seguinte (quebras de linha inseridas para maior clareza):
val1=111?? str1=Default1^loc=N^Dutch1^loc=D^German1?? val2=value2?? str2=^loc=E^English2^loc=N^Dutch2^loc=D^German2?? str3=Default3^loc=N^Dutch3^loc=D^German3
O servidor retornaria o seguinte em resposta à solicitação do exemplo:
val1=111 str1=Dutch1 val2=value2 str2=Dutch2 str3=Dutch3
Localidades desconhecidas section-26dfeefbd60345de94bbfeaaf7741223
No exemplo acima, attribute::LocaleStrMap
tem uma entrada com um valor locale
vazio. O servidor usa essa entrada para manipular todos os valores de locale=
que não estejam explicitamente especificados no mapa de conversão.
O mapa de tradução de exemplo especifica que, nesse caso, defaultString
deve ser retornado, se disponível. Portanto, o seguinte será retornado se este mapa de tradução for aplicado à solicitação /is/image/myCat/myItem?req=&locale=ja
:
val1=111 str1=Default1 val2=value2 str2= str3=Default3
Exemplos section-ae6ff7fb90754b839f04ed08aadffa3f
Famílias de idiomas
Vários valores locId
podem ser associados a cada locale
no mapa de tradução. O motivo é que ela permite o suporte a variações específicas de país ou região (por exemplo, inglês dos EUA versus inglês do Reino Unido) para select stringElements
enquanto lida com a maioria dos conteúdos com localidades de base comuns (por exemplo, inglês internacional).
Por exemplo, o suporte foi adicionado para inglês específico dos EUA ( *
locId* EUS
) e inglês específico do Reino Unido ( *
locId* EUK
), para oferecer suporte à ortografia alternativa ocasional. Se EUK ou EUS não existir, ele volta para E. Da mesma forma, variantes alemãs específicas da Áustria ( DAT
) podem ser disponibilizadas onde necessário, ao retornar o alemão comum localizedStrings
(marcado com D
) na maior parte do tempo.
O attribute::LocaleStrMap
seria semelhante a:
en,E|en_us,EUS,E|en_uk,EUK,E|de,D|de_at,DAT,D|de_de,D
A tabela a seguir descreve a saída de algumas combinações de stringElement
e locale
representativas:
en, en_us, en_uk
de, de_at, de_de
todos os outros
Inglês
Alemão
-
en, en_us
en_uk
de, de_de
de_at
todos os outros
Inglês
Reino Unido - Inglês
Alemão
Austríaco
-
^ loc=en^English^loc=USE^US-English^loc=D^German^loc=DDE^Deutsch
Para este exemplo, o DDE locId não existe no atributo ::LocaleStrMap e, portanto, a subsequência de caracteres associada a este locId nunca é retornada.
en, en_uk
en_us
de, de_at, de_de
todos os outros
Inglês
Inglês (EUA)
Alemão
-