<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
  <!ENTITY okteta "<application
>Okteta</application
>">
  <!ENTITY kappname "&okteta;">
  <!ENTITY package "kdeutils">
  <!ENTITY Friedrich.Kossebau
"<personname
><firstname
>Friedrich</firstname
><othername
>W. H.</othername
><surname
>Kossebau</surname
></personname
>">
  <!ENTITY Friedrich.Kossebau.email "<email
>kossebau@kde.org</email
>">
  <!ENTITY Alex.Richardson
"<personname
><firstname
>Alex</firstname
><surname
>Richardson</surname
></personname
>">
  <!ENTITY Alex.Richardson.email "<email
>alex.richardson@gmx.de</email
>">
  <!ENTITY % Portuguese "INCLUDE">
  <!ENTITY % addindex "IGNORE">
]>

<book lang="&language;">

<bookinfo>
<title
>O Manual do &okteta;</title>

<authorgroup>
    <author
><firstname
>Friedrich</firstname
><othername
>W. H.</othername
><surname
>Kossebau</surname
> <affiliation
> <address
>&Friedrich.Kossebau.email;</address>
      </affiliation>
    </author>
    <author
><firstname
>Alex</firstname
><surname
>Richardson</surname
> <affiliation
> <address
>&Alex.Richardson.email;</address>
      </affiliation>
    </author>
<othercredit role="translator"
><firstname
>José</firstname
><surname
>Pires</surname
><affiliation
><address
><email
>zepires@gmail.com</email
></address
></affiliation
><contrib
>Tradução</contrib
></othercredit
> 
</authorgroup>

<copyright>
<year
>2008, 2010</year>
<holder
>&Friedrich.Kossebau;</holder>
</copyright>

<legalnotice
>&FDLNotice;</legalnotice>

<date
>2010-01-12</date>
<releaseinfo
>0.4.0</releaseinfo>

<abstract>
  <para
>o &okteta; é um editor simples para os dados em bruto dos ficheiros. Este tipo de programas também se chama de editor hexadecimal ou editor binário.</para>
</abstract>

<keywordset>
<keyword
>KDE</keyword>
<keyword
>kdeutils</keyword>
<keyword
>Okteta</keyword>
<keyword
>vista</keyword>
<keyword
>editar</keyword>
<keyword
>bits</keyword>
<keyword
>bytes</keyword>
<keyword
>binário</keyword>
<keyword
>octal</keyword>
<keyword
>hexadecimal</keyword>
<keyword
>editor hexadecimal</keyword>
<keyword
>dados em bruto</keyword>
</keywordset>
</bookinfo>

<chapter id="introduction">
<title
>Introdução</title>

<para
>o &okteta; é um editor simples para os dados em bruto dos ficheiros.</para>

<para
>Os dados são apresentados em duas variantes: como valores numéricos dos 'bytes' ou como os caracteres associados aos valores. Os valores e os caracteres poderão tanto ser apresentados separados em duas colunas como a seguir um aos outro, tendo o valor por cima do carácter. Do lado esquerdo, aparece a posição do primeiro 'byte' de cada linha. A edição poderá ser feita tanto nos valores como nos caracteres.</para>

<para
>Para além das funcionalidades normais de edição, o &okteta; também oferece um pequeno conjunto de ferramentas, como uma descodificação da listagem em tabela para tipos de dados comuns, uma tabela que apresenta todos os 'bytes' possíveis em conjunto com os seus equivalentes em valor e em caracteres, uma área de informação com estatísticas, uma calculadora de códigos de validação, uma ferramenta de filtragem e uma ferramenta de extracção de textos.</para>

<para
>Todas as modificações feitas aos dados carregados poderão ser desfeitas ou refeitas sem limites.</para>

</chapter>

<chapter id="basics">
<title
>Noções Básicas</title>

<sect1 id="starting-basics">
<title
>Iniciar o &okteta;</title>

    <para
>Escreva <userinput
><command
>okteta</command
></userinput
> numa linha de comandos ou seleccione o <guimenuitem
>Editor Hexadecimal</guimenuitem
> do grupo <menuchoice
><guisubmenu
>Aplicações</guisubmenu
><guisubmenu
>Utilitários</guisubmenu
></menuchoice
> do lançador de aplicações.</para>

    <para
>Estão disponíveis as opções normais do &Qt; e do &kde;, podendo apresentá-las se indicar <userinput
><command
>okteta</command
> <option
>--help</option
></userinput
>.</para>

    <para
>As opções específicas da linha de comandos para o &okteta; são:</para>

    <para
><option
><replaceable
>&lt;&URL;(s)&gt;</replaceable
></option
> - abre os ficheiros com os &URL;'s indicados</para
> 

<!--<para
><option
>- -offset</option>
<replaceable
>&lt;offset&gt;</replaceable
> jump to position
<replaceable
>&lt;offset&gt;</replaceable
> in the opened file.</para
>-->
</sect1>

<sect1 id="usage-basics">
<title
>Utilização</title>

    <para
>A janela principal do &okteta; tem as seguintes componentes: a barra do menu, a barra de ferramentas, a barra de estado, as áreas de dados separadas por páginas e uma ou mais barras laterais com as ferramentas.</para>

    <para
>Quando é aberto um ficheiro ou é criada uma sequência de 'bytes', os 'bytes' nela contidos são apresentados consecutivamente por linhas, tendo cada uma um dado número de 'bytes'. Estas são apresentadas em duas variantes: como valores numéricos dos 'bytes' ou como os caracteres associados aos valores. Os valores e os caracteres poderão tanto ser apresentados separados em duas colunas como a seguir um aos outro, tendo o valor por cima do carácter. Do lado esquerdo, aparece a posição do primeiro 'byte' de cada linha.</para>

    <para
>O tratamento é semelhante ao dos editores de texto: os dados poderão ser editados, cortados, copiados, colados, arrastados e largados, como acontece num editor de texto. Existe um cursor que marca a posição actual. Se carregar na tecla <keycap
>Insert</keycap
>, poderá alternar entre os modos de sobreposição e inserção. O modo de sobreposição é mais restrito que nos editores de texto, dado que não permite nenhuma operação que altere o tamanho da sequência de 'bytes'.</para>

    <para
>Ao contrário dos editores de texto, o conteúdo aparece em duas variantes. Só uma destas está activa no que respeita à introdução de dados. Existem dois cursores associados, presentes para o valor e para o carácter, sendo o cursor activo o que está intermitente. Com os caracteres activos, poderá introduzir caracteres como faz num editor de texto normal. Com os valores activos, ao escrever um número irá aparecer um editor mínimo para introduzir o resto do valor.</para>

    <para
