> 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/fi/komennot/01-commands.md).

# Komennot

## Johdanto

Tämä artikkeli tarjoaa ensimmäisen johdatuksen *komennot*, jotka ovat olennainen osa LaTeXin ladontaominaisuuksia. Useimmat LaTeX-komennot ovat yksinkertaisia sanoja, joiden edellä on erikoismerkki, yleensä `\`, kenoviiva. Katsotaanpa joitakin esimerkkejä:

```latex
\documentclass{article}
\begin{document}
Dokumentissa on erityyppisiä \textbf{komentoja}
jotka määrittävät, miten elementit näytetään. Tämä
komennot voivat lisätä erikoiselementtejä: $\alpha \beta \Gamma$
\end{document}
```

[Avaa tämä esimerkki Overleafissa.](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)

Tämä esimerkki tuottaa seuraavan tulosteen:

![Perustekstin muotoilu LaTeXilla](/files/bcea75f91ef26fe0dccd69ca8304c1b5ccb5cdbd)

Edellisessä esimerkissä on erityyppisiä komentoja; esimerkiksi, `\textbf` tekee komennolle parametrina annetusta tekstistä lihavoidun. Matemaattisessa tilassa on erikoiskomentoja, kuten `\alpha`, `\beta` ja `\Gamma` kreikkalaisten merkkien näyttämiseen.

## Komennot

Tässä on esimerkki LaTeX-koodista, jossa käytetään komentoja luettelomerkkien luomiseen:

```latex
\documentclass{article}
\begin{document}
Luetteloesimerkki:
\begin{itemize}
  \item[\S] Ensimmäinen kohta
  \item Toinen kohta
