<!-- <?xml version="1.0" ?>
<!DOCTYPE chapter PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd"
> -->
<!-- Uncomment the previous two lines to validate this document -->
<!-- standalone.  Be sure to recomment them before attempting to -->
<!-- process index.docbook -->

<chapter id="dictionaries">

<chapterinfo>
<!-- Fill in this section if this document has a different author -->
<authorgroup>
<author>
<personname
><firstname
></firstname
><surname
></surname
></personname>
</author>
</authorgroup>

<othercredit role="translator"
><firstname
>Pedro</firstname
><surname
>Morais</surname
><affiliation
><address
><email
>morais@kde.org</email
></address
></affiliation
><contrib
>Tradução</contrib
></othercredit
> 
</chapterinfo>

<title
>Dicionários</title>

<para
>O &kbabel; tem 3 modos que podem ser usados para procurar os textos das mensagens <acronym
>PO</acronym
> traduzidas:</para>

<itemizedlist>
     <listitem>
       <para
>Procurar uma tradução, usando uma bases de dados de traduções </para>
     </listitem>
      <listitem>
         <para
>Tradução lata </para>
      </listitem>
      <listitem>
         <para
>&kbabeldict; </para>
      </listitem>
</itemizedlist>

<sect1 id="database">
<!-- FIXME: settings -->
<title
>Base de dados de traduções</title>

<para
>A base de dados de traduções permite-lhe gravar as traduções numa base de dados baseada na Berkeley Database II, &ie; está gravada num ficheiro binário no seu disco. A base de dados garante uma procura rápida num grande conjunto de traduções.</para>

<para
>Este modo é o melhor integrado com o &kbabel;. Para além de procurar e de fazer uma tradução lata também suporta as seguintes funcionalidades:</para>

<itemizedlist>
<listitem>
<para
>Cada tradução nova feita no editor do &kbabel; poderá ser automaticamente guardada na base de dados.</para>
</listitem>
<listitem>
<para
>Esta base de dados poderá ser usada para fazer um <quote
>diff</quote
> do <acronym
>msgid</acronym
>.</para>
</listitem>
</itemizedlist>

<para
>Of course, the more translations are stored in the database, the more productive you can be. To fill the database, you can use the <guilabel
>Database</guilabel
> tab in the preferences dialog or you can turn on automatic addition of every translated messages on the same tab.</para>

<sect2 id="database-settings">
<title
>Configuração</title>
<para
>Você poderá configurar este modo de pesquisa e como deverá ser usado se seleccionar a opção <menuchoice
> <guisubmenu
>Configuração</guisubmenu
> <guisubmenu
>Configurar o Dicionário</guisubmenu
> <guimenuitem
>Base de Dados de Traduções</guimenuitem
> </menuchoice
> no menu do &kbabel;. </para>
<para
>A página <guilabel
>Genérico</guilabel
> contém opções gerais para procurar na base de dados. </para>
<variablelist>
  <varlistentry>
    <term
><guilabel
>Procurar em toda a base de dados (lento)</guilabel
></term>
    <listitem>
    <para
>Não usar as <quote
>chaves boas</quote
>, mas sim procurar em toda a base de dados. Isto é lento, mas irá devolver resultados mais precisos. </para>
    </listitem>
  </varlistentry>
  <varlistentry>
    <term
><guilabel
>Procurar na lista de "boas chaves" (aconselhado)</guilabel
></term>
    <listitem>
    <para
>Use a estratégia das <quote
>boas chaves</quote
>. Esta opção dar-lhe-á o melhor compromisso entre velocidade e uma correspondência exacta. </para>
    </listitem>
  </varlistentry>
  <varlistentry>
    <term
><guilabel
>Devolver a lista de "boas chaves" (rápido)</guilabel
></term>
    <listitem>
    <para
>Devolver apenas as <quote
>chaves boas</quote
>; não tentar eliminar mais nenhuns textos. Este é o método mais rápido possível, mas poderá dar origem a um grande número de correspondências inexactas. </para>
    </listitem>
  </varlistentry>
<varlistentry>
    <term
><guibutton
>Distinguir maiúsculas</guibutton
></term>
    <listitem>
    <para
>Faz uma distinção da capitalização das letras ao procurar o texto. </para>
    </listitem>
  </varlistentry>
<varlistentry>
    <term
