> Beleza de explicacao! Nada como falar com quem entende. Se ha' solucao
para
> esse pequeno inconveniente, seria bastante interessante detalha-la. Uma
> especie de "sintonia fina" no KDE. O problema nao e' exclusivo do


S� como refer�ncia, amador ou n�o, s�o poucos aqui no Brasil que se
ofereceram
ao trabalho VOLUNT�RIO de ajudar na tradu��o dos potfiles do KDE.
Dentro da Conectiva, temos tr�s pessoas trabalhando efetivamente e mais uma
que colaborou pesado antes da sa�da do CL 9

--------------------------

        O que o Helio disse (entre outras coisas) � que � dif�cil manter um
software traduzido.   Realmente implica de voc� ter o programa na m�quina
para ver se a tradu��o funcionou, se bem que n�o necess�riamente voc�
precisa ser programador.  Mas se o que voc� quer � fazer uma pequena
manuten��o na m�quina da sua casa, d� pra se fazer algo:

        Vamos aos meus dois casos:

        Primeiro:  O software � mantido por outras pessoas e s� a tradu��o
parou.
        Este � o melhor caso.   Voc� apenas deve pegar o arquivo  .po que
deve estar no fonte do programa (no caso, � o konqueror.po).  Este arquivo
tem o texto fonte de todas as mensagens do programa.     Entre todas as
indica��es, duas s�o importantes:  A linha msgid, que tem a mensagem
original do programa (ent�o, n�o toque nela),  e a linha msgstr logo abaixo,
que tem a tradu��o (em uma ou mais linhas).   Se a linha for  msgstr "" sem
nenhuma string logo abaixo,  ela n�o tem tradu��o, e voc� ent�o coloque a
tradu��o desejada, usando seu editor preferido.    O pessoal do KDE
agradeceria MUITO se voc� usasse o KBabel, que � o programa espec�fico para
tais tradu��es (eu o uso agora), mas nada impede que use o Kedit.
        Feitas as altera��es, "compile" seu .po   o comando para isto �:
msgfmt -v -o <seu programa>.mo   <seu programa>.po   .  No exemplo, ficaria
algo como " msgfmt   -v   -o   konqueror.mo    konqueror.po " .
        Finalmente, se tudo correr bem, copie o .mo  para a pasta de
mensagens de sua distro.  No Conectiva, se n�o me engano,  �
        /usr/local/share/locale/pt_BR/LC_MESSAGES/    tem de todos os
aplicativos.
        Agora, � s� acionar seu programa e voil�!   Mensagem traduzida
instant�nea.

        Segundo:  O software n�o tem suporte � i18n.
        Este � o pior caso.   Se voc� n�o � programador,  ent�o senta e
chora...
        Se voc� � programador, e quer se meter nesta aventura, ent�o
prepare-se!   ela � MUITO longa!
        De cara, voc� precisa saber quais s�o as strings que h� no seu
programa.   felizmente h� um programeto que auxilia, e MUITO!   Para tal,
entre na pasta de fontes de seu programa e digite " xgettetx  -ns  -a  -d
seu-programa   *.c    *.cpp  ".   Ele vai gerar um  seu-programa.po com
TODAS as strings do seu programa, e as tradu��es em branco.
        Segundo, use um KBabel (ou algo parecido) para traduzir as
mensagens.   Algumas voc� at� vai retirar, pois v�o se referir a comandos, e
n�o dever�o ser traduzidos.
        Terceiro, voc� vai ter de mexer em todos os programas para colocar
sua string entre "_()".   Ent�o   "Sua String"
vai se tornar  _("Sua String"). Voc� vai precisar disso.
        Quarto,  no programa principal, voc� ter� de fazer uma chamada �
biblioteca gettext, que j� vem instalada na sua distro.  Maiores informa��es
em "info  gettext".
        Quinto, voc� compila tudo e Voil�!  Mensagem instant�nea.

        Bom, ao fazer do zero, � muito mais complicado, e � necess�rio
conhecimentos de programa��o, mas se quiserem detalhes, posso enviar em
privado.

        Um abra�o,
        Syndson Silva.


Assinantes em 13/03/2003: 2228
Mensagens recebidas desde 07/01/1999: 204128
Historico e [des]cadastramento: http://linux-br.conectiva.com.br
Assuntos administrativos e problemas com a lista: 
            mailto:[EMAIL PROTECTED]

Responder a