# El manual de &okteta;

Friedrich
W. H.
Kossebau

    &Friedrich.Kossebau.email;

Alex
Richardson

    &Alex.Richardson.email;

Ignacio
Poggi

    ignaciop.3@gmail.com

Traductor
2008, 2010
&Friedrich.Kossebau;
&FDLNotice;
2010-01-12
0.4.0

&okteta; es un editor sencillo para archivos y datos en bruto. Este tipo de programa también se conoce como editor hexadecimal o binario.

KDE
kdeutils
Okteta
ver
edición
bits
bytes
binario
octal
hexadecimal
editor hexadecimal
datos en bruto

## Introducción

&okteta; es un editor sencillo para datos en bruto de archivos.

Los datos se muestran de dos formas distintas: como valores numéricos de los bytes y como los caracteres asignados a los valores. Los valores y los caracteres se pueden mostrar separados en dos columnas o uno junto al otro con el valor sobre el carácter. Es posible editar tanto los valores como los caracteres.

Además de las capacidades usuales de edición, &okteta; proporciona un reducido conjunto de herramientas, como una tabla que lista descodificaciones en tipos de datos comunes, una tabla que lista todos los bytes posibles con sus caracteres y valores equivalentes, un visor de información con estadísticas, una calculadora de sumas de verificación, una herramienta de filtrado y una herramienta de extracción de cadenas.

Todas las modificaciones realizadas sobre los datos cargados se pueden deshacer y rehacer sin ningún tipo de límite.

## Bases

### Iniciando &okteta;

Escriba ``okteta`` en el intérprete de órdenes o seleccione Editor hexadecimal en el grupo Aplicaciones Utilidades del lanzador de aplicaciones.

Las opciones de la línea de comandos estándar de &Qt; y &kde; se encuentran disponibles, y pueden ser listadas ingresando ``okteta` `--help``.

Las opciones específicas de la línea de órdenes para &okteta; son:

`<&URL;(s)>` - abrir archivo(s) desde el(los) &URL; especificado(s)

### Uso

La ventana principal de &okteta; tiene los siguientes componentes: una barra de menú, una barra de herramientas, una barra de estado, una o más barras laterales con herramientas y vista principal con pestañas que contienen visores de datos.

Cuando se abre un archivo o se crea un nuevo array de bytes, los bytes que contiene se listan consecutivamente en líneas con un determinado número de bytes por línea. Se muestran de dos formas distintas: como valores numéricos de los bytes y como los caracteres asignados a los valores. Los valores y los caracteres se pueden mostrar separados en dos columnas o uno junto al otro con el valor sobre el carácter. En la parte izquierda se muestran los desplazamientos del primer byte de cada línea.

El manejo es similar al común en muchos editores de textos: los datos se pueden editar, cortar, copiar, pegar, arrastrar y soltar como el texto dentro de un editor de textos. Un cursor marca la posición actual. Si pulsa la tecla Insert, cambiará entre los modos sobrescribir e insertar. El modo de sobrescritura es más estricto que en los editores de texto, ya que no permite ninguna operación que modifique el tamaño del array de bytes.

Al contrario que en los editores de texto, el contenido se muestra de dos formas distintas. Solo una de ellas está activa para introducir datos. Se muestran dos cursores enlazados para los visores de valores y de caracteres. El cursor activo parpadea. Si están activos los caracteres, podrá introducir caracteres del mismo modo que en los editores de texto. Si están activos los valores, al escribir un dígito se abrirá un pequeño editor para introducir el resto del valor.

El diálogo de búsqueda permite al usuario buscar una cadena específica de bytes, que se puede definir como valores (hexadecimales, decimales, octales, binarios) o texto (con la codificación actual de 8 bits o como UTF-8).

Se pueden abrir varios arrays de bytes simultáneamente, pero solo uno puede estar activo. Use el menú Ventana para seleccionar el array de bytes que estará activo.

## Herramientas

### Introducción

