> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/latex/nl/opdrachten/01-commands.md).

# Opdrachten

## Inleiding

Dit artikel biedt een eerste introductie tot *commando's*, die een essentieel onderdeel zijn van de zetmogelijkheden van LaTeX. De meeste LaTeX-opdrachten zijn eenvoudige woorden voorafgegaan door een speciaal teken, meestal `\`, het backslash-teken. Laten we naar enkele voorbeelden kijken:

```latex
\documentclass{article}
\begin{document}
In een document zijn er verschillende soorten \textbf{opdrachten}
die bepalen hoe de elementen worden weergegeven. Deze
opdrachten kunnen speciale elementen invoegen: $\alpha \beta \Gamma$
\end{document}
```

[Open dit voorbeeld in Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Basic+commands+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0AIn+a+document+there+are+different+types+of+%5Ctextbf%7Bcommands%7D+%0Athat+define+the+way+the+elements+are+displayed.+This+%0Acommands+may+insert+special+elements%3A+%24%5Calpha+%5Cbeta+%5CGamma%24%0A%5Cend%7Bdocument%7D)

Dit voorbeeld levert de volgende uitvoer op:

![Basisopmaak van tekst met LaTeX](/files/ef6211b1ae677d90fb2481414fc9de9795bc5ee7)

In het vorige voorbeeld zijn er verschillende soorten opdrachten; bijvoorbeeld, `\textbf` zal de tekst die als parameter aan de opdracht wordt doorgegeven vet maken. In wiskundige modus zijn er speciale opdrachten, zoals `\alpha`, `\beta` en `\Gamma` om Griekse tekens weer te geven.

## Opdrachten

Hier is een voorbeeld van LaTeX-code met opdrachten om een opsomming met bullets te maken:

```latex
\documentclass{article}
\begin{document}
Een voorbeeld van een lijst:
\begin{itemize}
  \item[\S] Eerste item
  \item Tweede item
\end{itemize}
\end{document}
```

[Open dit voorbeeld in Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Basic+itemized+list+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0AA+list+example%3A%0A%5Cbegin%7Bitemize%7D%0A++%5Citem%5B%5CS%5D+First+item%0A++%5Citem+Second+item%0A%5Cend%7Bitemize%7D%0A%5Cend%7Bdocument%7D)

Dit voorbeeld levert de volgende uitvoer op:

![Een basislijst opgemaakt in LaTeX](/files/0e4a658080ab485ba96cf62b8983aef090c09e90)

Het commando `\begin{itemize}` start een `itemize` *omgeving*—zie het [artikel over omgevingen](/latex/nl/opdrachten/02-environments.md) voor meer details. Onder de omgevingsverklaring staat de opdracht `\item` die LaTeX vertelt om een nieuwe lijstvermelding te starten: om deze op te maken, voeg een speciaal teken toe (een klein zwart puntje dat bullet heet) en trek de vermelding in.

Sommige opdrachten vereisen één of meer *parameters*; bijvoorbeeld, de `\textbf` opdracht (hierboven gebruikt) die één enkele parameter neemt—de tekst die in vet moet worden weergegeven, geschreven tussen accolades zoals dit: `\textbf{maak dit vet}`.

Er zijn ook *optioneel* parameters die aan een opdracht kunnen worden meegegeven om het gedrag te veranderen; die optionele parameters moeten tussen vierkante haken worden geplaatst: `[...]`. In het voorbeeld hierboven is de opdracht `\item[\S]` doet hetzelfde als `\item`, behalve dat binnen de haakjes `\S`staat, wat een ander teken vervangt om het zwarte punt vóór de tekst van de vermelding te vervangen.

## Een nieuwe opdracht definiëren

Hoewel LaTeX wordt geleverd met een enorm aantal opdrachten, wordt het vaak noodzakelijk om je eigen speciale opdrachten te definiëren om je werk te vereenvoudigen, repetitieve taken te verminderen of complexe opmaak uit te voeren.

### Eenvoudige opdrachten

Nieuwe opdrachten worden gedefinieerd door `\newcommand`; laten we dus een eenvoudig voorbeeld bekijken:

```latex
\documentclass{article}
\usepackage{amssymb}
\begin{document}
\newcommand{\R}{\mathbb{R}}
De verzameling van reële getallen wordt meestal weergegeven
met een vetgedrukte hoofdletter R: \( \R \).
\end{document}
```

[Open dit voorbeeld in Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Creating+a+simple+command\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bamssymb%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cnewcommand%7B%5CR%7D%7B%5Cmathbb%7BR%7D%7D%0AThe+set+of+real+numbers+are+usually+represented+%0Aby+a+blackboard+bold+capital+R%3A+%5C%28+%5CR+%5C%29.%0A%5Cend%7Bdocument%7D)

Dit voorbeeld levert de volgende uitvoer op:

