<?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">

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

<title>Byggeværktøjer</title>

<synopsis>
  <p>Formålet med byggeværktøjerne er at generere et dokument i formaterne PDF, DVI eller PS.</p>
</synopsis>

<links type="section"/>

<section id="overview">
  <title>Introduktion</title>

  <p>Der kan bruges adskillige forskellige værktøjer til en dokumentkompilering. Der er nogen lavniveaukommandoer og et højniveauværktøj: Latexmk.</p>

  <table rules="rowgroups">
    <title>Lavniveaukommandoer</title>
    <thead>
      <tr>
        <td><p>Etiket</p></td>
        <td><p>Kommando</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>Bibliografi</p></td>
        <td its:translate="no"><p><cmd>bibtex</cmd></p></td>
      </tr>
      <tr>
        <td><p>Indeks</p></td>
        <td its:translate="no"><p><cmd>makeindex</cmd></p></td>
      </tr>
    </tbody>
  </table>

  <p>Kompilering af et LaTeX-dokument kan indebære kørsel af adskillige lavniveaukommandoer i en bestemt rækkefølge og et bestemt antal gange. Her er et eksempel:</p>
  <screen its:translate="no">
$ latex document.tex
$ bibtex document.aux
$ latex document.tex
$ dvips -t a4 document.dvi
$ ps2pdf document.ps</screen>

  <p>Using a higher-level tool such as Latexmk simplify a lot all this process,
  since only one command is required. Indeed, Latexmk can detect how many times the
  <cmd>latex</cmd> or <cmd>pdflatex</cmd> command must be called, and whether
  <cmd>bibtex</cmd> or <cmd>makeindex</cmd> is required. By default,
  <app>Enter TeX</app> uses Latexmk.</p>
</section>

<section id="execute">
  <title>Kør et byggeværktøj</title>

  <p>Der er flere måder hvorpå et byggeværktøj kan køres:</p>
  <list>
    <item><p>Open the <gui style="menu">Build</gui> menu.</p></item>
    <item><p>Brug knapperne i hovedværktøjslinjen.</p></item>
    <item><p>Use the shortcut: <key>F2</key> → <key>F11</key>.</p></item>
  </list>

  <p>The build tool is executed on the currently opened file. If the file belongs to a
  <link xref="projects">project</link>, it is executed on the project's main file.</p>

  <note style="important">
    <title>Skjulte byggeværktøjer</title>
    <p>By default, a lot of build tools are hidden, so they can't be executed. To view
    the full list of build tools, activate or configure them, read the
    <link xref="#general_configuration"/> section.</p>
  </note>
</section>

<section id="general_configuration">
  <title>Generel konfiguration</title>

  <p>
    To configure the build tools, go to:
    <guiseq>
      <gui style="menu">Build</gui>
      <gui style="menu">Manage Build Tools</gui>
    </guiseq>
  </p>

  <p>Du vil se listen over alle standardbyggeværktøjerne og en anden liste med dine personlige byggeværktøjer. Der er afkrydsningsknapper til at aktivere eller deaktivere dem. Når et byggeværktøj er deaktiveret, så er det ikke muligt at køre det. Du kan udføre nogle handlinger såsom at flytte et værktøj op eller ned, åbne dets egenskaber, slette eller kopiere det, oprette et nyt osv.</p>

  <note style="tip">
    <p>Når der dobbeltklikkes på et byggeværktøj åbnes dets egenskaber.</p>
  </note>
</section>

<section id="jobs">
  <title>Byggeværktøjets job</title>

  <p>I et byggeværktøjs egenskaber er den vanskelige del at konfigurere jobbene. Et byggeværktøj kan køre flere job. Hvert job indeholder to stykker information:</p>
  <list>
    <item><p>Kommandoen, som kan bruge pladsholdere.</p></item>
    <item><p>The post processor (see <link xref="#post-processors"/>).</p></item>
  </list>

  <p>Når der opstår en fejl under kørslen af et job, så afbrydes kørslen af byggeværktøjet, så det næste job ikke startes.</p>
</section>

<section id="post-processors">
  <title>Efterbehandlere</title>
  <p>Formålet med en efterbehandler er at filtrere kommandooutputtet og udtrække de nyttige informationer. Der er 4 tilgængelige efterbehandlere:</p>

  <terms>
    <item>
      <title its:translate="no">no-output</title>
      <p>Outputtet vises simpelhen ikke.</p>
    </item>
    <item>
      <title its:translate="no">all-output</title>
      <p>Al outputtet vises uden filter.</p>
    </item>
    <item>
      <title its:translate="no">latex</title>
      <p>Filter the output of the <cmd>latex</cmd> or <cmd>pdflatex</cmd> commands.
      There can be three types of errors: critical errors, warnings, or bad boxes. There
      are also some other useful information: the size of the document, the number of
      pages, and the number of errors.</p>
    </item>
    <item>
      <title its:translate="no">latexmk</title>
      <p>Used for the <cmd>latexmk</cmd> command. Internally, this post processor uses
      other ones: <em>latex</em> and <em>all-output</em>.</p>
    </item>
  </terms>
</section>
</page>