&okteta; contiene varias herramientas, algunas para analizar y manipular arrays de bytes y otras para otros propósitos más generales. Estas herramientas se pueden activar o desactivar desde la entrada Herramientas de la barra de menú. Cada herramienta posee un pequeño visor que se puede anclar en cualquiera de las barras laterales o flotar libremente como una ventana. Puede anclar, desanclar, reorganizar y también apilar los visores de las herramientas con el ratón, pulsando el &LMB; sobre la barra de título del visor de la herramienta, moviéndolo como desee y soltando el &LMB; para completar la acción; puede cancelar la operación pulsando la tecla &Esc;.

#### Analizadores y manipuladores

Tabla de byte

  La tabla hace un listado de todos los valores posibles de byte, tanto valores de caracteres o numéricos.

  El valor seleccionado puede ser insertado en la posición del cursor para un número definido de bytes. Esto puede ser logrado usando el botón Insertar o haciendo doble clic en la línea de la tabla.

Filtro binario

  El filtro realiza operaciones binarias en los bytes seleccionados. Luego de elegir la operación (AND, OR, ROTATE..) los parámetros, si hay alguno, pueden ser configurados en el cuadro de diálogo que se muestra debajo. El filtro es ejecutado cuando se utiliza el botón Filtro.

Cadenas

  Esta herramienta localiza las cadenas en los bytes seleccionados. Tras escoger una longitud mínima para la cadena y pulsar el botón Extraer, las cadenas se buscarán con la herramienta «grep». Se puede reducir la lista de cadenas mostradas introduciendo algún término para filtrarlas.

Estadísticas

  La herramienta crea una estadística para los bytes seleccionados. La estadística proporciona la frecuencia de aparición de cada byte en la selección. Se puede calcular usando el botón Construir.

Suma de verificación

  Esta herramienta calcula varias sumas de verificación o de «hash» para los bytes seleccionados. Tras escoger el algoritmo y ajustar el parámetro, si hay uno, se calcula la suma al usar el botón Calcular.

Tabla de decodificación

  La tabla muestra los valores del byte o de los bytes comenzando en la posición del cursor para algunos tipos de datos sencillos y comunes, como enteros o valores en coma flotante, así como UTF-8. Si hace doble clic sobre una línea de la tabla se abrirá un editor en el que podrá editar y cambiar el valor.

Estructuras

  Esta herramienta activa la investigación y la edición de arrays de bytes basados en definiciones de estructuras creadas por el usuario. Las instrucciones detalladas están en una sección propia.

#### Herramientas generales

Sistema de archivos

  Esta herramienta ofrece un navegador de archivos integrado que se puede usar para seleccionar los archivos a abrir.

Documentos

  Esta herramienta muestra todos los archivos actualmente creados o cargados. Los símbolos marcan el archivo en la vista actualmente activa y también muestran qué archivos contienen modificaciones sin guardar o qué copias almacenadas han sido modificadas por otro programa.

Marcadores

  Esta herramienta se puede usar para gestionar los marcadores de forma alternativa al menú Marcadores.

  Los marcadores son temporales en la actualidad y no se guardan si cierra el array de bytes o el programa.

Información sobre el archivo

  Esta herramienta muestra información sobre el archivo actual, incluyendo su tipo, su ubicación de almacenamiento y su tamaño.

### Herramienta de estructuras

#### General

La herramienta de estructuras permite el análisis y la edición de arrays de bytes basados en definiciones de estructuras creadas por el usuario, que se pueden construir a partir de arrays, uniones, tipos primitivos y valores de enumeración.

Posee un diálogo de ajustes propio, que se puede mostrar usando el botón Ajustes. Existen varias opciones que se pueden configurar, como el estilo (decimal, hexadecimal o binario) en el que se muestran los valores. También es posible escoger qué definiciones de estructuras se cargan y qué estructuras se muestran en el visor.

