> 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/da/latex-fejl/25-missing-inserted.md).

# Missing $ inserted

## Sådan løser du denne fejl

Denne fejl kan udløses på forskellige måder, og især for dem, der er nye i LaTeX, er det ikke altid *med det samme* åbenlyst, hvorfor den opstod, eller, endnu vigtigere, hvordan man løser den. Vi starter med et overblik over de *generelle* betingelser, der udløser denne fejl, og opregner derefter nogle af de mere almindelige årsager og hvordan man retter dem. De [sidste dele af denne artikel](#background-to-the-missing-inserted-error) giver mere dybdegående materiale til læsere, der ønsker at udvide deres forståelse.

**Bemærk**: I denne artikel bruger vi udtrykkene “TeX”, “LaTeX” og “TeX-motor”, men hvis du er usikker på deres forskellige betydninger, kan du finde ud af det i Overleaf-artiklen [Hvad er der i et navn: En guide til de mange varianter af TeX](/latex/da/dybtgaende-artikler/55-what-s-in-a-name-a-guide-to-the-many-flavours-of-tex.md).

### De vigtigste årsager til fejlen Missing $ inserted

Der er tre hovedårsager til, at (La)TeX genererer denne fejl:

1. Du har lavet en eksplicit fejl i din matematik-markering, som f.eks. at skrive `$y=f(x)$$`—vi ser på andre eksempler senere i denne artikel.
2. TeX har registreret et tegn eller en kommando, der er beregnet til at blive brugt **kun** når TeX sætter matematik, men det tegn eller den kommando er blevet brugt, når TeX var **ikke** i færd med at sætte matematik.
   * **Teknisk talt**: TeX registrerede et tegn eller en kommando, der er beregnet til at fungere *inde i* [*matematiktilstand*](#math-mode) men du har forsøgt at bruge det *uden for* [*matematiktilstand*](#math-mode). For at præcisere problemet med “tegn”, der er beregnet til at fungere i [matematiktilstand](#math-mode), mener vi egentlig at bruge tegn, der er tildelt bestemte [kategori-koder](/latex/da/flere-emner/43-table-of-tex-category-codes.md) og som er beregnet til at fungere i matematiske materialer.
3. TeX har registreret en kommando, der kun er beregnet til at blive brugt, når TeX er **ikke** i færd med at sætte matematik, men den kommando blev registreret (brugt), mens TeX **var** i færd med at sætte matematisk materiale.
   * **Teknisk talt**: TeX registrerede en kommando, der er beregnet til at fungere *uden for* [*matematiktilstand*](#math-mode) men du har forsøgt at bruge det *inde i* [*matematiktilstand*](#math-mode).

### Eksempler på fejl og deres løsninger

Følgende eksempler demonstrerer nogle måder, hvorpå `Missing $ inserted` kan udløses, sammen med løsninger til at afhjælpe fejlen.

#### Symbolkommandoer skal bruges i matematiktilstand

Mange matematiske symboler i LaTeX tilgås ved hjælp af kommandoer, som kun må bruges, når TeX sætter matematik; dvs. på et tidspunkt, hvor TeX er i matematiktilstand.

Eksempler på almindeligt brugte symbolkommandoer omfatter dem for græske bogstaver: `\alpha` $$(\alpha)$$, `\beta` $$(\beta)$$, `\gamma` ($$\gamma)$$, `\delta` $$(\delta)$$, `\Delta` $$(\Delta)$$ og så videre. Mange andre LaTeX-kommandoer, såsom dem til modifikatorer: `\vec{x}` $$(\vec{x})$$, `\tilde{x}` $$(\tilde{x})$$, `\hat{x}` $$(\hat{x})$$ osv. er også beregnet til brug i matematiktilstand.

Brug af modifikatorer, symbolkommandoer — og mange andre matematikrelaterede kommandoer — uden for sætning af matematisk indhold vil generere en `Missing $ inserted` fejl og tvinge kompileren til at gå i matematiktilstand.

Følgende eksempel viser, hvad der sker, hvis du prøver at bruge kommandoen `\alpha` $$(\alpha)$$ uden for matematik (tilstand):

```latex
At skrive \verb|\alpha| uden for matematiktilstand vil generere en fejl: \alpha og derfor vil denne tekst ikke blive sat korrekt...
```

[Åbn dette ***fejl-fremkaldende*** eksempel i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Incorrect+use+of+LaTeX+symbols\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0AWriting+%5Cverb%7C%5Calpha%7C+outside+math+mode+will+generate+an+error%3A+%5Calpha+and+so+this+text+will+not+be+typeset+correctly...%0A%5Cend%7Bdocument%7D)

Følgende billede viser en del af outputtet produceret af LaTeX-koden ovenfor og demonstrerer den fejl, der skyldes brugen af `\alpha` uden for matematiktilstand:

![\alpha uden for matematiktilstand](/files/b9e54d27adff48189518f132c0f412b74dfdd49f)

**Sådan rettes fejl forårsaget af LaTeX-symbolkommandoer**

For at bruge modifikatorer eller græske matematiksymboler i sætninger skal de altid omsluttes af enkelte dollartegn `$...$`, eller LaTeX’s `\(...\)` syntaks, så TeX kan behandle dem i *inlinematematiktilstand*, som vist nedenfor.

```latex
Når man skriver det græske bogstav alpha i en sætning, skal det skrives som \verb|$\alpha$| for at generere $\alpha$, eller som \verb|\(\alpha\)|, hvilket også genererer \(\alpha\).

Når man skriver en vektor x i en sætning, skal den skrives som \verb|$\vec{x}$| for at fremstille $\vec{x}$ eller som \verb|\(\vec{x}\)|, hvilket også giver \(\vec{x}\).
```

[Åbn dette eksempel i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Using+LaTeX+symbols\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0AWhen+writing+the+Greek+letter+alpha+in+a+sentence%2C+it+must+be+written+as+%5Cverb%7C%24%5Calpha%24%7C+to+generate+%24%5Calpha%24%2C++or+as+%5Cverb%7C%5C%28%5Calpha%5C%29%7C+which+also+generates+%5C%28%5Calpha%5C%29.%0A+%0AWhen+writing+a+vector+x+in+a+sentence%2C+it+must+be+written+as+%5Cverb%7C%24%5Cvec%7Bx%7D%24%7C+to+produce+%24%5Cvec%7Bx%7D%24+or+as+%5Cverb%7C%5C%28%5Cvec%7Bx%7D%5C%29%7C+which+also+yields+%5C%28%5Cvec%7Bx%7D%5C%29.%0A%5Cend%7Bdocument%7D)

**En liste over LaTeX-symboler**

Overleaf-artiklen [Liste over græske bogstaver og matematiske symboler](/latex/da/matematik/11-list-of-greek-letters-and-math-symbols.md) indeholder en liste over symboler, som kun findes i matematiktilstand, sammen med links til yderligere nyttige ressourcer.

#### Brug af tegn, der kun virker i matematiktilstand, uden for matematiktilstand

Traditionelt reserverer TeX/LaTeX visse almindelige tegn til brug inden for matematiktilstand:

* `^`: reserveret til at oprette eksponenter
* `_`: reserveret til at oprette indekser
* `$`: reserveret til at starte/afslutte matematiktilstand

Brug af dem direkte uden for matematiktilstand udløser fejl.

* For at skrive `$` uden for matematiktilstand brug `\$`
* For at skrive `_` uden for matematiktilstand brug `\_`
* Flere måder at skrive `^` uden for matematiktilstand. En liste findes på [tex.stackexchange](https://tex.stackexchange.com/a/77647)

**Brug af understregninger uden for matematiktilstand**

En almindelig årsag til `Missing $ inserted` fejlen er brugen af understregninger (`_`), et tegn fra matematiktilstand, uden for matematiktilstand — såsom understregninger i filnavne: et eksempel på dette ses nedenfor.

```latex
Brug af et matematiktegn, såsom en understregning, i et filnavn: math_example.tex.
```

[Åbn dette ***fejlskabende*** kode på Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Math+code+error\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0AUsing+a+math+character%2C+such+as+an+underscore%2C+in+a+file+name%3A+math_example.tex.%0A%5Cend%7Bdocument%7D)

Fordi understregningstegnet er tildelt [kategori-kode 8](/latex/da/flere-emner/43-table-of-tex-category-codes.md) er det reserveret til at oprette indekser, når TeX-motoren er i matematiktilstand. Derfor, når (La)TeX registrerer `_` i filnavnet `math_example.tex` gør det det uden for matematiktilstand, hvilket udløser en fejl og resulterer i fejlagtig sats af den efterfølgende tekst:

$$\text{Using a math character, such as an underscore, in a file name: math}\_example.tex.$$

Den `_` tegn (teknisk set dets kategori-kode på 8) udløser en fejl og får TeX til at gå i matematiktilstand: bogstavet `e` umiddelbart efter `_` behandles som et tegn, der skal sættes som et indeks. Behandlingen fortsætter derefter i matematiktilstand, hvilket resulterer i den kursiverede tekst, og desuden er der ingen måde her for TeX at forlade matematiktilstand på en elegant måde, hvilket vil udløse yderligere fejl.

For at undgå denne særlige fejl skal du altid bruge `_` i matematiktilstand — dvs. inde i `$..$`, `$$...$$` eller, helst, inde i LaTeX’s notation af `\(...\)` og `\[...\]`.

Uden for matematiktilstand skal du skrive `\_` for at bruge eller sætte en understregning, som vist i den rettede version af eksemplet:

```latex
For at bruge understregningstegnet fra matematiktilstand i et filnavn, skal du skrive det sådan her: math\_example.tex.
```

[Åbn dette ***rettede version*** på Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Fixed+math+code+error\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0ATo+use+the+math-mode+underscore+character+in+a+file+name%2C+write+it+like+this%3A+math%5C_example.tex.%0A%5Cend%7Bdocument%7D)

**Brug af understregninger i URL'er**

Du kan også støde på denne fejl, når du forsøger at sætte URL'er med understregninger, f.eks. `[https://www.overleaf.com/learn/latex/Subscripts_and_superscripts](../02-mathematics/02-subscripts-and-superscripts.md)`. I stedet for at escape hvert understregningstegn kan du måske indlæse `url` eller `hyperref` pakken og derefter bruge `\url` kommandoen sådan her:

```latex
\documentclass{article}
\usepackage{url}
\begin{document}
\url{https://www.overleaf.com/learn/latex/Subscripts_and_superscripts}
\end{document}
```

[Åbn dette eksempel i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=URL+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Burl%7D+%0A%5Cbegin%7Bdocument%7D%0A%5Curl%7Bhttps%3A%2F%2Fwww.overleaf.com%2Flearn%2Flatex%2FSubscripts_and_superscripts%7D%0A%5Cend%7Bdocument%7D)

**Understregninger i .bib-fil-URL'er**

Hvis sådanne URL'er findes i din bibliografi `.bib` fil, hvilket medfører, at der rapporteres fejl fra `.bbl` fil, så sørg for at bruge `url` eller `doi` felterne til at registrere disse felter i `.bib` fil:

```
doi = {10.1007/978-94-015-6859-3_4},
url = {https://abc.com/latest_news_1.html}
```

og indlæs `url` eller `hyperref` pakken i din præambel, om nødvendigt. De fleste bibliografistil-filer vil derefter kunne automatisk omslutte disse værdier i en `\url{...}` kommando.

#### Brug af kommandoer, der ikke er tilladt i matematiktilstand

En række lavniveau indbyggede TeX-kommandoer (kaldet *primitive*) er ikke tilladt i matematiktilstand, og brugen af dem i matematiktilstand vil udløse `Missing $ inserted` fejlen. Selvom de fleste brugere sandsynligvis ikke vil bruge disse kommandoer i daglig LaTeX-kode, nævner vi det her, fordi de muligvis kan være indeholdt i LaTeX-kommandoer (makroer), der bruges i matematiktilstand.

Følgende eksempel forsøger at bruge TeX-kommandoen `\vskip` inde i matematisk materiale. Dette er ikke tilladt og genererer en fejl.

```latex
\documentclass{article}
\begin{document}
Jeg vil gerne tilføje lidt plads, men dette er ikke måden at gøre det på...
\[y=f(x) \vskip5pt z=f(y)\]
$y=f(x) \vskip5pt z=f(y)$
\end{document}
```

[Åbn dette ***fejlskabende*** kode på Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Math+error+demo+1\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0AI+want+to+add+some+space%2C+but+this+is+not+the+way+to+do+it...%0A%5C%5By%3Df%28x%29+%5Cvskip5pt+z%3Df%28y%29%5C%5D%0A%24y%3Df%28x%29+%5Cvskip5pt+z%3Df%28y%29%24%0A%5Cend%7Bdocument%7D)

Andre TeX-(primitive) kommandoer, der ikke er tilladt, når TeX er i matematiktilstand, omfatter `\par`, `\hrule`, `\unvbox`, `\unvcopy` og `\valign`.

#### Blanke linjer i matematik

```latex
\documentclass{article}
\begin{document}
\begin{equation}
y=x^3,

z=x^3
\end{equation}
\end{document}
```

[Åbn dette ***fejlskabende*** kode på Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Math+error+demo+1\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Bequation%7D%0Ay%3Dx%5E3%2C%0A%0Az%3Dx%5E3%0A%5Cend%7Bequation%7D%0A%5Cend%7Bdocument%7D)

**Årsag**: Den blanke linje mellem formlerne omdannes til en `\par` kommando, som ikke er tilladt i matematiktilstand. Du kan også se dette ved at skrive

```latex
\documentclass{article}
\begin{document}
\[y=x^3,\par z=x^3\]
\end{document}
```

[Åbn dette ***fejlskabende*** kode på Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Math+error+demo+2\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0A%5C%5By%3Dx%5E3%2C%5Cpar+z%3Dx%5E3%5C%5D%0A%5Cend%7Bdocument%7D)

For at rette dette kan du enten slette de blanke linjer eller kommentere dem ud:

```latex
\documentclass{article}
\begin{document}
\begin{equation}
y=x^3,
% Dette vil undertrykke den blanke linje
z=x^3
\end{equation}
\end{document}
```

[Åbn dette ***rettede version*** på Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Math+error+demo+1\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Bequation%7D%0Ay%3Dx%5E3%2C%0A%25+This+will+suppress+the+blank+line%0Az%3Dx%5E3%0A%5Cend%7Bequation%7D%0A%5Cend%7Bdocument%7D)

#### Brug af $ inde i matematikmiljøer

Nogle LaTeX-miljøer, såsom `align` og `equation` miljøerne, kræver ikke, at matematik omsluttes af `$` tegn, eller brug af LaTeX’s matematiksyntaks: `\(...\)` eller `\[...\]`. LaTeX-koden, der implementerer disse miljøer, tager sig af at gå ind i og ud af matematiktilstand.

Følgende eksempel viser brugen af `$` tegnet inde i et `amsmath` `align` miljø, hvilket udløser en `Missing $ inserted` fejl, blandt mange andre....

```latex
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{align*}
$2x - 5y &=  8 \\
3x + 9y &=  -12$
\end{align*}
\end{document}
```

[Åbn dette ***fejlskabende*** kode på Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Math+error+demo+4\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bamsmath%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Balign%2A%7D%0A%242x+-+5y+%26%3D++8+%5C%5C+%0A3x+%2B+9y+%26%3D++-12%24%0A%5Cend%7Balign%2A%7D%0A%5Cend%7Bdocument%7D)

Den korrekte måde at skrive disse ligninger på er:

```latex
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\begin{align*}
2x - 5y &=  8 \\
3x + 9y &=  -12
\end{align*}
\end{document}
```

[Åbn dette ***rettede version*** på Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Math+error+demo+5\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bamsmath%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Balign%2A%7D%0A2x+-+5y+%26%3D++8+%5C%5C+%0A3x+%2B+9y+%26%3D++-12%0A%5Cend%7Balign%2A%7D%0A%5Cend%7Bdocument%7D)

## Baggrund for fejlen Missing $ inserted

Følgende afsnit er for læsere, der ønsker bedre at forstå årsagerne bag fejlen `Missing $ inserted`. Det er ikke *nødvendig* læsning, men det kan hjælpe dig med at finde og rette fejl.

### Der mangler ingen $-tegn, men jeg får stadig fejlen

Under nogle omstændigheder kan `Missing $ inserted` fejlen være meget forvirrende, fordi din LaTeX-kode måske faktisk ikke har nogen problemer med *synligt manglende* `$` tegn. For eksempel er LaTeX-fragmentet $$\verb|$$y=f(x)\par$$|$$ ser umiddelbart korrekt ud: parret $$\verb|$$|$$ er afbalanceret, men det vil udløse fejlen “`manglende $`”. Her skyldes det `\par` kommandoen, som ikke er tilladt i matematiktilstand:

```latex
\documentclass{article}
\begin{document}
Dette eksempel genererer fejlen \verb|Missing $ inserted|:
$$y=f(x)\par$$
\end{document}
```

[Åbn dette for at se en Missing $ inserted-fejl](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Math+error+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0AThis+example+generates+the+error+%5Cverb%7CMissing+%24+inserted%7C%3A+%0A%24%24y%3Df%28x%29%5Cpar%24%24%0A%5Cend%7Bdocument%7D)

Ovenstående LaTeX-kode udløser faktisk en *kaskade* af fejl, som vist nedenfor, så du bør klart ikke bruge `\par` inde i matematik!

```
! Missing $ inserted.
<indsat tekst>
                $
l.12 $$y=f(x)\par
                 $$
Jeg har indsat et begin-math/end-math-symbol, fordi jeg tror
du udelod et. Fortsæt, med korslagte fingre.

! Display-matematik skal ende med $$.
<for at læse igen>
                   \par
l.12 $$y=f(x)\par
                 $$
Det `$' jeg netop så matcher angiveligt et tidligere `$$'.
Så jeg vil antage, at du skrev `$$' begge gange.

! Missing $ inserted.
<indsat tekst>
                $
l.13 \end{document}

Jeg har indsat et begin-math/end-math-symbol, fordi jeg tror
du udelod et. Fortsæt, med korslagte fingre.

! Display-matematik skal ende med $$.
<for at læse igen>
                   \par
l.13 \end{document}

Det `$' jeg netop så matcher angiveligt et tidligere `$$'.
Så jeg vil antage, at du skrev `$$' begge gange.
```

Når `Missing $ inserted` når fejlen opstår, forsøger TeX-motorens software at komme sig og “komme tilbage på sporet”, så den kan fortsætte behandlingen efter det punkt, hvor fejlen opstod. Afsnittet [Avanceret: En forklaring på TeX’ fejlgenopretningsmekanisme](#advanced-an-explanation-of-texs-error-recovery-mechanism) vil hjælpe dig med at forstå, hvorfor denne kaskade af fejl opstår på grund af TeX’ forsøg på at rette den oprindelige fejl.

### Om tilstande, og hvornår

Internt fungerer TeX-motorer ved hjælp af tre “sindstilstande”, kaldet *tilstande*, som afhænger af den type materiale, en TeX-motor *på nuværende tidspunkt* sætter. Den tilstand, en TeX-motor befinder sig i på et givent tidspunkt under satsen, kaldes dens *aktuelle* tilstand, som ændrer sig gennem hele processen med at sætte indholdet af dit LaTeX-dokument.

For hver af en TeX-motors tilstande er der visse kommandoer og tegn (eller, mere korrekt, kategori-koder), som er “inkompatible” med TeX’ aktuelle tilstand: de bør ikke bruges, mens TeX er i netop den tilstand. Hvis du prøver at bruge disse upassende tegn eller kommandoer, vil TeX give en fejl såsom `Missing $ inserted` for at fortælle dig, at noget er galt.

#### Matematiktilstand

Denne fejl `Missing $ inserted` er relateret til TeX’ *matematiktilstand*— dvs. den tilstand en TeX-motor er i, når du beder LaTeX om at sætte noget matematik.

For fuldstændighedens skyld bemærker vi, at der er *to* typer matematiktilstand, som afspejler oprettelsen af inline- eller displaymatematik:

* inlinematematiktilstand
* displaymatematiktilstand

TeX har brug for disse to forskellige matematiktilstande, fordi den anvender forskellige regler for afstand, symbolstørrelser osv., når den sætter matematik, der er beregnet til inline eller display.

#### Udløsning af TeX’ matematiktilstande

Der er flere måder at få en TeX-motor til at *gå ind i* og derefter *forlade* matematiktilstand.

* Du kan bruge eksplicit markering såsom:
  * LaTeX-syntaks: `\(...\)` til *gå ind i* `\(` derefter *forlade* `\)` inlinematematiktilstand eller `\[...\]` til *gå ind i* `\[` derefter forlade `\]` displaymatematiktilstand;
  * (historisk) TeX-syntaks: `$...$` for at gå ind i (første `$`) derefter forlade (anden `$`) inlinematematiktilstand eller `$$...$$` for at gå ind i (første `$$` *par*) derefter forlade (anden `$$` *par*) displaymatematiktilstand;
* eller et hvilket som helst af LaTeX’ matematikmiljøer:
  * `\begin{align}...\end{align}` osv. Bag scenen tager disse miljøer sig af at gå ind i og forlade matematiktilstand.

Den egentlige *tekst* i meddelelsen `Missing $ inserted` er *indbygget i* (“indkodet” i) TeX-motorens software, hvilket er grunden til, at du stadig vil se `Missing $` selv hvis du ikke bruger `$` tegn til at sætte matematik og udelukkende bruger LaTeX-syntaks til at markere matematikken i dit dokument. Dette kan være forvirrende for nye LaTeX-brugere, men der er ikke meget, der kan gøres for at ændre denne fejlmeddelelsestekst uden at ændre kildekoden til TeX-motorer!

#### Makroer: test for matematiktilstand

Det er muligt at teste, om TeX aktuelt er i matematiktilstand, ved hjælp af den primitive kommando `\ifmmode`; på den måde kan du skrive makroer, hvis opførsel kan tilpasses for at undgå at generere tilstandsrelaterede fejl. Her er et meget grundlæggende eksempel, der demonstrerer princippet, og som udskriver `Ja.` eller `Nej.` afhængigt af om TeX er i matematiktilstand eller ej på det tidspunkt, hvor makroen “udføres”.

```latex
\documentclass{article}
\begin{document}
\newcommand{\mytest}{\ifmmode \mathrm{Yes}\else No\fi.}

Bruges makroen i matematiktilstand? $\mytest$

Bruges makroen i matematiktilstand? $$\mytest$$

Bruges makroen i matematiktilstand? \(\mytest\)

Bruges makroen i matematiktilstand? \[\mytest\]

Bruges makroen i matematiktilstand? \mytest
\end{document}
```

[Åbn dette eksempel i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Testing+for+math+mode\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cnewcommand%7B%5Cmytest%7D%7B%5Cifmmode+%5Cmathrm%7BYes%7D%5Celse+No%5Cfi.%7D%0A%0AIs+the+macro+being+used+in+math+mode%3F+%24%5Cmytest%24%0A%0AIs+the+macro+being+used+in+math+mode%3F+%24%24%5Cmytest%24%24%0A%0AIs+the+macro+being+used+in+math+mode%3F+%5C%28%5Cmytest%5C%29+%0A%0AIs+the+macro+being+used+in+math+mode%3F+%5C%5B%5Cmytest%5C%5D%0A%0AIs+the+macro+being+used+in+math+mode%3F+%5Cmytest%0A%5Cend%7Bdocument%7D)

Følgende grafik viser outputtet produceret af eksemplet ovenfor:

![LaTeX-makro til test af matematiktilstand](/files/e26fdbafffc8f5f6a2003f9e1e19bd0fe6f65bc2)

## Avanceret: En forklaring på TeX’ fejlgenopretningsmekanisme

Fejlmeddelelsen `Missing $ inserted` udskrives ikke af Overleaf, LaTeX eller LaTeX-pakker; den stammer faktisk fra *inde i det eksekverbare program* som er ansvarligt for at sætte dit LaTeX-dokument: det eksekverbare program kaldes en TeX *motor*— du kan tænke på det som den, der “styrer” sætningen.

Inden i kildekoden til TeX-softwaren bemærker dens forfatter (Donald Knuth) dette om koden, der er ansvarlig for at generere `Missing $ inserted` fejlen:

> Her er en liste over tilfælde, hvor brugeren sandsynligvis ved en fejl er kommet ind i eller ud af matematiktilstand. TeX vil indsætte et dollartegn og genscanne det aktuelle token.

Kernen i `Missing $ inserted` fejlen er, at TeX registrerer “noget”, som ikke burde have været brugt inde i matematiktilstand, eller “noget” der udtrykkeligt er beregnet til matematiksætning, men som bruges uden for matematiktilstand.

Opgaven for TeX er: Hvordan kommer jeg mig over dette? TeX gør præcis det, Knuth skriver: det indsætter et dollartegn og genscanner det aktuelle token — et [“token”](/latex/da/dybtgaende-artikler/53-what-is-a-tex-token.md) er TeX’ interne numeriske (heltal) værdi, som repræsenterer det tegn eller den kommando, den lige har læst ind. Men på grund af fejlens præcise kontekst kan denne strategi være eller ikke være vellykket — som fejlteksten fortsætter med at sige: “Fortsæt, med korslagte fingre.”!

### Arbejdet eksempel

Lad os udforske Knuths kommentarer ved at se nærmere på følgende eksempel: $$\verb|$y=f(x)$$\vskip3pt|$$. Hvis du åbner koden nedenfor, vil du se, at den udløser fejlen `Missing $ inserted`.

```latex
At skrive \verb|$y=f(x)$$\vskip3pt| giver...$y=f(x)$$\vskip3pt Start ny linje...
```

[Åbn dette eksempel i Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=A+missing+%24+inserted+example\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cbegin%7Bdocument%7D%0AWriting+%5Cverb%7C%24y%3Df%28x%29%24%24%5Cvskip3pt%7C+produces...%24y%3Df%28x%29%24%24%5Cvskip3pt+Start+new+line...%0A%5Cend%7Bdocument%7D)

For at gennemgå, hvorfor dette udløser en fejl, lad os skrive indekser for at identificere hvert $$\verb|$|$$ i udtrykket for at få $$\verb|$|*{\mathtt1}\verb|y=f(x)|\verb|$|*{\mathtt2}\verb|$|*{\mathtt3}\verb|\vskip3pt|$$. TeX er i stand til korrekt at behandle den første del $$\verb|$|*{\mathtt1}\verb|y=f(x)|\verb|$|*{\mathtt2}$$ som behandles som et korrekt formateret stykke inline-matematik og giver $$y=f(x)$$. Umiddelbart efter behandlingen af $$\verb|$|*{\mathtt2}$$ forlader TeX midlertidigt inline-matematiktilstand — i vores eksempel opretter vi inline-matematik i et afsnit, så det går kortvarigt ind i den såkaldte *horisontale tilstand*.

Det er det, der sker derefter, som udløser fejlen. TeX fortsætter med at behandle $$\verb|$|\_{\mathtt3}$$ som får TeX til at gå ind i inline-matematiktilstand igen. TeX læser nu det næste token, som er $$\verb|\vskip|$$ kommandoen — den har endnu ikke læst $$\verb|3pt|$$. På dette tidspunkt ser TeX $$\verb|\vskip|$$ men det er i inline-matematiktilstand: $$\verb|\vskip|$$ er ikke tilladt der, så den udløser TeX’ fejlbehandlingsproces som beskrevet af Knuth:

> TeX vil indsætte et dollartegn og genscanne det aktuelle token.

Her er det aktuelle token $$\verb|\vskip|$$ kommando, så det TeX gør, er at placere en *ny* `$` ind i sin input, lad os kalde det $$\verb|$|*{\mathtt4}$$. På dette tidspunkt er TeX stadig i inline matematiktilstand, men nu går det tilbage for at læse det tilsvarende af $$\verb|$|*{\mathtt4}\verb|\vskip|$$ som læses i inline matematiktilstand. Den $$\verb|$|\_{\mathtt4}$$, indsat af TeX selv, nu *lukker* den aktuelle inline matematiktilstand, og TeX fortsætter med at læse den $$\verb|\vskip|$$ kommando *uden for* inline matematiktilstand—her er TeX i et afsnit, så $$\verb|\vskip3pt|$$ får det aktuelle afsnit til at slutte og $$\verb|3pt|$$ af mellemrum placeret efter det.


---

# 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/da/latex-fejl/25-missing-inserted.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.
