<?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" type="topic" id="build_tools" xml:lang="es">

<info>
  <link type="guide" xref="index"/>

    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
      <mal:name>Daniel Mustieles</mal:name>
      <mal:email>daniel.mustieles@gmail.com</mal:email>
      <mal:years>2011-2015</mal:years>
    </mal:credit>
  </info>

<title>Herramientas de construcción</title>

<synopsis>
  <p>El propósito de las herramientas de construcción es generar un documento en formato PDF, DVI o PS.</p>
</synopsis>

<links type="section"/>

<section id="overview">
  <title>Introducción</title>

  <p>Se pueden usar varias herramientas para compilar documentos. Hay algunos comandos de bajo nivel y una herramienta de alto nivel: Latexmk.</p>

  <table rules="rowgroups">
    <title>Comandos de bajo nivel</title>
    <thead>
      <tr>
        <td><p>Etiqueta</p></td>
        <td><p>Comando</p></td>
      </tr>
    </thead>
    <tbody its:translate="no">
      <tr>
        <td><p>LaTeX → DVI</p></td>
        <td><p><cmd>latex</cmd></p></td>
      </tr>
      <tr>
        <td><p>LaTeX → PDF</p></td>
        <td><p><cmd>pdflatex</cmd></p></td>
      </tr>
    </tbody>
    <tbody its:translate="no">
      <tr>
        <td><p>DVI → PDF</p></td>
        <td><p><cmd>dvipdf</cmd></p></td>
      </tr>
      <tr>
        <td><p>DVI → PS</p></td>
        <td><p><cmd>dvips</cmd></p></td>
      </tr>
      <tr>
        <td><p>PS → PDF</p></td>
        <td><p><cmd>ps2pdf</cmd></p></td>
      </tr>
    </tbody>
    <tbody>
      <tr>
        <td><p>Bibliografía</p></td>
        <td its:translate="no"><p><cmd>bibtex</cmd></p></td>
      </tr>
      <tr>
        <td><p>Índice</p></td>
        <td its:translate="no"><p><cmd>makeindex</cmd></p></td>
      </tr>
    </tbody>
  </table>

  <p>Compilar un documento LaTeX puede implicar tener que ejecutar varios comandos de bajo nivel, en determinado orden y cierto número de veces. Aquí hay un ejemplo:</p>
  <screen its:translate="no">
$ latex document.tex
$ bibtex document.aux
$ latex document.tex
$ dvips -t a4 document.dvi
$ ps2pdf document.ps</screen>

  <p>Usar una herramienta de alto nivel como Latexmk simplifica mucho este proceso, ya que sólo se requiere un comando. En realidad, Latexmk puede detectar cuántas veces se deben usar los comandos <cmd>latex</cmd> o <cmd>pdflatex</cmd>, y si se necesita <cmd>bibtex</cmd> o <cmd>makeindex</cmd>. De manera predeterminada, LaTeXila usa Latexmk.</p>
</section>

<section id="execute">
  <title>Ejecutar una herramienta de construcción</title>

  <p>Hay varias maneras de ejecutar una herramienta de construcción:</p>
  <list>
    <item><p>Abrir el menú <gui style="menu">Construir</gui>.</p></item>
    <item><p>Usar los botones en la barra de herramientas principal.</p></item>
    <item><p>Use el atajo de teclado: <key>F2</key> → <key>F11</key>.</p></item>
  </list>

  <p>La herramienta de construcción se ejecute sobre el archivo abierto actualmente. Si el archivo pertenece a un <link xref="projects">proyecto</link>, se ejecuta sobre el archivo principal del proyecto.</p>

  <note style="important">
    <title>Herramientas de construcción ocultas</title>
    <p>De manera predeterminada, hay muchas herramientas de construcción ocultas. Para ver la lista completa de herramientas de construcción, activarlas o configurarlas, consulte la <link xref="#general_configuration"/>.</p>
  </note>
</section>

<section id="general_configuration">
  <title>Configuración general</title>

  <p>Para configurar las herramientas de construcción, vaya a: <guiseq> <gui style="menu">Construir</gui> <gui style="menu">Gestionar herramientas de construcción</gui> </guiseq></p>

  <p>Verá una lista de todas las herramientas de construcción, y una segunda lista con sus herramientas personales de construcción. Hay casillas para mostrarlas u ocultarlas. Cuando una herramienta de construcción está oculta, no es posible ejecutarla. Puede realizar algunas acciones, como mover una herramienta, abrir sus propiedades, eliminarla, copiarla, crear una nueva, etc.</p>

  <note style="tip">
    <p>Una pulsación doble sobre una herramienta de construcción mostrará sus propiedades.</p>
  </note>
</section>

<section id="jobs">
  <title>Tareas de una herramienta de construcción</title>

  <p>En las propiedades de una herramienta de construcción, la parte complicada es configurar las tareas. Una herramienta de construcción puede ejecutar varias tareas. Cada tarea contiene dos fragmentos de información:</p>
  <list>
    <item><p>El comando, que puede usar marcadores de posición.</p></item>
    <item><p>El post-procesador (consulte la <link xref="#post-processors"/>).</p></item>
  </list>

  <p>Cuando ocurre un error durante la ejecución de una tarea, se cancela la ejecución de la herramienta de construcción, por lo que los siguientes trabajos no se lanzan.</p>
</section>

<section id="post-processors">
  <title>Post-procesadores</title>
  <p>El propósito de un post-procesador es filtrar la información de salida del comando y extraer la información útil. Hay cuatro post-procesadores disponibles:</p>

  <terms>
    <item>
      <title its:translate="no">no-output</title>
      <p>La salida simplemente no se muestra.</p>
    </item>
    <item>
      <title its:translate="no">all-output</title>
      <p>Se muestra toda la salida, sin filtrar.</p>
    </item>
    <item>
      <title its:translate="no">latex</title>
      <p>Filtrar la salida de los comandos <cmd>latex</cmd> o <cmd>pdflatex</cmd>. Puede haber tres tipos de errores: errores críticos, advertencias o «bad boxes». También hay alguna información útil: el tamaño del documento, el número de páginas y el número de errores.</p>
    </item>
    <item>
      <title its:translate="no">latexmk</title>
      <p>Usado por el comando <cmd>latexmk</cmd>. Internamente, este post-procesador usa otros: <em>latex</em> y <em>all-output</em>.</p>
    </item>
  </terms>
</section>
</page>