Las estructuras se definen en archivos de definición de estructuras de &okteta; (basados en &XML;, con la extensión `.osd`). Adicionalmente, un archivo `.desktop` contiene metadatos sobre dicho archivo de descripción de estructura, como el autor, su página web y la licencia de uso.

En la actualidad no se pueden crear ni editar definiciones de estructuras desde dentro del programa, por lo que estas operaciones se deben realizar de forma manual como se describe en las siguientes secciones.

#### Instalación de definiciones de estructuras

##### Instalación usando KNewStuff

El modo más fácil para instalar nuevas definiciones de estructuras consiste en usar la utilidad KNewStuff integrada en &okteta;. Para instalar una estructura existente, abra el diálogo de preferencias de la herramienta «Estructuras». Seleccione ahí la pestaña Gestión de estructuras y pulse el botón Obtener nuevas estructuras.... El diálogo que se muestra a continuación le permite instalar y desinstalar estructuras.

##### Instalación manual de definiciones de estructuras

La herramienta de estructuras comprueba la existencia de descripciones de estructuras en el subdirectorio `share/apps/okteta/structures/` del directorio del usuario para los datos de programas (puede encontrarlo ejecutando ``kde4-config` `--localprefix``). Es posible que tenga que crear este directorio si aún no ha instalado ninguna definición de estructura.

En este subdirectorio existe otro subdirectorio para cada definición de estructura, que contiene tanto el archivo `.desktop` como el archivo `.osd` o el archivo `main.js` de la definición.

Por ejemplo, con el directorio de datos de programas `.kde` y una definición de estructura llamada «EstructuraEjemplo», existirá el directorio `.kde/share/apps/okteta/structures/EstructuraEjemplo`, que contendrá los archivos `EstructuraEjemplo.desktop` y `EstructuraEjemplo.osd`.

##### Uso de las estructuras recién instaladas

Si ha instalado una nueva definición de estructura, tendrá que reiniciar &okteta; antes de poder usarla. Tras iniciar &okteta;, abra el diálogo de preferencias de la herramienta de estructuras. Seleccione allí la pestaña Gestión de estructuras y asegúrese de marcar la definición de estructura en cuestión. Cambie luego a la pestaña Estructuras y asegúrese de que el elemento en cuestión aparece listado en la parte de la derecha.

#### Compartir definiciones de estructuras

No necesita crear una definición para las estructuras comunes, pero sí puede reutilizar alguna definición existente de sitios como kde-files.org.

También es posible que quiera compartir una definición. Para ello, cree un archivo comprimido (&eg;, un archivo comprimido tar, `.tar.gz`) que contenga únicamente el subdirectorio con el archivo `.desktop` y el archivo de definición de la estructura. Según el ejemplo de la sección anterior, sería el directorio `EstructuraEjemplo` con todo su contenido. El uso de este formato para compartir las definiciones de estructuras permite instalarlas en &okteta; sin tener que hacerlo manualmente.

#### Creación de sus propias definiciones de estructuras

Existen dos modos diferentes de crear definiciones de estructuras. El primero consiste en escribir la definición en &XML;, mientras que el segundo necesita el uso de JavaScript. La aproximación que usa JavaScript le permite crear estructuras más complejas con funcionalidades similares a validar la estructura. El uso de &XML; le permite menos funcionalidades y posiblemente no se extenderá en el futuro. No obstante, las estructuras &XML; seguirán siendo funcionales, aunque se recomienda el uso de la aproximación JavaScript.

##### El paso en común compartido por ambas aproximaciones

Se deben crear dos archivos para cada definición de estructura. Uno es un archivo `.desktop` para los metadatos. Un archivo de ejemplo podría ser el siguiente:

              [Desktop Entry]
              Encoding=UTF-8
              Icon=arrow-up
              Type=Service
              ServiceTypes=KPluginInfo

              Name=Estructura de prueba sencilla
              Comment=Una estructura de prueba muy sencilla que solo contiene dos elementos

              X-KDE-PluginInfo-Author=Alex Richardson
              X-KDE-PluginInfo-Email=foo.bar@email.org
              X-KDE-PluginInfo-Name=estructurasimple
              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

