<?xml version="1.0" encoding="UTF-8" ?>

<sect1 id="debugging-3-2">
<sect1info>
<title
>Depuração no &quantaplus;</title>
<authorgroup>
<author
><firstname
>Christopher</firstname
> <surname
>Hornbaker</surname
> <affiliation
> <address
><email
>chrishornbaker@earthlink.net</email
></address>
</affiliation>
</author>

<author
><firstname
>Linus</firstname
> <surname
>McCabe</surname
> <affiliation
> <address
><email
>Linus@McCabe.nu</email
></address>
</affiliation>
</author>

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

</authorgroup>
</sect1info>

<title
>Depuração no &quantaplus;</title>

<sect2 id="php-debugging-3-2">
<title
>Utilizar o Depurador de &PHP;</title>

<para
>Com o &quantaplus; versão 3.3, o tratamento do depurador foi reimplementado. O suporte para o depurador incorporado de &PHP; (3), agora obsoleto, foi abandonado, assim como o suporte para o depurador 'dbg'. Em vez disso, foi implementado um sistema genérico de depuração, de modo a permitir várias implementações de 'plugins'. </para>
<para
>De momento, só está disponível um 'plugin' que adiciona o suprte para usar o &gubed; com o &quantaplus;. </para>
<para
>Para usar um depurador no seu projecto, abra as opções do projecto e escolha um 'plugin' de depuração adequado. Para alterar as opções específicas do depurador, carregue no botão de 'Opções' ao lado da lista do 'plugin' de depuração. </para>

<sect3 id="php-debuggin-3-2-general">
<title
>Uso geral</title>
<para
>Logo que um projecto tenha um depurador activo, irão aparecer alguns itens adicionais na interface de utilizador do &quantaplus;: </para>

<variablelist>
<varlistentry>
<term
>Menu do depurador</term>
<listitem>
<para
>Irá aparecer um menu novo, onde poderá aceder à maioria das funcionalidades do depurador. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
>Barra de ferramentas de depuração</term>
<listitem>
<para
>Irá aparecer uma barra de ferramentas com acesso aos comandos de depuração mais comuns. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
>Janela de ferramentas de variáveis</term>
<listitem>
<para
>Uma janela onde é mostrado o conteúdo das variáveis vigiadas. Aparece do lado esquerdo, por omissão. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
>Janela de pontos de paragem</term>
<listitem>
<para
>Uma janela onde todos os pontos de paragem, sejam eles de linhas ou condicionais, irão aparecer. Esta aparecerá em baixo por omissão. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
>Janela de Resultado da Depuração</term>
<listitem>
<para
>Uma janela onde o resultado (em HTML) do depurador será mostrado. Aparece na área acoplável inferior por omissão. </para>
</listitem>
</varlistentry>

</variablelist>

<para
>Dependo do que o 'plugin' de depuração suporta, toda a funcionalidade, ou apenas um subconjunto desta, estará disponível. </para>



<variablelist>
<varlistentry>
<term>
<menuchoice
><guimenu
>Depurar</guimenu
> <guimenuitem
>Sessão</guimenuitem
> <guimenuitem
>Iniciar uma Sessão</guimenuitem
> </menuchoice>
</term>
<listitem>
<para
>Esta acção é usada para ligar ao depurador se tal for necessário ou para indicar ao 'plugin' para começar a atender os pedidos de depuração. Esta acção é despoletada por omissão quando é aberto um projecto que use um depurador, como tal não terá à partida de se preocupar com ele. </para>
</listitem>
</varlistentry>

<varlistentry>
<term>
<menuchoice
><guimenu
>Depurar</guimenu
> <guimenuitem
>Sessão</guimenuitem
> <guimenuitem
>Terminar a Sessão</guimenuitem
> </menuchoice>
</term>
<listitem>
<para
>O oposto da opção <menuchoice
> <guimenu
>Depurar</guimenu
> <guimenuitem
>Sessão</guimenuitem
> <guimenuitem
>Iniciar uma Sessão</guimenuitem
> </menuchoice
>. Fecha a ligação ao depurador ou pára o atendimento de pedidos. </para>
</listitem>
</varlistentry>

<varlistentry>
<term>
<menuchoice
><guimenu
>Depurar</guimenu
> <guimenuitem
>Execução</guimenuitem
> <guimenuitem
>Enviar um Pedido de HTTP</guimenuitem
> </menuchoice>
</term>
<listitem>
<para
>Envia um pedido de HTTP para o servidor iniciar um pedido de depuração. A utilização desta acção é equivalente a usar um navegador para ver o documento actual. O resultado do pedido termina na área de Resultado da Depuração. </para>
</listitem>
</varlistentry>

<varlistentry>
<term>
<menuchoice
><guimenu
>Depurar</guimenu
> <guimenuitem
>Execução</guimenuitem
> <guimenuitem
>Pausa</guimenuitem
> </menuchoice>
</term>
<listitem>
<para
>Coloca um programa, actualmente em execução, em pausa </para>
</listitem>
</varlistentry>

<varlistentry>
<term>
<menuchoice
><guimenu
>Depurar</guimenu
> <guimenuitem
>Execução</guimenuitem
> <guimenuitem
>Executar</guimenuitem
> </menuchoice>
</term>
<listitem>
<para
>Diz ao depurador para começar a execução do programa e enviar informações sobre as variáveis vigiadas e a linha de execução actual à medida que vai correndo. Se isto for feito quando um programa está em pausa, a execução irá prosseguir. Se for feito antes de iniciar um pedido de depuração, o programa irá começar a correr, logo que o pedido tenha sido iniciado. </para>
</listitem>
</varlistentry>