>A janela de pesquisa permite ao utilizador procurar uma sequência específica de 'bytes', definida como valores (hexadecimal, decimal, octal, binário) ou texto (de momento, na codificação de 8 'bits', ou UTF-8).</para>

    <para
>Poderá abrir várias sequências de 'bytes' ao mesmo tempo, mas só poderá ter uma activa. Use o menu <guimenu
>Janelas</guimenu
> para seleccionar a sequência de 'bytes' que está activa.</para>
</sect1>


</chapter>

<chapter id="tools">
  <title
>Ferramentas</title>

<!-- The tool Versions is not part of released versions,
just used for development, so no need to document it. -->

<sect1 id="tools-overview">

  <title
>Introdução</title>
  <para
>O &okteta; traz algumas ferramentas, algumas delas para analisar e manipular as sequências de 'bytes' e outras com fins mais gerais. Estas ferramentas poderão ser activadas ou desactivadas com o item <guimenu
>Ferramentas</guimenu
> do menu. Cada ferramenta tem uma área pequena que se associa a uma das barras laterais ou que flui livremente como uma janela. Poderá acoplar, desacoplar, reorganizar e também empilhar as áreas de ferramentas com o rato, carregando com o &LMB; na barra de título de uma área de ferramentas, movendo-o à sua maneira e largando o &LMB; para completar a acção, caso contrário cancele-o com a tecla &Esc;.</para>

<sect2>
  <title
>Analisadores e Manipuladores</title>
<variablelist>
  <varlistentry>
    <term
>Tabela de 'Bytes'</term>
    <listitem
><para
>A tabela apresenta todos os valores possíveis de um 'byte', quer na forma numérica quer na de caracteres.</para>
    <para
>O valor seleccionado poderá ser introduzido na posição do cursor, repetida numa determinada quantidade de vezes. Isto poderá ser obtido se usar o botão <guibutton
>Inserir</guibutton
> ou se fizer duplo-click na linha da tabela.</para
></listitem>
  </varlistentry>

  <varlistentry>
    <term
>Filtro Binário</term>
    <listitem
><para
>O filtro efectua operações binárias sobre os 'bytes' seleccionados. Depois de escolher a operação (E, OU, RODAR...), poderá definir os parâmetros, se necessário, na área abaixo. O filtro é executado quando usar o botão <guibutton
>Filtro</guibutton
>.</para
></listitem>
  </varlistentry>

  <varlistentry>
    <term
>Cadeias de caracteres</term>
    <listitem
><para
>Esta ferramenta localiza os pedaços de texto nos 'bytes' seleccionados. Depois de escolher o tamanho mínimo do texto, estes pedaços são pesquisados, bastando para tal usar o botão <guibutton
>Extrair</guibutton
>. A lista de textos apresentados poderá ser refinada se indicar um termo de filtragem.</para
></listitem>
  </varlistentry>

  <varlistentry>
    <term
>Estatísticas</term>
    <listitem
><para
>A janela mostra alguma informação sobre a sequência de 'bytes'. Para além do tamanho, esta é uma estatística da frequência com que ocorre o valor de um determinado 'byte' na sequência. Toda a informação poderá ser calculada ao usar o botão para <guibutton
>Construir</guibutton
>.</para
></listitem>
  </varlistentry>

  <varlistentry>
    <term
>Código</term>
    <listitem
><para
>O filtro efectua operações binárias sobre os 'bytes' seleccionados. Depois de escolher a operação e definir os parâmetros, se necessário, na área abaixo, o somatório é calculado quando usar o botão <guibutton
>Calcular</guibutton
>.</para
></listitem>
  </varlistentry>

  <varlistentry>
    <term
>Tabela de Descodificação</term>
    <listitem
><para
>A tabela apresenta o valor do 'byte' ou 'bytes' que começam no cursor, interpretado como um tipo de dados simples, como o Inteiro ou Real, mas também como UTF-8. Se fizer duplo-click sobre uma linha da tabela, irá abrir um editor, de modo que o valor possa ser editado e alterado.</para
></listitem>
  </varlistentry>

  <varlistentry>
    <term
>Estruturas</term>
    <listitem
><para
>Esta ferramenta activa a investigação e edição das sequências de 'bytes', baseando-se nas definições de estruturas criadas pelo utilizador. As instruções detalhadas sobre isto estão na sua própria <link linkend="tools-structures"
>secção</link
>.</para
></listitem>
  </varlistentry>
</variablelist>
</sect2>

<sect2>
  <title
>Ferramentas gerais</title>
<variablelist>
  <varlistentry>
    <term
>Sistema de Ficheiros</term>
    <listitem
><para
>Esta ferramenta oferece um navegador de ficheiros incorporado que poderá usar para seleccionar os ficheiros a abrir.</para
></listitem>
  </varlistentry>

  <varlistentry>
    <term
>Documentos</term>
    <listitem
><para
>Esta ferramenta mostra todos os ficheiros carregados ou criados neste momento. Os símbolos marcam o ficheiro com a área activa e também mostram os ficheiros que têm alterações por gravar ou qual a cópia armazenada que foi modificada por outro programa.</para
></listitem>
  </varlistentry>

  <varlistentry>
    <term
>Favoritos</term>
    <listitem
><para
>Esta ferramenta poderá ser usada para gerir os favoritos, como alternativa ao menu <link linkend="bookmarks-menu"
><guimenu
>Favoritos</guimenu
></link
>. <note
><para
>Os favoritos são neste momento transitórios e não são gravados quando fechar uma lista de 'bytes' ou o programa por inteiro.</para
></note
></para
></listitem>
  </varlistentry>

  <varlistentry>
    <term
>Informações do Ficheiro</term>
    <listitem
><para
>A área mostra algumas informações sobre o ficheiro actual, incluindo o seu tipo, a localização do armazenamento e o tamanho.</para
></listitem>
  </varlistentry>
</variablelist>
</sect2>

</sect1>


<sect1 id="tools-structures">

    <title
>Ferramenta de Estruturas</title>

    <sect2>
      <title
>Geral</title>

      <para
>A ferramenta de Estruturas permite a análise e edição de sequências de 'bytes' com base na definição de estruturas criadas pelo utilizador, as quais poderão ser compostas por listas, uniões, tipos primitivos e enumerados.</para>
     <!-- explain/link what these types are? probably not, since most user will be programmers? -->
      <para