El icono mostrado en &okteta; para esta estructura puede ser cualquier cosa que encuentre al ejecutar la orden ``kdialog` `--geticon`` o la ruta a un icono

Estos campos deberían resultar autoexplicativos, excepto `X-KDE-PluginInfo-Name`. El valor de este campo debe coincidir con el nombre del directorio que contiene el archivo, así como con el nombre del archivo `.desktop`. Al crear definiciones de estructuras &XML;, el nombre del archivo `.osd` también debe coincidir con este nombre.

En este ejemplo tendremos un directorio llamado `estructurasimple` que contendrá el archivo `estructurasimple.desktop`. Al definir estructuras en &XML;, el directorio también contendrá un archivo llamado `estructurasimple.osd`. Si usáramos JavaScript tendremos en su lugar un archivo llamado `main.js`.

##### La primera definición de estructura

Para comenzar vamos a crear una definición para una estructura de pruebas muy simple que solo contiene tipos de datos enteros (un carácter y un entero de 32 bits). Esto se expresaría en C/C++ del siguiente modo:

              struct simple {
                char aChar;
                int anInt;
                bool bitFlag :1;
                unsigned padding :7;
              };

El primer paso es escribir el archivo `.osd`, que llamaremos `estructurasencilla.osd`:

              <?xml version="1.0" encoding="UTF-8"?>
              <data>
                <struct name="simple">
                  <primitive name="aChar" type="Char"/>
                  <primitive name="anInt" type="Int32"/>
                  <bitfield name="bitFlag" type="bool" width="1"/>
                  <bitfield name="padding" type="unsigned" width="7"/>
                </struct>
              </data>

que es bastante similar a la definición de C/C++. El atributo «type» de la primitiva sólo puede ser uno de los siguientes:

- Char

- Int8, Int16, Int32 o Int64

- UInt8, UInt16, UInt32 o UInt64

- Bool8, Bool16, Bool32 o Bool64

- Float

- Double

La etiqueta «bitfield» tiene dos atributos (además del atributo «name», que poseen todas las etiquetas): el atributo «width» le dice a &okteta; cuántos bits usa este campo de bits.

Recuerde que siempre debe añadir relleno, ya que, de otro modo, la siguiente primitiva comenzará en medio de un byte. Obviamente, el relleno no es necesario si desea este comportamiento.

El otro atributo es «type», que puede ser `bool`, `unsigned` o `signed`.

Ahora debe crear un subdirectorio `estructurasimple` dentro del directorio de instalación de la estructura (consulte la instalación manual de definiciones de estructuras) y copiar los dos archivos en dicho directorio. Luego tendrá que reiniciar &okteta; para poder usar la nueva estructura.

##### La misma estructura en JavaScript

Para implementar la estructura anterior en JavaScript, cree un archivo llamado `main.js` en lugar de `simplestruct.osd`. El contenido de este archivo debe ser:

            function init() {
              var structure = struct({
                aChar : char(),
                anInt : int32(),
                bitFlag : bitfield("bool", 1),
                padding : bitfield("unsigned", 7),
              })
              return structure;
            }

La estructura mostrada por &okteta; es siempre el valor devuelto por la función `init`.

Puede llamar a las siguientes funciones para crear un tipo de primitiva:

- char()

- int8(), int16(), int32() or int64()

- uint8(), uint16(), uint32() or uint64()

- bool8(), bool16(), bool32() or bool64()

- float()

- double()

La función «bitfield» tiene dos parámetros: el primero es una cadena que contiene `bool`, `signed` o `unsigned`; el segundo parámetro es un entero que establece el ancho en bits.

##### Estructuras más complejas

