<chapter id="plugins">

<chapterinfo>
<authorgroup>
<author
>&Anders.Lund; &Anders.Lund.mail;</author>
<othercredit role="translator"
><firstname
>Lisiane</firstname
><surname
>Sztoltz</surname
><affiliation
><address
><email
>lisiane@conectiva.com.br</email
></address
></affiliation
><contrib
>Tradução</contrib
></othercredit
> 
</authorgroup>
</chapterinfo>

<title
>Trabalhando com plugins</title>

<para
>O Kate está usando dois tipos diferentes de plug-ins, nomeadamente os plugins para o aplicativo &kate; e os plugins para o componente de edição do &kate;. Os últimos estão disponíveis em qualquer aplicativo que use o componente de edição, como o KDevelop, o Quanta, o Kile, o Kwrite e muitos outros, enquanto os plugins do aplicativo são específicos apenas do &kate;.</para>

<para
>Você poderá ativar ambos os tipos de plugins na <link linkend="configuring-kate-configdialog"
>janela de configuração</link
>, a qual também oferece acesso às opções de configuração adicionais dos plugins que necessitem delas.</para>

<para
>Existem vários plugins para vários fins e você poderá procurar mais na Web. Alguns plugins são fornecidos com o componente de edição, para fazer inserção automática de parênteses, inserções de arquivos, ferramentas de dados e exportação de texto como &HTML;.</para>

<sect1 id="kate-editor-plugins">
<title
>Plugins do Componente de Edição</title>

<para
>A página de <guilabel
>Plugins</guilabel
> da seção <guilabel
>Extensões</guilabel
> lista todos os plugins disponíveis e você poderá assinalar os que deseja usar. Clique no botão <guibutton
>Informações</guibutton
> para abrir a janela <guilabel
>Sobre</guilabel
> do referido plugin.</para>
<para
>Uma vez que um plug-in configurável esteja marcado, o botão <guibutton
>Configurar</guibutton
> fica habilitado para que se possa clicar nele, de modo a configurar o plug-in realçado.</para>

