> 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/texlive/cs/souvisejici-s-balicky/minted.md).

# {Minted}

Tento článek ukazuje, jak používat [`minted` balíček](https://ctan.org/pkg/minted?lang=en) pro formátování a zvýrazňování zdrojového kódu programovacího jazyka v dokumentu LaTeX, začněme příkladem:

```latex
\documentclass{article}
\usepackage{minted}
\begin{document}
\begin{minted}{python}
import numpy as np
    
def incmatrix(genl1,genl2):
    m = len(genl1)
    n = len(genl2)
    M = None #aby se z toho stala incidenční matice
    VT = np.zeros((n*m,1), int)  #pomocná proměnná
    
    #spočítat matici bitového XOR
    M1 = bitxormatrix(genl1)
    M2 = np.triu(bitxormatrix(genl2),1) 

    for i in range(m-1):
        for j in range(i+1, m):
            [r,c] = np.where(M2 == M1[i,j])
            for k in range(len(r)):
                VT[(i)*n + r[k]] = 1;
                VT[(i)*n + c[k]] = 1;
                VT[(j)*n + r[k]] = 1;
                VT[(j)*n + c[k]] = 1;
                
                if M is None:
                    M = np.copy(VT)
                else:
                    M = np.concatenate((M, VT), 1)
                
                VT = np.zeros((n*m,1), int)
    
    return M
\end{minted}
\end{document}
```

Tento příklad vytváří následující výstup:

<p align="center"><img src="https://sharelatex-wiki-cdn-671420.c.cdn77.org/learn-scripts/images/f/f0/OLV2minted.png" alt="Example displaying the output of the minted package"></p>

Jsou zde dva důležité příkazy. V preambuli se balíček importuje zápisem

```latex
\usepackage{minted}
```

pak značky `\begin{minted}{python}` a `\end{minted}` vymezují prostředí, které vypisuje text doslova v neproporcionálním písmu a zároveň používá barvu pro komentáře, klíčová slova a funkce. Parametr `python` je programovací jazyk, ve kterém je zdrojový kód napsán. `minted` podporuje více než 150 programovacích a značkovacích jazyků i konfiguračních souborů, viz [referenční příručka](https://www.overleaf.com/learn/latex/Code_Highlighting_with_minted#Reference_guide) pro seznam podporovaných jazyků.

**Poznámka**: Aby `minted` fungoval s vaší *místní* distribucí LaTeXu, je třeba nainstalovat další program nazývaný [Pygments](https://pygments.org/) musí být nainstalován. [Overleaf](https://www.overleaf.com/) vám může ušetřit potíže s jeho instalací i nutnost spouštět speciální příkazy k překladu dokumentu — na Overleafu budou dokumenty, které používají `minted` fungovat „hned po vybalení“.

### Základní použití

Jak ukazuje následující příklad, prostředí `minted` lze nakonfigurovat tak, aby upravovalo vizuální podobu vysázeného kódu. Zde prostředí `minted` používá několik parametrů oddělených čárkami ve tvaru `key=value`:

```latex
\documentclass{article}
\usepackage{minted}
\usepackage{xcolor} % pro přístup k pojmenované barvě LightGray
\definecolor{LightGray}{gray}{0.9}
\begin{document}
\begin{minted}
[
frame=lines,
framesep=2mm,
baselinestretch=1.2,
bgcolor=LightGray,
fontsize=\footnotesize,
linenos
]
{python}
import numpy as np
    
def incmatrix(genl1,genl2):
    m = len(genl1)
    n = len(genl2)
    M = None #aby se z toho stala incidenční matice
    VT = np.zeros((n*m,1), int)  #pomocná proměnná
    
    #spočítat matici bitového XOR
    M1 = bitxormatrix(genl1)
    M2 = np.triu(bitxormatrix(genl2),1) 

    for i in range(m-1):
        for j in range(i+1, m):
            [r,c] = np.where(M2 == M1[i,j])
            for k in range(len(r)):
                VT[(i)*n + r[k]] = 1;
                VT[(i)*n + c[k]] = 1;
                VT[(j)*n + r[k]] = 1;
                VT[(j)*n + c[k]] = 1;
                
                if M is None:
                    M = np.copy(VT)
                else:
                    M = np.concatenate((M, VT), 1)
                
                VT = np.zeros((n*m,1), int)
    
    return M
\end{minted}
\end{document}
```

Tento příklad vytváří následující výstup:

<p align="center"><img src="https://sharelatex-wiki-cdn-671420.c.cdn77.org/learn-scripts/images/f/ff/OLV2minted2.png" alt="Example applying formatting to typeset code produced by the minted package"></p>

Parametry použité v tomto příkladu jsou:

* `frame=lines`: vykreslí dvě čáry, jednu nahoře a jednu dole od kódu, aby jej orámovaly. Další možné hodnoty jsou `leftline`, `topline`, `bottomline` a `single`.
* `framesep=2mm`: odsazení rámce je nastaveno na 2 mm. Jiné [délkové jednotky](https://www.overleaf.com/learn/latex/Lengths_in_LaTeX) lze použít.
* `baselinestretch=1.2`: řádkování kódu je nastaveno na 1,2.
* `bgcolor=LightGray`: barva pozadí nastavena na `LightGray`. Je třeba importovat balíček `xcolor` aby to fungovalo. Viz [Používání barev v LaTeXu](https://www.overleaf.com/learn/latex/Using_colours_in_LaTeX) pro více informací o práci s barvami.
* `fontsize=\footnotesize`: velikost písma nastavena na `footnotesize`. Jakákoli jiná [velikost písma](https://www.overleaf.com/learn/latex/Font_sizes_and_kinds%23Reference_guide) lze nastavit.
* `linenos`: povolí číslování řádků.

Další užitečné volby jsou:

* `mathescape`: povolí matematický režim v komentářích kódu.
* `rulecolor`: změní barvu rámce.
* `showspaces`: povolí speciální znak pro zviditelnění mezer.

### Vkládání kódu ze souboru

Kód je obvykle uložen ve zdrojovém souboru, proto je velmi praktický příkaz, který automaticky importuje kód ze souboru, jak ukazuje následující příklad:

```latex
\documentclass{article}
\usepackage{minted}
\title{Importování souborů pomocí minted}
\begin{document}
Další kód bude přímo importován ze souboru:

\inputminted{octave}{BitXorMatrix.m}
\end{document}
```

Tento příklad vytváří následující výstup:

<img src="https://sharelatex-wiki-cdn-671420.c.cdn77.org/learn-scripts/images/c/c8/OLV2mintedinput.png" alt="Použití minted k importu souboru s kódem" height="392" width="600">

Příkaz `\inputminted{octave}{BitXorMatrix.m}` importuje kód ze souboru `BitXorMatrix.m`, parametr `octave` sděluje LaTeXu programovací jazyk kódu. Tento příkaz může mít dva další parametry pro import pouze části souboru; například pro import kódu od řádku 2 do řádku 12 bude příkaz vypadat takto:

```latex
\inputminted[firstline=2, lastline=12]{octave}{BitXorMatrix.m}
```

### Jednořádkový kód

Pokud potřebujete vložit pouze jeden řádek kódu, příkaz `\mint`, jehož syntaxe je uvedena v následujícím příkladu, to zařídí.

{% code overflow="wrap" %}

```latex
Jednořádkové formátování kódu funguje také s \texttt{minted}. Například malý fragment HTML jako tento:
\mint{html}|<h2>Something <b>here</b></h2>|
\noindent lze správně naformátovat.
```

{% endcode %}

Tento příklad vytváří následující výstup:

<img src="https://sharelatex-wiki-cdn-671420.c.cdn77.org/learn-scripts/images/d/d9/OLV2mintedHTML.png" alt="Příklad jednořádkového kódu s minted" height="112" width="600">

Parametr mezi složenými závorkami nastavuje programovací jazyk (`html` značkovací jazyk v tomto případě), přičemž vlastní text k formátování je vymezen znakem '|' .

### Problémy s vlastním hostováním Overleafu

Pokud používáte sandboxový překlad a také server Overleafu k nasazení Overleafu, minted nemusí fungovat dobře. Podrobné informace najdete: [issues/131](https://github.com/yu-i-i/overleaf-cep/issues/131). Abyste zprovoznili minted, je třeba povolit profil instrukcí ARM a některé systémové volání.


---

# 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/texlive/cs/souvisejici-s-balicky/minted.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.