A continuación crearemos una definición de una estructura más compleja que llamaremos «compleja» y guardaremos en un archivo llamado `compleja.osd`. Esta estructura contendrá dos arrays (uno de longitud fija y otro donde la longitud se determina en tiempo de ejecución), así como una estructura anidada y una unión.

              <?xml version="1.0" encoding="UTF-8"?>
              <data>
                <struct name="compleja">
                  <primitive name="size" type="UInt8" />
                  <union name="aUnion">
                    <array name="fourBytes" length="4">
                      <primitive type="Int8" />
                    </array>
                  </union>
                  <struct name="nested">
                    <array name="string" length="size"> <!-- hace referencia a la longitud del campo anterior -->
                      <primitive type="Char" />
                    </array>
                  </struct>
                </struct>
              </data>

Esto se correspondería con el siguiente pseudocódigo C/C++

    struct complex {
                uint8_t size;
                union aUnion {
                  int8_t fourBytes[4];
                };
                struct nested {
                  char string[size] //no válido en C++, hace referencia a valor de tamaño uint8
                };
              };

Obviamente, solo puede tener campos de referencia a arrays de longitud dinámica antes del propio array.

A continuación creamos el archivo `compleja.desktop` del mismo modo que en el ejemplo anterior (asegúrese de fijar el valor `X-KDE-PluginInfo-Name` correctamente) y haga lo mismo para instalar ambos archivos.

##### Más información

Puede encontrar unas cuantas definiciones de estructuras aquí. Encontrará, por ejemplo, la cabecera de los archivos PNG y ELF. Puede encontrar un esquema &XML; que describe la estructura de los archivos `.osd` aquí. Si necesita más información, contacte conmigo en &Alex.Richardson.email;.

## Entradas del menú

Observe que muchos de los comandos del menú también poseen un acceso directo de teclado.

### Menú Archivo

&Ctrl;N Archivo Nuevo

  Crear un nuevo array de bytes...

  - Vacío: ... como vacío.

  - Desde el portapapeles: ... con el contenido actual del portapapeles.

  - Patrón...: ... con un patrón determinado.

  - Datos aleatorios...: ... con datos aleatorios.

  - Secuencia: ... con todos los bytes desde 0 a 255.

&Ctrl;O Archivo Abrir...

  Abre un archivo existente.

Archivo Abrir reciente

  Elige desde una lista de los últimos archivos abiertos.

&Ctrl;S Archivo Guardar

  Guardar el array de bytes en un archivo.

Archivo Guardar como...

  Guarda la tabla de bytes en otro archivo con un nuevo nombre.

Archivo Exportar

  Exporta los bytes seleccionados a un archivo...

  - Valores: ... codificados como valores de bytes.

  - Texto plano: ... codificado como caracteres.

  - Base64: ... codificados con el formato Base64.

  - Array de C: ... definido como un array en el lenguaje de programación C.

  - Ver en texto plano: ... como en la vista de datos con desplazamiento, muestra valores de bytes y caracteres.

F5 Archivo Volver a cargar

  Descarta todos los cambios y vuelve a cargar el array de bytes desde el archivo.

&Ctrl;P Archivo Imprimir...

  Imprime la tabla de bytes actual.

Archivo Permisos

  Configura los privilegios de modificación de archivos:

  Fijar solo lectura

    Cuando está activado, no se podrán hacer cambios en la tabla de bytes cargada.

&Ctrl;W Archivo Cerrar

  Cierra la tabla de bytes actual.

Archivo Cerrar todo

  Cierra todos los arrays de bytes.

Archivo Cerrar los demás

  Cierra todos los arrays de bytes, excepto el actual.

&Ctrl;Q Archivo Salir

  Cierra laventana de &okteta;.

### El menú Editar

Actualmente en &kde; 4.4, copiar y cortar envían datos al portapapeles con el tipo MIME «application/octetstream». &klipper; no es capaz de mostrar este tipo de datos. Casi ninguna otra aplicación podrá manejarlos, ya que solo son datos sin formato. Vea también el submenú Copiar como.