>Tem uma janela de configuração própria, que poderá ser acedida com o botão <guibutton
>Configuração</guibutton
>. Existem várias opções que poderão ser configuradas, como o estilo (decimal, hexadecimal ou binário) no qual são apresentados os valores. Para além disso, é possível escolher as definições de estruturas que são carregadas e quais são apresentadas na janela.</para>
      <para
>As estruturas são definidas nos ficheiros de Definição de Estruturas do &okteta; (baseados em &XML;, com a extensão <literal role="extension"
>.osd</literal
>). Para além disso, um ficheiro <literal role="extension"
>.desktop</literal
> contém os meta-dados acerca desse ficheiro de descrição de estruturas, como o autor, a página Web e a licença.</para>
      <para
>De momento, não existe nenhum suporte incorporado para criar ou editar as definições das estruturas, pelo que estas deverão ser criadas manualmente, como se encontra descrito nas secções seguintes.</para>
    </sect2>

    <sect2>
      <title
>Instalar as definições das estruturas</title>

      <sect3>
        <title
>Instalar através do KNewStuff</title>
        <para
>A forma mais simples de instalar novas definições de estruturas é usar o suporte incorporado do KNewStuff no &okteta;. Para instalar uma estrutura existente, abra a janela de configuração da ferramenta de Estruturas. Aí, seleccione a página de <guilabel
>Gestão de Estruturas</guilabel
> e carregue no botão <guibutton
>Obter Estruturas Novas...</guibutton
>. A janela que aparecerá permite-lhe então instalar ou desinstalar estruturas.</para>
      </sect3>
      <sect3>
        <title
>Instalar manualmente as definições das estruturas</title>
        <para
>A ferramenta de Estruturas procura pelas descrições de estruturas na sub-pasta <filename class="directory"
>share/apps/okteta/structures/</filename
> da pasta do utilizador para os dados das aplicações (descubra-a com o comando <userinput
><command
>kde4-config</command
> <option
>--localprefix</option
></userinput
>). Poderá ter de criar esta pasta, caso não existam ainda nenhumas definições de estruturas instaladas.</para>
          <para
>Nessa sub-pasta, existe uma sub-pasta própria para cada definição de estruturas, a qual contém tanto o ficheiro <literal role="extension"
>.desktop</literal
> como o <literal role="extension"
>.osd</literal
> ou o <filename
>main.js</filename
> para essa definição.</para>
          <para
>Por exemplo, com a pasta de dados das aplicações <filename class="directory"
>.kde</filename
> e com uma definição de estrutura chamada EstruturaExemplo, existe a pasta <filename class="directory"
>.kde/share/apps/okteta/structures/EstruturaExemplo</filename
>, que contém um ficheiro <filename
>EstruturaExemplo.desktop</filename
> e um ficheiro <filename
>EstruturaExemplo.osd</filename
>.</para>
      </sect3>
      <sect3>
        <title
>Usar as estruturas acabadas de instalar</title>
        <para
>Se tiver instalado uma nova definição de estruturas, poderá ter de reiniciar o &okteta; e abrir a janela de configuração da ferramenta de Estruturas. Aí, seleccione a página de <guilabel
>Gestão das Estruturas</guilabel
> e certifique-se que a definição da estrutura relevante é assinalada. Depois, mude para a página <guilabel
>Estruturas</guilabel
> e certifique-se que o elemento desejado está listado no lado direito.</para>
      </sect3
> 
    </sect2>

    <sect2>
      <title
>Partilhar definições de estruturas</title>
      <para
>Para as estruturas comuns, poderá não ter de criar você mesmo uma definição, mas sim reutilizar uma definição já existente de locais como o <ulink url="http://kde-files.org/index.php?xcontentmode=691"
>kde-files.org</ulink
>.</para>
      <para
>Poderá também querer partilhar você mesmo uma definição. Para o fazer, crie um pacote de ficheiros (&eg;, um pacote tar.gz ou <literal role="extension"
>.tgz</literal
>) contendo apenas a sub-pasta com o ficheiro <literal role="extension"
>.desktop</literal
> e o ficheiro de definição da estrutura. No exemplo da última secção, seria a sub-pasta <filename class="directory"
>EstruturaExemplo</filename
> com todo o seu conteúdo. Se usar este formato para partilhar as definições de estruturas, permite a instalação das mesmas dentro do &okteta; sem qualquer instalação manual.</para>
    </sect2>

    <sect2>
      <title
>Criar a sua própria definição de estruturas</title>
      <para
>Existem duas formas diferentes de criar definições de estruturas. A primeira é criar a definição em &XML;, enquanto a outra é usando JavaScript. A abordagem de JavaScript permite-lhe criar estruturas mais complexas, com funcionalidades como a validação da estrutura. A utilização de &XML; dá-lhe menos funcionalidades e provavelmente não será extendida no futuro. As estruturas em &XML; irão continuar a ser suportadas, contudo recomenda-se que use a abordagem em JavaScript. </para>

      <sect3>
        <title
>O passos comum, partilhado por ambas as abordagens</title>
        <para
>O próximo passo é criar o ficheiro <literal role="extension"
>.desktop</literal
> para os meta-dados, que é basicamente um conjunto de pares chave-valor. Dever-se-á chamar <filename
>estruturasimples.desktop</filename
>. Neste exemplo, será algo do género: <screen>
          [Desktop Entry]
          Encoding=UTF-8
          Icon=arrow-up
          Type=Service
          ServiceTypes=KPluginInfo

          Name=Estrutura de testes simples
          Comment=Uma estrutura de testes muito simples que contém apenas dois itens

          X-KDE-PluginInfo-Author=José Pires
          X-KDE-PluginInfo-Email=jose.pires@exemplo.com
          X-KDE-PluginInfo-Name=estruturasimples
          X-KDE-PluginInfo-Version=1.0
          X-KDE-PluginInfo-Website=http://www.plugin.org/
          X-KDE-PluginInfo-Category=structure
          X-KDE-PluginInfo-License=LGPL
          X-KDE-PluginInfo-EnabledByDefault=false
          </screen
> Estes campos deverão todos ser relativamente intuitivos, exceptuando o <literal
>X-KDE-PluginInfo-Name</literal
>. Este deverá ter o nome do ficheiro <literal role="extension"
>.osd</literal
> como valor (sem o sufixo <literal role="extension"
>.osd</literal
>). </para>

        <para
