> 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/pl/formatowanie/12-code-highlighting-with-minted.md).

# Wyróżnianie kodu za pomocą minted

## Wstęp

Ten artykuł pokazuje, jak używać [`minted` pakietu](https://ctan.org/pkg/minted?lang=en) do formatowania i wyróżniania kodu źródłowego w języku programowania w dokumencie LaTeX, zaczynając od przykładu:

```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 #ma stać się macierzą incydencji
    VT = np.zeros((n*m,1), int)  #zmienna pomocnicza

    #oblicz macierz bitowego 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}
```

[Otwórz ten przykład w Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Example+of+the+minted+package\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bminted%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Bminted%7D%7Bpython%7D%0Aimport+numpy+as+np%0A++++%0Adef+incmatrix%28genl1%2Cgenl2%29%3A%0A++++m+%3D+len%28genl1%29%0A++++n+%3D+len%28genl2%29%0A++++M+%3D+None+%23to+become+the+incidence+matrix%0A++++VT+%3D+np.zeros%28%28n%2Am%2C1%29%2C+int%29++%23dummy+variable%0A++++%0A++++%23compute+the+bitwise+xor+matrix%0A++++M1+%3D+bitxormatrix%28genl1%29%0A++++M2+%3D+np.triu%28bitxormatrix%28genl2%29%2C1%29+%0A%0A++++for+i+in+range%28m-1%29%3A%0A++++++++for+j+in+range%28i%2B1%2C+m%29%3A%0A++++++++++++%5Br%2Cc%5D+%3D+np.where%28M2+%3D%3D+M1%5Bi%2Cj%5D%29%0A++++++++++++for+k+in+range%28len%28r%29%29%3A%0A++++++++++++++++VT%5B%28i%29%2An+%2B+r%5Bk%5D%5D+%3D+1%3B%0A++++++++++++++++VT%5B%28i%29%2An+%2B+c%5Bk%5D%5D+%3D+1%3B%0A++++++++++++++++VT%5B%28j%29%2An+%2B+r%5Bk%5D%5D+%3D+1%3B%0A++++++++++++++++VT%5B%28j%29%2An+%2B+c%5Bk%5D%5D+%3D+1%3B%0A++++++++++++++++%0A++++++++++++++++if+M+is+None%3A%0A++++++++++++++++++++M+%3D+np.copy%28VT%29%0A++++++++++++++++else%3A%0A++++++++++++++++++++M+%3D+np.concatenate%28%28M%2C+VT%29%2C+1%29%0A++++++++++++++++%0A++++++++++++++++VT+%3D+np.zeros%28%28n%2Am%2C1%29%2C+int%29%0A++++%0A++++return+M%0A%5Cend%7Bminted%7D%0A%5Cend%7Bdocument%7D)

Ten przykład generuje następujący wynik:

![Przykład pokazujący wynik pakietu minted](/files/27498589360c8afb82dea98312469feece6bac0c)

Tutaj są dwa ważne polecenia. W preambule pakiet importuje się, wpisując

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

następnie znaczniki `\begin{minted}{python}` i `\end{minted}` wyznaczają środowisko, które wypisuje tekst dosłownie czcionką o stałej szerokości, a także stosuje kolory do komentarzy, słów kluczowych i funkcji. Parametr `python` to język programowania, w którym napisany jest kod źródłowy. `minted` obsługuje ponad 150 języków programowania i znaczników, a także pliki konfiguracyjne; zobacz [przewodnik referencyjny](#reference-guide) w celu uzyskania listy obsługiwanych języków.

**Uwaga**: Aby `minted` działał z twoją *lokalną* dystrybucją LaTeX, wymagany jest dodatkowy program o nazwie [Pygments](https://pygments.org/) musi być zainstalowany. [Overleaf](https://www.overleaf.com/) może oszczędzić Ci kłopotu instalowania go i uruchamiania specjalnych poleceń do kompilacji dokumentu — w Overleaf dokumenty używające `minted` będą działać „od razu”.

## Podstawowe użycie

Jak pokazano w poniższym przykładzie, środowisko `minted` można skonfigurować tak, aby zmodyfikować wygląd składanego kodu. Tutaj środowisko `minted` używa kilku oddzielonych przecinkami parametrów w postaci `key=value`:

```latex
\documentclass{article}
\usepackage{minted}
\usepackage{xcolor} % aby uzyskać dostęp do nazwanego koloru 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 #ma stać się macierzą incydencji
    VT = np.zeros((n*m,1), int)  #zmienna pomocnicza

    #oblicz macierz bitowego 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}
```

[Otwórz ten przykład w Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Another+example+of+the+minted+package\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bminted%7D%0A%5Cusepackage%7Bxcolor%7D+%25+to+access+the+named+colour+LightGray%0A%5Cdefinecolor%7BLightGray%7D%7Bgray%7D%7B0.9%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Bminted%7D%0A%5B%0Aframe%3Dlines%2C%0Aframesep%3D2mm%2C%0Abaselinestretch%3D1.2%2C%0Abgcolor%3DLightGray%2C%0Afontsize%3D%5Cfootnotesize%2C%0Alinenos%0A%5D%0A%7Bpython%7D%0Aimport+numpy+as+np%0A++++%0Adef+incmatrix%28genl1%2Cgenl2%29%3A%0A++++m+%3D+len%28genl1%29%0A++++n+%3D+len%28genl2%29%0A++++M+%3D+None+%23to+become+the+incidence+matrix%0A++++VT+%3D+np.zeros%28%28n%2Am%2C1%29%2C+int%29++%23dummy+variable%0A++++%0A++++%23compute+the+bitwise+xor+matrix%0A++++M1+%3D+bitxormatrix%28genl1%29%0A++++M2+%3D+np.triu%28bitxormatrix%28genl2%29%2C1%29+%0A%0A++++for+i+in+range%28m-1%29%3A%0A++++++++for+j+in+range%28i%2B1%2C+m%29%3A%0A++++++++++++%5Br%2Cc%5D+%3D+np.where%28M2+%3D%3D+M1%5Bi%2Cj%5D%29%0A++++++++++++for+k+in+range%28len%28r%29%29%3A%0A++++++++++++++++VT%5B%28i%29%2An+%2B+r%5Bk%5D%5D+%3D+1%3B%0A++++++++++++++++VT%5B%28i%29%2An+%2B+c%5Bk%5D%5D+%3D+1%3B%0A++++++++++++++++VT%5B%28j%29%2An+%2B+r%5Bk%5D%5D+%3D+1%3B%0A++++++++++++++++VT%5B%28j%29%2An+%2B+c%5Bk%5D%5D+%3D+1%3B%0A++++++++++++++++%0A++++++++++++++++if+M+is+None%3A%0A++++++++++++++++++++M+%3D+np.copy%28VT%29%0A++++++++++++++++else%3A%0A++++++++++++++++++++M+%3D+np.concatenate%28%28M%2C+VT%29%2C+1%29%0A++++++++++++++++%0A++++++++++++++++VT+%3D+np.zeros%28%28n%2Am%2C1%29%2C+int%29%0A++++%0A++++return+M%0A%5Cend%7Bminted%7D%0A%5Cend%7Bdocument%7D)

Ten przykład generuje następujący wynik:

![Przykład zastosowania formatowania do składanego kodu wygenerowanego przez pakiet minted](/files/c62d4e2862345dbd23b02b5b9abbc50a7e842247)

Parametry użyte w tym przykładzie to:

* `frame=lines`: rysuje dwie linie, jedną u góry i jedną na dole kodu, aby utworzyć ramkę. Inne możliwe wartości to `leftline`, `topline`, `bottomline` i `single`.
* `framesep=2mm`: odstęp ramki ustawiono na 2 mm. Można użyć innych [jednostek długości](/latex/pl/formatowanie/01-lengths-in-latex.md) .
* `baselinestretch=1.2`: odstęp między wierszami kodu ustawiony na 1.2.
* `bgcolor=LightGray`: kolor tła ustawiono na `LightGray`. Aby to działało, musisz zaimportować pakiet `xcolor` Zobacz [Używanie kolorów w LaTeX](/latex/pl/formatowanie/13-using-colors-in-latex.md) aby dowiedzieć się więcej o manipulacji kolorami.
* `fontsize=\footnotesize`: rozmiar czcionki ustawiono na `footnotesize`. Można ustawić dowolny inny [rozmiar czcionki](/latex/pl/czcionki/01-font-sizes-families-and-styles.md#reference-guide) .
* `linenos`: włącza numery linii.

Inne opcje, które mogą być przydatne, to:

* `mathescape`: włącza tryb matematyczny w komentarzach kodu.
* `rulecolor`: zmienia kolor ramki.
* `showspaces`: włącza specjalny znak, aby spacje były widoczne.

## Dołączanie kodu z pliku

Kod jest zwykle przechowywany w pliku źródłowym, dlatego polecenie, które automatycznie importuje kod z pliku, jest bardzo wygodne, jak pokazano w następującym przykładzie:

```latex
\documentclass{article}
\usepackage{minted}
\title{Importing files using minted}
\begin{document}
Następny kod zostanie bezpośrednio zaimportowany z pliku:

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

[Otwórz ten przykład w Overleaf](https://www.overleaf.com/docs?engine=\&snip_name\[]=main.tex\&snip\[]=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bminted%7D%0A%5Ctitle%7BImporting+files+using+minted%7D%0A%5Cbegin%7Bdocument%7D%0AThe+next+code+will+be+directly+imported+from+a+file%3A%0A%0A%5Cinputminted%7Boctave%7D%7BBitXorMatrix.m%7D%0A%5Cend%7Bdocument%7D\&snip_name\[]=BitXorMatrix.m\&snip\[]=function+X+%3D+BitXorMatrix%28A%2CB%29%0A%25function+to+compute+the+sum+without+charge+of+two+vectors%0A%09%0A%09%25convert+elements+into+usigned+integers%0A%09A+%3D+uint8%28A%29%3B%0A%09B+%3D+uint8%28B%29%3B%0A%0A%09m1+%3D+length%28A%29%3B%0A%09m2+%3D+length%28B%29%3B%0A%09X+%3D+uint8%28zeros%28m1%2C+m2%29%29%3B%0A%09for+n1%3D1%3Am1%0A%09%09for+n2%3D1%3Am2%0A%09%09%09X%28n1%2C+n2%29+%3D+bitxor%28A%28n1%29%2C+B%28n2%29%29%3B%0A%09%09end%0A%09end\&main_document=main.tex)

Ten przykład generuje następujący wynik:

![Użycie minted do importowania pliku z kodem](/files/35090bdf282a17450252f1685d783aca13ecc3e8)

Polecenie `\inputminted{octave}{BitXorMatrix.m}` importuje kod z pliku `BitXorMatrix.m`, parametr `octave` informuje LaTeX o języku programowania, w którym napisany jest kod. To polecenie może przyjmować dwa dodatkowe parametry, aby zaimportować tylko część pliku; na przykład, aby zaimportować kod od wiersza 2 do wiersza 12, polecenie staje się:

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

## Kod jednowierszowy

Jeśli potrzebujesz wstawić tylko jedną linię kodu, polecenie `\mint`wystarczy, a jego składnia została pokazana w następnym przykładzie.

```latex
Formatowanie kodu jednowierszowego działa również z \texttt{minted}. Na przykład mały fragment HTML taki jak ten:
\mint{html}|<h2>Coś <b>tutaj</b></h2>|
może zostać poprawnie sformatowany.
```

[Otwórz ten przykład w Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=One+line+code+example+with+minted\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bminted%7D%0A%5Cbegin%7Bdocument%7D%0AOne-line+code+formatting+also+works+with+%5Ctexttt%7Bminted%7D.+For+example%2C+a+small+fragment+of+HTML+like+this%3A%0A%5Cmint%7Bhtml%7D%7C%3Ch2%3ESomething+%3Cb%3Ehere%3C%2Fb%3E%3C%2Fh2%3E%7C%0A%5Cnoindent+can+be+formatted+correctly.%0A%5Cend%7Bdocument%7D)

Ten przykład generuje następujący wynik:

![Przykład kodu jednowierszowego z minted](/files/cd682f25ab3c17b0eb06de484a3bb62eeac49236)

Parametr między nawiasami klamrowymi ustawia język programowania (`html` w tym przypadku język znaczników), a rzeczywisty tekst do sformatowania jest oddzielony znakiem „|”.

## Niestandardowe leksery

**(Uwaga: z powodu zmian w `minted` od 2023 r. poniższe podejście będzie działać tylko w** [**TeX Live 2022 lub wcześniejszym**](/latex/pl/baza-wiedzy/148-using-the-overleaf-project-menu.md#tex-live-version)**.)**

Domyślnie, `minted` obsługuje tylko języki z leksykami, które są już zainstalowane lub zarejestrowane w `pygmentize`. Jeśli napisałeś własny leksykator lub chcesz użyć leksykatora dla języka, który nie został jeszcze zainstalowany w Overleaf, nadal możesz go użyć we własnym projekcie Overleaf, korzystając z podejścia wspomnianego [tutaj](https://tex.stackexchange.com/questions/18083/how-to-add-custom-c-keywords-to-be-recognized-by-minted#comment930474_42392).

Załóżmy, że zdefiniowałeś leksykator w pliku `nl-lexer.py`, zawierającym klasę `NetLogoLexer` dla języka NetLogo. Prześlij `nl-lexer.py` do swojego projektu Overleaf, a następnie podaj `nl-lexer.py:NetLogoLexer` jako „nazwę języka” podczas używania `minted`. Na przykład:

```latex
\begin{minted}{nl-lexer.py:NetLogoLexer -x}
   ... tutaj twój kod ...
\end{minted}
```

[Oto](http://quantixed.org/2018/10/23/new-lexicon-how-to-add-a-custom-minted-lexer-in-overleaf/) kolejny przykład dla języka ImageJ Macro.

## Kolory i arkusze stylów

Schematy kolorów używane do wyróżniania kodu są zapisywane w arkuszach stylów. Możesz stworzyć własny lub użyć jednego już dostępnego w swojej dystrybucji LaTeX. Zobacz [przewodnik referencyjny](#reference-guide) aby uzyskać listę arkuszy stylów dołączonych do [Overleaf](https://www.overleaf.com).

```latex
\documentclass{article}
\usepackage{minted}
\usemintedstyle{borland}
\begin{document}
\begin{minted}{python}
import numpy as np

def incmatrix(genl1,genl2):
    m = len(genl1)
    n = len(genl2)
    M = None #ma stać się macierzą incydencji
    VT = np.zeros((n*m,1), int)  #zmienna pomocnicza

    #oblicz macierz bitowego 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}
```

[Otwórz ten przykład w Overleaf](https://www.overleaf.com/docs?engine=pdflatex\&snip_name=Using+stylesheets+with+minted+package\&snip=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bminted%7D%0A%5Cusemintedstyle%7Bborland%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Bminted%7D%7Bpython%7D%0Aimport+numpy+as+np%0A++++%0Adef+incmatrix%28genl1%2Cgenl2%29%3A%0A++++m+%3D+len%28genl1%29%0A++++n+%3D+len%28genl2%29%0A++++M+%3D+None+%23to+become+the+incidence+matrix%0A++++VT+%3D+np.zeros%28%28n%2Am%2C1%29%2C+int%29++%23dummy+variable%0A++++%0A++++%23compute+the+bitwise+xor+matrix%0A++++M1+%3D+bitxormatrix%28genl1%29%0A++++M2+%3D+np.triu%28bitxormatrix%28genl2%29%2C1%29+%0A%0A++++for+i+in+range%28m-1%29%3A%0A++++++++for+j+in+range%28i%2B1%2C+m%29%3A%0A++++++++++++%5Br%2Cc%5D+%3D+np.where%28M2+%3D%3D+M1%5Bi%2Cj%5D%29%0A++++++++++++for+k+in+range%28len%28r%29%29%3A%0A++++++++++++++++VT%5B%28i%29%2An+%2B+r%5Bk%5D%5D+%3D+1%3B%0A++++++++++++++++VT%5B%28i%29%2An+%2B+c%5Bk%5D%5D+%3D+1%3B%0A++++++++++++++++VT%5B%28j%29%2An+%2B+r%5Bk%5D%5D+%3D+1%3B%0A++++++++++++++++VT%5B%28j%29%2An+%2B+c%5Bk%5D%5D+%3D+1%3B%0A++++++++++++++++%0A++++++++++++++++if+M+is+None%3A%0A++++++++++++++++++++M+%3D+np.copy%28VT%29%0A++++++++++++++++else%3A%0A++++++++++++++++++++M+%3D+np.concatenate%28%28M%2C+VT%29%2C+1%29%0A++++++++++++++++%0A++++++++++++++++VT+%3D+np.zeros%28%28n%2Am%2C1%29%2C+int%29%0A++++%0A++++return+M%0A%5Cend%7Bminted%7D%0A%5Cend%7Bdocument%7D)

Użycie `borland` arkusza stylów daje następujący wynik:

![Wynik pakietu minted z użyciem arkusza stylów borland](/files/c7b7ee444e0455776bb820c883cdb23cb8d8efe5)

Składnia ustawiania stylu kolorowania jest prosta — polecenie `\usemintedstyle{borland}` używa motywu kolorystycznego `borland` do formatowania kodu źródłowego. Więcej schematów kolorów znajdziesz w [przewodnik referencyjny](#reference-guide).

## Napisy, etykiety i lista listingów

Listingi kodu sformatowane za pomocą **minted** mogą być umieszczane w elemencie pływającym, tak jak [rysunki](/latex/pl/wiecej-tematow/27-inserting-images.md#positioning) i [tabele](/latex/pl/rysunki-i-tabele/01-tables.md#positioning-tables). Napisy i etykiety można przypisywać do listingów kodu, a następnie później do nich odwoływać się i umieszczać je w „Liście listingów”.

```latex
\documentclass{article}
\usepackage{minted}
\title{Przykłady listingów kodu}
\begin{document}
\begin{listing}[!ht]
\inputminted{octave}{BitXorMatrix.m}
\caption{Przykład z pliku zewnętrznego}
\label{listing:1}
\end{listing}

\begin{listing}[!ht]
\begin{minted}{c}
#include <stdio.h>
int main() {
   printf("Hello, World!"); /*printf() wypisuje ciąg w cudzysłowie*/
   return 0;
}
\end{minted}
\caption{Witaj świecie w C}
\label{listing:2}
\end{listing}

\begin{listing}[!ht]
\begin{minted}{lua}
function fact (n)--definiuje funkcję silni
  if n == 0 then
    return 1
  else
    return n * fact(n-1)
  end
end

print("Wprowadź liczbę:")
a = io.read("*number") -- odczytuje liczbę
print(fact(a))
\end{minted}
\caption{Przykład z podręcznika Lua}
\label{listing:3}
\end{listing}
\noindent\texttt{minted} dobrze składa listingi \ref{listing:1}, \ref{listing:2} i \ref{listing:3}.
\renewcommand\listoflistingscaption{Lista kodów źródłowych}
\listoflistings
\end{document}
```

[Otwórz ten przykład w Overleaf](https://www.overleaf.com/docs?engine=\&snip_name\[]=main.tex\&snip\[]=%5Cdocumentclass%7Barticle%7D%0A%5Cusepackage%7Bminted%7D%0A%5Ctitle%7BListing+code+examples%7D%0A%5Cbegin%7Bdocument%7D%0A%5Cbegin%7Blisting%7D%5B%21ht%5D%0A%5Cinputminted%7Boctave%7D%7BBitXorMatrix.m%7D%0A%5Ccaption%7BExample+from+external+file%7D%0A%5Clabel%7Blisting%3A1%7D%0A%5Cend%7Blisting%7D%0A%0A%5Cbegin%7Blisting%7D%5B%21ht%5D%0A%5Cbegin%7Bminted%7D%7Bc%7D%0A%23include+%3Cstdio.h%3E%0Aint+main%28%29+%7B%0A+++printf%28%22Hello%2C+World%21%22%29%3B+%2F%2Aprintf%28%29+outputs+the+quoted+string%2A%2F%0A+++return+0%3B%0A%7D%0A%5Cend%7Bminted%7D%0A%5Ccaption%7BHello+World+in+C%7D%0A%5Clabel%7Blisting%3A2%7D%0A%5Cend%7Blisting%7D%0A%0A%5Cbegin%7Blisting%7D%5B%21ht%5D%0A%5Cbegin%7Bminted%7D%7Blua%7D%0Afunction+fact+%28n%29--defines+a+factorial+function%0A++if+n+%3D%3D+0+then%0A++++return+1%0A++else%0A++++return+n+%2A+fact%28n-1%29%0A++end%0Aend%0A%0Aprint%28%22enter+a+number%3A%22%29%0Aa+%3D+io.read%28%22%2Anumber%22%29+--+read+a+number%0Aprint%28fact%28a%29%29%0A%5Cend%7Bminted%7D%0A%5Ccaption%7BExample+from+the+Lua+manual%7D%0A%5Clabel%7Blisting%3A3%7D%0A%5Cend%7Blisting%7D%0A%5Cnoindent%5Ctexttt%7Bminted%7D+makes+a+nice+job+of+typesetting+listings+%5Cref%7Blisting%3A1%7D%2C+%5Cref%7Blisting%3A2%7D+and+%5Cref%7Blisting%3A3%7D.%0A%5Crenewcommand%5Clistoflistingscaption%7BList+of+source+codes%7D%0A%5Clistoflistings%0A%5Cend%7Bdocument%7D\&snip_name\[]=BitXorMatrix.m\&snip\[]=%25This+code+is+directly+imported+from+a+file%0A%25A+function+to+compute+the+sum+without+charge+of+two+vectors%0Afunction+X+%3D+BitXorMatrix%28A%2CB%29%0A%25convert+elements+into+unsigned+integers%0AA+%3D+uint8%28A%29%3B%0AB+%3D+uint8%28B%29%3B%0A%0Am1+%3D+length%28A%29%3B%0Am2+%3D+length%28B%29%3B%0AX+%3D+uint8%28zeros%28m1%2C+m2%29%29%3B%0A+for+n1%3D1%3Am1%0A++for+n2%3D1%3Am2%0A+++X%28n1%2C+n2%29+%3D+bitxor%28A%28n1%29%2C+B%28n2%29%29%3B%0A++end%0Aend\&main_document=main.tex)

Pierwsza strona tego przykładu zawiera następujący wynik:

![Przykładowe fragmenty kodu listingów](/files/1cb35b7a2c8a65538c039bfd4995dd4a0a1b93d3)

Aby wydrukować listę ze wszystkimi elementami „listing” użyj `\listoflistings`. W powyższym przykładzie domyślny tytuł `Lista listingów` zostaje zmieniony na `Lista kodów źródłowych` przez wpisanie

```latex
\renewcommand\listoflistingscaption{Lista kodów źródłowych}
\listoflistings % Teraz składa listę
```

Druga strona wygenerowana przez powyższy przykład zawiera następujący listing:

![Przykład listingu kodów źródłowych](/files/645a392f98da28f7f538bc3c9c9ef1c4c0eeb087)

## Przewodnik referencyjny

**Style kolorów dla minted**

| nazwa    | wynik                                                                 | nazwa    | wynik                                                                  |
| -------- | --------------------------------------------------------------------- | -------- | ---------------------------------------------------------------------- |
| manni    | ![MintedStyles1.png](/files/ba44b75704bb5f04bb02a0e7223a437fbf00d503) | fruity   | ![MintedStyles10.png](/files/654dabb5c4985e5622857598b49b596b981ea7b9) |
| rrt      | ![MintedStyles2.png](/files/d033abec879dd825a0d4ce9ae6025e68277cfdd6) | autumn   | ![MintedStyles11.png](/files/36d9078addc77d8ed1c3c4b7a270ea52e0a83ae8) |
| perldoc  | ![MintedStyles3.png](/files/58db69b42e9b8565ead001f7694d64427a00bfb9) | bw       | ![MintedStyles12.png](/files/58c5f69bd9a2c168822b9172a190464ecf55545b) |
| borland  | ![MintedStyles4.png](/files/d73b7c5c1c4e8f77fc5918ada5ef6aea32a65a7e) | emacs    | ![MintedStyles13.png](/files/3d0e5104c5260f6c10667aa4f1317f1bdc47a323) |
| colorful | ![MintedStyles5.png](/files/052d372d9a93e746405669d64032cd0d62b688b3) | vim      | ![MintedStyles14.png](/files/a157926b981173b4067ece2b0055a64825c49a7b) |
| murphy   | ![MintedStyles6.png](/files/98e918ec64b663a02385230e3087784576ae0d12) | pastie   | ![MintedStyles15.png](/files/d39e8580468949c48af21fe23067763e731e4471) |
| vs       | ![MintedStyles7.png](/files/b81eb1408ca395389d7657ecd33917a04401b1d6) | friendly | ![MintedStyles16.png](/files/4f614bc554d6ebbc43e26905e6d8891f0c59db53) |
| trac     | ![MintedStyles8.png](/files/943d75e5fae7e9b0a501eb8532ed886eb6c77d28) | native   | ![MintedStyles17.png](/files/25862af8f98d8a5bf32763eb55997c2d768f9e6d) |
| tango    | ![MintedStyles9.png](/files/f411a25671bfc0f17e44a1d0e6b8a73263c2255f) | monokai  | ![MintedStyles18.png](/files/114e494f549532cbb2a303fb68f139e6a021f3be) |

Niektóre schematy kolorów wymagają ciemnego tła, aby były czytelne.

**Główne obsługiwane języki programowania i pliki konfiguracyjne**

|          |            |             |           |
| -------- | ---------- | ----------- | --------- |
| cucumber | abap       | ada         | ahk       |
| antlr    | apacheconf | applescript | as        |
| aspectj  | autoit     | asy         | awk       |
| basemake | bash       | bat         | bbcode    |
| befunge  | bmax       | boo         | brainfuck |
| bro      | bugs       | c           | ceylon    |
| cfm      | cfs        | cheetah     | clj       |
| cmake    | cobol      | cl          | console   |
| control  | coq        | cpp         | croc      |
| csharp   | css        | cuda        | cyx       |
| d        | dg         | diff        | django    |
| dpatch   | duel       | dylan       | ec        |
| erb      | evoque     | fan         | fancy     |
| fortran  | gas        | genshi      | glsl      |
| gnuplot  | go         | gosu        | groovy    |
| gst      | haml       | haskell     | hxml      |
| html     | http       | hx          | idl       |
| irc      | ini        | java        | jade      |
| js       | json       | jsp         | kconfig   |
| koka     | lasso      | livescrit   | llvm      |
| logos    | lua        | mako        | mason     |
| matlab   | minid      | monkey      | moon      |
| mxml     | myghty     | mysql       | nasm      |
| newlisp  | newspeak   | numpy       | ocaml     |
| octave   | ooc        | perl        | php       |
| plpgsql  | postgresql | postscript  | pot       |
| prolog   | psql       | puppet      | python    |
| qml      | ragel      | raw         | ruby      |
| rhtml    | sass       | scheme      | smalltalk |
| sql      | ssp        | tcl         | tea       |
| tex      | tekst      | vala        | vgl       |
| vim      | xml        | xquery      | yaml      |

## Dalsza lektura

Więcej informacji znajdziesz w:

* [Długości w LaTeX-u](/latex/pl/formatowanie/01-lengths-in-latex.md)
* [Listing kodu](/latex/pl/formatowanie/11-code-listing.md)
* [Liczniki](/latex/pl/formatowanie/10-counters.md)
* [Używanie kolorów w LaTeX](/latex/pl/formatowanie/13-using-colors-in-latex.md)
* [Rozmiary czcionek, kroje i style](/latex/pl/czcionki/01-font-sizes-families-and-styles.md)
* [Kroje pisma](/latex/pl/czcionki/02-font-typefaces.md)
* [Zarządzanie w dużym projekcie](/latex/pl/struktura-dokumentu/07-management-in-a-large-project.md)
* [Wieloplikowe projekty LaTeX](/latex/pl/struktura-dokumentu/08-multi-file-latex-projects.md)
* [Spis treści](/latex/pl/struktura-dokumentu/02-table-of-contents.md)
* [Dokumenty jednostronne i dwustronne](/latex/pl/formatowanie/08-single-sided-and-double-sided-documents.md)
* [Ta **minted** dokumentacja pakietu](https://texdoc.org/serve/minted/0)


---

# 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/pl/formatowanie/12-code-highlighting-with-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.