&Ctrl;Z Edición Deshacer

  Deshace la última acción.

&Ctrl;&Shift;Z Edición Rehacer

  Vuelve a realizar la última acción deshecha.

&Ctrl;X Edición Cortar

  Elimina los bytes seleccionados y los copia al portapapeles.

&Ctrl;C Edición Copiar

  Copia los bytes seleccionados al portapapeles.

&Ctrl;V Edición Pegar

  Inserta los bytes cortados o copiados desde el portapapeles.

Edición Copiar como

  Copia los bytes seleccionados en el portapapeles...

  - Valores: ... codificados como valores de bytes.

  - Texto plano: ... codificado como caracteres.

  - Base64: ... codificados con el formato Base64.

  - Array de C: ... definido como un array en el lenguaje de programación C.

  - Ver en texto plano: ... como en la vista de datos con desplazamiento, muestra valores de bytes y caracteres.

Edición Insertar
  Insertar patrón...

    Inserta una cadena específica de bytes en la posición del cursor.

    Las opciones del diálogo le permiten especificar el número de veces que se insertará el patrón y su formato (Hexadecimal, Decimal, Octal, Binario, Caracteres o UTF-8).

&Ctrl;A Edición Seleccionar todo

  Selecciona toda la tabla de bytes.

&Ctrl;&Shift;A Editar Deseleccionar

  Deselecciona la selección actual.

&Ctrl;E Editar Seleccionar intervalo...

  Abre un diálogo empotrado para introducir el intervalo a seleccionar.

Ins Edición Modo de sobrescritura

  Cambia entre el modo Insertar y el modo Sobrescribir.

  La implementación del modo de sobrescritura es muy estricta, ya que no es posible cambiar el tamaño de los datos (no se puede añadir ni eliminar bytes).

&Ctrl;F Edición Encontrar...

  Encuentra un patrón específico en el documento. Pueden ser buscados patrones hexadecimales, decimales, octales, binarios o texto.

  Las opciones en el cuadro de diálogo le permiten especificar el punto de inicio, la dirección y el rango de la búsqueda.

F3 Edición Encontrar siguiente

  Encuentra la siguiente instancia del patrón Encontrar.

  Si no hay un patrón especificado, el cuadro de diálogo será mostrado.

&Shift;F3 Edición Encontrar previos

  Encuentra las instancias previas del patrón Encontrar.

  Si no hay un patrón especificado, el cuadro de diálogo será mostrado.

&Ctrl;R Edición Reemplazar...

  Reemplaza el patrón encontrado con otro diferente.

&Ctrl;G Edición Ir al desplazamiento...

  Mueve el cursor hacia un desplazamiento específico.

### El menú Ver

&Ctrl;+ Vista Aumentar el zoom

  Aumenta el tamaño de la fuente.

&Ctrl;- Vista Disminuir el zoom

  Disminuye el tamaño de la fuente.

Vista Mostrar caracteres no imprimibles

  Cambia entre sí/no la visualización de los caracteres no imprimibles Si se encuentra apagado, en los lugares correspondientes de la columna de caracteres se mostrará en su lugar un carácter sustituto.

F11 Ver Mostrar desplazamientos de líneas

  Cambia entre sí/no la visualización en un panel de la línea de desplazamiento a la izquierda.

Vista Mostrar valores o caracteres

  Selecciona las interpretaciones de los bytes que se mostrarán. Las posibles son:

  - Valores

  - Caracteres

  - Valores y caracteres

Vista Codificación de los valores

  Selecciona la codificación de los valores entre:

  - Hexadecimal

  - Decimal

  - Octal

  - Binario

Vista Codificación de caracteres

  Selecciona la codificación de los caracteres en el submenú.

