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 ao local especificado com locale=
, evitando a localização no lado do cliente e permitindo que os aplicativos alternem as localidades simplesmente enviando o arquivo apropriado locale=
com as solicitações de texto IS.
Escopo section-a03f48e3bc0e4ab281909a2bd441a3c2
A localização da cadeia 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).
A 0xrrggbb o valor da cor no início de um campo localizável é excluído da localização e transmitido sem modificação.
Sintaxe de string section-d12320edf300409f8e17565b143acafc
Habilitado para localização string
os elementos no catálogo de imagens consistem em uma ou mais strings localizadas, cada uma precedida por um token de localização.
A variável 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 a todo localizationToken
^loc=locId^
padrão para separar subsequências.
A variável 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 quais localizedStrings
para retornar ao cliente. Ele consiste em uma lista de entradas locales
(correspondendo aos valores especificados com locale=
), cada um com nenhuma ou mais ids de localidade internas ( locId
). Por exemplo:
attribute::LocaleStrMap= en,E|nl,N|de,D|,
Empty locId
os valores indicam que a variável 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 procura primeiro por " nl
" no mapa do local. A entrada correspondente nl,N
indica que, para cada stringElement
, o localizedString
marcado com ^loc=N^
deve ser devolvido. Se isso localizationToken
não está presente no stringElement
, um valor vazio é 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 vazio locale
valor. O servidor usa essa entrada para lidar com todas as locale=
valores que não estão explicitamente especificados de outra forma no mapa de tradução.
O exemplo de mapa de tradução especifica que, nesse caso, o 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
Múltiplo locId
podem ser associados a cada locale
no mapa de tradução. O motivo é que ela permite o suporte de variações específicas de país ou região (por exemplo, inglês dos EUA versus inglês do Reino Unido) para seleção stringElements
ao manipular a maioria dos conteúdos com localidades de base comuns (por exemplo, inglês internacional).
Por exemplo, há suporte para inglês específico dos EUA ( *
locId* EUS
) e inglês específico do Reino Unido ( *
locId* EUK
), para dar suporte à ortografia alternativa ocasional. Se o EUK ou o EUS não existirem, recorrerá a E. Do mesmo modo, as variantes alemãs específicas da Áustria ( DAT
) poderia ser disponibilizado, se necessário, durante o regresso do alemão comum localizedStrings
(marcado com D
na maioria das vezes.
A variável 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 alguns stringElement
e locale
combinações:
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
Neste exemplo, a variável locId O DDE não existe no attribute::LocaleStrMap e, portanto, a subsequência associada a isso locId nunca é retornado.
en, en_uk
en_us
de, de_at, de_de
todos os outros
Inglês
Inglês (EUA)
Alemão
-