><guibutton
>Normalizar os espaços em branco</guibutton
></term>
    <listitem>
    <para
>Retira os espaços em branco desnecessários nos textos, de modo a que a procura ignore as pequenas diferenças de espaços em branco, &eg; o número de espaços no texto. </para>
    </listitem>
  </varlistentry>
<varlistentry>
    <term
><guibutton
>Remover os comentários de contexto</guibutton
></term>
    <listitem>
    <para
>Não incluir os comentários de contexto na procura. Você irá querer activar isto à mesma. </para>
    </listitem>
  </varlistentry>
  <varlistentry>
    <term
><guilabel
>Carácter a ignorar</guilabel
></term>
    <listitem>
    <para
>Aqui você poderá indicar os caracteres que deverão ser ignorados ao efectuar as procuras. O exemplo típico seria a marcação de aceleradores, &ie;, o &amp; para os textos do &kde;. </para>
    </listitem>
  </varlistentry>
  </variablelist>
<para
>A página <guilabel
>Procura</guilabel
> contém uma especificação mais exacta para procurar o texto. Você poderá definir como procurar e também permite usar outra forma especial de procura chamada <emphasis
><guilabel
>Substituição de palavras</guilabel
></emphasis
>. Ao substituir uma ou mais palavras, o texto aproximado poderá também ser obtido. Por exemplo, assumindo que você iria procurar o texto <userinput
>O meu nome é Zé</userinput
>. </para>
<variablelist>
  <varlistentry>
    <term
><guilabel
>Igual</guilabel
></term>
    <listitem>
    <para
>O texto da base de dados irá corresponder se for o mesmo que o texto procurado. No nosso exemplo, poderá ser igual a <emphasis
>O meu nome é &amp;Zé</emphasis
> (se o &amp; estiver configurado como carácter a ignorar no campo <guilabel
>Caracteres a ignorar</guilabel
> na página <guilabel
>Genérico</guilabel
>). </para>
    </listitem>
  </varlistentry>
  <varlistentry>
    <term
><guilabel
>A pesquisa está contida</guilabel
></term>
    <listitem>
    <para
>O texto da base de dados fará correspondência se o texto procurado estiver contido no mesmo. No nosso exemplo, poderia ser <emphasis
>O meu nome é Zé, sabia?</emphasis
>. </para>
    </listitem>
  </varlistentry>
  <varlistentry>
    <term
><guilabel
>A pesquisa contém</guilabel
></term>
    <listitem>
    <para
>O texto da base de dados fará correspondência se o texto procurado o contiver. No nosso exemplo, poderia ser <emphasis
>Zé</emphasis
>. Você poderá usar isto para enumerar as possibilidades a serem encontradas. </para>
    </listitem>
  </varlistentry>
<varlistentry>
    <term
><guibutton
>Expressão Regular</guibutton
></term>
    <listitem>
    <para
>Vê o texto pesquisado como uma expressão regular. Isto é usado principalmente pelo &kbabeldict;. Você não deverá estar, à partida, à espera de expressões regulares nos ficheiros PO. </para>
    </listitem>
  </varlistentry>
<varlistentry>
    <term
><guibutton
>Usar a substituição de uma palavra</guibutton
></term>
    <listitem>
    <para
>Se o texto da pesquisa contiver menos palavras do que as indicadas em baixo, também tentará substituir uma das palavras na pesquisa. No nosso exemplo, irá encontrar também a mensagem <emphasis
>O seu nome é Zé</emphasis
>. </para>
    </listitem>
  </varlistentry>
<varlistentry>
    <term
><guibutton
>Número máximo de palavras na pesquisa</guibutton
></term>
    <listitem>
    <para
>O número máximo de palavras numa pesquisa necessários para activar a substituição de uma palavra. </para>
    </listitem>
  </varlistentry>
  <varlistentry>
    <term
><guilabel
>Caracteres locais para as expressões regulares</guilabel
></term>
    <listitem>
    <para
>Caracteres a ser considerados parte das expressões regulares. </para>
    </listitem>
  </varlistentry>
  </variablelist>
<note>
<para
>A substituição de duas palavras ainda não está implementada. </para>
</note>
</sect2>

