4D v16

XLIFF e tradução

Página Inicial

 
4D v16
XLIFF e tradução

XLIFF e tradução    


 

 

Além das manipulações explicadas no vídeo, deve notar que:

Para que sejam tidos em conta por 4D, seus arquivos XLIFF devem se localizar aqui:

  • Windows: em MyDatabase\Resources\Lang.lproj\MyEnLoc.xlf
  • Mac OS: em MyPackage:Resources:Lang.lproj:MyEnLoc.xlf (se a extensão .4dbase está ativa)
  • Mac OS: em MyDatabase:Resources:Lang.lproj:MyEnLoc.xlf (se eliminou a extensão .4dbase)

Por padrão, 4D procura a linguagem a utilizar em:

  1. A linguagem do sistema
  2. A linguagem da aplicação 4D
  3. Em inglês
  4. Se tudo isto falha, a primeira linguagem encontrada é carregada na pasta Resources.

Neste vídeo, vamos a aprender a implantar arquivos de tradução XLIFF que se utilizam para localizar toda a interface.

É muito simples: só deve substituir os textos que se encontram na interface por uma referencia a um arquivo externo que contém os textos desejados.

“Isto será da forma “:xliff: e um nome de objeto", por exemplo "bOK" que é a referencia do botão OK. Aqui vemos que o texto mudou de "Finish" a "OK".

Por quê?

Porque na pasta da base na subpasta resources há uma pasta para cada idioma.
Atualmente o sistema está em inglês e dentro desta pasta temos:

  • Um arquivo XML que contém
  • Além das declarações estandarte, no corpo.
  • Certo número de grupos (os grupos não são obrigatórios, mas são úteis para estruturar o arquivo XLIFF).
  • E em cada grupo, as unidades de tradução.

Resulta que temos um recurso chamado bOK aonde o texto contido no Target é "OK".

Se mudarmos isto a "Finish" e guardamos o arquivo e voltamos a 4D, o texto "Finish" é substituído.

Podemos provar isto aqui:

  • End
  • Guardar
  • Voltar a 4D e podemos ver "End"

Para todo texto da interface, temos que substituir:

  • O texto English
  • Pelo texto no idioma desejado.

Na atualidade, estamos no arquivo em.xlf de maneira que todos os textos "target" são nomes em inglês.

Vamos a criar uma entrada para o texto chamada "Add".

O arquivo é guardado. Neste caso, se é substituído o texto por: "xliff:bAdd", recuperamos o texto "Add".

Isto é para a versão em inglês.

Agora vamos a recuperar esta entrada, fechar o arquivo e abrir na pasta French.

Adicionamos a unidade em questão "Ajouter" e guardamos.

Agora imaginemos que queremos trabalhar em um sistema francês.
  • Nas preferências do sistema, seja em Mac ou em Windows
  • Podemos definir o idioma prioritário
  • Aqui podemos ver um aviso de que as mudanças terão efeito a próxima vez que se inicie a aplicação.

Assim que vamos sair de nossa base de prova e começar de novo.

E podemos ver que o texto "Add" foi substituído pela versão francesa (Ajouter).

Se quisermos, podemos:

  • Mudar e indicar "um enregistrement"
  • Guardar
  • Atenção: a atualização não é automática no formulário mostrado devido a que os recursos são carregados quando se carrega o formulário.
  • No entanto, se saímos e voltamos à estrutura, o formulário se atualiza com o novo texto.

Agora só devemos criar as outras entradas, "Tout selectionner? Tous les enregistrements?", por exemplo, e aqui indicar que o botão é uma referencia (":xliff:bAll") e temos o texto "Tout selectionner? Tous les enregistrements?".

Agora vamos a voltar ao sistema inglês pelo que necessitamos sair de 4D.

Quando reiniciamos, nos encontramos com o texto anterior, no entanto, no arquivo English, não  indicamos a tradução da entrada "bAll" e portanto neste caso, é mostrada a referencia XLIFF.

Assim que temos que:

  • Voltar atrás e recuperar o arquivo XLIFF em questão
  • Adicionar a entrada "bAll" indicando "All"
  • Quando voltamos a 4D, a atualização se realiza.

Um elemento complementário importante na implantação de arquivos XLIFF se refere às cadeias de caracteres nos métodos.

Voltamos ao formulário Test_Variables que criamos e aonde atribuímos valores ao menu pop-up que têm 3 textos aqui.
Podemos:

  • Substituir os 3 textos utilizando o comando Get localized string
  • Indicar um resname que corresponda no arquivo XLIFF em questão, uma etiqueta no idioma elegido

Aqui vemos o texto "Text1Test" que é:

  • "Hello" em inglês
  • "Bonjour" em francês.

Vamos a:

  • Declarar o array
  • Fazer seguimento à atribuição de valores (o array está vazio)
  • E quando vamos ler as cadeias correspondentes, o array enche com o conteúdo dos dados do arquivo XLIFF.

 
 

 
PROPRIEDADES 

Produto: 4D
Tema: XLIFF e tradução

 
HISTÓRIA 

 
ARTICLE USAGE

Autoformação ( 4D v16)