>Neste exemplo, teríamos uma pasta chamada <filename
>estruturasimples</filename
> que contém os ficheiros <filename
>estruturasimples.desktop</filename
>. Ao definir as estruturas em &XML;, a pasta iria conter também um ficheiro chamado <filename
>estruturasimples.osd</filename
>. Se usarmos o JavaScript, iríamos ter um ficheiro chamado <filename
>main.js</filename
> em alternativa.</para>
      </sect3>
      <sect3>
        <title
>Uma primeira definição de estrutura</title>
        <para
>Para começar, vamos criar uma definição para uma estrutura de testes muito simples, contendo apenas tipos de dados primitivos (um carácter e um inteiro de 32-bits). Estes seriam expressos em C/C++ como: <screen>
          struct simples {
            char umCaracter;
            int umInteiro;
          };
          </screen
> O primeiro passo é criar o ficheiro <literal role="extension"
>.osd</literal
>, que se chamará  <filename
>estruturasimples.osd</filename
>: <screen
><markup>
          &lt;?xml version="1.0" encoding="UTF-8"?&gt;
          &lt;data&gt;
            &lt;struct name="simples"&gt;
              &lt;primitive name="umCaracter" type="Char"/&gt;
              &lt;primitive name="umInteiro" type="Int32"/&gt;
            &lt;/struct&gt;
          &lt;/data&gt;
          </markup
></screen
>, que é relativamente parecido com a definição em C/C++. O atributo do tipo poderá ser qualquer um dos seguintes: <itemizedlist>
          <listitem
><para
>Char</para
></listitem>
          <listitem
><para
>Int8, Int16, Int32 ou Int64</para
></listitem>
          <listitem
><para
>UInt8, UInt16, UInt32 ou UInt64</para
></listitem>
          <listitem
><para
>Bool8, Bool16, Bool32 ou Bool64</para
></listitem>
          <listitem
><para
>Real</para
></listitem>
          <listitem
><para
>Duplo</para
></listitem>
          </itemizedlist>
          </para>
          <para
>A marca 'bitfield' tem dois atributos (à parte do atributo 'name', que todas as marcas têm): O atributo 'width' diz ao &okteta; quantos 'bits' são usados por este campo de 'bits'. <note
><para
>Lembre-se sempre de adicionar algum preenchimento, caso contrário a próxima primitiva irá começar a meio de um 'byte'. Obviamente, o preenchimento não será necessário se desejar este comportamento.</para
></note
> O outro atributo é o 'type', que tanto poderá ser <literal
>bool</literal
>, <literal
>unsigned</literal
> ou <literal
>signed</literal
>. </para>
          <para
>Agora crie uma sub-pasta <filename class="directory"
>estrutura-simples</filename
> como descrito acima, copie os dois ficheiros para esta pasta e reinicie o &okteta;, para poder usar a nova estrutura.</para>
      </sect3>
      <sect3>
        <title
>A mesma estrutura em JavaScript</title>
        <para
>Para implementar a estrutura acima em JavaScript, crie um ficheiro chamado <filename
>main.js</filename
> em vez de <filename
>simplestruct.osd</filename
>. O conteúdo desse ficheiro seria: <screen>
        function init() {
          var estrutura = struct({
            caracter : char(),
            inteiro : int32(),
            opcaoBit : bitfield("bool", 1),
            preenchimento : bitfield("unsigned", 7),
          })
          return estrutura;
        }
        </screen
> A estrutura apresentada pelo &okteta; é sempre o valor devolvido pela função <literal
>init</literal
>.</para>
        <para
>Poderá invocar as seguintes funções para criar um tipo primitivo: <itemizedlist
> <listitem
><para
>char()</para
></listitem
> <listitem
><para
>int8(), int16(), int32() ou int64()</para
></listitem
> <listitem
><para
>uint8(), uint16(), uint32() ou uint64()</para
></listitem
> <listitem
><para
>bool8(), bool16(), bool32() ou bool64()</para
></listitem
> <listitem
><para
>float()</para
></listitem
> <listitem
><para
>double()</para
></listitem
> </itemizedlist
> A função 'bitfield' recebe dois parâmetros, sendo o primeiro um texto que consiste em <literal
>bool</literal
>, <literal
>signed</literal
> ou <literal
>unsigned</literal
>. O segundo parâmetro é um inteiro que define o tamanho em 'bits'. </para>
      </sect3>
      <sect3>
        <title
>Estruturas mais complexas</title>
        <para
>De seguida, iremos criar uma estrutura mais complexa, que se irá chamar "complexa" e gravá-la num ficheiro <filename
>complexa.osd</filename
>. Esta estrutura irá conter duas listas (uma de tamanho fixo e outra com o tamanho determinado durante a execução), assim como uma estrutura encadeada e uma união.<screen
><markup>
          &lt;?xml version="1.0" encoding="UTF-8"?&gt;
          &lt;data&gt;
            &lt;struct name="complexa"&gt;
              &lt;primitive name="tamanho" type="UInt8" /&gt;
              &lt;union name="umaUniao"&gt;
                &lt;array name="quatroBytes" length="4"&gt;
                  &lt;primitive type="Int8" /&gt;
                &lt;/array&gt;
              &lt;/union&gt;
              &lt;struct name="encadeado"&gt;
                &lt;array name="texto" length="tamanho"&gt; &lt;!-- referencia o campo 'tamanho' acima --&gt;
                  &lt;primitive type="Char" /&gt;
                &lt;/array&gt;
              &lt;/struct&gt;
            &lt;/struct&gt;
          &lt;/data&gt;
          </markup
></screen
> Isto irá corresponder ao seguinte, em pseudo-C/C++ <screen
>struct complexa {
            uint8_t tamanho;
            union umaUniao {
              int8_t quatroBytes[4];
            };
            struct encadeado {
              char texto[tamanho] //C++ não válido por referenciar o valor de 'tamanho'
            };
          };
          </screen>
          </para>
          <note
><para
>Obviamente, só poderá ter campos de referência de listas de tamanho dinâmico antes da lista.</para
></note>
          <para
>Depois, será criado o ficheiro <filename
>complexo.desktop</filename
>, como foi feito no exemplo anterior (certifique-se que define o <literal
>X-KDE-PluginInfo-Name</literal
> correctamente) e faça o mesmo para instalar ambos os ficheiros.</para>
      </sect3>
      <sect3>
        <title
>Mais informações</title>
        <para