\end{itemize}
\end{document}
```

[Avaa tämä esimerkki Overleafissa.](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)

Tämä esimerkki tuottaa seuraavan tulosteen:

![LaTeXilla ladottu perustason luettelo](/files/940389c278b8d3ef4fd50dd68c2d85f1b9516893)

Komento `\begin{itemize}` aloittaa `itemize` *ympäristö*—katso [artikkelia ympäristöistä](/latex/fi/komennot/02-environments.md) lisätietoja varten. Ympäristömäärittelyn alla on komento `\item` joka kertoo LaTeXille aloittaa uuden luettelokohdan: muotoilu lisää erityismerkin (pienen mustan pisteen, jota kutsutaan bulletiksi) ja sisentää kohdan.

Jotkin komennot vaativat yhden tai useamman *parametrien*; monet TeX/LaTeX-fonttikoon/-skaalauksen toiminnot liittyvät arvoon `\textbf` komennon (käytetty yllä), joka ottaa yhden parametrin — tekstin, joka näytetään lihavoituna ja joka kirjoitetaan aaltosulkujen sisään näin: `\textbf{tee tästä lihavoitu}`.

On myös *valinnainen* parametreja, jotka voidaan välittää komennolle sen toiminnan muuttamiseksi; nämä valinnaiset parametrit on sijoitettava hakasulkeisiin: `[...]`. Yllä olevassa esimerkissä komento `\item[\S]` toimii samalla tavalla kuin `\item`, paitsi että hakasulkujen sisällä on `\S`, joka korvaa muun merkin korvaamaan mustan pisteen kohdan tekstin edessä.

## Uuden komennon määrittäminen

Vaikka LaTeX toimitetaan valtavan monen komennon kanssa, on usein tarpeen määrittää omia erikoiskomentoja työn yksinkertaistamiseksi, toistuvien tehtävien vähentämiseksi tai jonkin monimutkaisen muotoilun suorittamiseksi.

### Yksinkertaiset komennot

Uudet komennot määritellään komennolla `\newcommand`; katsotaan siis yksinkertainen esimerkki:

```latex
\documentclass{article}
\usepackage{amssymb}
\begin{document}
\newcommand{\R}{\mathbb{R}}
Reaalilukujen joukko esitetään yleensä
taulupaksulla isolla R:llä: \( \R \).
\end{document}
```

[Avaa tämä esimerkki Overleafissa.](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)

Tämä esimerkki tuottaa seuraavan tulosteen:

![Uuden komennon tuloste](/files/c6df0254c9d48020797e871c7a4bb6c0274e6743)

Lausekkeella `\newcommand{\R}{\mathbb{R}}` on kaksi parametria, jotka määrittävät uuden komennon, joissa:

* `\R`: on uuden komennon nimi.
* `\mathbb{R}`: on se, mitä uusi komento tekee. Tässä tapauksessa kirjain R kirjoitetaan taulupaksuna. Komennon `\mathbb` käyttö edellyttää `amssymb` pakettia, joka lisättiin yllä olevaan esimerkkiin (esipuheessa).

Kun komento on määritelty, voimme käyttää sitä tekstissä, kuten yllä on osoitettu. Tässä esimerkissä uusi komento määritellään juuri ennen kappaletta, jossa sitä käytetään; tällaisia määrittelyjä ei kuitenkaan pidetä parhaana käytäntönä ripotella ympäri dokumenttia. Yleensä uudet komentomäärittelyt kootaan dokumentin esipuheeseen tai suurempia kokoelmia varten sijoitetaan erilliseen tiedostoon, joka voidaan [tuoda päädokumenttiisi](/latex/fi/asiakirjan-rakenne/07-management-in-a-large-project.md#inputting-and-including-files).

### Komennot parametreilla

On myös mahdollista luoda uusia komentoja, jotka hyväksyvät joitakin parametreja; esimerkiksi:

```latex
\documentclass{article}
\usepackage{amssymb}
\begin{document}
\newcommand{\bb}[1]{\mathbb{#1}}
Muut lukujärjestelmät käyttävät vastaavia merkintöjä.
Kompleksiluvut \( \bb{C} \), rationaaliset
luvut \( \bb{Q} \) ja kokonaisluvut \( \bb{Z} \).
\end{document}
```

[Avaa tämä esimerkki Overleafissa](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)

Tämä esimerkki tuottaa seuraavan tulosteen:

![Parametrillisen LaTeX-komennon tuloste](/files/6387e92ad29e99ade5e9776175b7a2167a27da8b)

Rivi `\newcommand{\bb}[1]{\mathbb{#1}}` määrittää uuden komennon, joka ottaa yhden parametrin, jossa:

* `\bb` on uuden komennon nimi.
* `[1]` on niiden parametrien määrä, jotka uusi komento ottaa.
* `\mathbb{#1}` on se, mitä komento varsinaisesti tekee — sen määritelmä.

Tässä tapauksessa parametri, johon viitataan merkinnällä `#1`, kirjoitetaan taulupaksuilla merkeillä. Jos komento tarvitsee useamman kuin yhden parametrin, voit viitata kuhunkin parametriin käyttämällä `#1`, `#2` ja niin edelleen. Tuettuja parametreja on enintään 9.

### Komennot valinnaisilla parametreilla

Käyttäjän määrittämistä komennoista voidaan tehdä vielä joustavampia kuin tähän asti näytetyissä esimerkeissä: voit määrittää komentoja, jotka ottavat *valinnainen* parametreja:

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

Kun kirjoitamme monia eksponenteilla varustettuja lausekkeita, voimme helpottaa työtämme ja säästää aikaa määrittämällä sopivan komennon:

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

Voimme käyttää sitä näin: \[ \plusbinomial{x}{y} \]

Ja jopa eksponenttia voidaan muuttaa:

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

[Avaa tämä esimerkki Overleafissa.](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)

Tämä esimerkki tuottaa seuraavan tulosteen:

![Valinnaisia parametreja sisältävän komennon tuloste](/files/94c43e0a66216d3b0c4278a9a274367499bf35a3)

Analysoidaan rivin syntaksia `\newcommand{\plusbinomial}[3][2]{(#2 + #3)^#1}`:

* `\plusbinomial` on uuden komennon nimi.
* `[3]` on niiden parametrien määrä, jotka komento ottaa; tässä tapauksessa 3.
* `[2]` on ensimmäisen parametrin oletusarvo. Tämä tekee ensimmäisestä parametrista valinnaisen; jos sitä ei välitetä, käytetään tätä oletusarvoa.
* `(#2 + #3)^#1` on se, mitä komento tekee. Tässä tapauksessa se asettaa toisen ja kolmannen parametrin "binomimuotoon" ensimmäisen parametrin osoittamaan potenssiin.

## Olemassa olevien komentojen korvaaminen

Jos yrität määrittää uuden komennon, jolla on sama nimi kuin *jo olemassa olevalla* LaTeX-komennolla, kokoaminen epäonnistuu virheilmoituksella. Tämä osoitetaan seuraavassa esimerkissä, joka yrittää määrittää (olemassa olevan) `\textbf` komento:

```latex
\documentclass{article}
\newcommand{\textbf}[1]{#1}% Tämä ei toimi
\begin{document}

\section{Tämä epäonnistuu}
\end{document}
```

[Avaa tämä (**virheen aiheuttava**) esimerkki Overleafissa.](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)

Tämän esimerkin kokoaminen tuottaa seuraavan tulosteen:

![Virhe, joka syntyi kaksoiskappaleesta LaTeX-komennon määrittelyssä](/files/cd45558d7be0c6d758082c3848f27722ab5be8cf)

Kuten kuvasta näkyy, yrityksemme määrittää `\textbf` on epäonnistunut: LaTeX tuotti virheilmoituksen **LaTeX-virhe: Komento \textbf on jo määritelty**.

Jos todella haluat korvata olemassa olevan komennon, tämä voidaan tehdä käyttämällä `\renewcommand`, joka käyttää samaa syntaksia kuin `\newcommand`:

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

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

Riemannin pallo (kompleksiluvut plus $\infty$) on
joskus merkitty \( \S \).
\end{document}
```

[Avaa tämä esimerkki Overleafissa.](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)

Tämä esimerkki tuottaa seuraavan tulosteen:

![Uudelleenmääritellyn LaTeX-komennon tuloste](/files/9735dbe27dbfbb0878ec864c6484ef615cd05fb3)

Tässä esimerkissä komento `\S` (katso esimerkki [komennot](#commands) osiossa) korvataan tulostamaan taulupainoinen S.

## Lisälukemista

Lisätietoja löydät:

* [Ympäristöt](/latex/fi/komennot/02-environments.md)
* [Pakettien ja luokkatiedostojen ymmärtäminen](/latex/fi/luokkatiedostot/01-understanding-packages-and-class-files.md)
* [Oman paketin kirjoittaminen](/latex/fi/luokkatiedostot/03-writing-your-own-package.md)
* [Oman luokan kirjoittaminen](/latex/fi/luokkatiedostot/04-writing-your-own-class.md)
* [Pituudet LaTeXissa](/latex/fi/muotoilu/01-lengths-in-latex.md)
* [Värien käyttäminen LaTeXissa](/latex/fi/muotoilu/13-using-colors-in-latex.md)
* [Sivukoko ja marginaalit](/latex/fi/muotoilu/07-page-size-and-margins.md)
* [Pakettien ja luokkatiedostojen luettelo](/latex/fi/luokkatiedostot/02-overleaf-and-tex-live.md)
* [Ei-niin-lyhyt johdatus LaTeX2ε:ään](http://www.ctan.org/tex-archive/info/lshort/)
* [LaTeX/Creating\_Packages WikiBooksissa](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/fi/komennot/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.
