<?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>Byggverktyg</title>

<synopsis>
  <p>Syftet med byggverktygen är att generera ett dokument i PDF-, DVI- eller PS-format.</p>
</synopsis>

<links type="section"/>

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

  <p>Flera olika verktyg kan användas för dokumentkompilering. Det finns några lågnivåkommandon och ett högnivåverktyg: Latexmk.</p>

  <table rules="rowgroups">
    <title>Lågnivåkommandon</title>
    <thead>
      <tr>
        <td><p>Etikett</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>Index</p></td>
        <td its:translate="no"><p><cmd>makeindex</cmd></p></td>
      </tr>
    </tbody>
  </table>

  <p>Att kompilera ett LaTeX-dokument kan innebära körning av flera lågnivåkommandon i speciell ordning och ett speciellt antal gånger. Här är ett exempel:</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 ett byggverktyg</title>

  <p>Det finns flera sätta att köra ett byggverktyg på:</p>
  <list>
    <item><p>Open the <gui style="menu">Build</gui> menu.</p></item>
    <item><p>Använd knapparna i huvudverktygsfältet.</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>Dolda byggverktyg</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>Allmän 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 kommer att se en lista över alla standardbyggverktyg och en till lista med dina personliga byggverktyg. Det finns kryssruteknappar för att aktivera och inaktivera dem. När ett byggverktyg är inaktiverat är det inte möjligt att köra det. Du kan utföra en del åtgärder som att flytta ett verktyg upp eller ned, öppna dess egenskaper, ta bort eller kopiera det, skapa ett nytt, o.s.v.</p>

  <note style="tip">
    <p>Dubbelklick på ett byggverktyg kommer att öppna dess egenskaper.</p>
  </note>
</section>

<section id="jobs">
  <title>Jobben för ett byggverktyg</title>

  <p>I egenskaperna för ett byggverktyg är den kluriga delen att konfigurera jobben. Ett byggverktyg kan exekvera flera jobb. Varje jobb innehåller två delar information:</p>
  <list>
    <item><p>Kommandot som kan använda platshållare.</p></item>
    <item><p>The post processor (see <link xref="#post-processors"/>).</p></item>
  </list>

  <p>När ett fel uppstår då ett jobb exekveras, kommer exekveringen att avbrytas så att efterföljande jobb inte startas.</p>
</section>

<section id="post-processors">
  <title>Postprocessorer</title>
  <p>Syftet med en postprocessor är att filtrera kommandoutdata och extrahera den användbara informationen. Fyra postprocessorer är tillgängliga:</p>

  <terms>
    <item>
      <title its:translate="no">no-output</title>
      <p>Utmatningen visas inte.</p>
    </item>
    <item>
      <title its:translate="no">all-output</title>
      <p>All utmatning visas, utan 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>
