1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
|
<!-- <?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>Marcus</firstname><surname>Gama</surname><affiliation><address><email>marcus.gama@gmail.com</email></address></affiliation><contrib>Tradução</contrib></othercredit>
</chapterinfo>
<title>Dicionários</title>
<para>O &kbabel; possui 3 modos que podem ser usados para procurar por strings de mensagens <acronym>PO</acronym> traduzidos:</para>
<itemizedlist>
<listitem>
<para>Procurar traduções usando um banco de dados de traduções </para>
</listitem>
<listitem>
<para>Tradução aproximada </para>
</listitem>
<listitem>
<para>&kbabeldict; </para>
</listitem>
</itemizedlist>
<sect1 id="database">
<!-- FIXME: settings -->
<title>Banco de dados de traduções</title>
<!-- ### TODO: only *one* file? Seems more to be four... -->
<para>O banco de dados de traduções lhe permite armazenar traduções num banco de dados baseado no Banco de Dados Berkeley IV, &ie; elas são armazenadas num arquivo binário em seu disco. O banco de dados garante um busca rápida num grande número de traduções.</para>
<para>Este modo é o mais bem integrado ao &kbabel;. Além da busca e tradução aproximada ele também suporta os seguintes recursos:</para>
<itemizedlist>
<listitem>
<para>Cada nova tradução digitada no editor do &kbabel; pode ser automaticamente armazenada no banco de dados.</para>
</listitem>
<listitem>
<para>Este banco de dados pode ser usado para <quote>diferenciar</quote> <acronym>msgid</acronym>.</para>
</listitem>
</itemizedlist>
<para>É claro, quanto mais traduções são armazenadas no banco de dados, mais produtivo você pode ser. Para preencher o banco de dados, você pode usar a aba <guilabel>Banco de Dados</guilabel> no diálogo de preferências ou você pode habilitar a adição automática de cada mensagem traduzida nessa mesma aba.</para>
<sect2 id="database-settings">
<title>Configurações</title>
<para>Você pode configurar este modo de busca e como ele deverá ser usado selecionando <menuchoice> <guisubmenu>Configurações</guisubmenu> <guisubmenu>Configurar Dicionário</guisubmenu> <guimenuitem>Banco de Dados de Traduções</guimenuitem> </menuchoice> no menu do &kbabel;. </para>
<para>A aba <guilabel>Genérico</guilabel> contém configurações gerais para busca no banco de dados. </para>
<variablelist>
<varlistentry>
<term><guilabel>Procurar em todo o banco de dados (lento)</guilabel></term>
<listitem>
<para>Não usa <quote>boas chaves</quote>, busca em todo o banco de dados. Isto é lento, mas retornará os resultados mais precisos. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Procurar na lista de "boas chaves" (melhor)</guilabel></term>
<listitem>
<para>Usa a estratégia de <quote>boas chaves</quote>. Esta opção lhe fornecerá o melhor desempenho entre velocidade e correspondência exata. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Retorna a lista de "boas chaves" (rápido)</guilabel></term>
<listitem>
<para>Apenas retorna <quote>boas chaves</quote>, não tenta eliminar qualquer texto a mais. Este é o método mais rápido, mas pode fornecer um grande número de correspondências imprecisas. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guibutton>Sensível à caixa</guibutton></term>
<listitem>
<para>Distingue a caixa das letras na busca de texto. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guibutton>Normaliza espaços em branco</guibutton></term>
<listitem>
<para>Pula espaços em branco desnecessários nos textos, de modo que a busca ignore pequenas diferenças de espaço em branco, ⪚ número de espaços no texto. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guibutton>Remover comentário de contexto</guibutton></term>
<listitem>
<para>Não inclui comentário de contexto na busca. Você desejará que isto esteja habilitado. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Caracter a ser ignorado</guilabel></term>
<listitem>
<para>Aqui você pode inserir caracteres que devem ser ignorados durante a busca. Um exemplo típico pode ser a marca de acelerador &ie; & para textos &kde;. </para>
</listitem>
</varlistentry>
</variablelist>
<para>A aba <guilabel>Procurar</guilabel> contém especificações detalhadas para procura de texto. Você pode definir como procurar e também permitir o uso de outro modo especial de procura chamado <emphasis><guilabel>Substituição de palavra</guilabel></emphasis>. Substituindo uma ou duas palavras o texto aproximado pode ser encontrado. Por exemplo, imagine que você está tentando encontrar o texto <userinput>Meu nome é Andréia</userinput>. </para>
<variablelist>
<varlistentry>
<term><guilabel>Igual</guilabel></term>
<listitem>
<para>O texto do banco de dados corresponde se ele for o mesmo de string procurado. Em nosso exemplo, ele pode ser <emphasis>Meu nome é &Andréia</emphasis> (se & tiver sido configurado como caracter ignorado em <guilabel>Caracteres a serem ignorados</guilabel> na aba <guilabel>Genérico</guilabel>). </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Consulta está contida</guilabel></term>
<listitem>
<para>O texto do banco de dados corresponde se o string procurado estiver contido nele. Para o nosso exemplo ele pode ser <emphasis>Meu nome é Andréia, você sabia?</emphasis>. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Consulta contém</guilabel></term>
<listitem>
<para>O texto do banco de dados corresponde se o string procurado o contém. Para o nosso exemplo ele pode ser <emphasis>Andréia</emphasis>. Você pode usar isto para enumerar as possibilidades a serem encontradas. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guibutton>Expressão Regular</guibutton></term>
<listitem>
<para>Considere o texto procurado como uma expressão regular. Isto é principalmente usado para o &kbabeldict;. Você pode procurar com base em expressões regulares nos arquivos PO. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guibutton>Use uma substituição de palavra</guibutton></term>
<listitem>
<para>Se o texto de consulta contém menos palavras que as especificadas abaixo, ele também tenta substituir uma das palavras na consulta. Em nosso exemplo ele procurará por <emphasis>Seu nome é Andréia</emphasis> também. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guibutton>Máximo número de palavras na consulta</guibutton></term>
<listitem>
<para>Número máximo de palavras numa consulta para habilitar a substituição de uma palavra. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Caracteres locais para expressões regulares</guilabel></term>
<listitem>
<para>Caracteres a serem considerados parte de expressões regulares. </para>
</listitem>
</varlistentry>
</variablelist>
<note>
<para>Substituição de duas palavras ainda não foi implementada. </para>
</note>
</sect2>
<sect2 id="database-fill">
<title>Preenchendo o banco de dados</title>
<para>A aba <guilabel>Banco de Dados</guilabel> permite definir onde está armazenado o banco de dados no disco (<guilabel>Pasta do Banco de Dados</guilabel>) e se ele deve ser usado para armazenamento automático de novas traduções (<guibutton>Auto-adicionar entrada ao banco de dados</guibutton>). Neste caso você deve especificar o autor da nova tradução em <guilabel>Autor da entrada adicionada automaticamente</guilabel>. </para>
<para>O resto da aba permite preencher o banco de dados a partir de arquivos PO já existentes. Use um dos botões do meio da caixa de diálogo. O progresso do carregamento de arquivos será mostrado através de barra de progresso abaixo dos botões. O botão <guilabel>Strings repetidos</guilabel> deve ser usado no caso especial de um string traduzido estiver repetido muitas vezes, caso você não queira armazenar muitos deles. Aqui você pode limitar os strings armazenados. </para>
<screenshot>
<screeninfo>Preenchendo o banco de dados</screeninfo>
<mediaobject>
<imageobject>
<imagedata fileref="dbcan.png" format="PNG"/>
</imageobject>
<textobject><phrase>Preenchendo o banco de dados com arquivos PO existentes</phrase></textobject>
</mediaobject>
</screenshot></sect2>
<sect2 id="database-goodkeys">
<title>Definindo boas chaves</title>
<para>Na aba <guilabel>Boas chaves</guilabel> estão as regras para especificar como preencher a lista de chaves boas. <guilabel>Número mínimo de palavras da consulta na chave (%)</guilabel> especifique exatamente que o texto precisará conter somente este percentual de palavras para se qualificar como uma boa chave. O oposto pode ser especificado via <guilabel>Número mínimo de palavras da chave também na consulta (%)</guilabel>. O tamanho das palavras pode ser configurado na caixa de número <guilabel>Tamanho máximo</guilabel>. </para>
<para>O texto procurado tipicamente contém diversas palavras genéricas, ⪚ artigos. Você pode eliminar as palavras baseado na freqüência. Você pode descartá-las com <guilabel>Discartar palavras mais freqüentes que</guilabel> ou considerar com sempre presente com <guilabel>palavras freqüentes são consideradas em toda chave</guilabel>. Deste modo as palavras freqüentes serão invisíveis para as consultas. </para>
</sect2>
</sect1>
<sect1 id="auxiliary">
<title>Arquivo auxiliar PO</title>
<para>Este modo de busca é baseado na correspondência do mesmo texto original em Inglês (o msgid) traduzido para outro idioma num arquivo auxiliar <acronym>PO</acronym>. Isto é muito comum para idiomas romanos que possuem palavras similares, como por exemplo o anglo-saxão e o eslavo.</para>
<para>Por exemplo, digamos que eu queira traduzir a palavra <quote>on</quote>, do <filename>tdelibs.po</filename>, para o Romeno mas eu não tenho nenhuma referência. Eu olho no mesmo arquivo para o Francês e encontro <quote>actif</quote>, e em Espanhol encontro <quote>activado</quote>. Logo, eu concluo que o melhor em Romeno será <quote>active</quote>. (Obviamente, em Inglês ao invés de <quote>on</quote> a palavra usada poderia ser <quote>active</quote> ou <quote>activated</quote>, o que teria feito o processo de tradução mais fácil.) O &kbabel; automatiza esta tarefa. Atualmente você pode definir somente um arquivo auxiliar para procurar. </para>
<sect2 id="auxiliary-settings">
<title>Configurações</title>
<para>Você pode configurar este modo de procura selecionando <menuchoice> <guisubmenu>Configurações</guisubmenu> <guisubmenu>Configurar Dicionário</guisubmenu> <guimenuitem>PO Auxiliar</guimenuitem> </menuchoice> no menu do &kbabel;.</para>
<para>No diálogo <guilabel>Configurar Dicionário PO Auxiliar</guilabel> você pode selecionar o caminho para o arquivo <acronym>PO</acronym> auxiliar. Para automatizar alternância do arquivo <acronym>PO</acronym>-quando você muda o arquivo atualmente editado existem muitas variáveis delimitadas pelo caracter <literal>@</literal> que serão substituídas pelos valores apropriados.</para>
<variablelist>
<varlistentry>
<term>@PACKAGE@</term>
<listitem><para>O nome do aplicativo ou pacote atualmente sendo traduzido. Por exemplo, ele pode expandir para kbabel,. tdelibs, konqueror e assim por diante. </para></listitem>
</varlistentry>
<varlistentry>
<term>@LANG@</term>
<listitem><para>O código do idioma. Por exemplo pode ser expandido para: de, ro, fr, etc. </para></listitem>
</varlistentry>
<varlistentry>
<term>@DIRn@</term>
<listitem><para>onde <quote>n</quote> é um inteiro positivo. Isto expande para a <quote>enésima</quote> pasta contada a partir do nome do arquivo (direita para esquerda). </para></listitem>
</varlistentry>
</variablelist>
<para>A linha de edição exibe o caminho atual para o arquivo auxiliar <acronym>PO</acronym> . Apesar de ser preferível usar a variável fornecida no caminho é possível escolher um caminho absoluto para um arquivo <acronym>PO</acronym> existente. Vejamos um exemplo.</para>
<para>Eu sou Romeno e eu tenho algum conhecimento do idioma Francês e eu trabalho na tradução do &kde;.</para>
<!-- ### TODO: check URL, especially the kde-l10n part -->
<para>O primeiro passo é baixar o mais recente <filename>kde-l10n-fr.tar.bz2</filename> no <ulink url="ftp://ftp.kde.org/pub/kde/snapshots/kde-l10n">&FTP; do &kde;</ulink> ou usar o sistema <acronym>CVS</acronym> para colocar em meu disco rígido uma árvore de tradução do idioma Francês. Eu faço isso em <filename>/home/clau/cvs-cvs.kde.org/kde-l10n/fr</filename>.</para>
<para>Minha pasta de fontes <acronym>PO</acronym> está em <filename>/home/clau/cvs-cvs.kde.org/kde-l10n/ro</filename>. Não se esqueça de selecionar o <guilabel>PO Auxiliar</guilabel> como dicionário padrão e habilitar <guilabel>Iniciar busca automaticamente</guilabel> na aba <guilabel>Procurar</guilabel> do diálogo 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 arquivo contendo uma coleção de todas as mensagens traduzidas (pares de <acronym>msgid</acronym> e <acronym>msgstr</acronym>) num projeto, ⪚ em &kde;. Tipicamente, um compêndio para um idioma determinado é criado pela concatenação de todos os arquivos <acronym>PO</acronym> do projeto para o idioma. O compêndio pode conter mensagens traduzidas, não traduzidas e aproximadas. Mensagens não traduzidas são ignoradas por este módulo. </para>
<para>Semelhante ao <acronym>PO</acronym> Auxiliar, este modo de busca é baseado na correspondência do <quote>mesmo</quote> string original (<acronym>msgid</acronym>) num compêndio. Atualmente você pode definir somente um arquivo de compêndio para pesquisar. </para>
<para>Este modo é muito útil se você não está usando o banco de dados de traduções e você deseja obter uma tradução consistente com outras traduções. Deste modo, arquivos compêndio são mais fáceis para compartilhar com outros tradutores e outros projetos de tradução porque eles podem ser gerados por todos. </para>
<sect2 id="compendium-settings">
<title>Configurações</title>
<para>Você pode configurar este modo de busca selecionando <menuchoice> <guisubmenu>Configurações</guisubmenu> <guisubmenu>Configurar Dicionário</guisubmenu> <guimenuitem>Compêndio PO</guimenuitem> </menuchoice> no menu do &kbabel;. </para>
<para>No diálogo <guilabel>Configurar Dicionário Compêndio PO</guilabel> você pode selecionar o caminho para um arquivo de compêndio. Para automatizar a alternância do arquivo de compêndio quando você muda o idioma de tradução, existe uma variável delimitada por caracteres <literal>@</literal> que será substituída pelo valor apropriado.</para>
<variablelist>
<varlistentry>
<term>@LANG@</term>
<listitem><para>O código do idioma. Por exemplo pode ser expandido para: de, ro, fr, etc. </para></listitem>
</varlistentry>
</variablelist>
<para>Na linha de edição é exibido o caminho atual para o arquivo <acronym>PO</acronym>. Apesar de ser melhor usar a variável fornecida no caminho, é possível escolher um caminho absoluto para um arquivo <acronym>PO</acronym> a ser usado como um compêndio.</para>
<!-- ### TODO: check URL, especially the kde-l10n part -->
<para>O compêndio mais recente para traduções &kde; para o ⪚ Francês pode ser baixado de <filename>fr.messages.bz2</filename> do <ulink url="ftp://ftp.kde.org/pub/kde/snapshots/kde-l10n">&FTP; do &kde;</ulink>. </para>
<para>Você pode definir como procurar no compêndio usando as opções abaixo do caminho. Elas estão divididas em dois grupos: opções de correspondência de texto, onde você pode especificar como o texto é comparado e se deve ignorar traduções aproximadas, e opções de correspondência de mensagens, que determina se a tradução do compêndio pode ser um sub-string da mensagem procurada ou vice-versa.</para>
<variablelist>
<varlistentry>
<term><guilabel>Sensível à caixa</guilabel></term>
<listitem>
<para>Se a correspondência de mensagem no compêndio deve distinguir entre letras maiúsculas e minúsculas. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Ignorar string aproximado</guilabel></term>
<listitem>
<para>Se as mensagens aproximadas no compêndio devem ser ignoradas na procura. O compêndio pode conter mensagens aproximadas, uma vez que elas são tipicamente criadas pela concatenação de arquivos <acronym>PO</acronym> do projeto que podem incluir mensagens aproximadas. Mensagens não traduzidas são sempre ignoradas (Você não pode procurar por um tradução em mensagens não traduzidas, certo?).</para>
</listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Somente palavras inteiras</guilabel></term>
<listitem>
<para>Se o texto correspondente deve iniciar e terminar com as palavras originais. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>Um texto corresponde se ele <guilabel>é igual ao texto procurado</guilabel></term>
<listitem>
<para>Um texto no compêndio correspode ao texto procurado somente se ele é exatamente o mesmo (claro usando as opções acima). </para>
</listitem>
</varlistentry>
<varlistentry>
<term>Um texto corresponde se ele <guilabel>é parecido com o texto procurado</guilabel></term>
<listitem>
<para>Um texto no compêndio corresponde ao texto procurando se ele é <quote>parecido</quote>. Ambos os textos são comparados por pequenos pedaços de letras (<quote>3-grams</quote>) e pelo menos metade de todos os pedaços são iguais. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>Um texto corresponde se ele <guilabel>contém o texto procurado</guilabel></term>
<listitem>
<para>Um texto no compêndio corresponde se ele contém o texto procurado.</para>
</listitem>
</varlistentry>
<varlistentry>
<term>Um texto corresponde se ele <guilabel>está contido no texto procurado</guilabel></term>
<listitem>
<para>Um texto no compêndio corresponde se ele está contido no texto procurado. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>Um texto corresponde se ele <guilabel>contém uma palavra do texto procurado</guilabel></term>
<listitem>
<para>Os textos são divididos em palavras e um texto no compêndio corresponde ao texto procurado somente se ele contém algumas palavras do texto procurado. </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
-->
|