<sect2 id="database-fill">
<title
>Preencher a base de dados</title>
<para
>A página <guilabel
>Base de Dados</guilabel
> permite definir onde é que a base de dados está armazenada no disco (<guilabel
>Pasta da base de dados</guilabel
>) e se deverá ser usada para o armazenamento automático das traduções novas (<guibutton
>Adicionar automaticamente o item à base de dados</guibutton
>). Nesse caso, você deverá indicar o autor da nova tradução no <guilabel
>Autor do registo adicionado automaticamente</guilabel
>. </para>
<para
>The rest of the tab allows you to fill the database from already existent PO files. Use one of the buttons in the middle of the dialog box. The progress of the file load will be shown by progress bars below the buttons. The <guilabel
>Repeated strings</guilabel
> button should be used in the special case when one translated string is repeated many times, so you do not want to store too many of them. Here you can limit the stored strings. </para>
<screenshot>
<screeninfo
>Preencher a base de dados</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="dbcan.png" format="PNG"/>
</imageobject>
<textobject
><phrase
>Preencher a base de dados a partir de ficheiros PO existentes</phrase
></textobject>
</mediaobject>
</screenshot
></sect2>

<sect2 id="database-goodkeys">
<title
>Definir as boas chaves</title>
<para
>Na página <guilabel
>Boas Chaves</guilabel
>, encontram-se os limites que definem como preencher a lista das boas chaves. O <guilabel
>Número mínimo de palavras da pesquisa na chave (%)</guilabel
> indica exactamente isso. O texto terá de conter somente esta percentagem das palavras para usar como boa chave. O oposto poderá ser indicado através da opção <guilabel
>Número mínimo das palavras da chave também na pesquisa (%)</guilabel
>. O comprimento das palavras pode ser definido na opção <guilabel
>Tamanho máximo</guilabel
>. </para>
<para
>O texto pesquisado normalmente contém um conjunto de palavras genéricas, &eg; artigos. Você poderá eliminar as palavras com base na frequência. Você poderá eliminá-las com a opção <guilabel
>Descartar as palavras mais frequentes que</guilabel
> ou vê-las como sempre presentes se ver a opção <guilabel
>as palavras frequentes são consideradas em todas as chaves</guilabel
>. Desta forma, as palavras frequentes serão quase invisíveis para as pesquisas. </para>
</sect2>
</sect1>


<sect1 id="auxiliary">
<title
>Ficheiro PO auxiliar</title>

<para
>Este modo de procura baseia-se na correspondência da mesma mensagem original em inglês (a 'msgid') traduzida noutra língua num ficheiro <acronym
>PO</acronym
> auxiliar. É bastante comum nas línguas românicas existirem palavras semelhantes, como acontece também com as línguas anglo-saxónicas e eslavas.</para>

<para
>Por exemplo, imagine-se que eu desejaria traduzir a palavra <quote
>on</quote
>, a partir do ficheiro <filename
>kdelibs.po</filename
>, para Romeno, mas não faço a menor ideia. Dando uma vista de olhos na versão em Francês, vi a palavra <quote
>actif</quote
>, enquanto que em Espanhol vi <quote
>activado</quote
>. Daí, conclui-se que a melhor forma em romeno será <quote
>active</quote
>. O &kbabel; automatiza esta tarefa. De momento, você só poderá definir um ficheiro auxiliar onde procurar.</para>

<sect2 id="auxiliary-settings">
<title
>Configuração</title>
<para
>Você poderá configurar este modo de procurar se seleccionar <menuchoice
> <guisubmenu
>Configuração</guisubmenu
> <guisubmenu
>Configurar o Dicionário</guisubmenu
> <guimenuitem
>Auxiliar PO</guimenuitem
> </menuchoice
> no menu do &kbabel;.</para>

<para
>Na janela <guilabel
>Configurar o Auxiliar PO do Dicionário</guilabel
>, você poderá seleccionar a localização do ficheiro <acronym
>PO</acronym
> auxiliar. Para automatizar a mudança de ficheiro <acronym
>PO</acronym
>, sempre que você muda o ficheiro em edição, existem muitas variáveis delimitadas pelo carácter <literal
>@</literal
> que são substituídas pelos valores apropriados:</para>

<variablelist>
  <varlistentry>
    <term
>@PACKAGE@</term>
    <listitem
><para
>O nome da aplicação ou do pacote que está a ser traduzido de momento. Por exemplo, poderá expandir-se para 'kbabel', 'kdelibs', 'konqueror' e assim por diante. </para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
>@LANG@</term>
    <listitem