Ver Disposición dinámica

  Configura las reglas de diseño de la visualización de los datos. Esto define cuantos bytes son mostrados en pantalla por línea, dependiendo del ancho de la vista. Las reglas posibles son:

  - Desactivada: El diseño se adapta al número de bytes actual por línea, y no se adapta a los cambios de tamaño de la vista.

  - Envolver solo grupos completos de bytes: Coloca tantos bytes por línea como sea posible, hasta que el grupo de bytes se encuentre completo.

  - Activada: Lo mismo que el anterior, pero permite también grupos incompletos de bytes.

Vista Modo de vista

  Selecciona la organización de las vista entre:

  - Columnas: Las interpretaciones de los valores y de los caracteres se muestran con la distribución clásica de cada uno de ellos en una columna separada.

  - Filas: La interpretación en caracteres de un byte se muestra directamente debajo de la interpretación del valor.

&Ctrl;&Shift;T Ver Dividir horizontalmente

  Divide el área de la vista enfocada actualmente en dos partes, añadiendo una copia de la vista actual a la nueva área inferior.

&Ctrl;&Shift;L Ver Dividir verticalmente

  Divide el área de la vista enfocada actualmente en dos partes, añadiendo una copia de la vista actual a la nueva área de la derecha.

&Ctrl;&Shift;R Ver Cerrar el área de visión

  Cierra el área de visión con la vista enfocada actualmente.

&Ctrl;&Shift;F11 Ver Modo de pantalla completa

  Cambia entre sí/no la activación de la pantalla completa

### El menú Ventana

Proporciona un listado de las vistas actuales. Selecciona la ventana activa.

### El menú Marcadores

Es posible establecer diversos marcadores para una única tabla de bytes. Cada tabla de bytes tiene su propio conjunto de marcadores, y el apropiado se muestra al final del menú Marcadores. Elija un marcador en el menú para desplazar el cursor y la vista hasta él.

Los marcadores son temporales en la actualidad y no se guardan si cierra el array de bytes o el programa.

&Ctrl;B Marcadores Añadir marcador

  Marca una posición dentro de la tabla de bytes.

&Ctrl;&Shift;B Marcadores Borrar marcador

  Borra el marcador actual. Este comando se encuentra disponible si el cursor está en una ubicación marcada.

Marcadores Borrar todos los marcadores

  Limpia el listado de los marcadores.

&Alt;Flecha hacia arriba Marcadores Ir al marcador anterior

  Mueve el cursor al marcador anterior.

&Alt;Flecha abajo Marcadores Ir al marcador siguiente

  Mueve el cursor al siguiente marcador.

### El menú Herramientas

Proporciona un listado de las herramientas instaladas. Activa o desactiva la visualización de cada herramienta. Puede encontrar una descripción detallada de cada herramienta en la sección Herramientas.

### El menú Preferencias

Preferencias Mostrar barra de herramientas

  Intercambia entre sí/no la visualización de la barra de herramientas debajo de la barra de menú.

Preferencias Mostrar barra de estado

  Conmuta la visualización de la barra de estado.

Preferencias Configurar accesos directos...

  Cambia las acciones de los accesos directos del programa.

Preferencias Configurar barras de herramientas...

  Controla el contenido de la barra de herramientas.

### El menú Ayuda

&help.menu.documentation;

### Barra de herramientas

La barra de herramientas contiene los iconos de los siguientes comandos:

(Todos se comportan de modo idéntico a la orden del menú.)

- Nuevo

- Abrir

- Guardar

- Revertir

- Imprimir

- Deshacer

- Rehacer

- Cortar

- Copiar

- Pegar

- Encontrar

- Encontrar siguiente

## Créditos y licencia

&okteta;

Copyright del programa 2006-2010 &Friedrich.Kossebau; &Friedrich.Kossebau.email;

Copyright de la documentación 2008,2010 &Friedrich.Kossebau; &Friedrich.Kossebau.email;

Traducido por Ignacio Poggi ignaciop.3@gmail.com

&underFDL; &underGPL;

## Instalación

### Cómo obtener &okteta;

&install.intro.documentation;

### Compilación e instalación

&install.compile.documentation;

&documentation.index;