>Poderá encontrar alguns exemplos de definições de estruturas <ulink url="http://websvn.kde.org/branches/KDE/4.5/kdeutils/okteta/kasten/controllers/view/structures/examples/"
>aqui</ulink
>. Isto inclui, por exemplo, o cabeçalho dos ficheiros PNG. Poderá encontrar um esquema em &XML; que descreve a estrutura do ficheiro <literal role="extension"
>.osd</literal
> <ulink url="http://websvn.kde.org/branches/KDE/4.4/kdeutils/okteta/kasten/controllers/view/structures/schema/"
>aqui</ulink
>. Se precisar de mais informações, sinta-se à vontade em contactar-me em &Alex.Richardson.email; </para>
      </sect3>
    </sect2>
</sect1>

</chapter>

<chapter id="menu-commands">
<title
>Opções do Menu</title>

<para
>Repare que a maioria dos comandos do menu também têm uma combinação de teclas associada.</para>

<sect1 id="file-menu">
<title
>O Menu Ficheiro</title>

<variablelist>
    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>N</keycap
></keycombo
> </shortcut
> <guimenu
>Ficheiro</guimenu
> <guimenuitem
>Novo</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Cria uma nova sequência de 'bytes'...</action
></para>
    <itemizedlist>
    <listitem
><para
><guimenuitem
>Vazio</guimenuitem
>: ... uma sequência vazia.</para>
    </listitem>
    <listitem
><para
><guimenuitem
>Da Área de Transferência</guimenuitem
>: ... com o conteúdo actual da área de transferência.</para
></listitem>
    <listitem
><para
><guimenuitem
>Padrão...</guimenuitem
>: ... com um dado padrão.</para>
    </listitem>
    <listitem
><para
><guimenuitem
>Dados Aleatórios...</guimenuitem
>: ... com dados aleatórios.</para
></listitem>
    <listitem
><para
><guimenuitem
>Sequência</guimenuitem
>: ... com todos os 'bytes' de 0 a 255.</para
></listitem>
    </itemizedlist>
    </listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>O</keycap
></keycombo
> </shortcut
> <guimenu
>Ficheiro</guimenu
> <guimenuitem
>Abrir...</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Abre um ficheiro existente.</action
></para
></listitem>
    </varlistentry>

    <!--<varlistentry>
    <term
><menuchoice>
    <shortcut>
    <keycombo action="simul"
>&Ctrl;<keycap
>I</keycap
></keycombo>
    </shortcut>
    <guimenu
>File</guimenu>
    <guimenuitem
>Insert...</guimenuitem>
    </menuchoice
></term>
    <listitem
><para
><action
>Insert an exiting file in the current
    document.</action
></para
></listitem>
    </varlistentry
>-->

    <varlistentry>
    <term
><menuchoice
><guimenu
>Ficheiro</guimenu
> <guisubmenu
>Abrir um Recente</guisubmenu
> </menuchoice
></term>
    <listitem
><para
><action
>Escolha dentro de uma lista dos últimos ficheiros abertos.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>S</keycap
></keycombo
> </shortcut
> <guimenu
>Ficheiro</guimenu
> <guimenuitem
>Gravar</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Grava a sequência de 'bytes' no ficheiro indicado.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><guimenu
>Ficheiro</guimenu
> <guimenuitem
>Gravar Como...</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Grava a sequência de 'bytes' noutro ficheiro, com outro nome.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><guimenu
>Ficheiro</guimenu
> <guisubmenu
>Exportar</guisubmenu
> </menuchoice
></term>
    <listitem
><para
>Exporta os 'bytes' seleccionados para um ficheiro...</para>
    <itemizedlist>
    <listitem
><para
><guimenuitem
>Valores</guimenuitem
>: ... codificados como valores em 'bytes'.</para>
    </listitem>
    <listitem
><para
><guimenuitem
>Texto Simples</guimenuitem
>: ... codificado como caracteres. </para
></listitem>
    <listitem
><para
><guimenuitem
>Base64</guimenuitem
>: ... codificado no formato Base64.</para
></listitem>
    <listitem
><para
><guimenuitem
>Vector em C</guimenuitem
>: ... definido como uma lista na linguagem de programação C.</para
></listitem>
    <listitem
><para
><guimenuitem
>Ver em Texto Simples</guimenuitem
>: ... como na área de dados, com o deslocamento, os valores dos 'bytes' e os seus caracteres. </para
></listitem>
    </itemizedlist>
    </listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
><keycap
>F5</keycap
></shortcut
> <guimenu
>Ficheiro</guimenu
> <guimenuitem
>Recarregar</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Anula todas as alterações e repõe a sequência de 'bytes' a partir do ficheiro.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>P</keycap
></keycombo
> </shortcut
> <guimenu
>Ficheiro</guimenu
> <guimenuitem
>Imprimir...</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Imprime a sequência de 'bytes' actual.</action
></para
></listitem>
    </varlistentry>

<!--    <varlistentry>
    <term
><menuchoice>
    <guimenu
>File</guimenu>
    <guimenuitem
>Export...</guimenuitem>
    </menuchoice
></term>
    <listitem
><para
><action
>Export the selected document or a portion of
    it.</action
></para
><para
>Opens a dialog box with these options:</para>
    <variablelist>
    <varlistentry>
    <term
><guilabel
>Format</guilabel
></term>
    <listitem
><para
>Plain text, &HTML; table, rich text
    format, C array.  Use the <guilabel
>Options</guilabel
> tab to select
    details for a C array or an &HTML; table.</para
></listitem>
    </varlistentry>
    <varlistentry>
    <term
><guilabel
>Destination</guilabel
></term>
    <listitem
><para
>The file to which the data will be
    exported</para
></listitem>
    </varlistentry>
    <varlistentry>
    <term
><guilabel
>Export Range</guilabel
></term>
    <listitem
><para
>Selects which data will be exported - - the entire document, the
    selected portion or the range between two specified
    offsets.</para
></listitem>
    </varlistentry>
    </variablelist>
    </listitem
></varlistentry
>-->

    <!--<varlistentry>
    <term
><menuchoice>
    <guimenu
>File</guimenu>
    <guimenuitem
>Cancel Operation</guimenuitem>
    </menuchoice
></term>
    <listitem
><para
>Stop the current operation</para
></listitem>
    </varlistentry
>-->

    <varlistentry>
    <term
><menuchoice
><guimenu
>Ficheiro</guimenu
> <guimenuitem
>Permissões</guimenuitem
> </menuchoice
></term>
    <listitem
><para
>Define os privilégios de modificação:</para>
    <variablelist>

    <varlistentry>
    <term