<variablelist>
<varlistentry>
<term
><guilabel
>Parênteses automático</guilabel
></term>
<listitem
><para
>O plug-in de parênteses automático sobrepõe-se ao recurso interno do &kate; de <quote
>Parênteses automático</quote
>. Ele automaticamente insere um parênteses de fechamento <keycap
>}</keycap
> no início da próxima linha após terminar uma linha com um parênteses de abertura <keycap
>{</keycap
> e pressionar o &Enter;.</para
></listitem>
</varlistentry>
<!--http://jakob.petsovits.at/topic/kate-->
<!--Right, it's the automatic insertion of a closing brace ("}") after you ended a line with an opening one ("{"). Kate's standard insertion of parentheses, brackets and braces is simply too obtrusive for me, so even if I tried it several times I always had to disable it again because I can't stand it. So here's how AutoBrace works.
You, the developer, are writing a line of code, and want to open a new block delimited by braces. Looks like this:
If you press Enter and AutoBrace is enabled, it will insert your favorite new brace where it belongs. Looks like this:
-->
<varlistentry>
<term
><guilabel
>Ferramentas de dados</guilabel
></term>
<listitem
><para
>Ativa as ferramentas de dados, como a verificação gramatical e ortográfica (se estiverem instalados). As ferramentas de dados só ficam disponíveis quando tem texto selecionado, ou quando o botão direito do mouse é clicado sobre uma palavra. Se não existirem ferramentas de dados disponíveis, mesmo quando seleciona algum texto, você terá que instalá-las. Algumas ferramentas de dados fazem parte do pacote &koffice;. Se este plugin estiver ativo e se as ferramentas de dados estiverem instalados, irão aparecer alguns itens adicionais no fim do menu do contexto.</para
></listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Exportador</guilabel
></term>
<listitem
><para
>Este comando permite que você exporte o documento atual com todas as informações realçadas em um documento HTML usando o<menuchoice
><guimenu
>Arquivo</guimenu
><guimenuitem
>Exportar como HTML</guimenuitem
></menuchoice
>. Adicionalmente você pode usar o <menuchoice
><guimenu
>Editar</guimenu
> <guimenuitem
>Copiar como HTML</guimenuitem
></menuchoice
> para copiar o texto atualmente selecionado como HTML para a área de transferência do sistema.</para
></listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Codificação maluca (não ZEN) de HTML (edição leve)</guilabel
></term>
<listitem
><para
>Um plugin que faz um completamento de seletores semelhante à codificação 'zen'.</para
></listitem>
</varlistentry>
<varlistentry>
<term
><guilabel
>Inserir arquivo</guilabel
></term>
<listitem
><para
>Este plugin permite que você insira qualquer arquivo legível na posição do cursor. Se ativado, o menu <guimenu
>Ferramentas</guimenu
> possui um item adicional <guimenuitem
>Inserir arquivo</guimenuitem
>.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>Verificação da codificação em Python</term>
<listitem
><para
>Este plugin está sempre ativo. Se você tentar salvar um arquivo python em um formato não ASCII, sem especificar um linha de codificação do código correta como &eg; <quote
># -*- coding: utf-8 -*-</quote
>, uma janela de alerta aparece e permite que você adicione a linha de codificação do código para a codificação atual do arquivo. </para
></listitem>
</varlistentry>
</variablelist>
<!--
kdelibs/kate/plugins/ has additional plugins
autobookmark not build, its broken!
timedate not build? plugin is for howto-write-a-plugin purposes!
-->

<!-- Scripts tab ??? empty-->
</sect1>

<sect1 id="kate-application-plugins">
<title
>Plugins do aplicativo &kate;</title>

<!-- from doc/kate-addons/index.docbook -->
<para
>Os plugins do &kate; são funções adicionais para o editor &kate;. Eles poderão adicionar menus e atalhos extra, assim como estender as funcionalidades do &kate;. Você poderá instalar ou desinstalar os que quiser, dentro do &kate;. Abra a janela de configuração do &kate; com a opção <menuchoice
><guimenu
>Configurações</guimenu
><guimenuitem
>Configurar o &kate;...</guimenuitem
></menuchoice
>. Selecione o <menuchoice
><guimenu
>Aplicativo</guimenu
><guimenuitem
>Plugins</guimenuitem
></menuchoice
> para escolher os plugins desejados. </para>

<para
>O plugins do aplicativo disponíveis são: </para>
<itemizedlist>
<listitem>
<para
>Área de ferramenta para procura nos arquivos - Uma área que lhe permite procurar em todos os arquivos abertos ou no sistema de arquivos</para>
</listitem>
<listitem>
<para
>Navegador de estouros - Janela da ferramenta de navegação dos estouros</para>
</listitem>
<listitem>
<para
>Mudança rápida de documento - Muda rapidamente para outro documento já aberto</para>
</listitem>
<listitem>
<para
>Barra de páginas - Adiciona uma barra de páginas à janela principal do &kate;</para>
</listitem>
<listitem>
<para
>Trechos de texto - Trechos de texto configuráveis</para>
</listitem>
<listitem>
<para
>Filtro de texto - Filtragem simples de texto</para>
</listitem>
<listitem>
<para
>Visualizador de símbolos - Extrair e mostrar os símbolos de referência do código</para>
</listitem>
<listitem>
<para
>Navegador do sistema de arquivos - Janela de navegação no sistema de arquivos</para>
</listitem>
<listitem>
<para
>Área de ferramentas do console - Área de ferramentas que incorpora um console</para>
</listitem>
<listitem>
<para
>Plugin de navegação Python do Kate - Um plugin de navegação em Python para o Kate</para>
</listitem>
<listitem>
<para
>Plugin CTags - Procurar definições/declarações com o CTags</para>
</listitem>
<listitem>
<para
><link linkend="kate-application-plugin-filetemplate"
>Modelos de arquivo</link
> - Cria novos arquivos a partir de modelos</para>
</listitem>
<listitem>
<para
>Abrir cabeçalho - Abre o arquivo .h/[.cpp|.c] correspondente</para>
</listitem>
<listitem>
<para
>Ferramentas Externas</para>
</listitem>
<listitem>
<para
>Plugin de compilação - Compila ou executa o Make e processa as mensagens de erro</para>
</listitem>
<listitem>
<para
>Enviar arquivos - Enviar os arquivos por e-mail</para>
</listitem>
<listitem>
<para
>Trechos do Kate - Plugin de trechos com suporte a completamento de código</para>
</listitem>
<listitem>
<para
>Plugin KTTSD do KTexEditor - Adiciona um item de meu para falar o texto</para>
</listitem>
<listitem>
<para
>O <link linkend="kate-application-plugin-xmlcheck"
>Validação do &XML;</link
> valida arquivos &XML; usando o xmllint</para>
</listitem>
<listitem>
<para
><link linkend="kate-application-plugin-xmltools"
>Completamento de &XML;</link
>- Apresenta os elementos de &XML;, os seus atributos, valores e entidades permitidas pela DTD</para>
</listitem>
</itemizedlist>
</sect1>

<!-- from doc/kate-addons/filetemplates.docbook -->
<sect1 id="kate-application-plugin-filetemplate">
<sect1info>
<authorgroup>
<author
>&Anders.Lund; &Anders.Lund.mail;</author>
</authorgroup>
</sect1info>
<title
>Modelos de Arquivos</title>

  <para
>O plugin de Modelos de Arquivo permite que você crie arquivos baseados em outros. Você pode usar qualquer arquivo como modelo, o que irá criar uma cópia do arquivo com uma &URL; vazia ou usar um arquivo de modelo especial que pode conter macros para preencher informações como seu nome e seu endereço de e-mail, a data atual e assim por diante, e posicionar o cursor em um local conveniente no novo arquivo.</para>
  <para
>Além do mais, modelos localizados na pasta de modelos serão apresentados no item de menu <menuchoice
><guimenu
>Arquivo</guimenu
><guimenuitem
>A Partir do Modelo...</guimenuitem
></menuchoice
>.</para
> <para
>O plug-in também fornece um método para criar facilmente um novo modelo a partir de um documento aberto.</para>
  <para
>A pasta de modelos é parte do sistema de arquivos do &kde;, e consiste pelo menos do KDEDIR/share/applications/kate/plugins/katefiletemplates/templates e do KDEHOME/share/applications/kate/plugins/katefiletemplates/templates. Se sua variável de ambiente KDEDIRS contiver pastas adicionais, serão procurados nestas pastas por um subdiretório semelhante. Se modelos com mesmo nome forem encontrados, o da pasta local (KDEHOME) será escolhido.</para>
  <sect2 id="katefiletemplates-menu">
    <title
>Estrutura do Menu</title>

    <variablelist>
      <varlistentry>
        <term>
          <menuchoice
><guimenu
>Arquivo</guimenu
> <guisubmenu
>Novo a Partir do Modelo</guisubmenu
> <guimenuitem
>Qualquer Arquivo...</guimenuitem
> </menuchoice>
        </term>
        <listitem
><para
>Apresente o diálogo para Abrir Arquivo que permite usar qualquer arquivo como um modelo. Se o arquivo escolhido tiver a extensão <filename
>katetemplate</filename
> ele será analisado por informações e macros do modelo.</para
></listitem>
      </varlistentry>
      <!-- not in 4.4
      <varlistentry>
        <term>
          <menuchoice>
            <guimenu
>File</guimenu>
            <guisubmenu
>New From Template</guisubmenu>
            <guimenuitem
>Use Recent</guimenuitem>
          </menuchoice>
        </term>
        <listitem
><para
>Presents a list of files recently used as
            templates, represented by their &URL;.</para
></listitem>
      </varlistentry>
      -->
      <varlistentry>
        <term>
          <menuchoice
><guimenu
>Arquivo</guimenu
> <guimenuitem
>Novo a Partir do Modelo</guimenuitem
> </menuchoice>
        </term>
        <listitem
><para
>O lembrador de submenus contém os links para modelos. Clique em um item de menu para criar um arquivo como descrito pelo texto do item de menu.</para
></listitem>
      </varlistentry>

      <!-- Settings menu -->

      <varlistentry>
        <term>
          <menuchoice
><guimenu
>Configurações</guimenu
><guimenuitem
>Gerenciar Modelos...</guimenuitem
></menuchoice
></term>
        <listitem
><para
>Isto lançará um diálogo com uma lista de todos os modelos encontrados nos diretórios de modelos, junto com opções para adicionar, editar ou remover modelos.</para
></listitem>
      </varlistentry>
    </variablelist>
  </sect2>

  <sect2 id="katefiletemplates-use">
    <title
>Usando um Modelo do &kate;</title>
    <para
>Ao criar um arquivo a partir de um modelo que contenha macros, alguns macros aparecerão como variáveis editáveis no texto. Como variáveis, eles aparecem como palavras sublinhadas no texto.</para>
    <para
>A primeira variável será selecionada, assim que você tenha digitado para editá-la. Se o texto do documento contiver mais de uma instância da mesma variável, elas serão mudadas assim que você editar a primeira. Para mover para a próxima variável editável, pressione a tecla TAB. Quando a última variável tiver sido editada, a lista é descartada, e sua tecla TAB voltará a funcionar normalmente.</para>
  </sect2>

  <sect2 id="katefiletemplates-create">
    <title
>Criando seus próprios modelos</title>
    <para
>Para criar um novo modelo, use o item <menuchoice
><guimenu
>Configurações</guimenu
><guimenuitem
>Gerenciar Modelos</guimenuitem
></menuchoice
> para lançar o diálogo de gerenciamento de modelo. Neste diálogo, clique em <guibutton
>Novo...</guibutton
> para lançar o Assistente de Modelo de Arquivo. Você será questionado por um arquivo opcional para tornar-se um modelo e por configurações de informações do modelo, criando assim um arquivo de modelo para você.</para
> <para
>Alternativamente, você pode criar um modelo manualmente adicionando informações do modelo no topo de qualquer arquivo, adicionando texto e macros, e salvando-o com a extensão <filename
>katetemplate</filename
>.</para>
    <para
>O menu de modelo será automaticamente atualizado se você escolher armazenar seu modelo no diretório de modelos.</para>
  </sect2>

  <sect2 id="katefiletemplates-edit">
    <title
>Editando modelos</title>
    <para
>Para editar um modelo, use o <menuchoice
><guimenu
>Configurações</guimenu
> <guimenuitem
>Gerenciar Modelos...</guimenuitem
></menuchoice
>. Selecione o modelo que você deseja editar e clique em <guibutton
>Editar...</guibutton
>, e o arquivo de modelo será aberto. Feche o diálogo, edite o arquivo de modelo como desejar, salve-o e feche-o. As mudanças para os modelos terão efeito imediatamente, e você pode ativar o modelo para testar suas mudanças após salvá-lo.</para>
  </sect2>

  <sect2 id="katefiletemplates-format">
    <title
>O Formato de Modelo do &kate;</title>
    <para
>Se você usar arquivos com extensão <filename
>katetemplate</filename
>, eles serão analisados por informações de modelo, macros e uma posição do cursor.</para>

    <sect3 id="katefiletemplates-template-info">
      <title
>Informações do modelo</title>
      <para
>Ao ler um arquivo, o analisador mantém as linhas que iniciam com a frase <constant
>katetemplate:</constant
> e procura nelas por informações do modelo no formato NOMEDAVARIAVEL=VALOR. A primeira linha que não iniciar com <constant
>katetemplate:</constant
> será tomada como inicial do conteúdo do modelo. VALOR pode conter qualquer caracter menos o sinal de igual (=). Nomes de variáveis válidos são: <variablelist>
          <varlistentry>
            <term
><varname
>Modelo</varname
></term>
            <listitem
><para
>Este é o nome do modelo, exibido no menu <menuchoice
><guimenu
>Arquivo</guimenu
><guimenuitem
>Novo A Partir do Modelo</guimenuitem
></menuchoice
>.</para
></listitem>
          </varlistentry>
          <varlistentry>
            <term
><varname
>Group</varname
></term>
            <listitem
><para
>O grupo de lugares do modelo no submenu do menu <menuchoice
><guimenu
>Arquivo</guimenu
><guimenuitem
>Novo A Partir do Modelo</guimenuitem
></menuchoice
>.</para
></listitem>
          </varlistentry>
          <varlistentry
><term
><varname
>Nome</varname
></term>
            <listitem
><para
>Este é o nome que será configurado para o documento, e exibido na lista de arquivos e barra de título. Se o nome contiver <userinput
>%N</userinput
> isto será substituído com um número, aumentado se mais documentos tiverem o mesmo nome.</para
></listitem>
          </varlistentry>
          <varlistentry>
            <term
><varname
>Highlight</varname
></term>
            <listitem
><para
>O plug-in tentará configurar o Destaque do novo documento para o valor desta variável. O valor deve ser o nome, como encontrado em <menuchoice
><guimenu
>Ferramentas</guimenu
><guimenuitem
>Destaque</guimenuitem
> </menuchoice
>.</para>
            </listitem>
          </varlistentry>
          <varlistentry>
            <term
><varname
>Description</varname
></term>
            <listitem
><para
>Uma descrição informativa curta do modelo. Isto é atualmente usado para configurar um string 'O Que É Isto?' para o item de menu, mas pode ser usado para outras finalidades no futuro.</para
></listitem>
          </varlistentry>
          <varlistentry
><term
>Autor</term>
            <listitem
><para
>Um string identificando o autor, por exemplo na forma <userinput
>Nome &lt;endereço de email&gt;</userinput
>. Isto é atualmente usado para configurar um string 'O Quê É Isto?' para o item de menu, mas pode ser usado para outras finalidades no futuro.</para
></listitem>
          </varlistentry>
        </variablelist>
      </para>

    </sect3>

    <sect3 id="katetemplates-macros">
      <title
>Macros do modelo</title>

      <para
>Ao analisar o conteúdo do modelo, macros na forma <userinput
>%{NOME}</userinput
> ou <userinput
>${NOME}</userinput
> são expandidos. Se você usar o prefixo <userinput
>$</userinput
>, o macro expandido será tratado como uma variável editável quando um documento é criado a partir do modelo, enquanto se você usar o <userinput
>%</userinput
> ele não é, a menos que a expansão falhe.</para>
      <para
>Os seguintes macros são expandidos: <variablelist>
          <varlistentry
><term
>time</term>
            <listitem
><para
>Expande para a hora atual no seu formato local.</para
></listitem>
          </varlistentry>
          <varlistentry>
            <term
>data</term>
            <listitem
><para
>Expande para a data atual no formato reduzido.</para
></listitem>
          </varlistentry>
          <varlistentry>
            <term
>datahora</term>
            <listitem
><para
>Expande para a data e hora atual formatado como um string de acordo com seu local.</para
></listitem>
          </varlistentry>
          <varlistentry>
            <term
>ano</term>
            <listitem
><para
>O ano atual como um número de quatro dígitos.</para
></listitem>
          </varlistentry>
          <varlistentry>
            <term
>mês</term>
            <listitem
><para
>O nome completo do mês atual, de acordo com seu local.</para
></listitem>
          </varlistentry>
          <varlistentry
><term
>day</term>
            <listitem
><para
>Expande para o dia atual do mês.</para>
            </listitem>
          </varlistentry>
          <varlistentry
><term
>hostname</term>
            <listitem
><para
>Expande para o 'nome de máquina' do seu computador.</para>
            </listitem>
          </varlistentry>
          <varlistentry
><term
>índice</term>
            <listitem
><para
>Expande para 'i'.</para
></listitem>
          </varlistentry>
          <varlistentry
><term
>fullname</term>
            <listitem
><para
>Expande para seu nome completo, como definido pelo endereço do dono em seu livro de endereços padrão do &kde;.</para
></listitem>
          </varlistentry>
          <varlistentry
><term
>nome</term>
            <listitem
><para
>Expande para seu primeiro nome, como definido pelo endereço do dono em seu livro de endereços padrão do &kde;.</para>
            </listitem>
          </varlistentry>
          <varlistentry
><term
>lastname</term>
            <listitem
><para
>Expande para seu último nome, como definido pelo endereço do dono em seu livro de endereços padrão do &kde;.</para>
            </listitem>
          </varlistentry>
          <!-- <varlistentry>
            <term
>username</term>
            <listitem
><para
>Expands to your username.</para
></listitem>
          </varlistentry
> -->
          <varlistentry>
            <term
>email</term>
            <listitem
><para
>Expande para seu endereço eletrônico, como definido pelo endereço do dono em seu livro de endereços padrão do &kde;.</para
></listitem>
          </varlistentry>
          <!--<varlistentry>
            <term
>organisation</term>
            <listitem
><para
>This is your organisation, as defined by
                the owner address in your standard KDE
                addressbook.</para
></listitem>
          </varlistentry
>-->
        </variablelist>
      </para>
      <para
>Qualquer macro que não esteja na lista acima é tratado como uma variável editável independente do prefixo. Se a mesma variável aparecer várias vezes no modelo, elas podem ser editadas de uma vez após criar um documento a partir do modelo.</para>
    </sect3>

    <sect3 id="katefiletemplates-cursor">
      <title
>Configurando a posição do cursor</title>
      <para
>O macro especial <userinput
>${cursor}</userinput
> será substituído com uma barra vertical e adicionado ao final da lista de variáveis editáveis, independente de sua localização no texto.</para>
    </sect3>

  </sect2>
  <sect2>
    <title
>Agradecimentos e Reconhecimentos</title>
    <para
>Plugin <quote
>Modelos de arquivo</quote
> &kate; com direitos autorais 2004 de &Anders.Lund; &Anders.Lund.mail; </para>
    <para
>Documentação copyright 2004 &Anders.Lund;</para>
  </sect2>
</sect1>

<!-- from doc/kate-addons/xmlcheck.docbook -->
<sect1 id="kate-application-plugin-xmlcheck">
<sect1info>
<authorgroup
><author
><firstname
>Daniel</firstname
> <surname
>Naber</surname
> <affiliation
><address
>&Daniel.Naber.mail;</address
></affiliation>
</author
></authorgroup>
</sect1info>

<title
>Validação &XML;</title>

<para
>Este plug-in verifica arquivos &XML; para consistência e validação.</para>
<para
>Este plug-in verifica o arquivo atual. Uma lista de avisos e erros aparecerá na parte de baixo do janela principal do &kate;. Você pode clicar em uma mensagem de erro para pular para o lugar correspondente no arquivo. Se o arquivo tiver um <quote
>DOCTYPE</quote
> o DTD dado com este doctype será usado para validar este arquivo. O DTD é esperado em uma posição relativa ao arquivo atual. &eg;, se o doctype se refere ao <quote
>DTD/xhtml1-transitional.dtd</quote
> e o arquivo é <filename
>/home/peter/test/xml</filename
> o DTD deve estar localizado em <filename
>/home/peter/DTD/xhtml1-transitional.dtd</filename
>. De qualquer modo, DTDs remotos especificados via http são suportados.</para>

<para
>se o arquivo não tiver um doctype ele será checado para boa formatação.</para>

<para
>Para aprender mais sobre o &XML; consulte as <ulink url="http://www.w3.org/XML/"
> páginas oficiais de &XML; do W3C</ulink
>.</para>

<para
>Internamente, este plug-in chama o comando externo <command
>xmllint</command
>, o qual é parte de libxml2. Se este comando não está instalado corretamente em seu sistema, o plug-in não funcionará.</para>

<note
><para
>Um arquivo temporário precisa ser escrito na mesma pasta do arquivo a ser verificado, e assim, você deve ter acesso de escrita para aquela pasta.</para
></note>

<para
>Para carregar este plugin, abra a janela de configuração do &kate; em <menuchoice
><guimenu
>Configurações</guimenu
> <guimenuitem
>Configurar o &kate;...</guimenuitem
></menuchoice
>. Depois, selecione a opção <guilabel
>Validação de XML</guilabel
>, que irá aparecer na seção <guilabel
>Aplicativo</guilabel
>/<guilabel
>Plugins</guilabel
> e feche a janela. </para>

<sect2 id="xmlcheck-menu">
<title
>Estrutura do Menu</title>

<variablelist>
<varlistentry>
<term>
<menuchoice
><guimenu
>XML</guimenu
> <guimenuitem
>Validar XML</guimenuitem
> </menuchoice>
</term>
<listitem
><para
>Isto iniciará a checagem, conforme descrito acima.</para
></listitem>
</varlistentry>
</variablelist>

</sect2>

<sect2 id="xmlcheck-thanks-and-acknowledgements">
<title
>Agradecimentos e Reconhecimentos</title>
<para
>Plug-in para o &kate; de <quote
>Validação de XML</quote
> copyright 2002 &Daniel.Naber; &Daniel.Naber.mail;. </para>
<para
>Copyright da Documentação 2002 por &Daniel.Naber;</para>

</sect2>
</sect1>

<sect1 id="kate-application-plugin-xmltools">
<sect1info>
<authorgroup
><author
><firstname
>Daniel</firstname
> <surname
>Naber</surname
> <affiliation
><address
>&Daniel.Naber.mail;</address
></affiliation>
</author
></authorgroup>
</sect1info>
<title
>Completamento &XML;</title>

<para
>Este plug-in dá pistas sobre o que é permitido em determinada posição de um arquivo &XML;, de acordo com o DTD do arquivo. Ele lista elementos, atributos, valores de atributos ou entidades válidas, dependendo da posição do cursor (&eg;, todas as entidades são mostradas se o caracter à esquerda do cursor for <quote
>&amp;</quote
>). Também é possível fechar a marca aberta mais próxima à esquerda.</para>

<para
>O <acronym
>DTD</acronym
> deve existir em formato &XML;, como produzido pelo programa Perl <command
>dtdparse</command
>. Chamaremos um DTD neste formato de <quote
>meta DTD</quote
>. Alguns meta DTDs são fornecidos. Eles estão instalados em <filename class="directory"
>$KDEDIR/share/apps/katexmltools/</filename
>, que também é a pasta padrão quando você escolhe <guimenuitem
>Designar Meta DTD...</guimenuitem
>. Para produzir seus próprios meta DTDs, baixe o <command
>dtdparse</command
> em <ulink url="http://dtdparse.sourceforge.net"
>http://dtdparse.sourceforge.net</ulink
>.</para>

<sect2 id="xmltools-how-to-use">
<title
>Como usar</title>

<para
>Inicie o &kate; e abra a janela de configuração em <menuchoice
><guimenu
>Configurações</guimenu
> <guimenuitem
>Configurar o &kate;...</guimenuitem
></menuchoice
>. Depois, selecione o <guilabel
>Completamento de XML</guilabel
> que irá aparecer na seção <guilabel
>Aplicação</guilabel
>/<guilabel
>Plugins</guilabel
>, fechando depois a janela. Depois disso, selecione a opção do menu <menuchoice
><guimenu
>XML</guimenu
><guimenuitem
>Atribuir uma Meta-DTD...</guimenuitem
></menuchoice
>. Se o seu documento não tiver nenhum <quote
>DOCTYPE</quote
> ou se ele for desconhecido, você terá que selecionar uma meta-DTD no sistema de arquivos. Caso contrário, será carregada automaticamente a meta-DTD que corresponder ao DOCTYPE do documento atual.</para>

<para
>Você pode agora usar o plug-in enquanto digita seu texto:</para>

<variablelist>

<varlistentry>
<term
><keycap
>&lt;</keycap
> (chave menor que)</term>
<listitem
><para
>Isto disparará uma lista dos elementos possíveis a menos que o cursor esteja já dentro de uma tag. Note que você atualmente não pode usar isto para inserir os elementos de nível mais alto (&eg; <quote
>&lt;html&gt;</quote
>).</para
></listitem>
</varlistentry>

<varlistentry>
<term
><keycap
>&lt;</keycap
><keycap
>/</keycap
> (tecla 'menor que' + barra)</term>
<listitem
><para
>Inserir estes caracteres irá oferecer o fecho do elemento atual (o mais próximo do que se encontra à esquerda do cursor). Pressione &Enter; para aceitar a sugestão. Ao contrário do item <guimenuitem
>Fechar o Elemento</guimenuitem
>, isto funciona apenas com uma DTD atribuída.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><keycap
>"</keycap
> (chave de citação)</term>
<listitem
><para
>A chave de citação disparará uma lista dos valores de atributos possíveis (se existirem) se você estiver dentro de uma tag.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><keycap
>&nbsp;</keycap
> (chave espaço)</term>
<listitem
><para
>Isto disparará uma lista dos atributos possíveis para o elemento atual se você estiver dentro de uma tag.</para>
</listitem>
</varlistentry>

<varlistentry>
<term
><keycap
>&amp;</keycap
> (chave E comercial)</term>
<listitem
><para
>Isto disparará uma lista de entidades nomeadas.</para
></listitem>
</varlistentry>
</variablelist>

</sect2>

<sect2 id="xmltools-features-and-limitations">
<title
>Características e limitações</title>

<para
>Você pode testar todas as funções e limitações carregando <filename
>$KDEDIR/share/apps/katexmltools/testcases.xml</filename
> no &kate; e seguindo as instruções.</para>

</sect2>


<sect2 id="xmltools-menu">
<title
>Estrutura do Menu</title>

<variablelist>
<varlistentry>
<term>
<menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>Return</keycap
></keycombo
> </shortcut
> <guimenu
>XML</guimenu
> <guimenuitem
>Inserir Elemento...</guimenuitem
> </menuchoice>
</term>
<listitem
><para
>Isto irá abrir uma janela que lhe permite inserir um elemento em &XML;. Os caracteres &lt;, &gt; e a marca de fecho serão inseridos automaticamente. Se você tiver selecionado algum texto quando tiver selecionado este item do menu, o texto selecionado será rodeado pela marca de abertura e de fecho. A janela também oferece o completamento de todos os elementos que poderão ser inseridos na posição atual do cursor, caso tenha atribuído uma meta-DTD com a opção <guimenuitem
>Atribuir uma Meta-DTD...</guimenuitem
>. </para
></listitem>
</varlistentry>

<varlistentry>
<term>
<menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>&lt;</keycap
></keycombo
> </shortcut
> <guimenu
>XML</guimenu
> <guimenuitem
>Fechar Elemento</guimenuitem
> </menuchoice>
</term>
<listitem
><para
>Isto irá pesquisar em seu texto por uma tag que não está ainda fechada e irá fechá-la inserindo a tag de fechamento correspondente. A pesquisa inicia na posição do cursor e vai para a esquerda. Se não puder encontrar uma tag aberta nada acontecerá.</para
></listitem>
</varlistentry>

<varlistentry>
<term>
<menuchoice
><guimenu
>XML</guimenu
> <guimenuitem
>Designar Meta DTD...</guimenuitem
> </menuchoice>
</term>
<listitem
><para
>Isto irá dizer ao plug-in qual meta DTD usar para o documento atual. Note que esta designação não será salva. Você terá que repetir isto quando você iniciar o &kate; na próxima vez.</para
></listitem>
</varlistentry>
</variablelist>

</sect2>

<sect2 id="xmltools-thanks-and-acknowledgements">
<title
>Agradecimentos e Reconhecimentos</title>
<para
>Plug-in para o &kate; de <quote
>Completação de &XML;</quote
> copyright 2001,2002 &Daniel.Naber; &Daniel.Naber.mail;. </para>
<para
>Versão para o KDE SC 4 com 'copyright' 2010 de Tomáš Trnka</para>
<para
>Copyright da Documentação 2001,2002 por &Daniel.Naber;</para>
</sect2>

</sect1>

</chapter>