![Uitvoer van een nieuwe opdracht](/files/95beddbabb561f728b096fa28dd902a06a53e925)

De verklaring `\newcommand{\R}{\mathbb{R}}` heeft twee parameters die een nieuwe opdracht definiëren, waarbij:

* `\R`: is de naam van de nieuwe opdracht.
* `\mathbb{R}`: is wat de nieuwe opdracht doet. In dit geval wordt de letter R geschreven in blackboard bold-opmaak. Het gebruik van de `\mathbb` opdracht vereist het `amssymb` pakket, dat hierboven aan het voorbeeld is toegevoegd (in de preambule).

Nadat de opdracht is gedefinieerd, kunnen we deze in de tekst gebruiken, zoals hierboven gedemonstreerd. In dit voorbeeld wordt de nieuwe opdracht direct vóór de alinea waarin deze wordt gebruikt gedefinieerd; het verspreiden van zulke definities door je document heen wordt echter niet beschouwd als best practice. Over het algemeen worden definities voor nieuwe opdrachten samen verzameld in de documentpreambule of, voor grotere verzamelingen, in een apart bestand geplaatst dat kan worden [geïmporteerd in je hoofddocument](/latex/nl/documentstructuur/07-management-in-a-large-project.md#inputting-and-including-files).

### Opdrachten met parameters

Het is ook mogelijk nieuwe opdrachten te maken die enkele parameters accepteren; bijvoorbeeld:

```latex
\documentclass{article}
\usepackage{amssymb}
\begin{document}
\newcommand{\bb}[1]{\mathbb{#1}}
Andere getalsystemen hebben vergelijkbare notaties.
De complexe getallen \( \bb{C} \), de rationale
getallen \( \bb{Q} \) en de gehele getallen \( \bb{Z} \).
\end{document}
```

[Open dit voorbeeld in Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Basic+command+with+1+parameter\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bamssymb%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cnewcommand%7B%5Cbb%7D%5B1%5D%7B%5Cmathbb%7B%231%7D%7D%0AOther+numerical+systems+have+similar+notations.+%0AThe+complex+numbers+%5C%28+%5Cbb%7BC%7D+%5C%29%2C+the+rational+%0Anumbers+%5C%28+%5Cbb%7BQ%7D+%5C%29+and+the+integer+numbers+%5C%28+%5Cbb%7BZ%7D+%5C%29.%0A%5Cend%7Bdocument%7D)

Dit voorbeeld levert de volgende uitvoer op:

![Uitvoer van een LaTeX-opdracht met een parameter](/files/dcd5ca3a354547c7ad7d650c9893ce0ac658a694)

De regel `\newcommand{\bb}[1]{\mathbb{#1}}` definieert een nieuwe opdracht die één parameter neemt, waarbij:

* `\bb` is de naam van de nieuwe opdracht.
* `[1]` is het aantal parameters dat de nieuwe opdracht zal nemen.
* `\mathbb{#1}` is wat de opdracht daadwerkelijk doet—de definitie ervan.

In dit geval zal de parameter, aangeduid als `#1`, worden geschreven met blackboard bold-tekens. Als een opdracht meer dan één parameter nodig heeft, kun je naar elke parameter verwijzen met `#1`, `#2` enzovoort. Er worden maximaal 9 parameters ondersteund.

### Opdrachten met optionele parameters

Door gebruikers gedefinieerde opdrachten kunnen nog flexibeler worden gemaakt dan de tot nu toe getoonde voorbeelden: je kunt opdrachten definiëren die *optioneel* parameters aannemen:

```latex
\documentclass{article}
\begin{document}

Wanneer we veel uitdrukkingen met exponenten schrijven, kunnen we onze taak vereenvoudigen en tijd besparen door een geschikte opdracht te definiëren:

\newcommand{\plusbinomial}[3][2]{(#2 + #3)^#1}

We kunnen het zo gebruiken: \[ \plusbinomial{x}{y} \]

En zelfs de exponent kan worden gewijzigd:

\[ \plusbinomial[4]{a}{b} \]
\end{document}
```

[Open dit voorbeeld in Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Example+command+with+optional+parameters\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0A%0AWhen+writing+many+expressions+with+exponents+we+can+simplify+our+task%2C+and+save+time%2C+by+defining+a+suitable+command%3A%0A%0A%5Cnewcommand%7B%5Cplusbinomial%7D%5B3%5D%5B2%5D%7B%28%232+%2B+%233%29%5E%231%7D%0A%0AWe+can+use+it+like+this%3A+%5C%5B+%5Cplusbinomial%7Bx%7D%7By%7D+%5C%5D%0A%0AAnd+even+the+exponent+can+be+changed%3A%0A%0A%5C%5B+%5Cplusbinomial%5B4%5D%7Ba%7D%7Bb%7D+%5C%5D%0A%5Cend%7Bdocument%7D)

Dit voorbeeld levert de volgende uitvoer op:

![Uitvoer van een opdracht met optionele parameters](/files/020fcfb4ce586c3673781d4036bed7ce06c192f9)

Laten we de syntaxis van de regel analyseren `\newcommand{\plusbinomial}[3][2]{(#2 + #3)^#1}`:

* `\plusbinomial` is de naam van de nieuwe opdracht.
* `[3]` is het aantal parameters dat de opdracht zal nemen, in dit geval 3.
* `[2]` is de standaardwaarde voor de eerste parameter. Dit maakt de eerste parameter optioneel; als deze niet wordt doorgegeven, wordt deze standaardwaarde gebruikt.
* `(#2 + #3)^#1` is wat de opdracht doet. In dit geval plaatst het de tweede en derde parameter in een "binoomopmaak" tot de macht die door de eerste parameter wordt weergegeven.

## Bestaande opdrachten overschrijven

Als je probeert een nieuwe opdracht te definiëren met dezelfde naam als een *bestaande* LaTeX-opdracht, dan zal de compilatie mislukken met een foutmelding. Dit wordt gedemonstreerd in het volgende voorbeeld dat probeert de (bestaande) `\textbf` commando:

```latex
\documentclass{article}
\newcommand{\textbf}[1]{#1}% Dit zal niet werken
\begin{document}

\section{Dit zal mislukken}
\end{document}
```

[Open dit (**foutveroorzakend**) voorbeeld in Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Duplicate+command+name\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cnewcommand%7B%5Ctextbf%7D%5B1%5D%7B%231%7D%25+This+will+not+work%0A%5Cbegin%7Bdocument%7D%0A%0A%5Csection%7BThis+will+fail%7D%0A%5Cend%7Bdocument%7D)

Het compileren van dit voorbeeld levert de volgende uitvoer op:

![Fout gegenereerd door dubbele LaTeX-opdrachtdefinitie](/files/08ea469cdfcfee7cd914b1959fe3c61986897022)

Zoals in de schermafbeelding te zien is, is onze poging om `\textbf` te definiëren mislukt: LaTeX genereerde de foutmelding **LaTeX-fout: opdracht \textbf is al gedefinieerd**.

Als je echt een bestaande opdracht wilt overschrijven, kan dit worden gedaan door `\renewcommand`, die dezelfde syntaxis gebruikt als `\newcommand`:

```latex
\documentclass{article}
\usepackage{amssymb}
\begin{document}

\renewcommand{\S}{\mathbb{S}}

De bol van Riemann (de complexe getallen plus $\infty$) wordt
soms weergegeven door \( \S \).
\end{document}
```

[Open dit voorbeeld in Overleaf.](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Redefine+existing+command\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bamssymb%7D%0A%5Cbegin%7Bdocument%7D%0A%0A%5Crenewcommand%7B%5CS%7D%7B%5Cmathbb%7BS%7D%7D%0A%0AThe+Riemann+sphere+%28the+complex+numbers+plus+%24%5Cinfty%24%29+is+%0Asometimes+represented+by+%5C%28+%5CS+%5C%29.%0A%5Cend%7Bdocument%7D)

Dit voorbeeld levert de volgende uitvoer op:

![Uitvoer van een opnieuw gedefinieerde LaTeX-opdracht](/files/068e65d1070fa3a4414756d8d07b040076a729ca)

In dit voorbeeld wordt de opdracht `\S` (zie het voorbeeld in de [commando's](#commands) sectie) overschreven om een blackboard bold S af te drukken.

## Verder lezen

Zie voor meer informatie:

* [Omgevingen](/latex/nl/opdrachten/02-environments.md)
* [Begrijpen van pakketten en klassebestanden](/latex/nl/class-bestanden/01-understanding-packages-and-class-files.md)
* [Je eigen pakket schrijven](/latex/nl/class-bestanden/03-writing-your-own-package.md)
* [Je eigen class schrijven](/latex/nl/class-bestanden/04-writing-your-own-class.md)
* [Lengtes in LaTeX](/latex/nl/opmaak/01-lengths-in-latex.md)
* [Kleuren gebruiken in LaTeX](/latex/nl/opmaak/13-using-colors-in-latex.md)
* [Paginagrootte en marges](/latex/nl/opmaak/07-page-size-and-margins.md)
* [Lijst van pakketten en klassebestanden](/latex/nl/class-bestanden/02-overleaf-and-tex-live.md)
* [De niet zo korte introductie tot LaTeX2ε](http://www.ctan.org/tex-archive/info/lshort/)
* [LaTeX/Creating\_Packages op WikiBooks](http://en.wikibooks.org/wiki/LaTeX/Creating_Packages)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/latex/nl/opdrachten/01-commands.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