><guilabel
>Pôr Apenas para Leitura</guilabel
></term>
    <listitem
><para
>Quando estiver definido, as alterações não poderão ser feitas na sequência de dados carregada.</para
></listitem>
    </varlistentry>
    <!--<varlistentry>
    <term
><guilabel
>Allow Resize</guilabel
></term>
    <listitem
><para
>When off, individual bytes may be edited but the total number of
    bytes may not be changed.</para
></listitem>
    </varlistentry
>-->
    </variablelist>
    </listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>W</keycap
></keycombo
> </shortcut
> <guimenu
>Ficheiro</guimenu
> <guimenuitem
>Fechar</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Fecha a sequência de 'bytes' actual.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><guimenu
>Ficheiro</guimenu
> <guimenuitem
>Fechar Tudo</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Fecha todas as sequências de 'bytes'.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><guimenu
>Ficheiro</guimenu
> <guimenuitem
>Fechar Todos os Outros</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Fecha todas as sequências de 'bytes', excepto a actual.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>Q</keycap
></keycombo
> </shortcut
> <guimenu
>Ficheiro</guimenu
> <guimenuitem
>Sair</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Fecha a janela</action
> do &okteta;.</para
></listitem>
    </varlistentry>
</variablelist>
</sect1>

<sect1 id="edit-menu">
<title
>O Menu Editar</title>
<para
>De momento no &kde; 4.4, a cópia e a colagem enviam os dados para a área de transferência com o tipo MIME "application/octetstream"; o &klipper; não é capaz de apresentar estes dados, assim como a maioria das outras aplicações, por estes serem dados em bruto. Veja também o submenu <guisubmenu
>Copiar como</guisubmenu
>.</para>
<variablelist>
    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>Z</keycap
></keycombo
> </shortcut
> <guimenu
>Editar</guimenu
> <guimenuitem
>Desfazer</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Anula a última acção.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;&Shift;<keycap
>Z</keycap
></keycombo
> </shortcut
> <guimenu
>Editar</guimenu
> <guimenuitem
>Refazer</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Repete a última acção anulada.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>X</keycap
></keycombo
> </shortcut
> <guimenu
>Editar</guimenu
> <guimenuitem
>Cortar</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Apaga os 'bytes' seleccionados e copia-os para a área de transferência.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>C</keycap
></keycombo
> </shortcut
> <guimenu
>Editar</guimenu
> <guimenuitem
>Copiar</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Copia os 'bytes' seleccionados para a área de transferência.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>V</keycap
></keycombo
> </shortcut
> <guimenu
>Editar</guimenu
> <guimenuitem
>Colar</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Insere os 'bytes' cortados ou copiados da área de transferência.</action
></para
></listitem>
    </varlistentry
>	

    <varlistentry>
    <term
><menuchoice
><guimenu
>Editar</guimenu
> <guisubmenu
>Copiar como</guisubmenu
> </menuchoice
></term>
    <listitem
><para
>Copia os 'bytes' seleccionados para a área de transferência...</para>
    <itemizedlist>
    <listitem
><para
><guimenuitem
>Valores</guimenuitem
>: ... codificados como valores em 'bytes'.</para>
    </listitem>
    <listitem
><para
><guimenuitem
>Texto Simples</guimenuitem
>: ... codificado como caracteres. </para
></listitem>
    <listitem
><para
><guimenuitem
>Base64</guimenuitem
>: ... codificado no formato Base64.</para
></listitem>
    <listitem
><para
><guimenuitem
>Vector em C</guimenuitem
>: ... definido como uma lista na linguagem de programação C.</para
></listitem>
    <listitem
><para
><guimenuitem
>Ver em Texto Simples</guimenuitem
>: ... como na área de dados, com o deslocamento, os valores dos 'bytes' e os seus caracteres. </para
></listitem>
    </itemizedlist>
    </listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><guimenu
>Editar</guimenu
> <guisubmenu
>Inserir</guisubmenu
> </menuchoice
></term>
    <listitem>
    <variablelist>
    <varlistentry>
    <term
><menuchoice>
    <guimenuitem
>Inserir um Padrão...</guimenuitem>
    </menuchoice
></term>
    <listitem
><para
><action
>Insere uma sequência definida de 'bytes' na posição do cursor.</action
></para>
    <para
>As opções na janela permitem-lhe definir o número de inserções do padrão e o seu formato (Hexadecimal, Decimal, Octal, Binário ou Caracteres ou UTF-8).</para>
    <!--para
>If <guilabel
>Repeat pattern</guilabel
> is checked, the specified pattern
    will be inserted repeatedly to reach the length set in
    <guilabel
>Size</guilabel
>.</para--></listitem>
    </varlistentry>
    </variablelist>
    </listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>A</keycap
></keycombo
> </shortcut
> <guimenu
>Editar</guimenu
> <guimenuitem
>Seleccionar Tudo</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Selecciona a sequência de 'bytes' completa.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;&Shift;<keycap
>A</keycap
></keycombo
> </shortcut
> <guimenu
>Editar</guimenu
> <guimenuitem
>Deseleccionar</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Desmarca a selecção actual.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>E</keycap
></keycombo
> </shortcut
> <guimenu
>Editar</guimenu
> <guimenuitem
>Seleccionar o Intervalo...</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Abre uma janela incorporada para definir o intervalo de selecção.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
><keycap
>Ins</keycap
></keycombo
> </shortcut
> <guimenu
>Editar</guimenu
> <guimenuitem
>Modo de Sobreposição</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Comuta entre o modo de Inserção e o de Sobreposição</action
>. </para>
    <note
><para
>O modo de sobreposição está implementado de forma a ser bastante restrito; não é possível alterar o tamanho dos dados (não permite adicionar nem remover 'bytes').</para
></note>
    </listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>F</keycap
></keycombo
> </shortcut
> <guimenu
>Editar</guimenu
> <guimenuitem
>Procurar...</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Procura um padrão definido no documento.</action
> Poderá procurar padrões em hexadecimal, decimal, octal, binário ou texto.</para>
    <para
>As opções da janela permitem-lhe definir o ponto inicial, a direcção e a gama da pesquisa.</para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
><keycap
>F3</keycap
></keycombo
> </shortcut
> <guimenu
>Editar</guimenu
> <guimenuitem
>Procurar o Seguinte</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Procura a instância seguinte</action
> do padrão em <guimenuitem
>Procurar</guimenuitem
>.</para>
    <para
>Se não estiver definido nenhum padrão, irá aparecer a janela.</para>
    </listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Shift;<keycap