<varlistentry>
<term>
<menuchoice
><guimenu
>Depurar</guimenu
> <guimenuitem
>Execução</guimenuitem
> <guimenuitem
>Salto</guimenuitem
> </menuchoice>
</term>
<listitem>
<para
>Indica ao depurador para começar a execução do programa, sem enviar informações sobre as variáveis vigiadas e a linha de execução actual. Se isto for feito enquanto um programa está em pausa, a execução irá prosseguir. Se tiver terminado antes de um pedido de depuração ter iniciado, o programa irá saltar até que o pedido seja iniciado. </para>
</listitem>
</varlistentry>

<varlistentry>
<term>
<menuchoice
><guimenu
>Depurar</guimenu
> <guimenuitem
>Execução</guimenuitem
> <guimenuitem
>Passo</guimenuitem
> </menuchoice>
</term>
<listitem>
<para
>Diz ao depurador para executar a próxima instrução do programa sem saltar para dentro das funções ou inclusões. </para>
</listitem>
</varlistentry>

<varlistentry>
<term>
<menuchoice
><guimenu
>Depurar</guimenu
> <guimenuitem
>Execução</guimenuitem
> <guimenuitem
>Saltar Para</guimenuitem
> </menuchoice>
</term>
<listitem>
<para
>Diz ao depurador para executar a próxima instrução do programa, saltando para dentro das funções ou inclusões se possível. </para>
</listitem>
</varlistentry>

<varlistentry>
<term>
<menuchoice
><guimenu
>Depurar</guimenu
> <guimenuitem
>Execução</guimenuitem
> <guimenuitem
>Saltar para Fora</guimenuitem
> </menuchoice>
</term>
<listitem>
<para
>Diz ao depurador para executar até que saia da função actual. </para>
</listitem>
</varlistentry>

<varlistentry>
<term>
<menuchoice
><guimenu
>Depurar</guimenu
> <guimenuitem
>Execução</guimenuitem
> <guimenuitem
>Ignorar</guimenuitem
> </menuchoice>
</term>
<listitem>
<para
>Diz ao depurador para saltar a próxima instrução e prosseguir para a próxima, como se a actual não existisse. </para>
</listitem>
</varlistentry>

<varlistentry>
<term>
<menuchoice
><guimenu
>Depurar</guimenu
> <guimenuitem
>Execução</guimenuitem
> <guimenuitem
>Matar</guimenuitem
> </menuchoice>
</term>
<listitem>
<para
>Diz ao depurador para matar o programa actualmente em execução. </para>
</listitem>
</varlistentry>


<varlistentry>
<term>
<menuchoice
><guimenu
>Depurar</guimenu
> <guimenuitem
>Pontos de Paragem</guimenuitem
> <guimenuitem
>Parar quando...</guimenuitem
> </menuchoice>
</term>
<listitem>
<para
>Abre uma janela onde poderá definir os pontos de paragem condicionais. </para>
</listitem>
</varlistentry>

<varlistentry>
<term>
<menuchoice
><guimenu
>Depurar</guimenu
> <guimenuitem
>Pontos de Paragem</guimenuitem
> <guimenuitem
>Comutar o ponto de paragem</guimenuitem
> </menuchoice>
</term>
<listitem>
<para
>Activa ou desactiva um ponto de paragem na linha onde o cursor se encontra </para>
</listitem>
</varlistentry>

<varlistentry>
<term>
<menuchoice
><guimenu
>Depurar</guimenu
> <guimenuitem
>Pontos de Paragem</guimenuitem
> <guimenuitem
>Limpar os pontos de paragem</guimenuitem
> </menuchoice>
</term>
<listitem>
<para
>Retira todos os pontos de paragem. </para>
</listitem>
</varlistentry>


<varlistentry>
<term>
<menuchoice
><guimenu
>Depurar</guimenu
> <guimenuitem
>Variáveis</guimenuitem
> <guimenuitem
>Vigiar a variável</guimenuitem
> </menuchoice>
</term>
<listitem>
<para
>Abre uma janela onde poderá introduzir uma variável ou expressão que deseje vigiar. O valor da vigia irá aparecer na janela de variáveis. </para>
</listitem>
</varlistentry>

<varlistentry>
<term>
<menuchoice
><guimenu
>Depurar</guimenu
> <guimenuitem
>Variáveis</guimenuitem
> <guimenuitem
>Definir o valor da variável</guimenuitem
> </menuchoice>
</term>
<listitem>
<para
>Abre uma janela onde poderá indicar uma variável e um valor novo para ela. </para>
</listitem>
</varlistentry>



</variablelist>



</sect3>
</sect2>

<sect2 id="kxsldbg-debugging-3-2">
<title
>Utilizar o &kxsl; o Depurador de &XSL;</title>

<para
>O &kxsl; é uma criação do Keith Isdale, assim como esta secção da documentação. O &kxsl; é uma interface para o &kde; e uma KPart para o <command
>xsldbg</command
>, o qual poderá encontrar em http://xsldbg.sf.net, em conjunto com muitos outros trabalhos do Keith. </para>

<para
>Para iniciar o &kxsl;, seleccione os <menuchoice
> <guimenu
>'Plugins'</guimenu
> <guimenuitem
>&kxsl;</guimenuitem
> </menuchoice
>. </para>

<para
>Veja por favor na documentação do &kxsl; mais informações sobre a sua utilização. </para>
</sect2>
</sect1>