><para
>O código da língua. Por exemplo, poderá expandir para: pt, de, ro, fr, &etc;. </para
></listitem>
  </varlistentry>
  <varlistentry>
    <term
>@DIRn@</term>
    <listitem
><para
>em que o <quote
>n</quote
> é um inteiro positivo. Isto expande-se para a <quote
>n</quote
>-ésima pasta contada no nome do ficheiro (da direita para a esquerda). </para
></listitem>
  </varlistentry>
</variablelist>

<para
>O campo de edição mostra a localização actual do ficheiro <acronym
>PO</acronym
> auxiliar. Embora seja melhor usar as variáveis fornecidas numa localização, é possível escolher uma localização absoluta e real para um ficheiro <acronym
>PO</acronym
> existente. Vamos ver um exemplo.</para>

<para
>Sou Português, tenho algum conhecimento de Francês, e trabalho na tradução do &kde;.</para>

<para
>O primeiro passo é obter uma versão muito recente do <filename
>kde-i18n-fr.tar.bz2</filename
> do <ulink url="ftp://ftp.kde.org/pub/kde/snapshots/kde-i18n"
>'site' de &FTP; do &kde;</ulink
> ou usar o sistema do <acronym
>CVS</acronym
> para colocar no meu disco rígido uma árvore de traduções em Francês. Irei fazer isto para <filename
>/home/ze/cvs-cvs.kde.org/kde-i18n/fr</filename
>.</para>

<para
>A minha pasta de ficheiros <acronym
>PO</acronym
> está em <filename
>/home/ze/cvs-cvs.kde.org/kde-i18n/pt</filename
>. Não se esqueça de escolher o <guilabel
>Auxiliar PO</guilabel
> como dicionário por omissão e assinale a opção <guilabel
>Iniciar a pesquisa automaticamente</guilabel
> na página <guilabel
>Pesquisa</guilabel
> da janela de <guilabel
>Preferências</guilabel
> do &kbabel;.</para>

</sect2>
</sect1>

<sect1 id="compendium">
<!-- FIXME: examples -->
<title
>Compêndio PO</title>

<para
>Um compêndio é um ficheiro que contém uma colecção com todas as mensagens de tradução (pares de <acronym
>msgid</acronym
> e <acronym
>msgstr</acronym
>) num projecto, &eg; no &kde;. Tipicamente, o compêndio para uma dada língua é criado ao concatenar todos os ficheiros <acronym
>PO</acronym
> do projecto para a língua. O compêndio poder conter mensagens traduzidas, não-traduzidas ou aproximadas. As mensagens não traduzidas são ignoradas por este módulo. </para>

<para
>Semelhante ao Auxiliar <acronym
>PO</acronym
>, este modo de pesquisa baseia-se na correspondência da <quote
>mesma</quote
> mensagem original (<acronym
>msgid</acronym
>) de um compêndio. De momento, só pode definir um ficheiro de compêndio onde procurar. </para>

<para
>Este modo é muito útil se você não estiver a usar a base de dados de traduções e se quiser obter uma tradução consistente com outras traduções. Já agora, os ficheiros de compêndio são muito mais fáceis de partilhar com os outros tradutores, e mesmo com outros projectos de traduções, dado que poderão ser gerados para eles à mesma. </para>

<sect2 id="compendium-settings">
<title
>Configuração</title>

<para
>Você poderá configurar este modo de pesquisa ao seleccionar <menuchoice
> <guisubmenu
>Configuração</guisubmenu
> <guisubmenu
>Configurar o Dicionário</guisubmenu
> <guimenuitem
>Compêndio PO</guimenuitem
> </menuchoice
> no menu do &kbabel;. </para>

<para
>Na janela <guilabel
>Configurar o Compêndio PO do Dicionário</guilabel
>, você podera indicar a localização de um ficheiro de compêndio. Para automatizar a mudança de ficheiros de compêndio quando você mudar a língua da tradução, existe uma variável delimitada por um <literal
>@</literal
> que é substituída por um valor apropriado:</para>

<variablelist>
  <varlistentry>
    <term
>@LANG@</term>
    <listitem
><para
>O código da língua. Por exemplo, poderá expandir para: pt, de, ro, fr, &etc;. </para
></listitem>
  </varlistentry>
