You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tde-i18n/tde-i18n-es/docs/tdewebdev/quanta/adv-quanta.docbook

423 lines
23 KiB

<?xml version="1.0" encoding="UTF-8" ?>
<chapter id="advanced-quanta-3-2">
<chapterinfo>
<title>Características avanzadas</title>
<authorgroup>
<author><firstname>Christopher</firstname> <surname>Hornbaker</surname> <affiliation> <address><email>chrishornbaker@earthlink.net</email></address>
</affiliation>
</author>
<othercredit role="translator"><firstname>Juan Manuel</firstname><surname>García Molina</surname><affiliation><address><email>juanma@superiodico.net</email></address></affiliation><contrib>Traductor</contrib></othercredit>
</authorgroup>
</chapterinfo>
<title>Características avanzadas</title>
<para>Este capítulo apunta las características avanzadas de &quantaplus; y cómo usarlas. </para>
<sect1 id="xml-tools-3-2">
<title>Herramientas &XML;</title>
<para>La versión 3.2 de &quantaplus; viene con muchas características y herramientas &XML; nuevas. Las herramientas son únicas en su integración con &quantaplus;. Todas estas herramientas usan <application>Kommander</application> como interfaz y <application>libxml2</application> y <application>libxslt</application> como respaldo. La combinación de ambos hace de las herramientas un todo rápido, eficiente, productivo y completo. </para>
<sect2 id="kde-db-3-2">
<title>Herramientas de documentación de &kde;</title>
<para>&quantaplus; admite dos herramientas de documentación principales de &kde;: <command>meinproc</command> y <command>checkXML</command>. </para>
<sect3 id="meinproc-3-2">
<title><command>meinproc</command></title>
<para>Cualquiera que haya trabajado con la documentación de &kde; conoce <command>meinproc</command> y lo bueno que es. Bien, pues dele una oportunidad a un gran interfaz gráfico. No es necesario volver a la shell. Simplemente haga clic sobre el icono que se parece a un procesador y ya está. </para>
<variablelist>
<varlistentry>
<term><guilabel>Carpeta de trabajo actual</guilabel></term>
<listitem>
<para>Esta aplicación espera que esté presente en la carpeta un archivo <filename>index.docbook</filename>. Si <filename>index.docbook</filename> está en la carpeta de trabajo actual, simplemente deje marcado <guilabel>Carpeta de trabajo actual</guilabel>. Si no lo está, desmarque <guilabel>Carpeta de trabajo actual</guilabel> e indique la carpeta que quiera procesar en el campo <guilabel>Otra carpeta</guilabel>. </para>
</listitem>
</varlistentry>
</variablelist>
<note>
<para>Los archivos de salida se ubican en la misma carpeta que los archivos fuente. Todos los archivos &HTML; se eliminan cada vez que se ejecuta <command>meinproc</command>. </para>
</note>
</sect3>
<sect3 id="checkxml-3-2">
<title><command>checkXML</command></title>
<para>De nuevo, cualquiera que haya trabajado con la documentación de &kde; conoce esta útil aplicación. De nuevo, &quantaplus; proporciona un pequeño gran interfaz gráfico. </para>
<variablelist>
<varlistentry>
<term><guilabel>Carpeta de trabajo actual</guilabel></term>
<listitem>
<para>Si el archivo que está abierto actualmente es <filename>index.docbook</filename>, simplemente deje marcado <guilabel>Carpeta de trabajo actual</guilabel>. Si no, desmarque <guilabel>Carpeta de trabajo actual</guilabel> e indique la carpeta en la que se encuentre <filename>index.docbook</filename>. </para>
</listitem>
</varlistentry>
</variablelist>
<note>
<title>Salida</title>
<para>Si hay salida, su archivo no es válido. Corrija los errores de los que se informe y pruebe de nuevo. </para>
</note>
</sect3>
</sect2>
<sect2 id="xmlval-3-2">
<title>Validación &XML;</title>
<para>&quantaplus; tiene una gran herramienta de validación &XML; que usa como respaldo <command>xmllint</command>. </para>
<variablelist>
<varlistentry>
<term><guilabel>Archivo actual</guilabel></term>
<listitem>
<para>Si el archivo que se va a validar tiene actualmente el foco en &quantaplus;, simplemente deje marcado <guilabel>Archivo actual</guilabel>. Si no, desmarque <guilabel>Archivo actual</guilabel> y elija el archivo que vaya a validar del selector de archivo Otro. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Verificación bien formada</guilabel></term>
<listitem>
<para>Si sólo desea saber si el archivo está bien formado, haga clic sobre la casilla de verificación <guilabel>Comprobar sólo si está bien formado</guilabel>. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guilabel>&URI; de la definición</guilabel></term>
<listitem>
<para>Si está usando una &DTD; y se especifica en el archivo &XML;, seleccione la &DTD; (Interna) (predefinida). Si no, elija la &DTD; (Externa) y localice la &DTD; con el selector de archivos de la &URI; de la definición. Se necesitan tanto el esquema &W3C; &XML; como la validación RelaxNG para ser definido externamente por medio del selector de archivo <guilabel>&URI; de la definición</guilabel>. </para>
</listitem>
</varlistentry>
</variablelist>
</sect2>
<sect2 id="xsltproc-3-2">
<title>Procesamiento &XSL;</title>
<para>Sí, &quantaplus; también tiene una herramienta de procesamiento &XSL;. Usa la herramienta <command>xsltproc</command> que viene con <application>libxml2</application>. </para>
<variablelist>
<varlistentry>
<term><guilabel>Archivo actual</guilabel></term>
<listitem>
<para>Si el archivo que se va a procesar tiene el foco en &quantaplus;, simplemente deje marcado <guilabel>Archivo actual</guilabel>. Si no lo está, desmarque <guilabel>Archivo actual</guilabel> y elija el archivo que se va a procesar del selector <guilabel>Otro archivo</guilabel>. </para>
</listitem>
</varlistentry>
<varlistentry>
<term>Hoja de estilo</term>
<listitem>
<para>Selecciona el archivo &XSL; que quiera usar. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Nombre del archivo de salida</guilabel></term>
<listitem>
<para>Indique el nombre del archivo que quiera para el archivo resultado. De forma predeterminada, el archivo de salida se coloca en su carpeta de inicio. </para>
</listitem>
</varlistentry>
</variablelist>
<note>
<para>Esta aplicación carece de flexibilidad. Lo sentimos. Intentaremos hacerlo mejor la próxima vez. </para>
</note>
</sect2>
</sect1>
<!-- <sect1 id="tdefilereplace-3-2">
<title>KFileReplace</title>
<para>
KFileReplace is a terrific new addition to &quantaplus;. It allows one to
quickly replace strings over multiple files in only a few clicks of the
mouse. Imagine you have converted all your GIF images to PNG images
(hasn't everyone done this already?), only the extension has changed, and
you have the &lt;img /> tag scattered throughout 50 XHTML files. Are you
going to do a Find &amp; Replace on every file? Surely not when you can do
them all at the same time! This is only one of the many situations where
you will find KFileReplace a seriously helpful tool. This section will show
you how to use this wonderful feature.
</para>
<sect2 id="using-kfr-3-2">
<title>Using KFileReplace</title>
<para>
With all these wonderful features KFileReplace has, surely you are
incredibly interested in how to use it! Well, make sure your swim suit
is on tight, because we are about to dive in!
</para>
<sect3 id="start-kfr-3-2">
<title>Starting KFileReplace</title>
<para>
You will find KFileReplace in two places: &quantaplus;' main toolbar and the
menubar (Plugins -> KFileReplace). It is represented by this icon:
<inlinemediaobject>
<imageobject>
<imagedata fileref="kfr-icon.png" format="PNG"/>
</imageobject>
</inlinemediaobject>.
By executing it from either location, you will be presented with the New
Search &amp; Replace Project dialog.
</para>
<mediaobject>
<imageobject>
<imagedata fileref="kfr-new-dialog.png" format="PNG"/>
</imageobject>
<caption><para>KFileReplace's New Search &amp; Replace Project dialog.</para></caption>
</mediaobject>
</sect3>
<sect3 id="replace-string-kfr-3-2">
<title>Replacing Strings in Files Over Multiple Folders</title>
<para>
Your boss just gave word that:
<orderedlist numeration="arabic">
<listitem>
<para>all image formats will be PNG from now on;</para>
</listitem>
<listitem>
<para>all current images must be converted to PNG;</para>
</listitem>
<listitem>
<para>and it all needs to be done in one hour.</para>
</listitem>
</orderedlist>
<quote>One hour!?!?</quote> you think to yourself. <quote>It'll take at
least 45 minutes to convert the images!</quote> Calm down. Convert
the images, load up your project, and fire up KFileReplace. Filter for
only the file types you want to change. Press the <inlinemediaobject>
<imageobject><imagedata format="PNG" fileref=""/></imageobject>
</inlinemediaobject> and for, say GIF images, .gif for the string to
replace and .png for the replacement string.
</para>
</sect3>
</sect2>
</sect1> -->
<sect1 id="tdeparts-3-2">
<sect1info>
<title>Usar los accesorios</title>
<authorgroup>
<author><firstname>Mathieu</firstname> <surname>Kooiman</surname> <affiliation> <address><email>quanta@map-is.nl</email></address>
</affiliation>
</author>
<othercredit role="translator"><firstname>Juan Manuel</firstname><surname>García Molina</surname><affiliation><address><email>juanma@superiodico.net</email></address></affiliation><contrib>Traductor</contrib></othercredit>
</authorgroup>
</sect1info>
<title>Usar los accesorios</title>
<sect2 id="what-is-a-plugin-3-2">
<title>¿Qué es un accesorio?</title>
<para>&quantaplus; puede cargar accesorios, que son KPart. El entorno KPart es otro de los potentes entornos de &kde;. Una KPart es un contenedor de funcionalidad relativamente pequeño y reutilizable. Permite a los desarrolladores de &kde; basarse en el trabajo de otros probamadores. Un ejemplo de esto es el propio &quantaplus;. El editor &quantaplus; usa la KPart &kate;. La KPart &kate; ya tiene plena funcionalidad para lo que necesita &quantaplus;, como resaltado de sintaxis. Al integrarlo en &quantaplus;, los desarrolladores de &quantaplus; se pueden permitir centrar su trabajo en lo que podría hacer &quantaplus;, en lugar de tener que afrontar los muchos problemas que traería la escritura desde cero de un componente/KPart editor. </para>
<para>Los accesorios que carga &quantaplus; pueden no tener que tener nada que ver con el propio &quantaplus;. Esto lo hace un sistema de accesorios muy potente. Se puede beneficiar de funcionalidad extra y no tiene que esperar hasta que alguien lo integre en &quantaplus;. Los accesorios se pueden cargar en varios elementos del &GUI;. Más abajo se habla sobre esto. </para>
</sect2>
<sect2 id="plugin-dialog-3-2">
<title>Comprender el cuadro de diálogo editar accesorio</title>
<para>Para instalar un accesorio o una KPart se trabaja desde el menú <menuchoice> <guimenu>Accesorios</guimenu> <guimenuitem>Editar</guimenuitem> </menuchoice>. Esto hará surgir el siguiente cuadro de diálogo: </para>
<mediaobject>
<imageobject>
<imagedata format="PNG" fileref="plugin-edit.png"/>
</imageobject>
<caption><para>El cuadro de diálogo editar accesorio.</para></caption>
</mediaobject>
<para>Este cuadro de diálogo le permite gestionar todos los accesorios definidos y le permite añadir otros nuevos. Aquí se describen todos los elementos de &GUI;: <variablelist>
<varlistentry>
<term><guilabel>Rutas de búsqueda</guilabel></term>
<listitem>
<para>Aquí puede completar una patrón de búsqueda. Al agregar un accesorio sin <guilabel>Ubicación</guilabel>, &quantaplus; buscará esas rutas para encontrar el accesorio. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Añadir</guilabel></term>
<listitem>
<para>Hará surgir un cuadro de diálogo que le permite agregar un accesorio. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Configurar</guilabel></term>
<listitem>
<para>Le permite cambiar las preferencias de un accesorio en particular. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Eliminar</guilabel></term>
<listitem>
<para>Elimina el accesorio que esté seleccionado en ese momento. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Refrescar</guilabel></term>
<listitem>
<para>Refresca el contenido del cuadro de diálogo. </para>
</listitem>
</varlistentry>
</variablelist>
</para>
<para>Lea <xref linkend="configure-plugins"/> para saber más acerca de los complementos.</para>
</sect2>
</sect1>
<sect1 id="team-members">
<title>Equipo de desarrollo</title>
<para>A menudo hay más de una persona trabajando en el proyecto, y hay algún tipo de relación jerárquica entre los miembros del equipo. &quantaplus; admite la noción de miembros del equipo, y se puede configurar en el cuadro de diálogo <menuchoice> <shortcut> <keycombo action="simul">&Shift;<keycap>F7</keycap></keycombo> </shortcut> <guimenu>Proyecto</guimenu> <guimenuitem>Propiedades del proyecto</guimenuitem> </menuchoice>. </para>
<mediaobject>
<imageobject>
<imagedata format="PNG" fileref="team-editing.png"/>
</imageobject>
<caption><para>El cuadro de diálogo de edición de miembros del equipo.</para></caption>
</mediaobject>
<para>Las entradas <guilabel>Nombre</guilabel> y <guilabel>Correo electrónico</guilabel> se explican por sí mismas. <guilabel>Apodo</guilabel> es al apodo del usuario y se utiliza como identificador único. </para>
<para><guilabel>Rol</guilabel> indica el papel del miembro en el proyecto y puede ser uno de los siguientes: <itemizedlist>
<listitem><para>
<guilabel>Líder del equipo</guilabel>
</para></listitem>
<listitem><para>
<guilabel>Líder de subproyecto</guilabel>
</para></listitem>
<listitem><para>
<guilabel>Líder de tarea</guilabel>
</para></listitem>
<listitem><para>
<guilabel>Miembro normal</guilabel>
</para></listitem>
</itemizedlist>
</para>
<para><guilabel>Tarea</guilabel> es una descripción de la tarea asignada a este miembro.</para>
<para><guilabel>Subproyecto</guilabel>: puede seleccionar una lista de subproyectos. Los subproyectos se pueden configurar y crear pulsando el botón <guilabel>Editar subproyectos</guilabel>. Cada subproyecto tiene un nombre visible de usuario y una entrada de ubicación, esta última indicando una ruta relativa a un directorio en el árbol del proyecto. Esto significa que un subproyecto es un directorio del proyecto principal. Por ejemplo, el proyecto principal puede ser el sitio web de su empresa, y un subproyecto puede ser el sitio web de la intranet, ubicado en la carpeta <filename path="intranet">intranet</filename> del proyecto.</para>
<para>Un miembro puede tener más de un rol en el proyecto, como por ejemplo líder del equipo y líder de subproyecto.</para>
<para>El usuario debería seleccionarse a sí mismo de la lista de integrantes del equipo. Lo puede hacer seleccionando un integrante del equipo de la lista y presionando el botón <guilabel>Definir como usted mismo</guilabel>. El integrante seleccionado actualmente (su identidad) debe aparecer en negrita detrás del texto <guilabel>Usted es:</guilabel>.</para>
<para>Los apodos y la definición de su propia identidad es importante en lo que relativo a la mensajería y a las anotaciones. Puede dirigirse a <xref linkend="annotations"/> para saber más sobre las anotaciones.</para>
<para>Además de seguir la pista de su equipo, hay una ventaja más si se definen los miembros del equipo: puede configurar un evento para informar a los líderes del equipo que ha sucedido algo. Tiene más información sobre cómo hacer esto en <xref linkend="event-actions"/>.</para>
</sect1>
<sect1 id="event-actions">
<title>Acciones de eventos</title>
<para>Las acciones de eventos se producen cuando ocurre algún evento en el proyecto. Un ejemplo sería registrar cuándo se abre y se cierra el proyecto, de tal forma que pueda revisar posteriormente cuánto se ha trabajado en el proyecto, o enviar un correo cuando se guarde un archivo, o añadir el archivo al CVS con la ayuda de un guión cuando el archivo se añada al proyecto. Y la lista continúa.</para>
<para>En la página <guilabel>Configuración de eventos</guilabel> del cuadro de diálogo <menuchoice> <shortcut> <keycombo action="simul">&Shift;<keycap>F7</keycap></keycombo> </shortcut> <guimenu>Proyecto</guimenu> <guimenuitem>Propiedades del proyecto</guimenuitem> </menuchoice> puede crear, editar y eliminar acciones de eventos. </para>
<mediaobject>
<imageobject>
<imagedata format="PNG" fileref="event-editing.png"/>
</imageobject>
<caption><para>El cuadro de diálogo de edición de eventos.</para></caption>
</mediaobject>
<para>Las entradas del cuadro de diálogo son:</para>
<variablelist>
<varlistentry>
<term><guilabel>Evento</guilabel></term>
<listitem><para>la acción se produce cuando sucede el evento de la lista seleccionado. Los nombres de los eventos se explican por sí mismos.</para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Acción</guilabel></term>
<listitem><para>el tipo de acción que se produce. Las opciones posibles son </para>
<variablelist>
<varlistentry>
<term><guilabel>Acción que no sea de guión</guilabel></term>
<listitem><para>una acción que no sea un guión definido por el usuario . Puede ver en <xref linkend="user-actions"/> algunas acciones de usuario. </para>
<para><guilabel>Nombre de la acción</guilabel> indica qué acción se debe ejecutar cuando suceda el evento.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Enviar correo-e</guilabel></term>
<listitem><para>se envía un correo-e al destinatario seleccionado en la lista <guilabel>Destinatario</guilabel> cuando sucede la acción. El destinatario puede ser un equipo o un líder de subproyecto. En <xref linkend="team-members"/> puede ver cómo definir ese tipo de líderes. </para>
</listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Registrar evento</guilabel></term>
<listitem><para>el evento se registra en un archivo. Los argumentos para esta acción son: </para>
<variablelist>
<varlistentry>
<term><guilabel>Archivo de registro</guilabel></term>
<listitem><para>el nombre del archivo, con la ruta completa</para></listitem>
</varlistentry>
<varlistentry>
<term>Detalle</term>
<listitem><para>Cuánta información debe contener el registro</para></listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Comportamiento</guilabel></term>
<listitem><para>Si crear o sobreescribir el archivo de registro existente, o si añadir al que ya existe el evento nuevo que se va a registrar.</para></listitem>
</varlistentry>
</variablelist>
</listitem>
</varlistentry>
<varlistentry>
<term><guilabel>Acción de guión</guilabel></term>
<listitem><para>una acción de guión definida por el usuario. Tiene en <xref linkend="user-actions"/> más información sobre acciones de usuario. </para>
<para><guilabel>Nombre de la acción</guilabel> indica qué acción se debe ejecutar cuando suceda el evento.</para>
</listitem>
</varlistentry>
</variablelist>
</listitem>
</varlistentry>
</variablelist>
<para>Las demás entradas dependen del tipo de <guilabel>Acción</guilabel>, como se ha descrito. </para>
</sect1>
<sect1 id="annotations">
<title>Anotaciones</title>
<para>Las anotaciones son comentarios especiales en los documentos. Se diferencian de los comentarios normales en los siguientes aspectos: <itemizedlist>
<listitem><para>la información la recopila Quanta y se muestra en la vista de la herramienta <guilabel>Anotaciones</guilabel>. </para></listitem>
<listitem><para>la información se puede dirigir a un integrante del equipo </para></listitem>
</itemizedlist>
</para>
<para>Introducir anotaciones es sencillo. Puede usar la entrada <guilabel>Anotar</guilabel> del menú contextual del editor o introducir la clave <emphasis>@annotation</emphasis> en un área de comentarios, seguida del texto de la anotación. <example><title>Ejemplo de anotación en XML</title><screen>&lt;!-- @annotation Es posible que este código sea incorrecto. --&gt;</screen>
<screen>&lt;!-- @annotation
Anotación con
varias líneas.
--&gt;</screen></example>
<example><title>Ejemplo de anotación en PHP</title><screen>/* @annotation
Use los comentarios de PHP cuando la anotación esté en una zona de PHP.
*/</screen>
</example>
</para>
<para>Las anotaciones se pueden dirigir a miembros específicos de su equipo. En ese caso, la sintaxis es <emphasis>@annotation(apodo)</emphasis> o <emphasis>@annotation(rol)</emphasis>, donde <emphasis>apodo</emphasis> es el apodo del integrante del equipo, mientras que <emphasis>rol</emphasis> es un rol del proyecto, de entre los que se mencionan a continuación (Nota del traductor: junto a cada definición de rol, y entre paréntesis, está la traducción del rol): <itemizedlist><listitem><para> team leader (líder del equipo) </para></listitem> <listitem><para> task leader (líder de la tarea) </para></listitem> <listitem><para> subproject leader (líder del subproyecto) </para></listitem> </itemizedlist> Los líderes de tareas y de subproyectos deberían llevar a continuación el nombre de la correspondiente tarea o del correspondiente subproyecto, como se muestra en los ejemplos siguientes. </para>
<para>
<example><title>Hacer una nota para un integrante del equipo con el apodo <emphasis>eric</emphasis></title>
<screen>&lt;-- @annotation(eric) Eric, échale un vistazo a esto, por favor. Andras --&gt;</screen>
</example>
<example><title>Información para el líder del equipo</title>
<screen>&lt;-- @annotation(team leader) Esto es muy importante para el equipo --&gt;</screen>
</example>
<example><title>Información para el líder del subproyecto <emphasis>PHP</emphasis></title>
<screen>// @annotation(subproject leader:PHP) ¿Qué piensas de esto?</screen>
</example>
</para>
<para>Los apodos y los nombres de los roles no son sensibles a mayúsculas, pero los espacios junto a los paréntesis y los dos puntos <emphasis>:</emphasis> hacen que las anotaciones no sean válidas.</para>
<para>Tiene más información sobre integrantes de los equipos, roles y apodos en <xref linkend="team-members"/></para>
<para>Las anotaciones que se encuentran en el proyecto se pueden inspeccionar en la vista <guilabel>Anotaciones</guilabel>. Consta de tres solapas: <variablelist> <varlistentry> <term><guilabel>Archivo actual</guilabel></term> <listitem><para> La anotación que se encuentra en el archivo actual.</para></listitem> </varlistentry> <varlistentry> <term><guilabel>Para usted</guilabel></term> <listitem><para> Anotaciones del proyecto dirigidas a usted. Las entradas se agrupan por archivos. </para></listitem> </varlistentry> <varlistentry> <term><guilabel>Todos los archivos</guilabel></term> <listitem><para> Las anotaciones que se encuentran en todos los archivos del proyectos, agrupadas por archivos. </para></listitem> </varlistentry> </variablelist> Se hace una búsqueda de las anotaciones al cargar el proyecto y el archivo para hacer modificaciones externas. De esta forma, se pueden reconocer las anotaciones que se hagan desde fuera de &quantaplus;. Puesto que el proceso de búsqueda puede llevar algún tiempo, el cuadro de diálogo con la información sobre las nuevas anotaciones que se refieran a usted puede aparecer algunos segundos después de cargar el proyecto. </para>
</sect1>
&debugging-quanta; </chapter>