>F3</keycap
></keycombo
> </shortcut
> <guimenu
>Editar</guimenu
> <guimenuitem
>Procurar Anterior</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Procura a instância anterior</action
> do padrão em <guimenuitem
>Procurar</guimenuitem
>.</para>
    <para
>Se não estiver definido nenhum padrão, irá aparecer a janela.</para>
    </listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>R</keycap
></keycombo
> </shortcut
> <guimenu
>Editar</guimenu
> <guimenuitem
>Substituir...</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Substitui</action
> o padrão de pesquisa por outro padrão diferente.</para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>G</keycap
></keycombo
> </shortcut
> <guimenu
>Editar</guimenu
> <guimenuitem
>Ir para a Posição...</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Move o cursor para uma dada posição.</action
></para
></listitem>
    </varlistentry>

</variablelist>
</sect1>

<sect1 id="view-menu">
<title
>O Menu Ver</title>

<variablelist>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>+</keycap
></keycombo
> </shortcut
> <guimenu
>Ver</guimenu
> <guimenuitem
>Ampliar</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Aumenta o tamanho da letra.</action
></para>
    </listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>-</keycap
></keycombo
> </shortcut
> <guimenu
>Ver</guimenu
> <guimenuitem
>Reduzir</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Diminui o tamanho da letra.</action
></para>
    </listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><guimenu
>Ver</guimenu
> <guimenuitem
>Mostrar os Caracteres Invisíveis</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Activa ou desactiva a apresentação dos caracteres invisíveis.</action
> Se a visualização estiver desactivada, no local correspondente da coluna de caracteres, é colocado um outro carácter de substituição.</para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycap
>F11</keycap
> </shortcut
> <guimenu
>Ver</guimenu
> <guimenuitem
>Mostrar a Posição da Linha</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Activa ou desactiva a apresentação da posição da linha numa área à esquerda.</action
></para
></listitem>
    </varlistentry>


    <varlistentry>
    <term
><menuchoice
><guimenu
>Ver</guimenu
> <guisubmenu
>Mostrar os Valores ou Caracteres</guisubmenu
> </menuchoice
></term>
    <listitem
><para
><action
>Seleccione qual das interpretações de 'bytes' que são apresentadas.</action
> Os valores possíveis são:</para>
    <itemizedlist>
    <listitem
><para
><guimenuitem
>Valores</guimenuitem
></para>
    </listitem>
    <listitem
><para
><guimenuitem
>Caracteres</guimenuitem
></para
></listitem>
    <listitem
><para
><guimenuitem
>Valores e Caracteres</guimenuitem
></para
></listitem>
    </itemizedlist>
    </listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><guimenu
>Ver</guimenu
> <guisubmenu
>Codificação do Valor</guisubmenu
> </menuchoice
></term>
    <listitem
><para
><action
>Selecciona a codificação dos valores</action
> como sendo:</para>
    <itemizedlist>
    <listitem
><para
><guimenuitem
>Hexadecimal</guimenuitem
></para
></listitem>
    <listitem
><para
><guimenuitem
>Decimal</guimenuitem
></para
></listitem>
    <listitem
><para
><guimenuitem
>Octal</guimenuitem
></para
></listitem>
    <listitem
><para
><guimenuitem
>Binário</guimenuitem
></para
></listitem>
    </itemizedlist>
    </listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><guimenu
>Ver</guimenu
> <guisubmenu
>Codificação de Caracteres</guisubmenu
> </menuchoice
></term>
    <listitem
><para
><action
>Selecciona a codificação dos caracteres</action
> no submenu. </para>
    </listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><guimenu
>Ver</guimenu
> <guisubmenu
>Disposição Dinâmica</guisubmenu
> </menuchoice
></term>
    <listitem
><para
><action
>Define as regras de disposição da área de dados.</action
> Isto define quantos 'bytes' são apresentados por linha, dependendo da largura da janela. As regras possíveis são:</para>
    <itemizedlist>
    <listitem
><para
><guimenuitem
>Desligado</guimenuitem
>: A disposição é fixa para o número actual de 'bytes' por linha e não se adapta à alteração do tamanho da janela.</para>
    </listitem>
    <listitem
><para
><guimenuitem
>Repartir apenas os grupos de 'bytes' completos</guimenuitem
>: Coloca o máximo de 'bytes' por linha possíveis, desde que fiquem grupos de 'bytes' completos. </para
></listitem>
    <listitem
><para
><guimenuitem
>Ligado</guimenuitem
>: O mesmo que o anterior, só que permitindo também grupos incompletos de 'bytes'.</para
></listitem>
    </itemizedlist>
    </listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><guimenu
>Ver</guimenu
> <guisubmenu
>Modo de Visualização</guisubmenu
> </menuchoice
></term>
    <listitem
><para
><action
>Selecciona a disposição da janela</action
> como sendo:</para>
    <itemizedlist>
    <listitem
><para
><guimenuitem
>Colunas</guimenuitem
>: A interpretação dos valores e caracteres é apresentada na disposição clássica, com cada um deles apresentado numa coluna em separado.</para
></listitem>
    <listitem
><para
><guimenuitem
>Linhas</guimenuitem
>: A interpretação em caracteres dos 'bytes' é apresentada directamente por baixo da interpretação do valor.</para
></listitem>
    </itemizedlist>
    </listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;&Shift;<keycap
>T</keycap
></keycombo
> </shortcut
> <guimenu
>Ver</guimenu
> <guimenuitem
>Dividir na Horizontal</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Divide a área de visualização actualmente em primeiro plano em duas partes, adicionando uma cópia da área actual à outra área por baixo.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;&Shift;<keycap
>L</keycap
></keycombo
> </shortcut
> <guimenu
>Ver</guimenu
> <guimenuitem
>Dividir na Vertical</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Divide a área de visualização actualmente em primeiro plano em duas partes, adicionando uma cópia da área actual à outra área à direita.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;&Shift;<keycap
>R</keycap
></keycombo
> </shortcut
> <guimenu
>Ver</guimenu
> <guimenuitem
>Fechar a Área de Visualização</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Fecha a área de visualização actualmente em primeiro plano.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;&Shift;<keycap
>F11</keycap
></keycombo
> </shortcut
> <guimenu
>Ver</guimenu
> <guimenuitem
>Modo de Ecrã Completo</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Comuta o modo de ecrã completo.</action
></para
></listitem>
    </varlistentry>

</variablelist>
</sect1>

