Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Dica

Liberar na 1.5.

Revisão Ok.

Índice

Índice
maxLevel4
outlinetrue
stylenone
exclude.*ndice
 

Conceito e configuração

O conceito de internacionalização ou i18n (que, por vezes, também é chamado de "Localização") consiste no desenvolvimento e/ou adaptação de um produto para o idioma de um ou mais países. O acrônimo "i18n" origina-se do inglês "internationalization", onde 18 é o número de letras entre o primeiro "i" e o último "n".

Na plataforma Fluig, o i18n é suportado na forma de arquivos de propriedades distintos para cada idioma. Sempre que for criado um projeto a partir do Fluig Studio, a estrutura de i18n será apresentada como no conforme o exemplo a seguir:

 

Image Modified

 

Informações
titleNão deixe- se enganarengane!

O nome do componente (widget, layout etc...) em questão coincíde coincide com o prefixo dos arquivos i18n. Este é o comportamento padrão do Studio, mas não é isso que fará com que as funções de i18n funcionem corretamente em seu componente. Dentro do arquivo application.info deve existir uma propriedade chamada locale.file.base.name. O importante é que o valor desta propriedade , - esse sim , - seja o mesmo que o prefixo dos arquivos i18n.

Utilização no desenvolvimento

Nos arquivos i18n o cadatro cadastro deve ser feito da seguinte forma:

Bloco de código
languagetext
codigo.da.label=Valor da Label

Arquivos de fontes freemarker (.ftl) e javascript (.js)

Quando for preciso fazer referência ao é necessário referenciar o valor da tradução desejada, deve-se utilizar o código "${i18n.getTranslation('codigo.da.label')}".

...

Algumas propriedades do application.info são utilizadas em telas do sistema, sendo a tela de seleção de widgets na edição de páginas uma delas. É importante, portanto, que ao menos as propriedades application.titleapplication.description e application.category sejam traduzidas. Para que isso seja possível, basta criar essa essas propriedades com os mesmos códigos que aparecem no application.info nos arquivos i18n. Abaixo um Veja o exemplo a seguir:

Bloco de código
languagetext
codigo.da.label=Valor da Label
application.title=Título
application.description=Descrição do Componente
application.category=Categoria Escolhida

Mapeamento de

...

caracteres (text file enconding)

É importante ter certeza de que todos os arquivos de seu projeto estejam configurados como UTF-8. Normalmente a configuração de mapeamento de caracteres pode ser encontrada em dois lugares. 

Nas propriedades do projeto do eclipse: 


Ou nas propriedades do próprio fonte: 

Escape de

...

caracteres (

...

escape character)

Mesmo utilizando os arquivos com mapeamento de caractere utfUTF-8, é aconselhável utilizar caracteres de espace sempre que houver a necessidade de escrever caracteres especiais (ç, á, é etc...). Portanto, a propriedade:

...

Bloco de código
languagetext
window.edit.name=Nome de Exibi\u00E7\u00E3o

Assim, independente independentemente do sistema operacional que for utilizado no qual o Fluig é utilizado, os caracteres especiais sempre serão são mostrados corretamente. Para que esse processo seja feito de forma produtiva, pode usar umas -se utilizar uma das muitas ferramentas online de character escaping.