</variablelist>

<para
>No campo de edição é mostrada a localização actual do ficheiro <acronym
>PO</acronym
> do compêndio. Embora você tivesse usado melhora as variáveis fornecidas na localização, é possível indicar uma localização real e absoluta para o ficheiro <acronym
>PO</acronym
> a usar como compêndio.</para>

<para
>Um compêndio muito actualizado para as traduções do &kde; em, &eg;, Português, poderá ser obtido em <filename
>pt.messages.bz2</filename
> a partir do <ulink url="ftp://ftp.kde.org/pub/kde/snapshots/kde-i18n"
>'site' &FTP; do &kde;</ulink
>. </para>

<para
>Você poderá definir como procurar no compêndio, usando as opções adicionais à localização. Estas estão divididas em dois grupos: opções de correspondência de texto, onde você poderá indicar como é que o texto é comparado e se deve ignorar as mensagens aproximadas, e opções de correspondência de mensagens, que definem se a tradução do compêndio deverá ser um excerto da mensagem de procura ou vice-versa.</para>

<variablelist>
  <varlistentry>
    <term
><guilabel
>Distinguir maiúsculas</guilabel
></term>
    <listitem>
    <para
>Se a correspondência da mensagem no compêndio deverá fazer distinção entre as letras minúsculas e as maiúsculas. </para>
    </listitem>
  </varlistentry>
  <varlistentry>
    <term
><guilabel
>Ignorar as mensagens aproximadas</guilabel
></term>
    <listitem>
    <para
>Se as mensagens aproximadas do compêndio deverão ser ignoradas na procura. O compêndio poderá conter mensagens aproximadas, desde que seja criado tipicamente através da concatenação dos ficheiros <acronym
>PO</acronym
> do projecto e que poderão conter mensagens aproximadas. As mensagens não traduzidas são sempre ignoradas (Você não pode procurar a tradução em mensagens não traduzidas, certo?)</para>
    </listitem>
  </varlistentry>
  <varlistentry>
    <term
><guilabel
>Só palavras completas</guilabel
></term>
    <listitem>
    <para
>Se o texto correspondente deverá começar e terminar nos limites das palavras. </para>
    </listitem>
  </varlistentry>
  <varlistentry>
    <term
>Um texto corresponde se <guilabel
>é igual ao texto da procura</guilabel
></term
> 
    <listitem>
    <para
>Um texto no compêndio faz correspondência com o texto a procurar só se for exactamente igual (obviamente, usando as opções acima). </para>
    </listitem>
  </varlistentry>
  <varlistentry>
    <term
>Um texto corresponde se <guilabel
>for semelhante ao texto da procura</guilabel
></term>
    <listitem>
    <para
>Um texto do compêndio corresponde ao texto da procura só se for <quote
>semelhante</quote
>. Ambos os textos são comparados através de pequenos blocos de letras (<quote
>trigramas</quote
>) e se pelo menos metade desses blocos for igual. </para>
    </listitem>
  </varlistentry>
  <varlistentry>
    <term
>Um texto corresponde se <guilabel
>contiver o texto da procura</guilabel
></term>
    <listitem>
    <para
>Um texto do compêndio corresponde ao texto da procura se contiver o texto da procura propriamente dito.</para>
    </listitem>
  </varlistentry>
  <varlistentry>
    <term
>Um texto corresponde se <guilabel
>estiver contido no texto da procura</guilabel
></term>
    <listitem>
    <para
>Um texto do compêndio corresponde ao texto da procura se estiver contido no texto da procura propriamente dito. </para>
    </listitem>
  </varlistentry>
  <varlistentry>
    <term
>Um texto corresponde se <guilabel
>contiver uma palavra do texto da procura</guilabel
></term>
    <listitem>
    <para
>Os textos são divididos em palavras e um texto do compêndio corresponderá ao texto da procura só se contiver alguma palavra do texto da procura. </para>
    </listitem>
  </varlistentry>
</variablelist>
</sect2>
</sect1>
</chapter>
<!--
Local Variables:
mode: xml
sgml-minimize-attributes:nil
sgml-general-insert-case:lower
sgml-indent-step:0
sgml-indent-data:nil
End:

vim:tabstop=2:shiftwidth=2:expandtab 
-->