<sect1 id="windows-menu">
<title
>O Menu Janelas</title>

    <para
>Oferece uma lista com as janelas actuais. Seleccione a janela activa.</para>

</sect1>

<sect1 id="bookmarks-menu">
<title
>O Menu Favoritos</title>

    <para
>Poderá definir vários favoritos para uma única sequência de 'bytes'. Cada sequência tem o seu próprio conjunto de favoritos, sendo o conjunto apropriado apresentado no fundo do <guimenu
>Favoritos</guimenu
>. Escolha um favorito do menu para mover o cursor e a janela para o mesmo. <note
><para
>Os favoritos são neste momento transitórios e não são gravados quando fechar uma lista de 'bytes' ou o programa por inteiro.</para
></note
></para>

<variablelist>
    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;<keycap
>B</keycap
></keycombo
> </shortcut
> <guimenu
>Favoritos</guimenu
> <guimenuitem
>Adicionar aos Favoritos</guimenuitem
> </menuchoice
></term>
    <listitem
><para
>Marca um determinado local na sequência de 'bytes'.</para
></listitem
> 
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Ctrl;&Shift;<keycap
>B</keycap
></keycombo
> </shortcut
> <guimenu
>Favoritos</guimenu
> <guimenuitem
>Remover o Favorito</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Remove o favorito actual.</action
> Este comando só está disponível se o cursor estiver num local marcado como favorito.</para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><guimenu
>Favoritos</guimenu
> <guimenuitem
>Remover Todos os Favoritos</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Limpa a lista de favoritos.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Alt;<keycap
>Cima</keycap
></keycombo
> </shortcut
> <guimenu
>Favoritos</guimenu
> <guimenuitem
>Ir para o Favorito Anterior</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Move o cursor para o favorito anterior.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><shortcut
> <keycombo action="simul"
>&Alt;<keycap
>Baixo</keycap
></keycombo
> </shortcut
> <guimenu
>Favoritos</guimenu
> <guimenuitem
>Ir para o Favorito Seguinte</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Move o cursor para o favorito seguinte.</action
></para
></listitem>
    </varlistentry>

</variablelist>
</sect1>

<sect1 id="tools-menu">
<title
>O Menu Ferramentas</title>

    <para
>Oferece uma lista com as ferramentas instaladas. Activa ou desactiva a apresentação de cada uma das ferramentas. Poderá ver uma descrição mais detalhada de cada ferramenta na secção <link linkend="tools"
>Ferramentas</link
>.</para>
</sect1>

<sect1 id="settings-menu">
<title
>O Menu Configuração</title>

<variablelist>
    <varlistentry>
    <term
><menuchoice
><guimenu
>Configuração</guimenu
> <guimenuitem
>Mostrar a Barra de Ferramentas</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Activa ou desactiva a apresentação da barra de ferramentas por baixo do meu.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><guimenu
>Configuração</guimenu
> <guimenuitem
>Mostrar a Barra de Estado</guimenuitem
> </menuchoice
></term>
    <listitem
><para
><action
>Comuta a visibilidade da barra de estado.</action
></para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><guimenu
>Configuração</guimenu
> <guimenuitem
>Configurar os Atalhos...</guimenuitem
> </menuchoice
></term>
    <listitem
><para
>Muda os atalhos das acções do programa.</para
></listitem>
    </varlistentry>

    <varlistentry>
    <term
><menuchoice
><guimenu
>Configuração</guimenu
> <guimenuitem
>Configurar as Barras de Ferramentas...</guimenuitem
> </menuchoice
></term>
    <listitem
><para
>Controla o conteúdo da barra de ferramentas.</para
></listitem>
    </varlistentry>

</variablelist>

</sect1>

<sect1 id="help-menu">
<title
>O Menu Ajuda</title>
&help.menu.documentation; </sect1>



<sect1 id="toolbar"
><title
>Barra de Ferramentas</title>
    <para
>A barra de ferramentas contém ícones para os seguintes comandos:</para>

    <note
><para
>(Todos se comportam de forma idêntica ao comando respectivo no menu.)</para
></note>

    <itemizedlist>
    <listitem
><para
><guiicon
>Novo</guiicon
></para
></listitem>
    <listitem
><para
><guiicon
>Abrir</guiicon
></para
></listitem>
    <listitem
><para
><guiicon
>Gravar</guiicon
></para
></listitem>
    <listitem
><para
><guiicon
>Reverter</guiicon
></para
></listitem>
    <listitem
><para
><guiicon
>Imprimir</guiicon
></para
></listitem>
    <listitem
><para
><guiicon
>Desfazer</guiicon
></para
></listitem>
    <listitem
><para
><guiicon
>Refazer</guiicon
></para
></listitem>
    <listitem
><para
><guiicon
>Cortar</guiicon
></para
></listitem>
    <listitem
><para
><guiicon
>Copiar</guiicon
></para
></listitem>
    <listitem
><para
><guiicon
>Colar</guiicon
></para
></listitem>
    <listitem
><para
><guiicon
>Procurar</guiicon
></para
></listitem>
    <listitem
><para
><guiicon
>Procurar o Seguinte</guiicon
></para
></listitem>
    </itemizedlist>

</sect1>

</chapter>

<chapter id="credits">
    <title
>Créditos e Licença</title>

    <para
>&okteta; </para>

    <!--List all the copyright holders here-->
    <para
>Programa com 'copyright' 2006-2010 de &Friedrich.Kossebau; &Friedrich.Kossebau.email;</para>

    <para
>Documentação com 'copyright' 2008,2010 de &Friedrich.Kossebau; &Friedrich.Kossebau.email;</para>

    <para
>Tradução de José Nuno Pires <email
>zepires@gmail.com</email
></para
> 
&underFDL; &underGPL; </chapter>

<!-- !!!do not change ANYTHING after this line!!!! -->

<appendix id="installation">
    <title
>Instalação</title>

    <sect1 id="getting-kapp">
        <title
>Como obter o &okteta;</title>
&install.intro.documentation; </sect1>

    <sect1 id="Compilation">
        <title
>Compilação e Instalação</title>
&install.compile.documentation; </sect1>
</appendix>

&documentation.index;
</book>
<!--
Local Variables:
mode: sgml
sgml-minimize-attributes:nil
sgml-general-insert-case:lower
sgml-omittag:t
sgml-shorttag:t
sgml-namecase-general:t
sgml-always-quote-attributes:t
sgml-indent-step:0
sgml-indent-data:nil
sgml-parent-document:nil
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->
