diff options
Diffstat (limited to 'Master/texmf-doc/doc/finnish/lshort-finnish/src')
15 files changed, 8831 insertions, 0 deletions
diff --git a/Master/texmf-doc/doc/finnish/lshort-finnish/src/asiat.tex b/Master/texmf-doc/doc/finnish/lshort-finnish/src/asiat.tex new file mode 100644 index 00000000000..c61551b169c --- /dev/null +++ b/Master/texmf-doc/doc/finnish/lshort-finnish/src/asiat.tex @@ -0,0 +1,961 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Things you need to know +% $Id: asiat.tex,v 1.2 2005/04/05 08:05:09 hellgren Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\chapter{Asiat, jotka tulisi tietää} +\begin{intro} +Tämän luvun ensimmäisessä osassa tehdään lyhyt katsaus +\LaTeX:n filosofiaan ja historiaan. Luvun toisessa osassa keskitytään +\LaTeX-dokumentin perusrakenteeseen. Luvun jälkeen lukijalla pitäisi +olla karkea yleiskuva \LaTeX:n toiminnasta. Jatkossa tämä auttaa +yhdistämään uutta tietoa kokonaiskuvaan. +\end{intro} + +\section{Pelin henki} +\subsection{\TeX} + +\TeX{} on \index{Knuth, Donald E.}Donald E.~Knuthin~\cite{texbook} +tekemä tietokoneohjelma. Se on tarkoitettu tekstin ja matemaattisten +kaavojen ladontaan. Knuth alkoi koodata \TeX:iä 1977 tutkiakseen +silloin julkasualalle ilmaantuneiden digitaalisten laitteiden mahdollisuuksia. +Hänen tarkoituksenaan oli lopettaa kehityssuunta, jossa painojälki huononi +huononemistaan ja joka vaikutti myös hänen omien kirjojensa ja artikkeleidensa +ulkoasuun. Nykyinen \TeX{} julkaistiin 1982 ja siihen lisättiin 1989 +useiden kielten ja 8-bittisen merkistön tuki. +\TeX{} on tunnetusti hyvin vakaa ohjelma, saatavilla hyvin erilaisille +tietokoneille sekä lähestulkoon virheetön. \TeX:n versionumero lähestyy $\pi$:n arvoa, sen +ollessa nyt $3,14159$. + +\TeX{} luetaan 'Teh', jossa 'h' äännetään kuten 'ch' saksan +sanassa ''Ach''\footnote{Saksassa on itse asiassa kaksi tapaa +lausua 'ch' ja voisi luulla, että tähän sopisi paremmin +sanan ''Pech'' pehmeä 'ch'. Kun tätä kysyttiin Knuthilta, +hän kirjoitti saksankieliseen Wikipediaan: ''minua ei ärsytä, +vaikka ihmiset lausuvat {\TeX}:n oman mieltymyksensä mukaan{\ldots} +Saksassa monet käyttävät pehmeää ch:ta, koska X seuraa tässä e-vokaalia, +eikä kovaa ch:ta, joka seuraa yleensä a-vokaalia. Venäjällä 'tex' on hyvin +yleinen sana, joka lausutaan 'tjeh'. Uskoakseni oikea ääntämys +löytyy kuitenkin kreikan kielestä, jossa käytetään ach- ja Loch-sanan +kovempaa ch:ta.} +tai skotlantilaisessa sanassa ''Loch''. Tuo 'h' tai 'ch' +juontuu kreikan kielen aakkostosta, jossa X-kirjain vastaa +kyseistä äännettä. {\TeX} on myös ensimmäinen tavu kreikan +kielen sanasta texnologia (teknologia tai tekniikka). +ASCII-ympäristössä \TeX{} kirjoitetaan \texttt{TeX}. + +\subsection{\LaTeX} + +\LaTeX{} on makropakkaus, jonka avulla kirjoittajat voivat latoa +ja tulostaa typografialtaan korkealaatuisia töitä. Pakkaus käyttää +etukäteen määriteltyä, ammattimaista taittomallia. \LaTeX:n teki +alunperin \index{Lamport, Leslie}Leslie Lamport~\cite{manual}. +\LaTeX{} käyttää ladonnassa \TeX{}-ohjelmaa. Nykyisellään +{\LaTeX}ia ylläpitää Frank Mittelbach.\index{Mittelbach, Frank} + +%1994 \index{Mittelbach, Frank}Frank Mittelbachin +%johtama \index{LaTeX3@\LaTeX 3}\LaTeX 3 ryhmä teki uuden +%version \LaTeX{}-makroista. Mukaan otettiin pitkään kaivattuja +%parannuksia ja kaikki korjaukset, jotka olivat kasaantuneet +%sitten \index{LaTeX 2.09@\LaTeX{} 2.09}\LaTeX{} 2.09:n julkaisemisen. +%Jotta uusi versio erottuisi vanhasta, sitä kutsutaan nimellä +%\index{LaTeX 2e@\LaTeXe}\LaTeXe. Tämä ohje käsittelee +%\LaTeXe-makropakkausta. + +\LaTeX{} luetaan 'lateh'. \texttt{ASCII}-ympäristössä +\LaTeX{} kirjoitetaan muodossa \texttt{LaTeX}. \LaTeXe{} +luetaan 'lateh kaksi epsilon' tai 'lateh kaks e' ja +kirjoitetaan \texttt{LaTeX2e}. + +%Kaavio \ref{components} % sivulla \pageref{components} +%näyttää miten \TeX{} ja \LaTeXe{} toimivat yhdessä. Alkuperäinen kaavio on +%Kees van der Laanin tiedostosta \texttt{wots.tex}. + +%\begin{figure}[btp] +%\begin{lined}{0.8\textwidth} +%\begin{center} +%\input{keesin.fig} +%\end{center} +%\end{lined} +%\caption{\TeX-järjestelmän osat} \label{components} +%\end{figure} + +\section{Perusteita} + +\subsection{Kirjoittaja, taittaja ja latoja} + +Ennen vanhaan kirjoittajat lähettivät kirjoituskoneella +kirjoitetut käsikirjoituksensa kustantamolle. Kustantajan taittaja +suunnitteli sitten teoksen ulkoasun eli leiskan (palstan leveys, kirjasimet, +välit ennen otsikoita ja niiden jälkeen,~\ldots). Taittaja kirjoitti +ohjeensa käsikirjoitukseen ja antoi sen sitten latojalle, joka latoi +kirjan näiden ohjeiden perusteella. + +Kun ihminen toimii taittajana hän yrittää selvittää mitä kirjoittajalla +oli mielessään käsikirjoitusta tehdessään. Hän päättää lukujen +otsikoista, lainauksista, esimerkeistä, kaavoista jne.\ ammatillisen +kokemuksensa ja käsikirjoituksen sisällön pohjalta. + +\LaTeX-systeemissä \LaTeX:lla on taittajan rooli ja \TeX{} on +latojana. Mutta koska \LaTeX{} on ''vain'' ohjelma, se tarvitsee +enemmän työohjeita. Kirjoittajan täytyy lisätä ylimääräistä tietoja, +joka kuvaa työn loogista rakennetta. Nämä tiedot kirjoitetaan tekstiin +''\LaTeX{}:n käskyinä.'' + +Tällainen lähestymistapa eroaa huomattavasti useimpien nykyisten +\emph{MS Wordin} tai \emph{Corelin WordPerfectin} kaltaisten +tekstinkäsittelyohjelmien +ns. \wi{WYSIWYG}\footnote{'What you see is what you get' eli +suomeksi suunnilleen 'Näet mitä saat'} ideologiasta. Näissä +ohjelmissa kirjoittaja määrittelee kirjoittaessaan dokumentin +ulkoasun interaktiivisesti. Samalla kirjoittaja näkee näytöllä, miltä +lopullinen työ näyttää tulostettuna. + +Normaalisti \LaTeX:ssa ei ole mahdollista nähdä lopullista tulosta +tekstiä kirjoitettaessa. Kun tiedosto on käsitelty \LaTeX:lla, on +kuitenkin mahdollista nähdä esikatselun avulla lopullinen tulos näytöllä. +Näin korjaukset voidaan tehdä ennen dokumentin tulostamista. + +\subsection{Taiton suunnittelu} + +Typografinen suunnittelu vaatii käsityötaitoa. Kokemattomat kirjoittajat +tekevät usein pahoja muotoiluvirheitä olettaessaan, että kirjan +suunnittelussa on kyse lähinnä estetiikasta: ''jos dokumentti näyttää +taiteellisessa mielessä hyvältä, on se hyvin suunniteltu''. Mutta +painettua tekstiä luetaan eikä ripusteta taidegallerian seinille. +Luettavuus ja ymmärrettävyys on paljon tärkeämpää kuin kaunis ulkonäkö. +Esimerkkejä: +\begin{itemize} +\item Otsikoiden kirjasimen koon ja numeroinnin tarkoituksena on + selventää lukijalle tekstin rakennetta. +\item Rivin pituuden tulisi olla kyllin lyhyt, jotta se ei rasittaisi + lukijan silmiä, ja samalla kyllin pitkä, jotta se täyttäisi sivun + kauniisti. +\end{itemize} + +\wi{WYSIWYG}-systeemeissä kirjoittajat saavat usein aikaan +esteettisesti miellyttäviä dokumentteja, joilla on kuitenkin +epäjohdonmukainen rakenne tai ei lainkaan rakennetta. \LaTeX{} +estää tämäntapaiset muotoiluvirheet pakottamalla kirjoittajan +määrittelemään työn \emph{loogisen} rakenteen. \LaTeX{} puolestaan +valitsee sopivimman ulkoasun. + +\subsection{Etuja ja haittoja} + +Kun \wi{WYSIWYG}- ja \LaTeX{}-kirjoittajat kohtaavat, käydään usein +keskusteluita \index{LaTeX:n edut} \LaTeX:n eduista tavallisiin +tekstinkäsittelyohjelmiin verrattuna ja päinvastoin. Sellaisen +keskustelun alkaessa on parasta +pitää matalaa profiilia, sillä homma yleensä karkaa käsistä. Joskus +on kuitenkin vastattava mielipiteistään \ldots + +\medskip\noindent Niinpä tässä on hieman ruutia keskusteluun. +\LaTeX:n edut tavallisiin tekstinkäsittelyohjelmiin verrattuna ovat +seuraavat: + +\begin{itemize} + +\item Saatavilla on ammattilaisten tekemiä taittopohjia, jotka saavat + dokumentin näyttämään todella ''painetulta''. +\item Matemaattisten kaavojen ladonta onnistuu vaivattomasti. +\item Käyttäjän ei tarvitse oppia kuin muutama dokumentin loogisen + rakenteen määrittelevä komento. Itse ulkoasuun tarvitsee tuskin koskaan + puuttua. +\item Jopa monimutkaiset rakenteet, kuten alaviitteet, ristiviitteet, + sisällysluettelot ja kirjallisuusluettelot voidaan generoida + helposti. +\item Monille typografisille ongelmille, joita perus-\LaTeX ei tue, + löytyy ilmaisia lisämakroja. On olemassa esimerkiksi makropakkauksia + \textsc{PostScript}-kuvien lisäämistä tai tiettyjen tarkkojen + standardien mukaisten kirjallisuusluetteloiden latomista varten. Monia + näistä lisäpakkauksista kuvataan kirjassa \companion. +\item \LaTeX{} kannustaa kirjoittamaan rakenteellisesti hyviä tekstejä, + sillä tämä on \LaTeX:n tapa toimia. +\item \LaTeXe:n ladontaohjelma, \TeX, on ilmainen ja saatavilla melkein + kaikkin mahdollisiin käyttöjärjestelmiin. + +% +% Add examples ... +% +\end{itemize} + +\medskip + +\noindent\LaTeX:lla on myös puutteensa, mutta minun taitaa olla hieman +vaikea löytää yhtään vakavasti otettavaa. Muut varmaankin pystyvät +kertomaan niitä sadoittain \texttt{;-)} + +\begin{itemize} +\item \LaTeX:sta ei ole apua niille, jotka ovat myyneet sielunsa \ldots +\item Vaikka valmiin taittopohjan joitakin määrityksiä voidaan muuttaa, + on kokonaan uuden taittomallin suunnittelu vaikeaa ja aikaa + vievää.\footnote{Huhu kertoo, että tämä on yksi pääongelmista, joita + yritetään ratkoa tulevassa \LaTeX 3 "=järjestelmässä}\index{LaTeX3@\LaTeX 3} +\item Epäloogisten ja sekavien dokumenttien kirjoittaminen on hyvin + vaikeaa. +\item Lupaavista alkuaskelista huolimatta lemmikkihamsterisi ei koskaan tule +täysin ymmärtämään loogisen merkkaamisen käsitettä. +\end{itemize} + +\section{\LaTeX:n käsikirjoitustiedostot} + +Käsikirjoitus syötetään \LaTeX:lle tavallisina \texttt{ASCII}-tekstitiedostoina. +Sellaisen voi tehdä millä tahansa tekstieditorilla. Tiedosto sisältää dokumentin +tekstin ja komennot, jotka kertovat miten \LaTeX:n tulee latoa teksti. + +\subsection{Välilyönnit} + +Välilyöntiä ja tabulaattoria eli ''tyhjän tilan'' merkkejä käsitellän +\LaTeX:ssa yhtäläisesti \index{välilyönnit} välilyöntinä. \emph{Useat peräkkäiset} +\wi{välilyönnit} käsitetään \emph{yhtenä} välilyöntinä. Rivin alussa +olevia välilyöntejä ei yleensä huomioida ja yksittäinen rivinvaihto +käsitetään myös ''välilyönniksi''.\index{välilyönnit!rivin alussa} + +Tyhjä rivi tekstissä määrittelee kappaleenvaihdon paikan. \emph{Usea} +tyhjä rivi vastaa \emph{yhtä} tyhjää riviä. Alapuolella oleva teksti +käyköön esimerkistä. Vasemmalla puolella on käsikirjoituksen teksti ja +oikealla on muotoiltu lopputulos. + +\begin{example} +Sillä ei ole merkitystä lisäätkö +sanan jälkeen yhden vai +monta välilyöntiä. + +Tyhjä rivi aloittaa +uuden kappaleen. +\end{example} + + +\subsection{Erikoismerkit} + +Seuraavat symbolit ovat \index{varatut merkit} varattuja merkkejä, +joilla on joko erityinen merkitys \LaTeX:ssa tai sitten niitä ei ole +saatavilla kaikissa kirjasimissa. Ne eivät tulostu, vaikka ne lisäisikin +tekstiin sellaisenaan, Ne panevat \LaTeX:n tekemään asioita, joita et +alunperin tarkoittanut. + +\begin{code} +\verb.# $ % ^ & _ { } ~ \ . %$ +\end{code} + +Näitä merkkejä voidaan kuitenkin käyttää tekstissä lisäämällä niiden +eteen kenoviiva: + +\begin{example} +\# \$ \% \^ \& \_ \{ \} \~{} +\end{example} + +Lisää symboleja voidaan tulostaa erityisillä komennoilla +matemaattisissa kaavoissa tai tekstissä ja uusia voidaan kehitellä +aksenttien avulla. Kenoviiva-merkkiä ($\backslash$) \emph{ei} voi +tulostaa lisäämällä sen eteen toinen kenoviiva (\verb|\\|) sillä +kyseinen merkkiyhdistelmä tarkoittaa +rivinvaihtoa.\footnote{Käytä ennemmin komentoa \$\ci{backslash}\$. +se tuottaa '$\backslash$'-merkin.} + +\subsection{\LaTeX:n käskyt} + +\LaTeX:n \wi{käskyt} erottavat pienet ja isot kirjaimet toisistaan. +Niitä on kahdenlaisia: + +\begin{itemize} +\item Käsky voi alkaa \index{kenoviiva} kenoviivalla \verb|\|, jonka perässä + on pelkästään kirjaimista koostuva komennon nimi. Välilyönti tai + jokin muu merkki kuin kirjain päättää komennon nimen. +\item Käsky voi koostua kenoviivasta ja tasan yhdestä %numerosta tai + erikoismerkistä. +\end{itemize} + +% +% \\* doesn't comply ! +% + +% +% Can \3 be a valid command ? (jacoboni) +% +\label{whitespace} + +\LaTeX{} ei noteeraa komentojen perässä olevaa välilyöntiä. Jos komennon +jälkeen pitäisi tulostua \index{välilyönti!komentojen perässä} välilyönti, +on komennon perään lisättävä joko \verb|{}| ja välilyönti tai erityinen +välilyöntikomento. \verb|{}| estää \LaTeX:ia syömästä komennon jälkeisiä +välilyöntejä. + +\begin{example} +Knuth kuulemma jakaa +\TeX:llä työskentelevät +\TeX{}nikoihin ja \TeX pertteihin.\\ +Tänään on \today. +\end{example} + +Jotkut komennot tarvitsevat \index{lisämääreet} lisämääreitä, jotka kirjoitetaan +\index{aaltosulkeet} aaltosulkeiden \verb|{ }| sisään komennon nimen perään. +Jotkut komennot tukevat \index{vaihtoehtoisia määreitä} vaihtoehtoisia määreitä, +jotka lisätään komennon nimen perään \index{hakasulkeet} hakasulkeisiin~\verb|[ ]|. +Seuraavassa esimerkissä on joitain \LaTeX-komentoja. Älä välitä niistä, niiden +merkitys selitetään myöhemmin. + +\begin{example} +\textsl{Nojaa} mun olkaan! +\end{example} +\begin{example} +Aloita uusi rivi +tästä näin!\newline +Kiitos! +\end{example} + +\subsection{Kommentit} +\index{kommentit} + +Kun käsikirjoitustiedostossa on \verb|%|-merkki, \LaTeX{} jättää käsittelemättä +sen merkin jälkeen tulevan rivin osan. Tätä voi hyödyntää lisäämällä +käsikirjoitukseen muistiinpanoja, jotka eivät näy tulostetussa versiossa. + +\begin{example} +Tämä on % tyhmä +% Ennemminkin hyödyllinen <--- +esimerkki: Perään% + antamatto% + muudellansakaan +\end{example} + +\texttt{\%}-merkkiä voidaan käyttää myös jakamaan pitkä, yhtenäiseksi +tarkoitettu, rivi. + +Pitempiä kommentteja varten voidaan käyttää \pai{verbatim}-makrokokoelman +\ei{comment}-ympäristöä. Tämä tarkoittaa sitä, että \ei{comment}-ympäristön +käyttämiseksi on dokumentin esittelyosaan lisättävä komento \verb|\usepackage{verbatim}|. + +\begin{example} +Tässäpä toinen +\begin{comment} +melko typerä, +mutta hyödyllinen, +\end{comment} +esimerkki kommenttien +lisäämisestä dokumenttiin. +\end{example} + +Huomaa, että tämä ei toimi esimerkiksi matematiikan ladonnassa tai muissa monimutkaisissa +ympäristöissä. + +\section{Käsikirjoitustiedoston rakenne} + +\LaTeXe{} olettaa käsikirjoitustiedoston noudattavan tiettyä +rakennetta. Niinpä jokaisen käsikirjoituksen tulee alkaa +komennolla +\begin{code} +\verb|\documentclass{...}| +\end{code} +Komento määrittää dokumentin tyypin. Sen jälkeen voidaan lisätä +komentoja, jotka vaikuttavat koko dokumentin ulkoasuun tai +sitten voidaan ottaa käyttöön \index{makropakkaukset} makropakkauksia, jotka lisäävät +uusia ominaisuuksia \LaTeX-systeemiin. Pakkaus otetaan +käyttöön komennolla +\begin{code} +\verb|\usepackage{...}| +\end{code} + +Kun asetukset on tehty\footnote{\texttt{\bs documentclass}:n ja +\texttt{\bs begin$\mathtt{\{}$document$\mathtt{\}}$}:n välissä +olevaa aluetta nimitetään \index{esittelyosa}\emph{esittelyosaksi}.}, tekstiosa +aloitetaan komennolla + +\begin{code} +\verb|\begin{document}| +\end{code} + +Nyt voidaan kirjoittaa \LaTeX:n käskyillä höystettyä tekstiä. +Dokumentin loppuun lisätään käsky + +\begin{code} +\verb|\end{document}| +\end{code} +joka pyytää \LaTeX:ia lopettamaan. \LaTeX{} ei noteeraa +mitään tämän käskyn perässä tulevaa. + +Kuva~\ref{mini} esittää minimaalisen englanninkielisen +\LaTeXe{}-tiedoston sisällön. Kuvan~\ref{document} +suomenkielinen \wi{käsikirjoitustiedosto} +onkin sitten jo hieman mutkikkaamman näköinen. +Siihen liittyviä käskyjä selitetään jäljempänä. + +\begin{figure}[!bp] +\begin{lined}{6cm} +\begin{verbatim} +\documentclass{article} +\begin{document} +Small is beautiful. +\end{document} +\end{verbatim} +\end{lined} +\caption{Minimaalinen \LaTeX-tiedosto} \label{mini} +\end{figure} + +\begin{figure}[!tp] +\begin{lined}{10cm} +\begin{verbatim} +\documentclass[a4paper]{article} +\usepackage[latin1]{inputenc} +\usepackage[T1]{fontenc} +\usepackage[finnish]{babel} +\begin{document} +Vähän mitään sanottavaa, pöh.. +\end{document} +\end{verbatim} +\end{lined} +\caption{Minimalistinen suomalainen teksti} \label{document} +\end{figure} + +\section{Tyypillinen sessio komentotulkin kanssa} + +Haluat varmaankin kuollaksesi kokeilla sivulla \pageref{mini} esitettyä +pientä \LaTeX:n käsikirjoitustiedostoa. Tässä hieman ohjeita: +\LaTeX{} itse tulee ilman mitään graafista käyttöliittymää. Se on +yksinkertaisesti ohjelma, joka rouskuttaa käsikirjoitustiedostoja. +Joissakin järjestelmissä \LaTeX{} on asennettu niin, että käytettävissä on +graafinen käyttöliittymä, jossa \LaTeX{} voidaan panna töihin hiirtä klikkaamalla. +Mutta tosimies ei klikkaile, joten tässä kerrotaan miten \LaTeX{} saadaan +käsittelemään käsikirjoitustiedostoa tekstipohjaisessa järjestelmässä. +Tässä oletetaan, että koneeseen on jo asennettu toimiva \LaTeX-järjestelmä.\footnote{Näin +on yleensä ainakin Unix-järjestelmissä ja{\ldots} tosimiehet käyttävät Unixia, +joten{\ldots} ;-)} + +\begin{enumerate} +\item Kirjoita/muokkaa \LaTeX-käsikirjoitustiedostoa. Tämä tiedosto on +yksinkertainen ASCII-tiedosto. Unixissa tämä voidaan tehdä millä tahansa +editorilla. Windowsissa pitänee varmistua, että tiedosto tallentuu ASCII- +tai tekstimuodossa. Kun nimeät tiedoston, varmistu, että se saa päätteen +\eei{.tex}. + +\item Pane \LaTeX{} kääntämään käsikirjoitustiedosto \texttt{.dvi}-tiedostoksi. +Voi olla tarpeen ajaa \LaTeX muutaman kerran, jotta sisällysluettelo ja kaikki +ristiviittaukset saadaan aikaiseksi. Kun käsikirjoituksessa on virhe, \LaTeX{} +huomauttaa siitä ja lopettaa tiedoston käsittelyn. Kirjoita \texttt{ctrl-D}, +jotta pääset takaisin komentotulkkiin. + +\begin{lscommand} +\verb+latex foo.tex+ +\end{lscommand} + +\item Nyt voit katsella DVI-tiedostoa. Siihen on useampia tapoja. Voit esittää tiedoston +näytöllä komennolla: +\begin{lscommand} +\verb+xdvi foo.dvi &+ +\end{lscommand} +Tämä toimii ainoastaan Unixissa, jossa on X11. Windowsissa voit kokeilla ohjelmaa nimeltä +\texttt{yap} (yet another previewer). + +Voit myös muuntaa dvi-tiedoston PostScript-tiedostoksi, jolloin sitä voidaan katsella +Ghostscriptillä. +\begin{lscommand} +\verb+dvips -Pcmz foo.dvi -o foo.ps+ +\end{lscommand} + +Jos sinulla on onnea, on \LaTeX{}-järjestelmässä \texttt{dvipdf}, jolla +\texttt{.dvi}-tiedostot voi muuntaa suoraan pdf-muotoon.\footnote{Tai sitten voit +muuntaa \LaTeX{}-tiedoston suoraan pdf:ksi \texttt{pdflatex}:lla (suom. huom.).} +\begin{lscommand} +\verb+dvipdf foo.dvi+ +\end{lscommand} + +\end{enumerate} + +\section{Dokumentin ulkoasu} + +\subsection{Dokumenttiluokat}\label{sec:documentclass} + +Kun \LaTeX{} alkaa käsitellä käsikirjoitustiedostoa, se tarvitsee +ensin tiedon dokumentin tyypistä. Tämä määritellään +\ci{documentclass}-komennolla. +\begin{lscommand} +\ci{documentclass}\verb|[|\emph{optiot}\verb|]{|\emph{luokka}\verb|}| +\end{lscommand} +\noindent Tässä \emph{luokka} määrittää dokumentin tyypin. +Taulukko~\ref{documentclasses} listaa tässä johdannossa selitetyt +luokat. \LaTeXe-järjestelmä sisältää myös muita dokumenttiluokkia. +Näitä ovat kirjeet ja kalvot. \emph{\wi{optiot}} toimivat lisämääreinä +dokumenttiluokalle. Optiot erotetaan toisistaan pilkulla. +Taulukossa~\ref{options} listataan standardiluokkien yleisimmät optiot. + +\begin{table}[!bp] +\caption{Dokumenttiluokat} \label{documentclasses} +\begin{lined}{12cm} +\begin{description} + +\item [\normalfont\texttt{article}] sopii tiedelehtien artikkeleille, esitelmille, +lyhyille raporteille, ohjelmien käyttöohjeisiin, kutsuihin, \ldots \index{article-luokka} +\item [\normalfont\texttt{proc}] esitelmäartikkeli, perustuu artikkeliluokkaan. + \index{proc-luokka} +\item [\normalfont\texttt{minimal}] määrittelee ainoastaan sivun koon ja peruskirjasimen. +Tätä käytetään lähinnä virheiden etsimiseen. + \index{minimal-luokka} +\item [\normalfont\texttt{report}] sopii pitemmille raporteille, jotka sisältävät + useita lukuja, pienille kirjoille, opinnäytteille, \ldots \index{report-luokka} +\item [\normalfont\texttt{book}] sopii oikeille kirjoille \index{book-luokka} +\item [\normalfont\texttt{slides}] sopii piirtoheitinkalvoille. Luokka käyttää + isoja groteskikirjaimia. Tämän luokan tilalla voidaan käyttää +Foil\TeX:iä\footnote{\CTAN|macros/latex/contrib/supported/foiltex|}. + \index{slides-luokka}\index{foiltex} +\end{description} +\end{lined} +\end{table} + +\begin{table}[!bp] +\caption{Dokumenttiluokkien optiot} \label{options} +\begin{lined}{12cm} +\begin{flushleft} +\begin{description} +\item[\normalfont\texttt{10pt}, \texttt{11pt}, \texttt{12pt}] \quad Nämä optiot + asettavat dokumentin peruskirjasimen koon. Mikäli kokoa ei määritellä, + käyttöön tulee \texttt{10pt}. \index{dokumentin kirjasimen koko} + \index{peruskirjasimen koko} +\item[\normalfont\texttt{a4paper}, \texttt{letterpaper}, \ldots] \quad Nämä + optiot määrittelevät paperin koon. Oletuksena on amerikkalainen + \texttt{letterpaper}. Näiden lisäksi optiona voidaan antaa \texttt{a5paper}, + \texttt{b5paper}, \texttt{executivepaper} ja \texttt{legalpaper}. + \index{legal paper} \index{paper size}\index{A4 paper}\index{letter paper} \index{A5 + paper}\index{B5 paper}\index{executive paper} + +\item[\normalfont\texttt{fleqn}] \quad Optio latoo matemaattiset kaavat vasempaan + reunaan tasattuina eikä keskitettyinä. + +\item[\normalfont\texttt{leqno}] \quad Asettaa kaavojen numeroinnnin vasempaan reunaan + oikean sijasta. + +\item[\normalfont\texttt{titlepage}, \texttt{notitlepage}] \quad Optiolla voidaan + muuttaa oletuskäytäntöä siitä, tuleeko \wi{dokumentin nimiö} omalle + sivulleen vai ei. \texttt{article}-luokassa nimiö ei tule omalle sivulleen + oletusarvoisesti, kuten \texttt{report}- ja \texttt{book}-luokissa. \index{nimiö} + +\item[\normalfont\texttt{twocolumn}] \quad Panee \LaTeX:n latomaan tekstin + \index{kaksipalstainen teksti} kahdelle palstalle. + +\item[\normalfont\texttt{twoside, oneside}] \quad Määrittelee käyttöön joko + kaksi- tai yksipuolisen tulostuksen. Luokissa \texttt{article} ja + \texttt{report} tulostus on oletusarvoisesti \index{yksipuolinen tulostus} + yksipuolista ja \texttt{book}-luokassa tulostus on \index{kaksipuolinen tulostus} + kaksipuolista. Huomaa, että tämä vaikuttaa ainoastaan dokumentin taittoon. + Lisämääre \texttt{twoside} \emph{ei} vaikuta siihen, tulostaako tulostin dokumentin + todella kaksipuoleisena. + +\item[\normalfont\texttt{landscape}] \quad Latoo tekstin vaaka-asennossa olevalle sivulle. + +\item[\normalfont\texttt{openright, openany}] \quad Luvut alkavat joko vain + oikeanpuoleiselta sivulta tai miltä tahansa seuraavalta sivulta. + Tämä ei toimi \texttt{article}-luokassa, sillä siinä ei lukuja ole + käytössä lainkaan. \texttt{report}-luokka aloittaa luvut oletusarvoisesti + heti seuraavalla sivulla ja \texttt{book}-luokka aloittaa luvut + oikeanpuoleisilta sivuilta. + +\end{description} +\end{flushleft} +\end{lined} +\end{table} + +Esimerkki: käsikirjoitustiedosto voisi alkaa rivillä: +\begin{code} +\ci{documentclass}\verb|[11pt,twoside,a4paper]{article}| +\end{code} +joka pyytää \LaTeX:ia latomaan dokumentin \emph{artikkelina}, jonka +peruskirjasimen koko on \emph{11 pistettä} sekä määrittelemään taiton +\emph{kaksipuoleiselle} tulostukselle \emph{A4-kokoiselle paperille}. +\pagebreak[2] +\subsection{Makropakkaukset} +\index{Makropakkukset} Dokumenttia kirjoitettaessa huomataan mahdollisesti, +että \LaTeX{} ei pysty tekemään kaikkea. Jos mukaan pitää saada +\index{grafiikka} grafiikkaa, \index{värillinen teksti} värillistä tekstiä +tai jonkin tiedoston lähdekoodia, +täytyy \LaTeX:n ominaisuuksia lisätä. Tällaisia lisäyksiä kutsutaan +makropakkauksiksi. Pakkaukset otetaan käyttöön +\begin{lscommand} +\ci{usepackage}\verb|[|\emph{optiot}\verb|]{|\emph{pakkaus}\verb|}| +\end{lscommand} +\noindent komennolla, jossa \emph{pakkaus} on makropakkauksen nimi ja +\emph{optiot} ovat lisämääreitä, jotka käynnistävät pakkauksen tietyt +toiminnot. Osa pakkauksista tulee perus-\LaTeXe:n mukana (Katso +taulukkoa~\ref{packages}). Loput voi hankkia erikseen. Paikallisessa +systeemissä käytössä olevista makropakkauksista löytyy lisätietoa +mahdollisesti \guide:ssa. \LaTeX-pakkausten pääasiallinen tiedonlähde +on \companion. Se sisältää kuvaukset sadoista makropakkauksista sekä +tietoa siitä, miten voidaan tehdä omia lisäyksiä \LaTeXe:iin. + +Nykyisten {\TeX}-järjestelmien mukana asentuu suuri joukko makropakkauksia. +Unix-järjestelmässä näiden dokumentaatioon päästään käsiksi komennolla +\texttt{texdoc}. + +\begin{table}[!hbp] +\caption{Joitakin \LaTeX:n mukana tulevia makropakkauksia} \label{packages} +\begin{lined}{11cm} +\begin{description} +\item[\normalfont\pai{doc}] \LaTeX-ohjelmien dokumentointiin.\\ + Kuvataan tiedostossa \texttt{doc.dtx}\footnote{Tämä tiedosto pitäisi olla + asennettuna paikallisessa järjestelmässä ja siitä pitäisi pystyä saamaan + \texttt{dvi}-tiedosto antamalla komento \texttt{latex doc.dtx} missä + tahansa hakemistossa, johon sinulla on kirjoitusoikeus. Sama pätee + myös muihin tässä taulukossa mainittuihin tiedostoihin.} ja + \companion:ssa. + +\item[\normalfont\pai{exscale}] Tarjoaa matemaattisista lisäkirjasimista + skaalatut versiot.\\ + Kuvataan tiedostossa \texttt{ltexscale.dtx}. + +\item[\normalfont\pai{fontenc}] Määrää \LaTeX:n käyttämän + kirjasimen \index{merkkivalikoima} merkkivalikoiman.\\ + Kuvataan tiedostossa \texttt{ltoutenc.dtx}. + +\item[\normalfont\pai{ifthen}] Lisää käyttöön komennot\\ + 'jos\ldots niin sitten\ldots muuten\ldots.'\\ Kuvataan + \texttt{ifthen.dtx}-tiedostossa ja \companion:ssa. + +\item[\normalfont\pai{latexsym}] Mahdollistaa erityisten + \LaTeX-symbolien käytön. Kuvataan tiedostossa \texttt{latexsym.dtx} + ja \companion:ssa. + +\item[\normalfont\pai{makeidx}] Ottaa käyttöön käskyt hakemistojen + tekemiseksi. Kuvataan kohdassa~\ref{sec:indexing} ja \companion:ssa. + +\item[\normalfont\pai{syntonly}] Tarkistaa dokumentin rakenteen sitä latomatta. + +\item[\normalfont\pai{inputenc}] Käyttäjä voi määritellä mitä merkistöä + käsikirjoitus käyttää. Valittavana on mm.~ASCII, ISO Latin-1, ISO Latin-2, + 437/859 MS-DOS:n merkistöistä, Apple Macintosh, Next, ANSI-Windows tai käyttäjän + määrittelemä. Hyödyllinen mm.~suomenkielissä dokumenteissa. + Kuvataan tiedostossa \texttt{inputenc.dtx} ja suomen osalta + kohdassa~\ref{sec:suomi}. +\end{description} +\end{lined} +\end{table} + +\subsection{Sivujen tyylit} + +\LaTeX:ssa on kolme etukäteen määriteltyä +\wi{ylätunniste}/\wi{alatunniste}"-yhdistelmää eli ns.~\wi{sivutyyli}ä. +Käskyn \index{sivun tyylit!yksinkertainen@\texttt{plain}}\index{plain@\texttt{plain}} +\index{sivun tyylit!ylä- ja alatunnisteet@\texttt{headings}}\index{ylä- ja alatunnisteet@texttt{headings}} +\index{sivun tyylit!tyhjä@\texttt{empty}}\index{tyhjä@\texttt{empty}} +\begin{lscommand} +\ci{pagestyle}\verb|{|\emph{tyyli}\verb|}| +\end{lscommand} +\noindent \emph{tyyli}-parametri määrittelee mitä tyyliä käytetään. +Taulukko~\ref{pagestyle} +listaa etukäteen määritellyt sivutyylit. + +\begin{table}[!hbp] +\caption{\LaTeX:n sivutyylit} \label{pagestyle} +\begin{lined}{12cm} +\begin{description} + +\item[\normalfont\texttt{plain}] tulostaa sivunumerot sivun alaosaan, keskelle. + Tämä sivutyyli on oletuksena. + +\item[\normalfont\texttt{headings}] tulostaa luvun nimen ja sivunumeron sivun yläosaan. + Sivun alaosa jää tyhjäksi. (Tämä tyyli on käytössä tässä dokumentissa.) +\item[\normalfont\texttt{empty}] sekä ylä- että alatunniste ovat tyhjiä. + +\end{description} +\end{lined} +\end{table} + +Kirjoitettavana olevan sivun tyyli voidaan muuttaa käskyllä +\begin{lscommand} +\ci{thispagestyle}\verb|{|\emph{tyyli}\verb|}| +\end{lscommand} + +Osassa~\ref{sec:fancy}, sivulla~\pageref{sec:fancy} sekä teoksessa \companion{} kerrotaan miten +voidaan määritellä omia ylä- ja alatunnisteita. + +% +% Pointer to the Fancy headings Package description ! +% + +\section{Eteen osuvia tiedostoja} + +\LaTeX:lla työskenneltäessä on pian eksyksissä eri tiedostopäätteiden +kanssa. Alla on lista, joka kertoo eri tiedostotyypeistä,\index{tiedostotyypit} +joihin voi törmätä \TeX:n kanssa työskenneltäessä. Huomaa, että tämä +ole olevinaan täydellinen lista kaikista päätteistä, mutta jos huomaat +jonkin puuttuvan, pane tulemaan viestiä. + +\begin{description} + +\item[\eei{.tex}] \LaTeX:n tai \TeX:n käsikirjoitustiedosto. Voidaan + ajaa \texttt{latex}:lla. +\item[\eei{.sty}] \LaTeX:n makrokokoelma. Tällaisen tiedoston voi + ottaa käyttöön \LaTeX-dokumentissa \ci{usepackage}-komennolla. +\item[\eei{.dtx}] Dokumentoitua \TeX:iä. \LaTeX:n makrokokoelmatiedostot + toimitetaan pääasiassa tässä muodossa. Jos .dtx-tiedoston ajaa + \LaTeX:lla, saa tulostettua makrokokoelman ohjeen. +\item[\eei{.ins}] Asennustiedosto, jota vastaa .dtx-tiedosto. + Kun \LaTeX-makrokokoelman lataa verkosta, saa normaalisti .dtx- ja +.ins-tiedoston. Kun .ins-tiedoston ajaa \LaTeX:lla, saa .dtx-tiedostosta + purettua makrotiedostot eli .sty-tiedostot. +\item[\eei{.cls}] Luokkatiedosto määrittelee dokumentin ulkoasun. + Ne valitaan käyttöön \ci{documentclass}-komennolla. +\item[\eei{.fd}] kertoo {\LaTeX}:lle mitä kirjasintiedostoja käytetään. +\end{description} +Kun \LaTeX:lle syötetään käsikirjoitustiedosto, syntyy seuraavia +tiedostoja: + +\begin{description} +\item[\eei{.dvi}] Device Independent file eli laitteistoriippumaton tiedosto. + Tämä on pääasiallisin tulos \LaTeX:n käsittelystä. Sisältöä voidaan + tarkastella DVI esikatseluohjelmalla tai se voidaan lähettää tulostimelle + \texttt{dvips}:llä tai vastaavalla ohjelmalla. +\item[\eei{.log}] Lokitiedosto, joka kertoo yksityiskohtaisesti mitä + käännösprosessin aikana tapahtui. +\item[\eei{.toc}] Varastoi kaikki väliotsikot. Tiedosto luetaan + seuraavan ajon aikana ja siitä muodostetaan sisällysluettelo. +\item[\eei{.lof}] Sama kuin .toc, mutta tästä saadaan kuvitusluettelo. +\item[\eei{.lot}] Edelleen samaa, mutta nyt taulukoiden listaamista varten. +\item[\eei{.aux}] Vielä yksi tiedosto, joka välittää tietoa käännöskerrasta + toiseen. .aux-tiedostoa käytetään muun muassa ristiviitteiden sisältämän +informaation säilyttämiseen. +\item[\eei{.idx}] Jos dokumentissa on hakemisto, \LaTeX{} varastoi kaikki +hakemistoon menevät sanat tähän tiedostoon. Tämä tiedosto prosessoidaan +\texttt{makeindex}:llä. Katso lisätietoja hakemiston tekemisestä +kohdasta \ref{sec:indexing}, sivulla \pageref{sec:indexing} +\item[\eei{.ind}] On prosessoitu .idx-tiedosto, jonka sisältö on +valmiina liitettäväksi dokumenttiin seuraavan ajon aikana. +\item[\eei{.ilg}] Lokitiedosto, joka kertoo mitä \texttt{makeindex} teki. +\end{description} + + +% Package Info pointer +% +% + + +% +% Add Info on page-numbering, ... +% \pagenumbering + +\section{Suuret projektit} + +Isoja dokumentteja tehtäessä voidaan käsikirjoitus jakaa useampaan +tiedostoon. \LaTeX:ssa on kaksi komentoa tämän tekemiseen. + +\begin{lscommand} +\ci{include}\verb|{|\emph{tiedosto}\verb|}| +\end{lscommand} +\noindent Tätä käskyä voidaan käyttää itse tekstiosassa lisäämään +toisen tiedoston sisältö. Huomaa, että \LaTeX{} aloittaa uuden +sivun ennen kuin se alkaa käsitellä \emph{tiedoston} sisältöä. + +Toista käskyä voidaan käyttää esittelyosassa. Se antaa mahdollisuuden +ohjata \LaTeX{} lukemaan ainoastaan tietyt tiedostot. +\begin{lscommand} +\ci{includeonly}\verb|{|\emph{tiedosto1}\verb|,|\emph{tiedosto2}% +\verb|,|\ldots\verb|}| +\end{lscommand} + +Kun tämä käsky on annettu esittelyosassa, suoritetaan vain +\ci{includeonly}-komennon listassa mainittujen tiedostojen \ci{include}-komennot. +Huomaa, että tiedoston nimen ja pilkun välissä ei saa olla välilyöntiä. + +\ci{include}-käsky aloittaa tiedoston sisällön latomisen uudelta sivulta. +Tästä on hyötyä \ci{includeonly}-käskyä käytettäessä, sillä sivun vaihdot +eivät muuta paikkaa, vaikka kaikkia tiedostoja ei luettaisi. +Joskus tämä ei ole toivottavaa. Silloin voidaan käyttää käskyä +\begin{lscommand} +\ci{input}\verb|{|\emph{tiedosto}\verb|}| +\end{lscommand} +\noindent Se yksinkertaisesti ottaa mukaan tiedoston sisällön siihen paikkaan, +ilman mitään kommervenkkejä. + +Jos halutaan, että \LaTeX{} ei tee muuta kuin tarkistaa nopeasti +dokumentin, voidaan käyttää makropakettia \pai{syntonly}. Se panee +\LaTeX:n tarkastamaan, että dokumentissa on käytetty oikeaa syntaksia +ja komentoja on käytetty oikein, mutta ei tulosta mitään (DVI) tulostustiedostoa. + +Koska \LaTeX toimii nopeammin tässä tilassa, voidaan säästää aikaa. +Käyttö on hyvin yksinkertaista: + +\begin{verbatim} +\usepackage{syntonly} +\syntaxonly +\end{verbatim} + +Kun halutaan tuottaa ladottuja sivuja, voidaan yksinkertaisesti +kommentoida jälkimmäinen rivi (lisäämällä sen eteen prosenttimerkki). + +\section{Suomenkieliset dokumentit}\label{sec:suomi} + +Kun dokumenttia ei kirjoiteta englanniksi, vaan esimerkiksi suomeksi, +\LaTeX:n asetuksia täytyy muuttaa hieman: + +\begin{enumerate} +\item Kaikki automaattisesti generoitavat tekstit\footnote{Sisällysluettelo, +Kuvaluettelo, \ldots} täytyy muuttaa suomenkielisiksi. Käyttämällä +Johannes Braamsin \pai{babel}-makropakettia nämä muuttuvat automaattisesti +halutun kieliseksi. +\item \LaTeX:n täytyy saada tietoonsa jostain suomen kielen tavutussäännöt. +Tavutussääntöjen lisääminen on hieman hankalampi juttu. Jotta eri tavutussäännöt +tulisivat käyttöön täytyy ne lisätä formaattitiedostoon. \guide:n pitäisi antaa +tarvittava informaatio. +\end{enumerate} + +Jos järjestelmääsi on jo lisätty suomalaiset tavutussäännöt, voit käynnistää +suomalaiset \pai{babel}-makrot lisäämällä \verb|\documentclass|-käskyn jälkeen: +\begin{lscommand} +\ci{usepackage}\verb|[|\emph{finnish}\verb|]{babel}| +\end{lscommand} +\noindent Suomen tilalla voidaan käyttää myös muita kieliä. \guide:n pitäisi +kertoa mitä kieliä järjestelmäsi tukee. Babel ottaa samalla käyttöön suomalaiset +tavutussäännöt. Jos järjestelmäsi \LaTeX-formaatti ei tue suomen tavutusta, +babel toimii kyllä, mutta se ottaa tavutuksen pois päältä. Tämä vaikuttaa +heikentävästi dokumentin ulkoasuun. + +\textsf{Babel} lisää käyttöön myös muita käskyjä, jotka liittyvät merkkien +syöttöön, tavutukseen jne. Niistä kerrotaan tarkemmin edempänä tässä dokumentissa. + +\subsection{Ääkköset käsikirjoituksesa} + +\LaTeX:ssa on useita tapoja kirjoittaa suomessa käytettävät +kirjaimet 'ä' ja 'ö'. Helpointa on luonnollisesti käyttää +suomalaisen näppäimistön vastaavia kirjaimia suoraan. +Tämä onnistuu kyllä \LaTeX:ssa, vaikka se onkin amerikkalaista +alkuperää ja olettaa, että käytössä on vain englanninkielen +aakkoset. + +Ongelmana on kuitenkin se, että eri tietokonesysteemeissä +käytetään ainakin vielä toistaiseksi erilaisia merkistöjä, +joissa 'ä' ja 'ö' sijaitsevat eri paikoissa. Niinpä +\LaTeX:lle täytyy kertoa mitä merkistöä käytetään. Se tehdään +käskyllä: + +\begin{lscommand} +\ci{usepackage}\verb|[|\emph{merkistö}\verb|]{|inputenc\verb|}| +\end{lscommand} + +joka kannattaa lisätä heti \ci{documentclass}-komennon jälkeen. + +Hakasulkeiden sisään tulee käytetyn merkistön nimi. +Vaikka kirjoittaja ei tietäisi mitään tietokoneiden merkistöistä, +voi hän valita helposti oikean merkistön, kunhan +käyttöjärjestelmän nimi on tiedossa. Taulukossa~\ref{inputencs} +on lueteltu eri käyttöjärjestelmissä käytetyt merkistöt +suomen kieltä varten. + +%Input Encoding +\newcommand{\ieih}[1]{% +\index{merkistöt!syöttömerkistö!#1@\texttt{#1}}% +\index{syöttömerkistöt!#1@\texttt{#1}}% +\index{#1@\texttt{#1}}} +\newcommand{\iei}[1]{% +\ieih{#1}\texttt{#1}} +%Font Encoding +\newcommand{\feih}[1]{% +\index{merkistöt!kirjasin!#1@\texttt{#1}}% +\index{kirjasimen merkistövalikoima!#1@\texttt{#1}}% +\index{#1@\texttt{#1}}} +\newcommand{\fei}[1]{% +\feih{#1}\texttt{#1}} + +\begin{table}[!bp] +\caption{Eri käyttöjärjestelmien merkistöt} \label{inputencs} +\begin{lined}{12cm} +\begin{description} +\item[\normalfont\texttt{ansinew}] on Windowsin käyttäjille. +\item[\normalfont\texttt{cp1252}] on vaihtoehtoinen tapa ilmaista, että + käytetään Windowsin merkistöä. Tämä vaihtoehto tuli käyttöön + \LaTeXe:ssa vuoden 1997 joulukuun päivityksessä. +\item[\normalfont\texttt{latin1}] on \textsc{unix}in, Linuxin ja Amigan käyttäjille. +\item[\normalfont\texttt{cp850}] on suomalaisille MS-DOSin + käyttäjille. +\item[\normalfont\texttt{applemac}] on Macintoshin käyttäjille. +\item[\normalfont\texttt{next}] on Next-työasemien käyttäjille. +\item[\normalfont\texttt{decmulti}] on DEC-systeemien käyttäjille. +\end{description} +\end{lined} +\end{table} + +Lisäksi uusimmmissa Windowsin versioissa voidaan käyttää +Unicode-merkistöä. Tämä mahdollistaa useiden eri kirjoitusjärjestelmien +käyttämisen samassa dokumentissa. Mikäli tekstieditori tukee +Unicode-merkistöä, voidaan myös {\LaTeX}:ssa käyttää +sitä \pai{ucs}-makropakkauksen avulla. +\begin{lscommand} +\ci{usepackage}\verb|{ucs}|\\ +\ci{usepackage}\verb|[|\iei{utf8}\verb|]{inputenc}| +\end{lscommand} + +Nyt {\LaTeX}:n käsikirjoitustiedostoissa voidaan +käyttää \iei{utf8}-koodattua Unicodea. Tässä koodauksessa +yhtä merkkiä vastaa yhdestä neljään tavua. + +Suomessa \TeX-järjestelmä on joskus asennettu niin, että +yllämainittua makropakettia ei tarvitse kirjoittaa dokumentin +esittelyosaan. Lisätietoja pitäisi saada +\guide:sta tai kokeilemalla toimivatko ääkköset ilman mitään +erityisiä käskyjä. + +Lisäksi tulee huomioida, että kaikki järjestelmät eivät ehkä +pysty lukemaan sellaisia käsikirjoitustiedostoja, joissa +ääkköset ovat mukana. Jo pelkästään MS-DOSissa ja Windowsissa +ääkköset on koodattu eri paikkoihin. Ääkkösistä voi myös olla harmia, +jos käsikirjoitus lähetetään amerikkalaiselle kustantajalle, +joka haluaa pelkkiä ASCII-tiedostoja ilman mitään eurooppalaisia kirjaimia. +Näiden kirjainten esittämiseen on \LaTeX:ssa kuitenkin muitakin +tapoja, joista kerrotaan edempänä. + +\subsection{Oikean merkistön valinta} + +LaTeX2e käyttää oletusarvoisesti Donald Knuthin tekemiä +\emph{Computer Modern} "=kirjasimia,\label{OT1} joilla voidaan kyllä +esittää 'ä' ja 'ö' "=kirjaimet, mutta suomalainen tavutus +ei suostu toimimaan näillä kirjasimilla. Syynä on se, että +Knuthin kirjasimissa 'ä' ja 'ö' tulostetaan yhdistämällä +'a' tai 'o' ja ne kaksi pistettä, joita saksalaiset kutsuvat +nimellä 'umlaut'. Lopputulos on tulostettuna suht oikean +näköinen, mutta tavutusmekanismi ei ymmärrä tällaisia +yhdistelmäkirjaimia. + +Knuthin merkistöä käytettäessä ei tavutus toimi missään +muussakaan kielessä, jossa käytetään aksentteja. Niinpä +\LaTeXe:ta varten tehtiin uusi merkistö, jolle annettiin nimeksi +\fei{T1} (Text Encoding 1) ja uudet kirjasimet, +joiden nimeksi tuli \emph{European Computer Modern} eli EC. +Tässä merkistössä on kirjaimia, joissa aksentit ovat valmiina +mukana, niinpä tavutus suostuu jälleen toimimaan. +T1-merkistö otetaan käyttöön käskyllä: + +\begin{lscommand} +\ci{usepackage}\verb|[T1]{fontenc}| +\end{lscommand} + +Muitakin merkistöjä on olemassa kuin {T1}, esim.~Knuthin merkistön +tunnus on \fei{OT1} Old Text Encoding 1) ja kyrillisten LH-kirjasinten +merkistöjen tunnuksia ovat \fei{T2A}, \fei{T2B}, \fei{T2C} ja \fei{X2}.\footnote{Lista kielistä, +joita nämä merkistöt tukevat löytyy teoksesta \cite{cyrguide}.} +Kreikkalaista merkistöä varten on olemassa CB-paketti, joka sisältää \fei{LGR}-merkistöä +käyttävät kirjasimet. + +Oletuksena T1-merkistössä käytetään siis EC-kirjasimia, mutta +näistä ei ensin ollut olemassa ilmaisia Postscript-versioita ja tästä +tuli ongelma, kun dokumenteista piti tehdä PDF-versio. Ongelma +ratkaistiin yleensä ottamalla käyttöön jokin Postscript-kirjasin. +Esimerkiksi Times otetaan käyttöön seuraavasti: +\begin{lscommand} +\ci{usepackage}\verb|{times}| +\end{lscommand} + +Toinen vaihtoehto oli käyttää makropakettia \pai{ae}, joka +huijasi \LaTeX:n käyttämään \emph{Computer Modern} "=kirjasinta +\fei{T1}-merkistön tavoin. + +Kummassakin tavassa on vikana se, että aivan kaikkia T1-merkistön +kirjainmerkkejä ei löydy kuin EC-kirjasimista. Näitä ei yleensä +kuitenkaan tarvita suomenkielisssä dokumenteissa. + +Vuoden 2002 aikana CTAN-hakemistoon kuitenkin ilmaantui +fonttikokoelma nimeltä \emph{Super Computer Modern}, joka +sisältää EC-kirjasinten Post\-script"-kopiot sekä mm.~kyrilliset +kirjainmerkit. Suomenkielisen version PDF-tiedostoissa on +käytetty juuri näitä Super Computer Modern "=kirjasimia. + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "lyhyt2e" +%%% End: + diff --git a/Master/texmf-doc/doc/finnish/lshort-finnish/src/erikois.tex b/Master/texmf-doc/doc/finnish/lshort-finnish/src/erikois.tex new file mode 100644 index 00000000000..47e8e8bc62f --- /dev/null +++ b/Master/texmf-doc/doc/finnish/lshort-finnish/src/erikois.tex @@ -0,0 +1,965 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Specialities of the LaTeX system +% $Id: erikois.tex,v 1.2 2005/04/05 08:05:09 hellgren Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\chapter{Lisukkeet} +\begin{intro} + Ison dokumentin työstämisessä \LaTeX{} auttaa erityisominaisuuksillaan. + Näitä ovat mm.~hakemiston luominen ja kirjallisuusviitteiden hallinta. + Täydellisempi kuvaus \LaTeX:n erikoistoiminnoista ja lisukkeista + on saatavilla teoksissa {\normalfont\manual{}} ja {\normalfont \companion}. +\end{intro} + +\section{\EPSi-grafiikan lisääminen}\label{eps} + +\LaTeX{} tarjoaa kuvien ja grafiikan kaltaisten objektien käsittelyyn +perustarpeet ympäristöjen \texttt{figure} ja \texttt{table} muodossa. + +Perus-\LaTeX{} tai \LaTeX:n laajennuspakkaukset tarjoavat useita mahdollisuuksia +tehdä varsinaista grafiikkaa.\index{grafiikka} Valitettavasti ne ovat +useimmille käyttäjille vaikeatajuisia. Niinpä niitä ei selitetä sen +tarkemmin tässä oppaassa. Asiasta saa lisätietoa teoksista {\companion} ja +{\manual}. + +On paljon helpompaa saada grafiikkaa dokumenttiin tekemällä se +siihen erikoistuneella ohjelmalla\footnote{Näitä ovat mm.~XFig, CorelDraw!, +Freehand, Gnuplot, \ldots}. Valmis grafiikka voidaan sitten lisätä +dokumenttiin. \LaTeX tarjoaa jälleen tähän useita tapoja. Tässä +tekstissä käsitellään ainoastaan \EPSi{} eli +EPS-kuvia, koska niiden tekeminen on helppoa +ja ne ovat yleisiä. EPS-kuvien tulostamiseksi täytyy käytössä olla +\PSi-tulostin\footnote{Toinen vaihtoehto on hoitaa tulostus +\textsc{\wi{GhostScript}}-ohjelman kautta. Se on saatavilla osoitteesta +\CTANref|support/ghostscript|. Windows- ja OS/2-käyttäjät +voisivat vilkaista myös ohjelmaa nimeltä \textsc{GSview}.} + +D.P.~Carlislen tekemässä \pai{graphicx}-makropakkauksessa on joukko +hyviä komentoja grafiikan lisäämiseksi. Se on osa makropakkausten joukkoa +nimeltä ''graphics''.\footnote{\CTANref|macros/latex/required/graphics|} + +Jos oletetaan, että systeemin käytössä on \PSi-tulostin ja +\textsf{graphicx}-pakkaus on asennettu, voidaan dokumenttiin lisätä kuvia +seuraavasti: + +\begin{enumerate} +\item Tallenna kuva piirustusohjelmassasi EPS-formaattiin.\footnote{Jos ohjelmassa + ei voi tallentaa EPS-muotoon, voidaan yritää asentaa \PSi-tulostimen + ajuri (esim.~Apple LaserWriter) ja tulostaa kuva tiedostoon tällä ajurilla. + On huomattava, että EPS-kuvassa saa olla vain yksi sivu. Jotkut tulostinajurit + voidaan säätää tulostamaan erityisesti EPS-formaatissa.} +\item Ladataan \textsf{graphicx}-paketti tiedoston esittelyosassa käskyllä +\begin{lscommand} +\verb|\usepackage[|\emph{ajuri}\verb|]{graphicx}| +\end{lscommand} +jossa \emph{ajuri} on systeemisi ohjelma, jolla dvi-tiedostot muunnetaan Post\-Scriptiksi. +Yleisin tällainen ohjelma on \texttt{dvips}. Ajurin nimi tarvitaan, koska +\TeX:ssä ei ole mitään standarditapaa lisätä kuvia. Kun \textsf{gra\-phicx}-paketti +tietää ajurin nimen se voi valita oikean tavan lisätä tietoa kuvasta +\texttt{.dvi}-tiedostoon niin, että tulostin ymmärtää sen ja lisää \texttt{.eps}-tiedoston +oikein. +\item Käyttämällä komentoa +\begin{lscommand} +\ci{includegraphics}\verb|[|\emph{avain}=\emph{arvo}, \ldots\verb|]{|\emph{tiedosto}\verb|}| +\end{lscommand} +\emph{tiedosto} lisätään dokumenttiin. Vaihtoehtoinen parametri hyväksyy +pilkulla erotetun \emph{avainten} listan niihin liittyvine \emph{arvoineen}. +\emph{Avaimia} voidaan käyttää muuttamaan kuvan leveyttä, korkeutta tai kuvan kääntämiseen. +Taulukko~\ref{keyvals} luettelee tärkeimmät avaimet. +\end{enumerate} + +\begin{table}[htb] +\caption{Avainsanat \textsf{graphicx}-pakkaukselle} +\label{keyvals} +\begin{lined}{9cm} +\begin{tabular}{@{}ll} +\texttt{width}& kuvan leveydeksi tulee \emph{arvo}\\ +\texttt{height}& kuvan korkeudeksi tulee \emph{arvo}\\ +\texttt{angle}& kääntää kuvan vastapäivään\\ +\texttt{scale}& suurentaa tai pienentää kuvaa \\ +\end{tabular} + +\bigskip +\end{lined} +\end{table} + +Seuraava esimerkki toivottavasti selvittää asioita: +\begin{code} +\begin{verbatim} +\begin{figure} +\begin{center} +\includegraphics[angle=90, width=0.5\textwidth]{testi.eps} +\end{center} +\end{figure} +\end{verbatim} +\end{code} +Tämä lisää kuvan tiedostosta \texttt{testi.eps}. Kuvaa käännetään \emph{ensin} 90 astetta +ja \emph{sitten} leveydeksi annetaan puolet normaalin kappaleen leveydestä. Sivujen +suhde on $1,0$, sillä korkeudelle ei ole määritelty mitään erityistä arvoa. Leveys +ja korkeus voidaan antaa myös absoluuttisina mittoina. Katso taulukosta~\ref{units} +sivulla \pageref{units} lisätietoja. Lisää informaatiota tästä aiheestä löytyy +ohjeista \cite{graphics} ja \cite{eps}. + +\section{Bibliografia} + +Bibliografia\index{bibliografia} voidaan tehdä \ei{thebibliography}-ympäristöllä. +Jokainen nimeke alkaa komennolla +\begin{lscommand} +\ci{bibitem}\verb|[|\emph{viitetunnus}\verb|]{|\emph{tunniste}\verb|}| +\end{lscommand} +\emph{Tunnistetta} käytetään dokumentissa viitattaessa kirjaan tai artikkeliin. +\begin{lscommand} +\ci{cite}\verb|{|\emph{tunniste}\verb|}| +\end{lscommand} +Jos \emph{viitetunnus} jätetään pois kirjallisuusluettelon kohdat numeroidaan automaattisesti. +Numeroiden tai muiden tunnusten maksimileveys asetetaan komennon +\verb|\begin{thebibliography}| jälkeen tulevalla parametrilla. Alla olevassa +esimerkissä \verb|{99}| kertoo \LaTeX:lle, että yksikään bibliografian nimekkeiden +numeroista ei ole leveämpi kuin 99. + +\begin{example} +Partl~\cite{pa} on +esittänyt, että \ldots +\begin{thebibliography}{99} +\bibitem{pa} H.~Partl: +\emph{German \TeX}, +TUGboat Vol.~9, No.~1 ('88) +\end{thebibliography} +\end{example} + +\chaptermark{Lisukkeet} % w need to fix the damage done by the + %bibliography example. +\thispagestyle{fancyplain} + +Laajempia projekteja ajatellen kannattaa tutustua Bib\TeX-ohjelmaan. +Se sisältyy useimpiin \TeX-järjestelmiin. Ohjelma antaa mahdollisuuden +ylläpitää tietokantaa kirjallisuudesta ja ottaa siitä mukaan tekstissä +viitatut nimekkeet. Bib\TeX:n ulkoasu perustuu tyylimäärityksiin, jotka +antavat mahdollisuuden tehdä erityyppisiä kirjallisuusluetteloita. + +\section{Hakemiston tekeminen} \label{sec:indexing} + +Hakemisto\index{hakemisto} on monissa kirjoissa hyödyllinen ominaisuus. +\LaTeX:lla ja apuohjelmalla \texttt{makeindex}\footnote{Niissä järjestelmissä, jotka +tukevat korkeintaan 8 merkin mittaisia tiedostonimiä, ohjelman nimenä saattaa +olla \texttt{makeidx}.} voidaan generoida helposti hakemisto. Tässä +tekstissä selitetään hakemiston teosta vain peruskomennot. Syvällisempi +selvitys löytyy kirjasta \companion. \index{makeindex-ohjelma} \index{makeidx-paketti} + +Jotta \LaTeX{} osaisi tehdä hakemistoja, täytyy esittelyosassa ottaa +käyttöön \pai{makeidx}-makropaketti komennolla: +\begin{lscommand} +\verb|\usepackage{makeidx}| +\end{lscommand} +\noindent lisäksi hakemiston tekemiseksi täytyy esittelyosaan panna komento: +\begin{lscommand} + \ci{makeindex} +\end{lscommand} + +\noindent Hakemiston sisältö määritellään komennoilla: +\begin{lscommand} + \ci{index}\verb|{|\emph{avain}\verb|}| +\end{lscommand} +\noindent joissa \emph{avain} on hakemistoon tuleva hakusana. Hakemistokomennot +pannaan tekstiin siihen kohtaan, johon hakemiston halutaan viittaavan. +Taulukossa~\ref{index} selitetään \emph{avain}-argumentin syntaksia +muutaman esimerkin voimin. + +\begin{table}[!tp] +\caption{Hakemiston avainsanojen syntaksin esimerkkejä} +\label{index} +\begin{center} +\begin{tabular}{@{}lll@{}} + \textbf{Esimerkki} &\textbf{Hakemiston rivi} &\textbf{Kommentti}\\\hline + \rule{0pt}{1.05em}\verb|\index{morjens}| &morjens, 1 &Yksinkertainen hakusana\\ +\verb|\index{morjens!Petri}| &\hspace*{2ex}Petri, 3 &morjenksen alle tuleva hakusana\\ +\verb|\index{Sam@\textsl{Sami}}| &\textsl{Sami}, 2& Muotoiltu hakusana\\ +\verb|\index{Lin@\textbf{Liinu}}| &\textbf{Liinu}, 7& Sama kuin yllä\\ +\verb.\index{Jaana|textbf}. &Jaana, \textbf{3}& Muotoiltu sivunnumero\\ +\verb.\index{Jussi|textit}. &Jussi, \textit{5}& Sama kuin yllä\\ +\verb.\index{eolienne@\'eolienne}. &\'eolienne, 4& Aksenttien käsittely +\end{tabular} +\end{center} +\end{table} + +Kun \LaTeX{} käy läpi käsikirjoitustiedostoa, jokainen \verb|\index|-komento +kirjoittaa hakemiston hakusanan yhdessä sivunumeron kanssa erityiseen +tiedostoon. Tiedostolla on sama nimi kuin \LaTeX:n käsikirjoitustiedostolla, +mutta eri pääte (\verb|.idx|). Seuraavaksi \texttt{makeindex}-ohjelma käsittelee +tätä \texttt{.idx}-tiedostoa. + +\begin{lscommand} + \texttt{makeindex} \emph{tiedosto} +\end{lscommand} + +\texttt{Makeindex}-ohjelma generoi aakkostetun hakemiston jolla on sama +tiedostonimi, mutta nyt päätteenä on \texttt{.ind}. Jos \LaTeX:n +käsikirjoitustiedosto käsitellään jälleen kerran, aakkostettu hakemisto +tulee mukaan dokumenttiin siihen kohtaan, josta \LaTeX{} löytää komennon +\begin{lscommand} + \ci{printindex} +\end{lscommand} + +\LaTeXe:n mukana tuleva \pai{showidx}-makropakkaus tulostaa kaikki +hakemiston hakusanat tekstin vasempaan marginaaliin. Tästä on apua +oikoluettaessa dokumenttia ja hakemistoa tarkistettaessa. + +Huomaa, että \ci{index}-komento voi vaikuttaa ulkoasuun huolimattomasti +käytettynä. + +\begin{example} +Minun sanani \index{sana}. +Vastaan sinun sanasi\index{sana}. +Huomaa pisteen sijoittuminen. +\end{example} + +\section{Tyylikkäät ylä- ja alatunnisteet} +\label{sec:fancy} + +Piet van Oostrumin kirjoittama makropakkaus \pai{fancyhdr}\footnote{Saatavilla +osoitteesta \CTANref|macros/latex/contrib/supported/fancyhdr|} +lisää muutaman yksinkertaisen komennon, jolla voidaan määritellä +dokumentin ylä- ja alatunnisteiden ulkoasu. Tämän sivun yläosassa nähdään +käytännön toteutus makropakkauksen käytöstä. + +\begin{figure}[!htbp] +\begin{lined}{\textwidth} +\begin{verbatim} +\documentclass{book} +\usepackage{fancyhdr} +\pagestyle{fancy} +% tämä varmistaa, että otsikoiden tunnisteet +% ovat pienillä kirjaimilla. +\renewcommand{\chaptermark}[1]{\markboth{#1}{}} +\renewcommand{\sectionmark}[1]{\markright{\thesection\ #1}} +\fancyhf{} % poista ylä- ja alatunnisteen nykyiset asetukset +\fancyhead[LE,RO]{\bfseries\thepage} +\fancyhead[LO]{\bfseries\rightmark} +\fancyhead[RE]{\bfseries\leftmark} +\renewcommand{\headrulewidth}{0.5pt} +\renewcommand{\footrulewidth}{0pt} +\addtolength{\headheight}{0.5pt} % tilaa vaakaviivalle +\fancypagestyle{plain}{% + \fancyhead{} % perussivuille ei tule tunnisteita + \renewcommand{\headrulewidth}{0pt} % eikä viivaa +} +\end{verbatim} +\end{lined} +\caption{Esimerkki \pai{fancyhdr}:n käytöstä} \label{fancyhdr} +\end{figure} + +Hankalinta ylä- ja alatunnisteiden määrittelemisessä on otsikkotekstien +saaminen sinne. \LaTeX:ssa tämä saadaan aikaan kaksivaiheisella +tempulla. Ylä- ja alatunnisteen määrittelyissä käytetään komentoja \ci{rightmark} +ja \ci{leftmark} esittämään vastaavaa luvun ja osion otsikkoa. +Näiden komentojen arvot kirjoitetaan uusiksi aina kun vastaan tulee uusi +luku tai osio. + +Joustavuuden nimissä \verb|\chapter|-komento kumppaneineen ei määrittele +itse \ci{rightmark}:ia ja \ci{leftmark}:ia uusiksi, vaan se kutsuu komentoja +\ci{chaptermark}, \ci{sectionmark} tai \ci{subsectionmark}, jotka sitten +määrittelevät \ci{rightmark}:n ja \ci{leftmark}:n. + +Niinpä, mikäli luvun nimen ulkoasua halutaan muuttaa tunnisteessa, +riittää, että \ci{chaptermark} määritellään uusiksi. \cih{sectionmark}\cih{subsectionmark} + +Kuva \ref{fancyhdr} näyttää tavan käyttää \pai{fancyhdr}-makroja +niin, että ylätunnisteet näyttävät samalta kuin tässä kirjasessa. +Joka tapauksessa on suositeltavaa hankkia käsiinsä alaviitteessä mainitussa +osoitteessa olevan makropakkauksen käyttöohjeet. + +\section{Verbatim-makropakkaus} + +Aikaisemmin tässä kirjasessa tutustuttiin \ei{verbatim}-\emph{ympäristöön}. +Tässä osiossa tutustutaan \pai{verbatim}-\emph{makropakkaukseen}, joka +periaatteessa määrittelee \ei{verbatim}-ympäristön uusiksi. Makropakkaus +pyrkii eroon joistakin alkuperäisen ympäristön rajoituksista. Tässä ei +sinänsä ole mitään mullistavaa, mutta \pai{verbatim}-pakkauksen käyttö +lisää myös uusia ominaisuuksia, mikä on syy sen mainitsemiseen tässä. +\pai{verbatim}-pakkauksen lisää käyttöön + +\begin{lscommand} +\ci{verbatiminput}\verb|{|\emph{tiedosto}\verb|}| +\end{lscommand} + +\noindent komennon, jolla tekstiin voidaan lisätä ASCII tiedosto +sellaisenaan, aivan kuin \ei{verbatim}-ympäristössä ladottuna. + +Koska \pai{verbatim}-makropakkaus on osa 'tools'-kokoelmaa, se +pitäisi olla asennettu valmiiksi useimmissa järjestelmissä. +Lisätietoja tästä pakkauksesta saa lukemalla \cite{verbatim}:n. + +\section{\LaTeX:n pakkausten imurointi ja asentaminen} + +Useimmat \LaTeX-järjestelmiin on asennettu valmiiksi iso joukko +erilaisia makropakkauksia, mutta lisää löytyy verkosta. Pakkauksia +kannattaa etsiä Internetissä pääasiassa CTAN:sta (\verb|http://www.ctan.org/|). + +Eräät pakkauksista kuten \pai{geometry}, \pai{hyphenat} ja monet +muut koostuvat kahdesta tiedostosta: toisella on \texttt{.ins}-pääte ja toisella +\texttt{.dtx}. Usein mukana on \texttt{readme.txt}-tiedosto, joka sisältää +lyhyen kuvauksen pakkauksesta. Tämä tiedosto tulisi lukea ensin. + +Joka tapauksessa kun tiedostot on kopioitu koneeseen, ne pitää +prosessoida niin, että (a) \TeX-järjestelmä tietää uusien pakkausten +olemassaolosta ja (b) dokumentaatio saadaan käyttöön. Ensimmäinen +toimenpide suoritetaan seuraavasti: + +\begin{enumerate} +\item Aja \texttt{.ins}-tiedosto \LaTeX:lla, jotta \eei{.sty}-tiedosto +saadaan purettua paketista. +\item Siirrä \eei{.sty}-tiedosto paikkaan, josta järjestelmä löytää +sen. Yleensä tämä on hakemisto \texttt{\ldots/\emph{localtexmf}/tex/latex} +(Windowsin ja OS/2:n käyttäjät voivat tietysti vaihtaa tilalle kenoviivat) +\item \TeX-järjestelmän tiedostotietokanta päivitetään. Komennon nimi +riippuu käytettävästä \LaTeX-järjestelmästä: teTeX, fpTeX -- \texttt{texhash}; +web2c -- \texttt{maktexlsr}; MikTeX -- \texttt{initexmf -update-fndb} tai +sitten voidaan käyttää graafista käyttöliittymää. +\end{enumerate} + +\noindent Nyt \texttt{.dtx}-tiedostosta voidaan purkaa dokumentaatio. + +\begin{enumerate} +\item Aja \texttt{.dtx}-tiedosto \LaTeX:lla. Tämä luo \texttt{.dvi}-tiedoston. +Huomaa, että \LaTeX:ia joudutaan ehkä ajamaan useamman kerran, jotta +ristiviittaukset saadaan kohdalleen. +\item Tarkista, onko \LaTeX\ tehnyt muiden tiedostojen joukkoon +\texttt{.idx}-tiedoston. Jos tätä tiedostoa ei löydy, voidaan +siirtyä kohtaan \ref{step:final} +\item Hakemiston luomiseksi anna seuraava komento:\\ +\fbox{\texttt{makeindex -s gind.ist \textit{nimi}}}\\ +jossa \textit{nimi} on pakettitiedoston nimi ilman mitään päätettä. + +\item Aja vielä kerran \texttt{.dtx}-tiedosto \LaTeX:lla.\label{step:next} + +\item Tee vielä lopuksi \texttt{.ps}- tai \texttt{.pdf}-tiedosto +lukunautinnon kasvattamiseksi.\label{step:final} + +\end{enumerate} + +Joskus tiedostojen joukkoon on ilmestynyt \texttt{.glo}-tiedosto +(eli sanasto). Aja seuraava komento kohtien \ref{step:next} ja +\ref{step:final} välissä: + +\noindent\texttt{makeindex -s gglo.ist -o \textit{nimi}.gls \textit{nimi}.glo} + +\noindent Muista ajaa \texttt{.dtx}-tiedosto vielä kerran \LaTeX:lla +ennen siirtymistä kohtaan \ref{step:final}. + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Chapter on pdfLaTeX +% French original by Daniel Flipo 14/07/2001 +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\section{pdf{\LaTeX}:n kanssa työskentely} \label{sec:pdftex}\index{PDF} +\secby{Daniel Flipo}{Daniel.Flipo@univ-lille1.fr}% +PDF on \wi{hyperteksti}dokumenttiformaatti. WWW-sivujen tapaan +jotkin dokumentin sanoista ovat hyperlinkkejä. Ne toimivat linkkeinä +eri osiin dokumenttia tai jopa toisiin dokumentteihin. Jos hyperlinkkiä +klikkaa päätyy linkin osoittamaan kohteeseen. {\LaTeX}:n tapauksessa +tämä tarkoittaa sitä, että kaikki \ci{ref} ja \ci{pageref} viittaukset +ovat muuttuneet hyperlinkeiksi. Tämän lisäksi sisällysluettelosta, +hakemistosta ja muista vastaavista luetteloista tulee hyperlinkkiluetteloita. + +Useimmat WWW-sivuista on kirjoitettu HTML:llä \emph{(HyperText +Markup Language)}. Luonnontieteellisiä dokumentteja kirjoitettaessa tällä +formaatilla on pari merkittävää puutetta: +\begin{enumerate} +\item HTML ei tue matemaattisia kaavoja. Niitä varten on kyllä olemassa +oma standardi, mutta usemmat nykyiset selaimet eivät tue sitä, tai +järjestelmistä puuttuvat tarvittavat kirjasimet. +\item HTML-dokumenttien tulostaminen on mahdollista, mutta tulokset +riippuvat käyttöjärjestelmästä ja selaimesta. Tulokset ovat kilometrien +päässä siitä, mihin on totuttu {\LaTeX}:n maailmassa. +\end{enumerate} + +Useasti on yritetty tehdä käännösohjelmia {\LaTeX}:sta HTML:ään. +Eräät ovat jopa onnistuneet melko hyvin siinä mielessä, että ne ovat +pystyneet tuottamaan hyväksyttäviä WWW-sivuja normaalista {\LaTeX}:n +käsikirjoitustiedostosta. Mutta kaikki kääntäjät oikaisevat vähän +sieltä sun täältä. Heti jos aletaan käyttää vähän mutkikkaampia +{\LaTeX}:n piirteitä ja makropakkauksia, homma menee pieleen. +Ne kirjoittajat, jotka haluavat esittää dokumenttinsa typografisesti +laadukkaina myös verkossa, käyttävät PDF:ää \emph{(Portable Document Format)}, +joka säilyttää dokumenttien ulkoasun ja mahdollistaa linkkien käytön. +Useimmissa nykyisissä selaimissa on apuohjelma, joka sallii PDF-dokumentin +avaamisen suoraan selaimeen. + +Vaikka DVI ja PS katseluohjelmia on olemassa melkein kaikille käyttöjärjestelmille, +on kuitenkin todettava, että PDF-dokumenttien katseluun tarkoitetut \wi{acrobat reader} +ja \wi{xpdf} ovat vielä näitäkin yleisempiä. Niinpä PDF-version tarjoaminen +mahdollistaa suuremman lukijakunnan hankkimisen. + +\subsection{PDF-dokumentteja verkkoon} + +PDF-tiedoston tuottaminen {\LaTeX}:n lähdetiedostosta on hyvin helppoa +kiitos H\`an~Th\'{\^e}~Th\`anhin kehittämän ohjelman pdf{\TeX}:n. +Se tuottaa {\TeX}:n normaalisti tuottaman DVI-tulosteen sijasta +PDF-tulosteen. Lisäksi {\LaTeX}-dokumentteja varten on olemassa +pdf\LaTeX. \index{pdftex@pdf\TeX}\index{pdftex@pdf\LaTeX} + +Useimmissa {\TeX}-järjestelmissä (mm.~te\TeX{}, fp\TeX{}, +Mik\TeX, \TeX{}Live ja CMac\TeX{}) on mukana sekä pdf\TeX{} että pdf\LaTeX{}. + +PDF:n tuottamiseksi DVI:n sijasta riittää, että korvataan komento +\texttt{latex tiedosto.tex} komennolla \texttt{pdflatex tiedosto.tex}. +Niissä järjestelmissä, joissa \LaTeX{}:ia ei käytetä komentotulkista käsin, +on ilmeisesti tätä varten erityinen graafinen valintanäppäin. + +\LaTeX:ssa voidaan määritellä paperin koko käyttämällä documentclassin +parametreina esim.~\texttt{a4paper} tai \texttt{letterpaper}. +Tämä toimii myös pdf\LaTeX:ssa, mutta tämän lisäksi pdf\TeX{} tarvitsee +tiedon myös paperin fyysisestä koosta eikä pelkästään latomiseen käytetystä +alueesta. +\index{paper size} +Jos käytetään \pai{hyperref}-makropakkausta (ks. sivu \pageref{ssec:pdfhyperref}), +paperin koko määräytyy automaattisesti. Muutoin tämä pitää tehdä käsin +lisäämällä määrittelyosaan seuraavat rivit: +\begin{code} +\begin{verbatim} +\pdfpagewidth=\paperwidth +\pdfpageheight=\paperheight +\end{verbatim} +\end{code} + +Seuraavassa osiossa käsitellään yksityiskohtaisemmin normaalin +\LaTeX:n ja pdf\LaTeX:n välisiä eroja, jotka voidaan jakaa kolmeen kategoriaan: +käytettävät kirjasimet, kuvien mahdollinen tiedostomuoto, ja hyperlinkkien +lisääminen käsin. + +\subsection{Kirjasimet} + +\wi{pdf\LaTeX} hyväksyy kaikki mahdolliset kirjasintyypit (PK bittikartat, TrueType, +\PSi{} type~1\dots), mutta \LaTeX:n pääasiallinen kirjasintyyppi eli bittikarttoina +toteutetut PK-kirjasimet tuottavat ruman lopputuloksen kun dokumenttia +katsellaan Acrobat Readerilla. On parasta käyttää ainoastaan \PSi{} Type 1 kirjasimia, +jotta dokumentit näyttäisivät myös näytöllä hyviltä. +\emph{Nykyisissä TeX-järjestelmissä tämä tapahtuu automaattisesti. Kannattaa +kokeilla. Mikäli kaikki toimii oikein, voidaan tämä kohta jättää lukematta.} + +Computern Modernin ja AMS-kirjasinten \PSi{} Type 1 versiot on tehnyt +Blue Sky Research ja Y\&Y, Inc., jotka siirsivät tekijänoikeudet American Mathematical +Societylle. Kirjasimet julkistettiin alkuvuodesta 1997 ja ne sisältyvät useimpiin +\TeX-järjestelmiin. + +Mikäli kuitenkin {\LaTeX}:ia käytetään muiden kuin englanninkielisten +dokumenttien kirjoittamiseen, joudutaan käyttämään EC, LH, tai CB kirjasimia (ks. +huomioita \texttt{OT1}-kirjasimesta sivulla~\pageref{OT1}). +Vladimir Volovich on tehnyt cm-super font kokoelman, joka kattaa kokonaan +kirjasinkokoelmat EC/TC, EC Concrete, EC Bright ja LH. Se on saatavilla +osoitteesta \texttt{CTAN:/fonts/ps"-type1/cm-super} ja sisältyy \TeX{}Live7- +and Mik\TeX-järjestelmiin. Vastaavasti Apostolos Syropouloksen tekemät +type~1 kreikkalaiset CB-kirjasimet ovat saatavilla osoitteesta +\texttt{CTAN:/tex-archive/fonts/greek/cb}. +Valitettavasti kumpikaan kirjasinkokoelma ei typografiselta laadultaan +vastaa Blue Sky/Y\&Y:n Type~1 CM kirjasimia. Niiden muunnos tehtiin täysin +automaattisesti, eikä dokumentti näytä näytöllä välttämättä yhtä hyvältä +kuin sellaiset, jotka käyttävät Blue Sky/Y\&Y:n type 1 CM-kirjasimia. +Tulostuslaitteilla, joiden resoluutio on tarkempi, tulokset ovat kuitenkin identtiset +alkuperäisten bittikartta EC/LH/CB-kirjasinten kanssa. + +Mikäli dokumentti tehdään yhdellä latinalaista kirjaimistoa käyttävällä +kielellä, on mahdollista käyttää muita vaihtoehtoja. +\begin{itemize} +\item On mahdollista käyttää \pai{aeguill}-makropakettia eli \emph{Almost + European Computer Modern with Guillemets}.\footnote{Lähes European Computer Modern + lisättynä ranskalaisin lainausmerkein} Riittää kun dokumentin määrittelyosaan + lisätään rivi \verb+\usepackage{aeguill}+\paih{aeguill}, jolloin virtuaaliset + AE-kirjasimet korvaavat EC-kirjasimet. +\item Voidaan käyttää myös \pai{mltex}-makropakettia, mutta tämä toimii vain +jos pdf\TeX-ohjelma on käännetty \wi{mltex}-optiolla. +\end{itemize} +Virtuaalinen AE-kirjasinkokoelma saa {Ml\TeX}-systeemin tavoin {\TeX}:n +luulemaan, että käytössä on täysi 256 merkin merkistö lisäämällä puuttuvat +merkit CM-kirjasimesta ja järjestelemällä ne EC-kirjasimen merkistöksi. Tämä +mahdollistaa type 1 muotoa olevien CM~kirjasinten käytön. Koska kirjasin +noudattaa nyt T1-merkistöä, tavutus toimii useimmissa latinalaista kirjaimistoa +käyttävissä Euroopan kielissä. Ainoa haittapuoli on, että keinotekoisesti luotuja +AE-merkkejä ei voi hakea Acrobat Readerin \texttt{Find}-toiminnolla, joten +sanoja, joiden kirjaimissa on aksentti ei pysty hakemaan +PDF"-dokumentissa.\footnote{Lisäksi AE-kirjasimista puuttuu muutama T1-merkistön +kirjain. Tästä syystä tämän dokumentin PDF-tuloste käyttää yllämainittua +cm-super kirjasinkokoelmaa. (suom. huom.)} + +Venäjänkielisille dokumenteille vastaava ratkaisu on käyttää C1"-virtuaalikirjasimia, +jotka löytyvät osoitteesta \texttt{ftp://ftp.vsu.ru/pub/tex/font-packs/c1fonts}. +Nämä yhdistävät normaalit Blueskyn CM type~1 kirjasimet Paradissan ja BaKoMan +CMCYR type~1 kirjasimiin. Kaikki ovat saatavilla CTAN:ssa. Koska Paradissa +sisältää ainoastaan venäläiset kirjaimet, ei C1-kirjasimessa ole +lainkaan muita kyrillisiä kirjaimia.\footnote{Tahtoo sanoa sitä, että +kirjasimella voidaan latoa venäjän lisäksi bulgariaa, muttei muita +kyrillistä kirjaimistoa käyttäviä kieliä.} + +Toinen vaihtoehto on käyttää jotain muuta \PSi{} type~1 kirjasinta. +Itseasiassa jopa Acrobat Readerin mukana tulee muutama. +Koska näiden kirjasinten mittasuhteet ovat erilaiset, tekstin ulkoasu +muuttuu. Yleensä muut kirjasimet vievät enemmän tilaa kuin CM-kirjasimet. +Lisäksi dokumentin visuaalinen yhtenäisyys kärsii, koska Timesia, Helveticaa +ja Courieria (joita yleensä käytetään korvaavina kirjasimina) ei ole +suunniteltu käytettäväksi yhdessä samalla tavoin kuin Computer Modern +kirjasinten vastaavia kirjasinleikkauksia. + +Tähän tarkoitukseen on valmiina kaksi kirjasinkokoelmaa: +\pai{pxfonts}, joka perustuu \emph{Palatinoon}, on leipätekstin kirjasin, +ja \pai{txfonts}-makropaketti, joka perustuu \emph{Timesiin}. Niiden +käyttöön riittää seuraavien rivien lisääminen dokumentin määrittelyosaan: +\begin{code} +\begin{verbatim} +\usepackage[T1]{fontenc} +\usepackage{pxfonts} +\end{verbatim} +\end{code} + +HUOM: \texttt{.log}-tiedostossa saattaa esiintyä dokumentin kääntämisen +jälkeen seuraavanlaisia rivejä +\begin{verbatim} +Warning: pdftex (file eurmo10): Font eurmo10 at ... not found +\end{verbatim} +Ne tarkoittavat, että jotakin dokumentissa käytettyä kirjasinta ei löydetty. +Tämä ongelma vaatii ehdottomasti korjaamista, koska voi olla, että +PDF dokumentissa \emph{eivät näy lainkaan ne sivut, joista puuttuu kirjasimia}. + +Koko tämä kirjasinhomma ja erityisesti laadukkaiden EC type~1 kirjasinten +puute vaivaa useita tahoja. Vähän aikaa sitten saataville tulivat uudet +korkealaatuiset Latin Modern (LM) "=kirjasimet. Mikäli käytössä on tuore +{\TeX}-järjestelmä, on mahdollista, että kirjasimet on jo asennettu ja +riittää, että dokumentin määrittelyosaan lisätään rivit: + +\begin{code} +\begin{verbatim} +\userpackage{lmodern} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +\end{verbatim} +\end{code} +ja käytössä on nyt koko latinalainen T1-merkistö pdf-tulostusta varten. + +\subsection{Grafiikan käyttö} +\label{ssec:pdfgraph} + +Grafiikan lisääminen dokumenttiin onnistuu parhaiten +\pai{graphicx}-makropakkauksella (ks.~\pageref{eps}). +Erityistä \emph{driver}-optiota käyttämällä \texttt{pdftex} +toimii myös pdf{\LaTeX}:ssa: +\begin{code} +\begin{verbatim} +\usepackage[pdftex]{color,graphicx} +\end{verbatim} +\end{code} +Yllä olevassa esimerkissä on käytetty värioptiota, koska värin käyttäminen +on luontevaa verkkodokumenteissa. + +Se hyvistä uutisista. Huono uutinen on se, että {\EPSi}-grafiikka ei +toimi Pdf{\LaTeX}:ssa. Mikäli \ci{includegraphics}-komento ei määrittele +tiedostopäätettä, \pai{graphicx} alkaa etsiä sopivaa tiedostoa omin päin +\emph{driver}-option asetuksista riippuen. \texttt{pdftex}:ssä haettavat +päätteet ovat \texttt{.png}, \texttt{.pdf}, \texttt{.jpg}, \texttt{.mps} ( +\MP\index{metapost@\MP}) ja \texttt{.tif}, \emph{muttei} \texttt{.eps}. + +Helpoin tapa selvitä tästä ongelmasta on muuntaa EPS-tiedosto PDF-muotoon +käyttämällä useimista järjestelmistä löytyvää \texttt{epstopdf}-työkalua. +Vektorigrafiikalle (piirustuksille) tämä on hyvä ratkaisu. Bittikarttakuville +(valokuvat, skannatut kuvat) tämä ei ole paras mahdollinen ratkaisu, sillä +PDF-formaatti tukee itsessään PNG- ja JPEG-kuvia. PNG sopii näyttökaappauksille +ja muille vähävärisille kuville. JPEG sopii tilaa säästävänä valokuville. + +Voi olla parempi jättää joidenkin geometristen kuvioiden piirtäminen ja +sen sijasta kuvata ne erityisellä komentokielellä, kuten useimmista {\TeX}-järjestelmistä +löytyvällä \MP-kielellä.\index{metapost@\MP} Siihen on saatavissa kattava +käyttöopas. + +\subsection{Hypertekstilinkit} +\label{ssec:pdfhyperref} + +\pai{hyperref}-makropaketti muuttaa kaikki dokumentin ristiittaukset +hyperlinkeiksi. Jotta tämä toimisi kunnolla, pitää dokumentin esittelyosaan +panna viimeiseksi kommennoksi \verb+\usepackage[pdftex]{hyperref}+ + +\pai{hyperref}-makrojen toiminnan virittelyyn on olemassa lukuisia optioita: +\begin{itemize} +\item joko pilkuin erotettuna listana pdftex-option jälkeen\\ + \verb+\usepackage[pdftex]{hyperref}+ +\item tai omilla riveillään komennon + \verb+\hypersetup{+\emph{options}\verb+}+ yhteydessä. +\end{itemize} + +Ainoa pakollinen optio on \texttt{pdftex}; loput ovat vapaavalintaisia +ja ne vaikuttavat hyperref-paketin toimintaan.\footnote{On syytä huomata, +että \pai{hyperref}-makropakettia voidaan käyttää myös muutoinkin kuin +pdf{\TeX}:n kanssa. Sitä voidaan käyttää myös erityisen PDF-informaation +lisäämiseksi normaalin {\LaTeX}:n DVI-tulosteeseen, joka voidaan sitten +muuntaa PS-tiedostoksi \texttt{dvips}:llä ja se voidaan lopuksi muuntaa +PDF:ksi Adobe Distillerillä.} Seuraavassa listassa oletusarvot eivät +ole kursiivissa. + +\begin{description} + \item [\texttt{bookmarks (=true,\textit{false})}] näytä tai piilota + PDF:n sisällysluettelo kun dokumentti avataan katseltavaksi + \item [\texttt{unicode (=false,\textit{true})}] mahdollistaa + muidenkin kuin latinalaisen perusmerkistön käytön Acrobatin + sisällysluettelossa + \item [\texttt{pdftoolbar (=true,\textit{false})}] näytä tai + piilota Acrobatin työkalupalkki + \item [\texttt{pdfmenubar (=true,\textit{false})}] näytä tai + piilota Acrobatin valikot + \item [\texttt{pdffitwindow (=true,\textit{false})}] säätää + pdf-dokumentin suurennossuhdetta näyttöön avattaessa + \item [\texttt{pdftitle (=\{teksti\})}] määrittelee Acrobatin + \texttt{Document Info}-ikkunassa näkyvän tekstin, joka kertoo + dokumentin nimen + \item [\texttt{pdfauthor (=\{teksti\})}] PDF-dokumentin tekijän nimi + \item [\texttt{pdfnewwindow (=true,\textit{false})}] määrittelee + pitääkö dokumentin linkin kautta avattu uusi dokumentti avata + uuteen ikkunaan + \item [\texttt{colorlinks (=false,\textit{true})}] ympäröi linkit + värillisellä kehyksellä (\texttt{false}) tai esittää linkkien + tekstin värillisenä (\texttt{true}). Väri voidaan määritellä + seuraavilla optioilla (tässä on esitetty oletusvärit): + \begin{description} + \item [\texttt{linkcolor (=red)}] ristiviittausten väri, + \item [\texttt{citecolor (=green)}] kirjallisuusviittausten väri + \item [\texttt{filecolor (=magenta)}] toiseen tiedostoon johtavien + linkkien väri + \item [\texttt{urlcolor (=cyan)}] URL-linkkien väri (sähköposti, webbilinkit) + \end{description} +\end{description} + +\vspace{\baselineskip} + +Mikäli oletusarvot kelpaavat käytä: +\begin{code} +\begin{verbatim} +\usepackage[pdftex]{hyperref} +\end{verbatim} +\end{code} + +Jos sisällysluettelo halutaan esiin ja linkit väreissä +(\texttt{=true}-arvoa ei ole pakko käyttää): +\begin{code} +\begin{verbatim} +\usepackage[pdftex,bookmarks,colorlinks]{hyperref} +\end{verbatim} +\end{code} + +Kun PDF on tarkoitettu tulostamiseen, värilliset linkit näkyvät +lopputuloksessa harmaina ja ne vaikeuttavat lukemista. Voidaan käyttää +värillisiä kehyksiä, jotka eivät näy tulostettaessa: +\begin{code} +\begin{verbatim} +\usepackage{hyperref} +\hypersetup{colorlinks=false} +\end{verbatim} +\end{code} +\noindent tai linkit voidaan esittää mustina: +\begin{code} +\begin{verbatim} +\usepackage{hyperref} +\hypersetup{colorlinks,% + citecolor=black,% + filecolor=black,% + linkcolor=black,% + urlcolor=black,% + pdftex} +\end{verbatim} +\end{code} + +Kun halutaan ainoastaan tallentaa tietoa PDF-tiedoston +\texttt{Document Info} -osaan: +\begin{code} +\begin{verbatim} +\usepackage[pdfauthor={Pierre Desproges}% + pdftitle={Des femmes qui tombent},% + pdftex]{hyperref} +\end{verbatim} +\end{code} + +\vspace{\baselineskip} + +Ristiviittauksissa voidaan käyttää automaattisten linkkien sijasta myös +käsin määriteltyjä linkkejä komennolla +\begin{lscommand} +\ci{href}\verb|{|\emph{url}\verb|}{|\emph{tekstiä}\verb|}| +\end{lscommand} + +Koodi +\begin{code} +\begin{verbatim} +\href{http://www.ctan.org}{CTAN} webbiosoite. +\end{verbatim} +\end{code} +tuottaa tekstin ``\href{http://www.ctan.org}{CTAN}''; +Kun sanaa ``\textcolor{magenta}{CTAN}'' klikataan, +päädytään CTAN:n WWW-sivulle. + +Jos linkin kohden on paikallinen tiedosto, voidaan käyttää +komentoa: +\begin{verbatim} + Täydellinen dokumentaatio on \href{manual.pdf}{tässä} +\end{verbatim} +Mikä tuottaa tekstin ``Täydellinen dokumentaatio on \textcolor{cyan}{tässä}''. +Kun sanaa +``\textcolor{cyan}{tässä}'' klikataan +avautuu tiedosto \texttt{manual.pdf}. (Tiedostopolku riippuu lähtödokumentin +sijainnista). + +Artikkelin tekijä ehkä haluaa, että lukijat voivat helposti lähettää +sähköpostiviestejä. Tähän voidaan käyttää \ci{href}-komentoa nimiösivulla +olevan \ci{author}-komennon sisällä: +\begin{code} +\begin{verbatim} +\author{Timo Hellgren $<$\href{mailto:timo.hellgren@vtt.fi}% + {timo.hellgren@vtt.fi}$>$ +\end{verbatim} +\end{code} +Linkki on tässä esitetty niin, että sähköpostiosoite näkyy linkin +sijasta myös itse sivulla. Tämä sen vuoksi, että linkki\\ +\verb+\href{mailto:timo.hellgren@vtt.fi}{Timo Hellgren}+\\ +toimisi kyllä Acrobatissa, mutta tulostettaessa paperille sähköpostiosoite +ei olisi enää näkyvissä. + +\subsection{Linkkiongelmia} + +Esimerkin:\footnote{pdfTeX varoitus: kohde, jolla on sama tunniste, + on jo käytössä, duplikaattia ei huomioida} +\begin{verbatim} +! pdfTeX warning (ext4): destination with the same identifier + (name{page.1}) has been already used, duplicate ignored +\end{verbatim} +mukaisia viestejä tulee, kun laskurit on nollattu esim. käyttämällä +\texttt{book}-dokumenttiluokassa komentoa \ci{mainmatter}. +Se asettaa sivunnumerolaskurin takaisin arvoon 1 kirjan ensimmäisen +luvun kohdalla. Koska kuitenkin kirjan alkuosassa on myös sivu, jonka +numero on 1, eivät mahdolliset linkit sivulle 1 enää ole yksiselitteisiä. +Tästä johtuen tulee ilmoitus, että duplikaatti on jätetty huomiotta. + +Tämä voidaan välttää, tosin vain sivunnumerolaskurin osalta, +lisäämällä \texttt{plainpages=false} hyperrefin optioiden joukkoon. +Radikaalimpi ratkaisu on \texttt{hypertexnames=false}-option käyttäminen, mutta +tämä aiheuttaa sen, että hakemiston linkit dokumentin sivuille lakkaavat toimimasta. + +\subsection{Sisällysluettelo-ongelmia} + +PDF-sisällysluettelon teksti ei aina näytä halutulta. Koska sisällysluettelon +linkkitekstit ovat ``vain tekstiä'', on käytössä vähemmän merkkejä kuin +{\LaTeX}:n normaalitekstissä. Hyperref huomioi nämä ongelmat varoituksella: +\begin{code} +\begin{verbatim} +Package hyperref Warning: +Token not allowed in a PDFDocEncoded string: +\end{verbatim} +\end{code} +Ongelma voidaan kiertää määrittelemällä ongelmallisen tekstin tilalle +uusi teksti: +\begin{lscommand} +\ci{texorpdfstring}\verb|{|\emph{\TeX{} teksti}\verb|}{|\emph{sisällysluettelon teksti}\verb|}| +\end{lscommand} + +Matemaattiset ilmaisut ovat tyypillinen ongelmatapaus: +\begin{code} +\begin{verbatim} +\section{\texorpdfstring{$E=mc^2$}% + {E\ =\ mc\texttwosuperior}} +\end{verbatim} +\end{code} +mikä muuttaa tekstin \verb+\section{$E=mc^2$}+ sisällysluettelossa muotoon ``E=mc2''. + +Värien käyttö ei myöskään toimi sisällysluettelossa: +\begin{code} +\verb+\section{\textcolor{red}{Punainen !}}+ +\end{code} +tuottaa tekstin ``redPunainen!''. Komentoa \verb+\textcolor+ ei huomioida, +mutta sen argumentti {red} tulostetaan näkyviin. + +Käyttämällä +\begin{code} +\verb+\section{\texorpdfstring{\textcolor{red}{Punainen !}}{Punainen\ !}}+ +\end{code} +lopputuloksesta tulee luettavampi. + +\subsubsection{Yhteensopivuus {\LaTeX}:n ja pdf{\LaTeX}:n välillä} +\label{sec:pdfcompat} + +Ideaalitapauksessa dokumentin pitäisi toimia yhtä hyvin {\LaTeX}:n +ja pdf{\LaTeX}:n kanssa. Suurin ongelma tässä on grafiikan käyttäminen. +Yksinkertainen ratkaisu on \emph{jättää järjestelmällisesti} +\ci{includegraphics}-komennosta pois tiedostopääte. Silloin sopivaa +tiedostoa haetaan automaattisesti työhakemistosta. Riittää, että +grafiikkatiedostoista on tehty tarkoitukseen sopivat versiot. +\LaTeX{} etsii \texttt{.eps}-tiedostoja, ja pdf\LaTeX{} +yrittää löytää tiedostoa, jonka pääte on +\texttt{.png}, \texttt{.pdf}, \texttt{.jpg}, \texttt{.mps} tai \texttt{.tif} +(tässä järjestyksessä). + +Mikäli PDF-versiota varten tarvitaan eri koodausta, voidaan +esittelyosaan lisätä \pai{idpdf}"-pakkaus\footnote{Selitys sille, +miksi pitää käyttää tätä pakkausta löytyy {\TeX}-FAQ:sta kohdasta +\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=ifpdf}.} +Pakkaus on mahdollisesti jo asennettu valmiiksi. Mikäli näin ei +kuitenkaan ole on käytössä luultavasti MiK{\TeX}, joka asentaa +puuttuvan pakkauksen ensimmäisellä käyttökerralla. Tämä pakkaus +määrittelee erityisen komennon \ci{ifpdf}, joka mahdollistaa +ehtolauseiden kirjoittamisen. Esimerkissä PostScript"-versiosta +halutaan mustavalkoinen tulostuskustannusten vuoksi, mutta +PDF-versiosta halutaan värillinen näytöllä selailua varten. +\begin{code} +\begin{verbatim} +\ifpdf + \usepackage[T1]{fontenc} + \usepackage{aeguill} + \usepackage[pdftex]{graphicx,color} + \usepackage[pdftex,colorlinks]{hyperref} +\else + \usepackage[T1]{fontenc} + \usepackage[dvips]{graphicx} + \usepackage[dvips]{hyperref} +\fi +\end{verbatim} +\end{code} + +Esimerkissä on hyperref-pakkausta on käytetty myös silloin kun +lopputulos ei ole PDF-tiedosto. Tämä tekee mahdolliseksi käyttää +\ci{href}-komentoa kummassakin tapauksessa, jolloin ehtolausetta +ei tarvitse kirjoittaa joka kerta kun komentoa käytetään. + +On huomattava, että uusimmissa {\TeX}-järjestelmissä (kuten {\TeX}Live), +kun käytetään makropakkauksia \pai{graphicx} ja \pai{color} valinta +\texttt{pdftex}:n ja \texttt{dvips}:n välillä tapahtuu automaattisesti +\texttt{graphics.cfg}- ja \texttt{color.cfg}-tiedoston asetuksista +riippuen. + +\section{Esitelmien tekeminen dokumenttiluokalla \pai{beamer}} +\label{sec:beamer} +\secby{Daniel Flipo}{Daniel.Flipo@univ-lille1.fr} +Tieteellisen työn tulokset voidaan esittää liitutaululla, kalvoilla +tai suoraan kannettavalla tietokoneella sopivaa ohjelmistoa käyttämällä. + +Kun \wi{pdf\LaTeX}:ia käytetään dokumenttiluokan \pai{beamer} kanssa +voidaan luoda PDF-esityksiä, jotka näyttävät tehdyn PowerPointilla. +Acrobat Reader on kuitenkin saatavilla useammille käyttöjärjestelmille kuin PowerPoint. + +\pai{beamer}-luokka käyttää makropakkauksia \pai{graphicx}, \pai{color} ja +\pai{hyperref} optiolla, jotka soveltuvat esitelmiin. +%La figure~\ref{fig:pdfscr} contient un exemple de fichier minimal à +%compiler avec \wi{pdf\LaTeX} et le +%résultat produit. + +% Écran capturé par ImageMagick (man ImageMagick) fonction « import » +% et convertie en jpg toujours par ImageMagick. +\begin{figure}[htbp] +\begin{verbatim} +\documentclass[10pt]{beamer} +\usepackage[latin1]{inputenc} +\usepackage[finnish]{babel} +\usepackage[T1]{fontenc} +\mode<beamer>{% + \usetheme[hideothersubsections,right,width=22mm]{Goettingen} +} + +\title{Yksinkertainen esitelmä} +\author[D. Flipo]{Daniel Flipo} +\institute{U.S.T.L. \& GUTenberg} +\titlegraphic{\includegraphics[width=20mm]{USTL}} +\date{2005} + +\begin{document} + +\begin{frame}<handout:0> + \titlepage +\end{frame} + +\section{Esimerkki} + +\begin{frame} + \frametitle{Tekemistä lepopäivän ratoksi} + \begin{block}{Sitä voi vaikka \ldots} + \begin{itemize} + \item ulkoiluttaa koiraa\dots \pause + \item lukea kirjaa\pause + \item kiusata kissaa\pause + \end{itemize} + \end{block} + ja paljon muuta +\end{frame} +\end{document} +\end{verbatim} + \caption{Esimerkkikoodia \pai{beamer}-luokan esittelemiseksi} + \label{fig:code-beamer} +\end{figure} + +Kun PDF{LaTeX}:lla käännetään kuvassa \ref{fig:code-beamer} esitetty +koodi, saadaan PDF-tiedosto, jossa on nimiösivu ja toinen sivu, jossa +on lista, jonka kohdat tulevat esiin yksi kerrallaan. + +Eräs \pai{beamer}-luokan eduista on sen tuottama PDF-tiedosto. Näin +ei tarvita ensin esim. \pai{prosper}-makropakkauksen tuottamaa +PostScript-tiedostovaihetta tai \pai{ppower4}-paketin tarvitsemaa +ylimääräistä jälkikäsittelyvaihetta. + +Käyttämällä \pai{beamer}-luokkaa, voidaan tuottaa samasta dokumentista +erilaisia versioita. Käsikirjoitustiedossa voi olla hakasulkeiden sisällä +erityisiä ohjeita näitä eri versioita varten. Seuraavat versiota ovat +käytössä: + +\begin{description} +\item[beamer] yllä mainitun PDF-esitelmän tekemiseksi. +\item[trans] kalvoja varten. +\item[handout] tulosteiden jakamiseksi osanottajille. +\end{description} +Oletusarvoinen versio on \texttt{beamer}, joka voidaan vaihtaa +esim. tulosteiden tuottamiseksi seuraavasti: +\verb|\documentclass[10pt,handout]{beamer}|. + +Esitelmän ulkoasu riippuu valitusta ulkoasutyylistä. Näitä voidaan valita +\pai{beamer}-luokan mukana tulevista tai sitten voidaan tehdä omia +ulkoasutyylejä. Lisätietoja on saatavilla dokumentista +\texttt{beameruserguide.pdf}. + +Tutkitaanpa tarkemmin kuvan~\ref{fig:code-beamer} koodia. + +Näytön versiota varten on valittu \emph{Goettingen}-ulkoasutyyli, +jossa sisällysluetteloon on liitetty navigointipaneeli. Optioilla +voidaan määritellä paneelin koko (tässä tapauksessa 22~mm) ja sen +sijainti (tekstin oikealla puolella). Optio \emph{hideothersubsections} +näyttää kaikkien lukujen otsikot, mutta ainoastaan parhaillaan läpi +käytävän luvun alaosiot. Versioille \verb|\mode<trans>| ja +\verb|\mode<handout>| ei ole mitään erityisiä ulkoasumäärityksiä. +Niissä on käytetty oletusulkoasua. + +Komennot \verb|\title{}|, \verb|\author{}|, \verb|\institute{}|, +ja \verb|\titlegraphic{}| määrittelevät nimiösivun sisällön. +Vapaavalintaiset argumentit komennoissa \verb|\title[]{}| ja \verb|\author[]{}| +antavat mahdollisuuden määritellä \emph{Goettingen}-tyylin navigointipalkkiin +esitelmän ja tekijän nimistä eri versiot. + +Paneelin otsikot ja alaotsikot luodaan komennoilla +\verb|\section{}| ja \verb|\subsection{}|, jotka sijoitetaan +\ei{frame}-ympäristön \emph{ulkopuolelle}. + +Näytön alareunssa olevia pieniä navigointikuvakkeita voidaan myös +käyttää siirtymiseen sivulta toiselle. Niiden sijainti ei riipu +käytetystä ulkoasutyylistä. + +Jokaisen kalvon tai näytöllisen sisältö pitää olla \ei{frame}-ympäristön +sisällä. Kulmasulkeissa (\verb|<| ja \verb|>|) voidaan antaa argumentti, +joka sallii tietyn kalvon jättämisen pois jossain esitelmän versioista. +Esimerkissä ensimmäistä sivua ei näytetä tulostetussa veriossa, koska +siinä on käytetty argumenttia \verb|<handout:0>|. + +On suositeltavaa antaa otsikko jokaiselle kalvolle, ensimmäistä lukuunottamatta. +Tämä tehdään komennolla \verb|\frametitle{}|. Mikäli tarvitaan alaotsikkoa, +voidaan käyttää \ei{block}-ympäristöä esimerkissä kuvatulla tavalla. +Komennot \verb|\section{}| ja \verb|\subsection{}| eivät toimi kalvoilla. + +Luettelon kohdat saadaan näkyviin yksi kerrallaan komennolla \verb|\pause|. +Muita tehokeinoja varten on komennot \verb|\only|, \verb|\uncover|, \verb|\alt| ja +\verb|\temporal|. Useimmissa tapauksissa kulmasulkeilla voidaan myös +räätälöidä esitelmää. + +Ohjedokumentti \texttt{beameruserguide.pdf} on syytä lukea täydellisen +kuvan saamiseksi. Näitä makroja kehitetään jatkuvasti. Viimeisin tieto +löytyy WWW-osoitteesta \href{http://latex-beamer.sourceforge.net/}{http://latex-beamer.sourceforge.net/} + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "lyhyt2e" +%%% End:
\ No newline at end of file diff --git a/Master/texmf-doc/doc/finnish/lshort-finnish/src/esipuhe.tex b/Master/texmf-doc/doc/finnish/lshort-finnish/src/esipuhe.tex new file mode 100644 index 00000000000..1b701867352 --- /dev/null +++ b/Master/texmf-doc/doc/finnish/lshort-finnish/src/esipuhe.tex @@ -0,0 +1,98 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Who contributed to this Document +% $Id: overview.tex,v 1.2 2003/11/23 08:05:09 hellgren Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Esipuhe} + +\LaTeX{} \cite{manual} on korkealaatuisten tieteellisten ja matemaattisten +dokumenttien tuottamiseen parhaiten sopiva ladontasysteemi. Sillä +voidaan tuottaa myös kaikenlaisia muita dokumentteja, yksinkertaisista +kirjeistä kokonaisiin kirjoihin. +\LaTeX{} käyttää \TeX:iä \cite{texbook} muotoiluohjelmanaan. + +Tämä dokumentti kuvaa \LaTeXe:ia ja sen pitäisi olla riittävä useimpiin +käyttötarkoituksiin. \LaTeX-systeemin täydellistä kuvausta +varten katso~\cite{manual,companion}. + +\noindent Tämä dokumentti on jaettu kuuteen lukuun: +\begin{description} +\item[Luku 1] kertoo \LaTeXe-dokumenttien perusrakenteesta. + Myös \LaTeX:n historiaa opitaan. Tämän luvun luettuasi sinulla + pitäisi olla jonkinlainen karkea kuva \LaTeX:sta. Tuo kuva + toimii pohjana kun yhdistät muiden lukujen tiedot kokonaisuuteen. +\item[Luku 2] menee dokumenttien ladonnan yksityiskohtiin. Siinä + selitetään keskeisimmät \LaTeX:n komennot ja ympäristöt. Tämän + luvun luettuasi pystyt kirjoittamaan ensimmäiset dokumenttisi. +\item[Luku 3] kertoo miten \LaTeX:lla ladotaan matemaattisia kaavoja. + Useat esimerkit auttavat ymmärtämään \LaTeX:n toimintaa parhaimmillaan. + Luvun lopussa on taulukkoja, jossa listataan kaikki \LaTeX:ssa + käytössä olevat matemaattiset symbolit. +\item[Luku 4] selittää hakemiston ja kirjallisuusluettelon luomista sekä + eps-kuvien lisäämistä. Siinä esitellään pdf\LaTeX{}, joka on tarkoitettu + PDF"-dokumenttien tekoon + sekä muutama kätevä lisämakropaketti. +\item[Luku 5] näyttää miten \LaTeX:ia käytetään grafiikan lisäämiseen. + Kuvaa ei tarvitse piirtää piirustusohjelmassa ja tallentaa se tiedostoksi, +joka lisätään \LaTeX-dokumenttiin, vaan se voidaan piirtää itse \LaTeX:ssa. +\item[Luku 6] sisältää hieman vaarallistakin tietoa. Opit tekemään + \LaTeX-do\-ku\-ment\-tien normaaliin ulkoasuun muutoksia. Asioita + voidaan muuttaa niin, että \LaTeX:n kauniista muotoilusta + voi tulla ruman näköistä. +\end{description} +\bigskip +On tärkeää lukea luvut järjestyksessä. Tämä kirja ei nyt kuitenkaan +ole järin pitkä. Lue esimerkit huolellisesti, sillä suuri osa +informaatiosta on piilotettu kirjasta löytyviin esimerkkeihin. + +\bigskip +\LaTeX{} on saatavilla useimpiin tietokoneisiin PC:stä ja Macistä +isoihin UNIX- ja VMS-systeemeihin. \LaTeX{} on asennettu valmiiksi +käyttöä odottamaan useisiin yliopistojen tietokoneverkkoihin. +Ohjeet paikallisen \LaTeX-asennuksen käytöstä tulisi ilmetä +\guide:sta. Jos sinulla on vaikeuksia päästä alkuun, kysy neuvoa, +siltä jolta sait tämän kirjasen. Tämän dokumentin tarkoituksena +\emph{ei} ole kertoa miten \LaTeX{} asennetaan, vaan miten +dokumentit tulee kirjoittaa, jotta niitä voitaisiin käsitellä +\LaTeX:lla. + +\bigskip +\noindent Jos haluat päästä käsiksi \LaTeX:iin liittyvään +materiaalin, käy katsomassa \TeX:iin erikoistuneista +FTP-arkistoista, joita kutsutaan nimellä \texttt{CTAN}. +Kotisivut ovat osoitteessa \texttt{http://www.ctan.org}. +FTP-palvelimen osoite on\\ +\texttt{ftp://www.ctan.org}. Siitä +on kopioita ympäri maailmaa. Niitä löytyy mm.~seuraavista +osoitteista: \texttt{ftp://ctan.tug.org} (USA), \texttt{ftp://ftp.dante.de} +(Saksa) ja \texttt{ftp://ftp.tex.ac.uk} (Iso-Britannia). +Lähin vastaava paikka on kuitenkin Suomessa, +\texttt{ftp://ftp.funet.fi/pub/tex/CTAN/}. %%TARKISTA! + +Kirjasta löytyy muita mainintoja CTAN-arkistosta: ohjelmia ja +dokumentteja imuroitaviksi. Täydellisen URL:n sijasta osoite +on lyhennetty muotoon: \texttt{CTAN:}. Tätä seuraa tiedostopolku, +josta haettava materiaali löytyy. + +Jos haluat käyttää \LaTeX:ia omassa koneessasi, katso +mitä löytyy osoitteesta \CTAN|systems|. + +\vspace{\stretch{1}} +\noindent Kerro minulle, jos sinulla on ideoita tähän +dokumenttiin lisättäviksi, poistettaviksi tai muutettaviksi asioiksi. +Olen erityisen kiinnostunut aloittelijoiden palautteesta: mitkä +osat ovat helppoja ymmärtää ja mitkä kaipaavat parempaa käsittelyä. + +\bigskip +\begin{verse} +\contrib{Timo Hellgren}{timo.hellgren@vtt.fi}% +{VTT Tietopalvelu, VTT} +\end{verse} +\vspace{\stretch{1}} +\noindent Tämän dokumentin viimeisin versio on saatavilla\\ + osoitteessa \CTAN|info/lshort/finnish| +\endinput + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "lyhyt2e" +%%% End: diff --git a/Master/texmf-doc/doc/finnish/lshort-finnish/src/grafiikka.tex b/Master/texmf-doc/doc/finnish/lshort-finnish/src/grafiikka.tex new file mode 100644 index 00000000000..a16ec8f47ae --- /dev/null +++ b/Master/texmf-doc/doc/finnish/lshort-finnish/src/grafiikka.tex @@ -0,0 +1,634 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\setcounter{chapter}{4} +\newcommand{\graphicscompanion}{\emph{The \LaTeX{} Graphics Companion}~\cite{graphicscompanion}} +\newcommand{\hobby}{\emph{A User's Manual for MetaPost}~\cite{metapost}} +\newcommand{\hoenig}{\emph{\TeX{} Unbound}~\cite{unbound}} +\newcommand{\graphicsinlatex}{\emph{Graphics in \LaTeXe{}}~\cite{ursoswald}} + +\chapter{Grafiikan tuottaminen matematiikan tarpeisiin} + +\begin{intro} +Useimmat käyttävät {\LaTeX}:ia tekstin latomiseen. \LaTeX\ tarjoaa myös +rajallisen mahdollisuuden tuottaa grafiikkaa käskyjen avulla. +Rajoittuneita mahdollisuuksia lisäävät lukuisat {\LaTeX}-lisäykset. Tässä osassa opitaan +muutama niistä. +\end{intro} + +\section{Yleiskatsaus} + +{\LaTeX}:ssa voidaan määritellä kuvia \ei{picture}-ympäristöllä. +Yksityiskohtainen kuvaus löytyy ohjeesta \manual. Toisaalta menetelmässä +on pahoja puutteita. Kulmat, joissa vinoja viivoja voidaan esittää, sekä +ympyröiden säteet on rajattu tiettyihin arvoihin. Toisaalta taas {\LaTeX}:n +\ei{picture}-ympäristö sisältää \ci{qbezier}-komennon, jossa ''\texttt{q}'' +tarkoittaa neliötä (quadratic). Monet usein käytetyistä käyristä eli +ympyrät, ellipsit tai katenoidikäyrät voidaan esittää lähestulkoon tyydyttävästi +toisen asteen Bézier-käyrillä, vaikka tämä voi vaatia hieman matemaattista +vaivannäköä. Mikäli lisäksi käytetään Javan tapaista ohjelmointikieltä +\ci{qbezier}-blokkien luomiseksi {\LaTeX}-tiedostoista, tulee \ei{picture}-ympäristöstä +melko tehokas. + +Vaikka kuvien piirtäminen {\LaTeX}:ssa on hyvin rajoittunutta ja usein +hankalaa, on siihen kuitenkin hyvät syynsä. Näin tuotetut dokumentit +ovat tiedostokooltaan pieniä eikä ylimääräisiin grafiikkatiedostoihin +ole mitään tarvetta. + +{\LaTeX}:n graafisia ominaisuuksia voidaan parantaa käyttämällä pakkauksia +\pai{epic} ja \pai{eepic} (nämä on kuvattu teoksessa \companion) tai \pai{pstricks}, +jotka poistavat alkuperäisen \ei{picture}-ympäristön rajoituksia. + +Kaksi ensinmainittua makropakkausta parantavat \ei{picture}-ympäristöä, mutta +\pai{pstricks} sisältää aivan oman piirustusympäristön \ei{pspicture}. +\pai{pstricks}-pakkauksen voima on siinä, että se käyttää hyvin tarkkaan +PostScriptin ominaisuuksia. Lisäksi on vielä lukuisia erityisiin tarkoituksiin tehtyjä +makropakkauksia. Eräs niistä on \texorpdfstring{\Xy}{Xy}-pic, joka on kuvattu +tämän luvun lopussa. Teoksessa \graphicscompanion{} (jota ei pidä sekoittaa +teokseen \companion{}) on kuvattu yksityiskohtaisesti +useita näitä makropakkauksia. + +Ehkä tehokkain {\LaTeX}:iin liittyvä graafinen työkalu on \texttt{MetaPost}, joka +on Donald E. Knuthin \texttt{METAFONT}:n kaksoissisar. \texttt{MetaPost} käyttää +\texttt{METAFONT}:n hyvin tehokasta ja matemaattisesti sofistikoitua ohjelmointikieltä. +\texttt{METAFONT}:n bittikarttakuvien sijasta \texttt{MetaPost} tuottaa +PostScript-tiedostoja, joita voidaan liittää {\LaTeX}-dokumenttiin. Johdantona +voidaan käyttää teosta {\hobby} tai teoksesta \cite{ursoswald} löytyvää oppijaksoa. + +Teoksessa on \hoenig{} on hyvin perinpohjainen esitys {\LaTeX}:n ja {\TeX}:n graafisista +ominaisuuksista (sekä kirjasimista). + +\section{\texttt{picture}-ympäristö} +\secby{Urs Oswald}{osurs@bluewin.ch} + +\subsection{Peruskomennot} + +\ei{picture}-ympäristö\footnote{Kaiken huipuksi tämä kuvaympäristö toimii ilman mitään +erityisiä makropakkauksia.} otetaan käyttöön joko komennolla +\begin{lscommand} +\ci{begin}\verb|{picture}(|$x,y$\verb|)|\ldots\ci{end}\verb|{picture}| +\end{lscommand} +\noindent tai +\begin{lscommand} +\ci{begin}\verb|{picture}(|$x,y$\verb|)(|$x_0,y_0$\verb|)|\ldots\ci{end}\verb|{picture}| +\end{lscommand} +Numerot $x,\,y,\,x_0,\,y_0$ viittaavat \ci{unitlength}-muuttujaan, jolle voidaan asettaa +arvo milloin tahansa (ei kuitenkaan \ei{picture}-ympäristön sisällä) esimerkiksi komennolla + +\begin{lscommand} +\ci{setlength}\verb|{|\ci{unitlength}\verb|}{1.2cm}| +\end{lscommand} +Muuttujan \ci{unitlength} oletusarvo on \texttt{1pt}. Ensimmäinen pari, $(x,y)$, varaa +kuvalle nelikulmaisen tilan dokumentista. Toista paria, $(x_0,y_0)$, voidaan käyttää +tarvittaessa asettamaan mielivaltaiset koordinaatit nelikulmion vasemmasta alakulmasta. + +Useimmat piirustuskomennot ovat joko muotoa +\begin{lscommand} +\ci{put}\verb|(|$x,y$\verb|){|\emph{objekti}\verb|}| +\end{lscommand} +\noindent tai +\begin{lscommand} +\ci{multiput}\verb|(|$x,y$\verb|)(|$\Delta x,\Delta y$\verb|){|$n$\verb|}{|\emph{objekti}\verb|}|\end{lscommand} +Bézier-käyrät ovat poikkeus. Ne piirretään komennolla +\begin{lscommand} +\ci{qbezier}\verb|(|$x_1,y_1$\verb|)(|$x_2,y_2$\verb|)(|$x_3,y_3$\verb|)| +\end{lscommand} + +\subsection{Suorat viivat} + +\begin{example} +\setlength{\unitlength}{5cm} +\begin{picture}(1,1) + \put(0,0){\line(0,1){1}} + \put(0,0){\line(1,0){1}} + \put(0,0){\line(1,1){1}} + \put(0,0){\line(1,2){.5}} + \put(0,0){\line(1,3){.3333}} + \put(0,0){\line(1,4){.25}} + \put(0,0){\line(1,5){.2}} + \put(0,0){\line(1,6){.1667}} + \put(0,0){\line(2,1){1}} + \put(0,0){\line(2,3){.6667}} + \put(0,0){\line(2,5){.4}} + \put(0,0){\line(3,1){1}} + \put(0,0){\line(3,2){1}} + \put(0,0){\line(3,4){.75}} + \put(0,0){\line(3,5){.6}} + \put(0,0){\line(4,1){1}} + \put(0,0){\line(4,3){1}} + \put(0,0){\line(4,5){.8}} + \put(0,0){\line(5,1){1}} + \put(0,0){\line(5,2){1}} + \put(0,0){\line(5,3){1}} + \put(0,0){\line(5,4){1}} + \put(0,0){\line(5,6){.8333}} + \put(0,0){\line(6,1){1}} + \put(0,0){\line(6,5){1}} +\end{picture} +\end{example} +Suorat viivat piirretään komennolla +\begin{lscommand} +\ci{put}\verb|(|$x,y$\verb|){|\ci{line}\verb|(|$x_1,y_1$\verb|){|$length$\verb|}}| +\end{lscommand} +Komennolla \ci{line} on kaksi parametria: +\begin{enumerate} + \item suuntavektori, + \item pituus. +\end{enumerate} +Suuntavektori koostuu kokonaisluvuista +\[ + -6,\,-5,\,\ldots,\,5,\,6, +\] +ja niiden on oltava lisäksi keskenään jaottomia (eli ei yhteistä jakajaa ykköstä lukuunottamatta). +Kuvassa esitetään kaikki 25 ensimmäisen kvadrantin mahdollista arvoa. Pituus riippuu +\ci{unitlength}-muuttujan arvosta. Pituusparametri on vaakaviivan tapauksessa vaakakoordinaatti, +muussa tapauksessa kyseessä on pystykordinaatti. + +\subsection{Nuolet} + +\begin{example} +\setlength{\unitlength}{1mm} +\begin{picture}(60,40) + \put(30,20){\vector(1,0){30}} + \put(30,20){\vector(4,1){20}} + \put(30,20){\vector(3,1){25}} + \put(30,20){\vector(2,1){30}} + \put(30,20){\vector(1,2){10}} + \thicklines + \put(30,20){\vector(-4,1){30}} + \put(30,20){\vector(-1,4){5}} + \thinlines + \put(30,20){\vector(-1,-1){5}} + \put(30,20){\vector(-1,-4){5}} +\end{picture} +\end{example} +Nuolet piirretään komennolla +\begin{lscommand} +\ci{put}\verb|(|$x,y$\verb|){|\ci{vector}\verb|(|$x_1,y_1$\verb|){|$length$\verb|}}| +\end{lscommand} +Nuolien suuntavektorit ovat jopa suorien suuntavektoreita rajoitutempia. +Niiden argumentteina voivat olla ainoastaan kokonaisluvut +\[ + -4,\,-3,\,\ldots,\,3,\,4. +\] +Argumenttien on lisäksi oltava keskenään jaottomia (ei yhteistä jakajaa ykköstä lukuunottamatta). On syytä +huomata komennon \ci{thicklines} vaikutus kahteen vasempaan yläkulmaan osoittavaan nuoleen. + +\subsection{Ympyrät} + +\begin{example} +\setlength{\unitlength}{1mm} +\begin{picture}(60, 40) + \put(20,30){\circle{1}} + \put(20,30){\circle{2}} + \put(20,30){\circle{4}} + \put(20,30){\circle{8}} + \put(20,30){\circle{16}} + \put(20,30){\circle{32}} + + \put(40,30){\circle{1}} + \put(40,30){\circle{2}} + \put(40,30){\circle{3}} + \put(40,30){\circle{4}} + \put(40,30){\circle{5}} + \put(40,30){\circle{6}} + \put(40,30){\circle{7}} + \put(40,30){\circle{8}} + \put(40,30){\circle{9}} + \put(40,30){\circle{10}} + \put(40,30){\circle{11}} + \put(40,30){\circle{12}} + \put(40,30){\circle{13}} + \put(40,30){\circle{14}} + + \put(15,10){\circle*{1}} + \put(20,10){\circle*{2}} + \put(25,10){\circle*{3}} + \put(30,10){\circle*{4}} + \put(35,10){\circle*{5}} +\end{picture} +\end{example} +Komento +\begin{lscommand} + \ci{put}\verb|(|$x,y$\verb|){|\ci{circle}\verb|{|\emph{halkaisija}\verb|}}| +\end{lscommand} +\noindent piirtää ympyrän, jonka keskipiste on $(x,y)$ ja halkaisija (ei siis säde) +on \emph{halkaisija}. \ei{picture}-ympäristössä suurin mahdollinen halkaisija on +noin 14\,mm. Kaikki tätä pienemmät halkaisijat eivät kuitenkaan ole mahdollisia. +Komennolla \ci{circle*} piirretään täytettyjä ympyröitä. + +Aivan kuten suorien viivojen tapauksessa, voi olla tarpeen käyttää lisämakropakkauksia +\pai{eepic} tai \pai{pstricks}. Nämä on kuvattu perinpohjin teoksessa \graphicscompanion. + +Mikäli ylimääräisten laskelmien tekeminen ei pelota, ympyröitä ja käyriä voidaan +kasata myös toisen asteen Bézier-käyrien avulla. +Esimerkkejä ja Java-lähdekoodia löytyy teoksesta \graphicsinlatex{}. + +\subsection{Tekstiä ja kaavoja} + +\begin{example} +\setlength{\unitlength}{1cm} +\begin{picture}(6,5) + \thicklines + \put(1,0.5){\line(2,1){3}} + \put(4,2){\line(-2,1){2}} + \put(2,3){\line(-2,-5){1}} + \put(0.7,0.3){$A$} + \put(4.05,1.9){$B$} + \put(1.7,2.95){$C$} + \put(3.1,2.5){$a$} + \put(1.3,1.7){$b$} + \put(2.5,1.05){$c$} + \put(0.3,4){$F= + \sqrt{s(s-a)(s-b)(s-c)}$} + \put(3.5,0.4){$\displaystyle + s:=\frac{a+b+c}{2}$} +\end{picture} +\end{example} +Esimerkin mukaisesti tekstiä ja kaavoja voidaan kirjoittaa \ei{picture}-ympäristössä +\ci{put}-komentoa käyttämällä. + +\subsection{Komennot \ci{multiput} ja \ci{linethickness}} + +\begin{example} +\setlength{\unitlength}{2mm} +\begin{picture}(30,20) + \linethickness{0.075mm} + \multiput(0,0)(1,0){31}% + {\line(0,1){20}} + \multiput(0,0)(0,1){21}% + {\line(1,0){30}} + \linethickness{0.15mm} + \multiput(0,0)(5,0){7}% + {\line(0,1){20}} + \multiput(0,0)(0,5){5}% + {\line(1,0){30}} + \linethickness{0.3mm} + \multiput(5,0)(10,0){3}% + {\line(0,1){20}} + \multiput(0,5)(0,10){2}% + {\line(1,0){30}} +\end{picture} +\end{example} +Komennolla +\begin{lscommand} + \ci{multiput}\verb|(|$x,y$\verb|)(|$\Delta x,\Delta y$\verb|){|$n$\verb|}{|\emph{objekti}\verb|}| +\end{lscommand} +\noindent on 4 parametriä: aloituspiste, siirtymävektori objektista toiseen, objektien +lukumäärä sekä piirrettävä objekti. Komento \ci{linethickness} vaikuttaa vaaka- ja pystyviivoihin, +muttei vinoviivoihin eikä ympyröihin. Se vaikuttaa kuitenkin toisen asteen Bézier-käyriin! + +\subsection{Ovaalit. Komennot \ci{thinlines} ja \ci{thicklines}} + +\begin{example} +\setlength{\unitlength}{1cm} +\begin{picture}(6,4) + \linethickness{0.075mm} + \multiput(0,0)(1,0){7}% + {\line(0,1){4}} + \multiput(0,0)(0,1){5}% + {\line(1,0){6}} + \thicklines + \put(2,3){\oval(3,1.8)} + \thinlines + \put(3,2){\oval(3,1.8)} + \thicklines + \put(2,1){\oval(3,1.8)[tl]} + \put(4,1){\oval(3,1.8)[b]} + \put(4,3){\oval(3,1.8)[r]} + \put(3,1.5){\oval(1.8,0.4)} +\end{picture} +\end{example} +Komento +\begin{lscommand} + \ci{put}\verb|(|$x,y$\verb|){|\ci{oval}\verb|(|$w,h$\verb|)}| +\end{lscommand} +\noindent tai +\begin{lscommand} + \ci{put}\verb|(|$x,y$\verb|){|\ci{oval}\verb|(|$w,h$\verb|)[|\emph{sijainti}\verb|]}| +\end{lscommand} +\noindent piirtävät ovaalin, jonka keskipiste on $(x,y)$, leveys $w$ ja korkeus $h$. +Mahdolliset \emph{sijainti}-parametrit \texttt{b}, \texttt{t}, \texttt{l}, \texttt{r} +tarkoittavat vastaavasti ''alhaalla'', ''ylhäällä'', ''vasemalla'', ''oikealla'' +ja niitä voidaan yhdistellä esimerkin mukaisesti. + +Viivan paksuuteen voidaan vaikuttaa komennolla:\\ +\ci{linethickness}\verb|{|\emph{mitta}\verb|}| +toisaalta myös komennoilla \ci{thinlines} and \ci{thicklines}. +Vaakaviivoihin (ja toisen asteen Bézier-käyriin) vaikuttaa \ci{linethickness}\verb|{|\emph{mitta}\verb|}|, +vinoviivoihin sekä ympyröihin ja ovaaleihin vaikuttavat \ci{thinlines} ja \ci{thicklines}. + +\subsection{Ennalta määriteltyjen kuvalaatikoiden käyttö} + +\begin{example} +\setlength{\unitlength}{0.5mm} +\begin{picture}(120,168) +\newsavebox{\laatikkoa}% uusi laatikko +\savebox{\laatikkoa} + (40,32)[bl]{% määritykset + \multiput(0,0)(0,28){2} + {\line(1,0){40}} + \multiput(0,0)(40,0){2} + {\line(0,1){28}} + \put(1,28){\oval(2,2)[tl]} + \put(1,29){\line(1,0){5}} + \put(9,29){\oval(6,6)[tl]} + \put(9,32){\line(1,0){8}} + \put(17,29){\oval(6,6)[tr]} + \put(20,29){\line(1,0){19}} + \put(39,28){\oval(2,2)[tr]} +} +\newsavebox{\laatikkob}% uusi laatikko +\savebox{\laatikkob} + (40,32)[l]{% määritykset + \put(0,14){\line(1,0){8}} + \put(8,0){\usebox{\laatikkoa}} +} +\put(34,26){\line(0,1){102}} +\put(14,128){\usebox{\laatikkoa}} +\multiput(34,86)(0,-37){3} + {\usebox{\laatikkob}} +\end{picture} +\end{example} +Kuvalaatikko voidaan \emph{nimetä} komennolla +\begin{lscommand} + \ci{newsavebox}\verb|{|\emph{nimi}\verb|}| +\end{lscommand} +\noindent sitten sen ominaisuudet \emph{määritellään} +\begin{lscommand} + \ci{savebox}\verb|{|\emph{nimi}\verb|}(|\emph{leveys,korkeus}\verb|)[|\emph{sijainti}\verb|]{|\emph{sisältö}\verb|}| +\end{lscommand} +\noindent ja lopuksi se voidaan tarvittaessa piirtää +\begin{lscommand} + \ci{put}\verb|(|$x,y$\verb|)|\ci{usebox}\verb|{|\emph{nimi}\verb|}| +\end{lscommand} + +Mahdollinen \emph{sijainti}-parametri määrittelee kuvalaatikon +origon. Esimerkissä sillä on arvo \texttt{bl}, joka +sijoittaa origon laatikon vasempaan yläkulmaan. Muut mahdolliset arvot +ovat \texttt{t} (ylös) ja \texttt{r} oikealle. + +Parametri \emph{name} viittaa {\LaTeX}:n muuttujiin ja siitä johtuen +se muistuttaa komentoa (tästä syystä sen edessä on kenoviiva). +Kuvalaatikot voivat olla toistensa sisällä: esimerkissä \ci{laatikkoa} +on osa \ci{laatikkob}-laatikon määrityksiä. + +Tässä piti käyttää komentoa \ci{oval}, koska \ci{line} ei toimi, mikäli segmentin pituus on +alle 3\,mm. + +\subsection{Toisen asteen Bézier-käyrät} + +\begin{example} +\setlength{\unitlength}{1cm} +\begin{picture}(6,4) + \linethickness{0.075mm} + \multiput(0,0)(1,0){7} + {\line(0,1){4}} + \multiput(0,0)(0,1){5} + {\line(1,0){6}} + \thicklines + \put(0.5,0.5){\line(1,5){0.5}} + \put(1,3){\line(4,1){2}} + \qbezier(0.5,0.5)(1,3)(3,3.5) + \thinlines + \put(2.5,2){\line(2,-1){3}} + \put(5.5,0.5){\line(-1,5){0.5}} + \linethickness{1mm} + \qbezier(2.5,2)(5.5,0.5)(5,3) + \thinlines + \qbezier(4,2)(4,3)(3,3) + \qbezier(3,3)(2,3)(2,2) + \qbezier(2,2)(2,1)(3,1) + \qbezier(3,1)(4,1)(4,2) +\end{picture} +\end{example} +Esimerkistä selviää, että ympyrän jakaminen neljään toisen asteen Bézier-käyrään +ei tuo tyydyttävää tulosta. Tarvitaan ainakin kahdeksan. Kuvasta selviää lisäksi +\ci{linethickness}-komennon vaikutus pysty- tai vaakaviivoihin ja komentojen \ci{thinlines} +sekä \ci{thicklines} vaikutus vinoviivoihin. Siitä näkyy myös, että kummatkin +komentotyypit vaikuttavat toisen asteen Bézier-käyriin, jokainen seuraava komento +ohittaa vaikutuksiltaan edellisen. + +Päätepisteitä kuvatkoon $P_1=(x_1,\,y_1),\,P_2=(x_2,\,y_2)$ ja vastaavasti $m_1,\,m_2$ +toisen asteen Bézier-käyrän kaarta. Näiden välissä oleva kontrollipiste +$S=(x,\,y)$ seuraa silloin yhtälöistä +\begin{equation} \label{zwischenpunkt} + \left\{ + \begin{array}{rcl} + x & = & \displaystyle \frac{m_2 x_2-m_1x_1-(y_2-y_1)}{m_2-m_1}, \\ + y & = & y_i+m_i(x-x_i)\qquad (i=1,\,2). + \end{array} + \right. +\end{equation} +\noindent Teoksessa \graphicsinlatex\ esitetään Java-ohjelma, joka +luo tarvittavan \ci{qbezier}-komennon. + +\subsection{Katenoidikäyrä} + +\begin{example} +\setlength{\unitlength}{1.3cm} +\begin{picture}(4.3,3.6)(-2.5,-0.25) + \put(-2,0){\vector(1,0){4.4}} + \put(2.45,-.05){$x$} + \put(0,0){\vector(0,1){3.2}} + \put(0,3.35){\makebox(0,0){$y$}} + \qbezier(0.0,0.0)(1.2384,0.0) + (2.0,2.7622) + \qbezier(0.0,0.0)(-1.2384,0.0) + (-2.0,2.7622) + \linethickness{.075mm} + \multiput(-2,0)(1,0){5} + {\line(0,1){3}} + \multiput(-2,0)(0,1){4} + {\line(1,0){4}} + \linethickness{.2mm} + \put( .3,.12763){\line(1,0){.4}} + \put(.5,-.07237){\line(0,1){.4}} + \put(-.7,.12763){\line(1,0){.4}} + \put(-.5,-.07237){\line(0,1){.4}} + \put(.8,.54308){\line(1,0){.4}} + \put(1,.34308){\line(0,1){.4}} + \put(-1.2,.54308){\line(1,0){.4}} + \put(-1,.34308){\line(0,1){.4}} + \put(1.3,1.35241){\line(1,0){.4}} + \put(1.5,1.15241){\line(0,1){.4}} + \put(-1.7,1.35241){\line(1,0){.4}} + \put(-1.5,1.15241){\line(0,1){.4}} + \put(-2.5,-0.25){\circle*{0.2}} +\end{picture} +\end{example} + +Tässä kuvassa kumpikin katenoidikäyrän $y=\cosh x -1$ symmetrinen puolisko esitetään toisen +asteen Bézier-käyrällä. Käyrän oikea puoli päättyy pisteeseen \((2,\,2.7622)\), missä +kaarteella on arvo \(m=3.6269\). Käyttämällä jälleen yhtälöä (\ref{zwischenpunkt}) voidaan +laskea keskimmäiset kontrollipisteet. Ne näyttävät olevan $(1.2384,\,0)$ ja $(-1.2384,\,0)$. +Ristit osoittavat \emph{oikean} katenoidikäyrän pisteitä. Virhettä tuskin huomaa sen ollessa +alle yhden prosentin. + +Tämä esimerkki esittää \verb|\begin{picture}|-komennon mahdollisen parametrin käyttöä. +Kuva määritellään tarkoituksenmukaisilla ''matemaattisilla'' koordinaateilla, kun taas +komennolla +\begin{lscommand} + \ci{begin}\verb|{picture}(4.3,3.6)(-2.5,-0.25)| +\end{lscommand} +\noindent sen vasempaan alakulmaan (merkitty mustalla pallolla) on +liitetty koordinaatit $(-2.5,-0.25)$. + +\subsection{Nopeus suhteellisuusteoriassa} + +\begin{example} +\setlength{\unitlength}{1cm} +\begin{picture}(6,4)(-3,-2) + \put(-2.5,0){\vector(1,0){5}} + \put(2.7,-0.1){$\chi$} + \put(0,-1.5){\vector(0,1){3}} + \multiput(-2.5,1)(0.4,0){13} + {\line(1,0){0.2}} + \multiput(-2.5,-1)(0.4,0){13} + {\line(1,0){0.2}} + \put(0.2,1.4) + {$\beta=v/c=\tanh\chi$} + \qbezier(0,0)(0.8853,0.8853) + (2,0.9640) + \qbezier(0,0)(-0.8853,-0.8853) + (-2,-0.9640) + \put(-3,-2){\circle*{0.2}} +\end{picture} +\end{example} +Näiden kahden Bézier-käyrän kiintopisteet laskettiin kaavalla (\ref{zwischenpunkt}). +Positiivisen haaran määrittelee $P_1=(0,\,0),\,m_1=1$ ja $P_2=(2,\,\tanh 2),\,m_2=1/\cosh^2 2$. +Kuva on jälleen määritelty matemaattisesti sopivin koordinaatein ja vasempaan alakulmaan +sijoittuvat matemaattiset koordinaatit $(-3,-2)$ (musta ympyrä). + +\section{\texorpdfstring{\Xy}{Xy}-pic} +\secby{Alberto Manuel Brand\~ao Sim\~oes}{albie@alfarrabio.di.uminho.pt} +\pai{xy} sisältää erityismakroja kaavioiden piirtämiseen. +Sen käyttämiseksi riittää seuraavan rivin lisääminen dokumentin määrittelyosaan: +\begin{lscommand} +\verb|\usepackage[|\emph{optiot}\verb|]{xy}| +\end{lscommand} +\emph{optiot} ovat lista \Xy-picin funktioita, jotka halutaan ladata käyttöön. +Näitä optioita käytetään lähennä makrojen virheitä etsittäessä. Suosittelen +käyttämään optiota \verb!all!, joka saa {\LaTeX}:n lataamaan kaikki {\Xy}:n komennot. + +\Xy-kaaviot piirretään matriisiin, jossa kaavion jokainen elementti +on sijoitettu johonkin matriisin kohtaan: +\begin{example} +\begin{displaymath} +\xymatrix{A & B \\ + C & D } +\end{displaymath} +\end{example} +Komentoa \ci{xymatrix} täytyy käyttää matematiikkatilassa. Tässä +määritellään kaksi viivaa ja kaksi saraketta. Jotta matriisista +saadaan kaavio, siihen lisätään nuolia \ci{ar}-komentoa käyttämällä. + +\begin{example} +\begin{displaymath} +\xymatrix{ A \ar[r] & B \ar[d] \\ + D \ar[u] & C \ar[l] } +\end{displaymath} +\end{example} +Nuolikomento sijoitetaan nuolen alkupisteeseen. Parametrit kertovat +nuolen suunnan (\texttt{u} ylös, \texttt{d} alas, \texttt{r} oikealle ja +\texttt{l} vasemmalle). + +\begin{example} +\begin{displaymath} +\xymatrix{ + A \ar[d] \ar[dr] \ar[r] & B \\ + D & C } +\end{displaymath} +\end{example} +Vinoviivojen tekemiseen käytetään yhtä useampaa suuntaa. +Suuntaparametreja voi itseasiassa toistaa suurempien nuolten +tekemiseksi. +\begin{example} +\begin{displaymath} +\xymatrix{ + A \ar[d] \ar[dr] \ar[drr] & & \\ + B & C & D } +\end{displaymath} +\end{example} + +Kaavioista saadaan vielä mielenkiintoisempia lisäämällä +nuoliin tunnisteita. Niiden tekemiseen käytetään yleisiä +ylä- ja alaindeksioperaattoreita. +\begin{example} +\begin{displaymath} +\xymatrix{ + A \ar[r]^f \ar[d]_g & + B \ar[d]^{g'} \\ + D \ar[r]_{f'} & C } +\end{displaymath} +\end{example} + +Näitä operaattoreita käytetään kuten normaalisti matematiikkatilassa. +Ainoa ero on merkityksessä: yläindeksi tarkoittaa ''nuolen päällä'' +ja alaindeksi tarkoittaa ''nuolen alla''. On myös olemassa kolmas operaattori: +pystyviiva (\verb+|+). Se sijoittaa tekstin \emph{keskelle} nuolta. + +\begin{example} +\begin{displaymath} +\xymatrix{ + A \ar[r]|f \ar[d]|g & + B \ar[d]|{g'} \\ + D \ar[r]|{f'} & C } +\end{displaymath} +\end{example} + +Nuoli, jossa on reikä, piirretään \verb!\ar[...]|\hole!. + +Joissain tilanteissa on tärkeää erottaa erityyppiset nuolet toisistaan. +Se voidaan tehdä panemalla niihin tunnisteita tai muuttamalla niiden +ulkoasua: + +\begin{example} +\shorthandoff{"} +\begin{displaymath} +\xymatrix{ + \bullet\ar@{->}[rr] && \bullet\\ + \bullet\ar@{.<}[rr] && \bullet\\ + \bullet\ar@{~)}[rr] && \bullet\\ + \bullet\ar@{=(}[rr] && \bullet\\ + \bullet\ar@{~/}[rr] && \bullet\\ + \bullet\ar@{^{(}->}[rr] && \bullet\\ + \bullet\ar@2{->}[rr] && \bullet\\ + \bullet\ar@3{->}[rr] && \bullet\\ + \bullet\ar@{=+}[rr] && \bullet +} +\end{displaymath} +\shorthandon{"} +\end{example} + +Huomaa ero kahden seuraavan kaavion välillä: + +\begin{example} +\begin{displaymath} +\xymatrix{ + \bullet \ar[r] + \ar@{.>}[r] & + \bullet +} +\end{displaymath} +\end{example} + +\begin{example} +\begin{displaymath} +\xymatrix{ + \bullet \ar@/^/[r] + \ar@/_/@{.>}[r] & + \bullet +} +\end{displaymath} +\end{example} + +Kauttaviivojen välissä olevat modifikaattorit määrittelevät +miten käyrät piirretään. \Xy-pic tarjoaa useita tapoja +käyrien piirtämiseksi. Lisätietoja saa \Xy-picin käyttöohjeista. + +% \begin{example} +% \begin{lscommand} +% \ci{dum} +% \end{lscommand} +% \end{example} + diff --git a/Master/texmf-doc/doc/finnish/lshort-finnish/src/kiitokset.tex b/Master/texmf-doc/doc/finnish/lshort-finnish/src/kiitokset.tex new file mode 100644 index 00000000000..7994e1e097b --- /dev/null +++ b/Master/texmf-doc/doc/finnish/lshort-finnish/src/kiitokset.tex @@ -0,0 +1,157 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Who contributed to this Document +% $Id: kiitokset.tex,v 1.1.1.1 2002/11/11 08:05:09 hellgren Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Kiitokset!} + +\noindent Tämä suomennos on käännetty englanninkielisestä +alkuteoksesta \emph{The Not So Short Introduction to \LaTeXe}, +jonka on kirjoittanut: +\begin{verse} +\contrib{Tobias Oetiker}{oetiker@ee.ethz.ch}% +{Department of Electrical Engineering, Swiss Federal Institute of Technology} +\end{verse} + +\noindent Lisäsin tekstiin suomalaisille kirjoittajille tarpeellisia +asioita. Alkuperäinen versio löytyy osoitteesta\\ +\CTAN|info/lshort/english| + +Oetiker lainasi paljon materiaalia +itävaltalaisesta johdannosta \LaTeX{} 2.09:n käyttöön, jonka +ovat kirjoittaneet saksaksi: +\begin{verse} +\contrib{Hubert Partl}{partl@mail.boku.ac.at}% +{Zentraler Informatikdienst der Universit\"at f\"ur Bodenkultur Wien} +\contrib{Irene Hyna}{Irene.Hyna@bmwf.ac.at}% + {Bundesministerium f\"ur Wissenschaft und Forschung Wien} +\contrib{Elisabeth Schlegl}{ei sähköpostia}% + {Graz} +\end{verse} + +Saksankielisestä dokumentista kiinnostuneet löytävät Jörg Knappenin +\LaTeXe:ia varten päivittämän version osoitteesta\\ +\CTAN|info/lshort/german| + +\newpage +\noindent Oetikerin valmistaessa alkuperäistä dokumenttia hän +pyysi kommentteja uutisryhmässä \texttt{comp.text.tex}. Hän saikin +paljon vastauksia. Alla mainitut henkilöt auttoivat korjauksin, ehdotuksin +ja tekstiä parantavalla materiaalilla. He näkivät paljon vaivaa +auttaakseen Oetikeria saamaan tämän dokumentin sen nykyiseen tilaansa. +Alkuperäistekstin tekijä haluaa vilpittömästi kiittää heitä kaikkia. +Luonnollisesti kaikki tästä kirjasta löytyvät virheet ovat minun +tekemiäni. Mikäli joskus löydätte oikein käännetyn sanan, on +kyseessä silkka vahinko. + +{ \flushleft\small +Rosemary~Bailey, %r.a.bailey@qmw.ac.uk 0.2 +Marc~Bevand, % <bevand_m@epita.fr> +Friedemann~Brauer, %fbrauer@is.dal.ca 3.4 +Jan~Busa, % <busaj@ccsun.tuke.sk> +Markus~Br\"uhwiler, % <m.br@switzerland.org> +Pietro~Braione, % <braione@elet.polimi.it> +David~Carlisle, %GONE carlisle@cs.man.ac.uk 1.0 +Jos\'e~Carlos~Santos, % <jcsantos@fc.up.pt> +Neil~Carter, % N.Carter@Swansea.ac.uk +Mike~Chapman, %chapman@eeh.ee.ethz.ch 3.16 +Pierre~Chardaire, % <pc@sys.uea.ac.uk +Christopher~Chin, %chris.chin@rmit.edu.au 3.1 +Carl~Cerecke, %cdc@cosc.canterbury.ac.nz> +Chris~McCormack, %GONE chrismc@eecs.umich.edu 0.1 +Wim~van~Dam, %GONE wimvdam@cs.kun.nl 2.2 +Jan~Dittberner, %jan@jan-dittberner.de 3.15 +Michael~John~Downes, %<mjd@ams.org> 14 Oct 1999 +Matthias~Dreier, %dreier@ostium.ch +David~Dureisseix, %dureisse@lmt.ens-cachan.fr 1.1 +Elliot, %GONE enh-a@minster.york.ac.uk 1.1 +Hans~Ehrbar, %ehrbar@econ.utah.edu +Daniel~Flipo, %Daniel.Flipo@univ-lille1.fr +David~Frey, %david@eos.lugs.ch 2.2 +Hans~Fugal, %hans@fugal.net +Robin~Fairbairns, %Robin.Fairbairns@cl.cam.ac.uk 0.2 1.0 +J\"org~Fischer, %j.fischer@xpoint.at 3.16 +Erik~Frisk, %frisk@isy.liu.se 3.4 +Mic~Milic~Frederickx, % <mic.milic@web.de> +Frank, %frank@freezone.co.uk 11 Feb 2000 +Kasper~B.~Graversen, % <kbg@dkik.dk> +Arlo~Griffiths, % <A.Griffiths@let.leidenuniv.nl> +Alexandre~Guimond, %guimond@IRO.UMontreal.CA 0.9 +Andy~Goth, % <unununium@openverse.com> +Cyril~Goutte, %goutte@ei.dtu.dk 2.1 2.2 +Greg~Gamble, %gregg@maths.uwa.edu.au 2.2 +Frank~Fischli, % <fischlifaenger@gmx.ch> +Neil~Hammond, %nfh@dmu.ac.uk 0.3 +Rasmus~Borup~Hansen, %GONE rbhfamos@math.ku.dk 0.2 0.9 0.91 0.92 1.9.9 +Joseph~Hilferty, % <hilferty@fil.ub.es> +Bj\"orn Hvittfeldt, %bjorn@hvittfeldt.com 3.13 +Martien~Hulsen, %M.A.Hulsen@WbMt.TUDelft.NL 1.0 1.1 +Werner~Icking, %<Werner.Icking@gmd.de> 3.1 +Jakob, %diness@get2net.dk +Eric~Jacoboni, %GONE jacoboni@enseeiht.fr 0.1 0.9 +Alan~Jeffrey, %alanje@cogs.sussex.ac.uk 0.2 +Byron~Jones, %bj@dmu.ac.uk 1.1 +David~Jones, %GONE djones@CA.McMaster.dcss.insight 1.1 +Johannes-Maria~Kaltenbach, %<kaltenbach@zeiss.de> 3.01 +Michael~Koundouros, % <mkoundouros@hotmail.com> +Andrzej~Kawalec, %GONE akawalec@prz.rzeszow.pl 1.9.9 +Sander~de~Kievit, %Skievit@ucu.uu.nl +Alain~Kessi, %ALAIN_KESSI@HOTMAIL.COM 2.2 +Christian Kern, %ck@unixen.hrz.uni-oldenburg.de 2.1 +J\"org~Knappen, %knappen@vkpmzd.kph.uni-mainz.de 0.1 +Kjetil~Kjernsmo, %<kjetil.kjernsmo@astro.uio.no> 3.2 +Maik~Lehradt, %greek@uni-paderborn.de 0.1 +R\'emi~Letot, % <r_letot@yahoo.com> +Flori~Lambrechts, % <f.lambrechts@softhome.net> +Johan~Lundberg, %p99jlu@physto.se +Alexander~Mai, %Alexander.Mai@physik.tu-darmstadt.de 3.8 +Hendrik~Maryns, %hendrik.maryns@ugent.be +Martin~Maechler, %<maechler@stat.math.ethz.ch> 2.2 +Aleksandar~S~Milosevic, % <aleksandar.milosevic@yale.edu> +Henrik~Mitsch, % <Henrik.Mitsch@gmx.at> +Claus~Malten, %GONE <ASI138%BITNET.DJUKFA11@BITNET.CEARN> 1.1 +Kevin~Van~Maren, % <vanmaren@fast.cs.utah.edu> 24 Nov 1999 +Richard~Nagy, % r.nagy@nameshield.net +Philipp~Nagele, % Philipp.Nagele@t-systems.com +Lenimar~Nunes~de~Andrade, % <lenimar@mat.ufpb.br> Fri, 12 Nov 1999 +Manuel~Oetiker, % manuel@oetiker.ch +Urs~Oswald, % osurs@bluewin.ch +Demerson~Andre~Polli, % polli@linux.ime.usp.br +Maksym~Polyakov % <polyama@myrealbox.com> +Hubert~Partl, %partl@mail.boku.ac.at 0.2 1.1 +John~Refling, %refling@sierra.lbl.gov 0.1 0.9 +Mike~Ressler, %ressler@cougar.jpl.nasa.gov 0.1 0.2 0.9 1.0 1.9.9 +Brian~Ripley, %ripley@stats.ox.ac.uk 2.1 +Young~U.~Ryu, %ryoung@utdallas.edu 2.1 +Bernd~Rosenlecher, %9rosenle@informatik.uni-hamburg.de 10 Feb 2000 +Chris~Rowley, %C.A.Rowley@open.ac.uk 0.91 +Risto~Saarelma, %risto.saarelma@cs.helsinki.fi +Hanspeter~Schmid, %schmid@isi.ee.ethz.ch +Craig~Schlenter, %cschle@lucy.ee.und.ac.za 0.1 0.2 0.9 +Gilles~Schintgen, %gschintgen@internet.lu +Baron~Schwartz, % <bps7j@cs.virginia.edu> +Christopher~Sawtell, %<csawtell@xtra.co.nz> 1 Sep 1999 +Miles~Spielberg, %zeibach@hotmail.com +Geoffrey~Swindale, % <geofftswin@ntlworld.com> +Laszlo~Szathmary, % <szathml@delfin.klte.hu> +Boris~Tobotras, % <tobotras@jet.msk.su> +Josef~Tkadlec, %tkadlec@math.feld.cvut.cz 2.0 2.2 +Scott~Veirs, %scottv@ocean.washington.edu +Didier~Verna, %verna@inf.enst.fr 2.2 +Fabian~Wernli, %wernli@iap.fr 3.2 +Carl-Gustav~Werner, % <Carl-Gustav.Werner@math.lu.se> 11 Oct 1999,3.16 +David~Woodhouse, % <dwmw2@infradead.org> 3.16 +Chris~York, % <c.s.york@Cummins.com> 21 Nov 1999 +Fritz~Zaucker, %zaucker@ee.ethz.ch 3.0 +Rick~Zaccone, %zaccone@bucknell.edu 2.2 +and Mikhail~Zotov. %zotov@eas.npi.msu.su 3.1 + +} + +\vspace*{\stretch{1}} + +\pagebreak +\endinput +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "lyhyt2e" +%%% End: diff --git a/Master/texmf-doc/doc/finnish/lshort-finnish/src/kirjallisuus.tex b/Master/texmf-doc/doc/finnish/lshort-finnish/src/kirjallisuus.tex new file mode 100644 index 00000000000..d93e32aab00 --- /dev/null +++ b/Master/texmf-doc/doc/finnish/lshort-finnish/src/kirjallisuus.tex @@ -0,0 +1,94 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: The Bibliography +% File: kirjallisuus.tex (lyhyt2e.tex) +% $Id: kirjallisuus.tex,v 1.2 2005/06/06 08:05:09 hellgren Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{thebibliography}{99} +\addcontentsline{toc}{chapter}{\numberline{}\bibname} +\bibitem{manual} Leslie Lamport. \newblock \emph{{\LaTeX:} A Document + Preparation System}. \newblock Addison-Wesley, Reading, + Massachusetts, second edition, 1994, ISBN~0-201-52983-1. + +\bibitem{texbook} Donald~E. Knuth. \newblock \textit{The \TeX{}book,} + Volume~A of \textit{Computers and Typesetting}, Addison-Wesley, + Reading, Massachusetts, second edition, 1984, ISBN~0-201-13448-9. + +\bibitem{companion} Michel Goossens, Frank Mittelbach and Alexander + Samarin. \newblock \emph{The {\LaTeX} Companion, (2nd Edition).} \newblock + Addison-Wesley, Reading, Massachusetts, 2004, ISBN~0-201-36299-6. + +\bibitem{graphicscompanion} Michel Goossens, Sebastian Rahtz and Frank + Mittelbach. \newblock \emph{The {\LaTeX} Graphics Companion}. \newblock + Addison-Wesley, Reading, Massachusetts, 1997, ISBN~0-201-85469-4. + +\bibitem{local} Jokaisen \LaTeX-systeemin mukana pitäisi olla \emph{\LaTeX{} + Local Guide}, joka selittää kyseiseen systeemiin liittyviä paikallisia + asioita. Se on yleensä tiedostossa nimeltä \texttt{local.tex}. Valitettavasti + jotkut laiskat ylläpitäjät eivät ole tehneet kyseistä dokumenttia. Sellaisessa + tapauksessa apua täytyy kysyä paikalliselta \LaTeX-gurulta. + +\bibitem{usrguide} \LaTeX3 Project Team. \newblock \emph{\LaTeXe~for + authors}. \newblock Sisältyy \LaTeXe-järjestelmään tiedostona + \texttt{usrguide.tex}. + +\bibitem{clsguide} \LaTeX3 Project Team. \newblock \emph{\LaTeXe~for + Class and Package writers}. \newblock Sisältyy \LaTeXe-järjestelmään + tiedostona \texttt{clsguide.tex}. + +\bibitem{fntguide} \LaTeX3 Project Team. \newblock \emph{\LaTeXe~Font + selection}. \newblock Sisältyy \LaTeXe-järjestelmään tiedostona + \texttt{fntguide.tex}. + +\bibitem{graphics} D.~P.~Carlisle. \newblock \emph{Packages in the + `graphics' bundle}. \newblock Sisältyy 'graphics'-kokoelmaan + tiedostona \texttt{grfguide.tex}, saatavilla samasta paikasta, mistä + myös \LaTeX. + +\bibitem{verbatim} Rainer~Sch\"opf, Bernd~Raichle, Chris~Rowley. +\newblock \emph{A New Implementation of \LaTeX's verbatim + Environments}. + \newblock Sisältyy 'tools'-kokoelmaan tiedostona \texttt{verbatim.dtx}, + saatavilla samasta paikasta, mistä myös \LaTeX. + +\bibitem{cyrguide} Vladimir Volovich, Werner Lemberg and \LaTeX3 Project Team. + \newblock \emph{Cyrillic languages support in \LaTeX}. + \newblock On osa {\LaTeXe}-järjestelmää nimellä + \texttt{cyrguide.tex}. + +\bibitem{catalogue} Graham~Williams. \newblock \emph{The TeX + Catalogue} on lähes täydellinen listaus \TeX:n ja \LaTeX:n + makropaketeista. + \newblock Saatavilla verkosta osoitteesta +\texttt{CTAN:/tex-archive/help/Catalogue/catalogue.html} + +\bibitem{eps} Keith~Reckdahl. \newblock \emph{Using EPS Graphics in + \LaTeXe{} Documents}, joka kertoo kaiken ja enemmän kuin haluat edes tietää + EPS-tiedostoista ja niiden käytöstä \LaTeX-dokumenteissa. + \newblock Saatavilla verkosta osoitteesta + \texttt{CTAN:/tex-archive/info/epslatex.ps} + +\bibitem{xy-pic} Kristoffer H. Rose. + \newblock \emph{\Xy-pic User's Guide}. \newblock + Ladattavissa CTAN:sta \Xy-pic-makropakkauksen mukana. + +\bibitem{metapost} John D. Hobby. + \newblock \emph{A User's Manual for MetaPost}. \newblock + Ladattavissa osoitteesta: \url{http://cm.bell-labs.com/who/hobby/} + +\bibitem{unbound} Alan Hoenig. + \newblock \emph{\TeX{} Unbound}. \newblock Oxford University Press, 1998, + ISBN 0-19-509685-1; 0-19-509686-X (pbk.) + +\bibitem{ursoswald} Urs Oswald. + \newblock \emph{Graphics in \LaTeXe{}} (sisältää Java-koodia, jolla + voidaan tuottaa ympyröitä ja ellipsejä \texttt{picture}-ympäristössä) + sekä \emph{MetaPost - A Tutorial}. + \newblock Kummatkin ladattavissa osoitteesta: \url{http://www.ursoswald.ch} + +\end{thebibliography} + + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "lyhyt2e" +%%% End: diff --git a/Master/texmf-doc/doc/finnish/lshort-finnish/src/ladonta.tex b/Master/texmf-doc/doc/finnish/lshort-finnish/src/ladonta.tex new file mode 100644 index 00000000000..020f3e0edbb --- /dev/null +++ b/Master/texmf-doc/doc/finnish/lshort-finnish/src/ladonta.tex @@ -0,0 +1,1545 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Typesetting Part of LaTeX2e Introduction +% $Id: ladonta.tex,v 1.2 2005/04/05 08:05:09 hellgren Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Tekstin ladonta} + +\begin{intro} + Edellisen kappaleen luettuasi tiedät mistä perusaineksista + \LaTeXe-dokumentti koostuu. Tässä luvussa saat tietää loputkin + oikeissa dokumenteissa tarvittavista asioista. + \end{intro} + +\section{Tekstin ja kielen rakenne} +\secby{Hanspeter Schmid}{hanspi@schmid-werren.ch} +Kirjoitetun tekstin pääasiana (lukuunottamatta jotain postmodernia +kirjallisuutta, jossa image on tärkein\footnote{En nyt tarkoita +samannimistä lehteä.}) on välittää +ideoita, aatteita tai tietoa lukijalle. Lukija ymmärtää tekstin paremmin, +jos ideat on rakenteellisesti muotoiltu hyvin ja hän näkee sekä tuntee +tämän rakenteen, jos typografinen muotoilu heijastaa sisällön loogista +ja semanttista rakennetta. + +\LaTeX{} eroaa muista ladontajärjestelmistä siinä, että pelkkä tekstin loogisen +ja semanttisen rakenteen kertominen riittää. Se johtaa +sitten tekstin typografisen muodon dokumentin luokkatiedoston ja erilaisten +tyylitiedostojen sääntöjen pohjalta. + +\LaTeX:n (ja typografian) tärkein tekstiyksikkö on \wi{kappale}. +Kutsukaamme sitä ''tekstiyksiköksi'', sillä kappale on typografinen +muoto, jonka pitäisi heijastaa yhtä selvää ajatusta. Seuraavissa +osioissa opitaan, miten rivinvaihto voidaan määritellä tiettyyn kohtaan +kirjoittamalla esim.~\texttt{\bs\bs} ja kappaleen vaihto jättämällä +esim.~tyhjä rivi käsikirjoitukseen. Niinpä, kun uusi ajatus alkaa, +myös uusi kappale alkaa. Päinvastaisessa tapauksessa käytetään vain +rivinvaihtoa. Jos et ole varma kappalevaihdosta, kuvittele +tekstiäsi aatteiden ja ajatusten välittäjänä. Mikäli sama ajatus +jatkuu seuraavassa kappaleessa, tulisi kappaleet yhdistää. Jos kesken +kappaletta esiin tulee uusi ajatus, pitäisi kappale jakaa. + +Useimmat ihmiset aliarvioivat hyvin asemoitujen kappeleenvaihtojen +merkityksen. Monet eivät edes tiedä kappaleenvaihdon merkitystä ja +käyttävät niitä, erityisesti \LaTeX:ssa, merkitystä tuntematta. +Katso seuraavia esimerkkejä ja yritä selvittää miksi joskus +kaavojen eteen ja jälkeen jätetään tyhjät rivit (kappaleenvaihdot) +ja miksi taas joskus ei. (Jos et vielä tunne komentoja kyllin hyvin +ymmärtääksesi esimerkkejä, lue tämä ja seuraava luku ennenkuin +luet tämän osion uudelleen.) + +\begin{code} +\begin{verbatim} +% Example 1 +\ldots kun Einstein esitti kaavansa +\begin{equation} + e = m \cdot c^2 \; , +\end{equation} +joka on samalla tunnetuin ja vähiten ymmärretty fysiikan +kaava. + +% Example 2 +\ldots josta seuraa Kirchhoffin laki: +\begin{equation} + \sum_{k=1}{n} I_k = 0 \; . +\end{equation} + +Kirchhoffin jännitteen laki voidaan johtaa \ldots + +% Example 3 +\ldots josta on useita etuja. + +\begin{equation} + I_D = I_F - I_R +\end{equation} +on hyvin erilaisen transistorimallin ydin. \ldots +\end{verbatim} +\end{code} + +Seuraava pienempi tekstiyksikkö on lause. Englanninkielisissä teksteissä +lauseen päättävän pisteen perässä on pitempi väli kuin silloin, kun +piste on lyhenteen perässä. Suomessa ja useissa muissa kielissä ei +tätä tapaa kuitenkaan noudateta. Niinpä \textsf{Babelin} suomalaismakrot +kytkevät tämän ominaisuuden pois päältä. Englanninkielisessä tekstissä +\LaTeX{} yrittää arvata minkalaisesta pisteestä on kysymys. Jos \LaTeX{} +erehtyy, täytyy kirjoittajan kertoa, mitä hän haluaa. Tämä selitetään +myöhemmin tässä luvussa. + +Tekstin rakenteisiin kuuluu myös lauseen osia. Monissa kielissä on +hyvin monimutkaiset välimerkkisäännöt. Suomessa pilkkua käytetään +pelkästään kieliopillisten sääntöjen mukaan. Koulussa opittiin minkä sanojen +jälkeen tulee aina pilkku ja milloin taas ei. Monissa muissa kielissä +(kuten saksassa ja englannissa) pilkku esittää tekstissä lyhyttä +taukoa. Näissä kielissä kannattaa epävarmoissa tapauksissa lukea +lause ääneen ja vetää henkeä. Jos jossain kohtaa tauko tuntuu +omituiselta, pilkun voi poistaa, jos taas jossain kohtaa pitäisi vetää +henkeä (tai pitää lyhyt tauko), siihen lisätään pilkku. + +Lisäksi teksti jaetaan kappaleita ylemmällä tasolla loogisesti +lukuihin, osioihin, alaosioihin jne. Näiden ylemmän tason rakenteiden +käyttö on lähes itsestään selvää, sillä kirjoittamalla +esim.~\verb|\section{|\texttt{Tekstin ja kielen rakenne}\verb|}| +on sen typografinen vaikutelma kyllin selvä. + +\section{Rivin- ja kappaleenvaihto} + +\subsection{Tasatut kappaleet} + +Kirjat ladotaan usein niin, että jokainen rivi on yhtä pitkä. +\LaTeX{} lisää tarpeelliset \wi{rivinvaihdot} ja välilyönnit +sanojen väliin optimoidessaan koko kappaleen sisältöä. Tarpeen +vaatiessa se myös tavuttaa sanat, jotka eivät mahdu kokonaan +riville. Kappaleiden ladonta riippuu dokumenttiluokasta. +Normaalisti kappaleen ensimmäinen rivi on sisennetty eikä kappaleiden +välissä ole tyhjää riviä. Katso osasta~\ref{parsp} lisätietoja. + +Erikoistapauksissa voi olla tarpeen pakottaa \LaTeX{} katkaisemaan +rivi: +\begin{lscommand} +\ci{\bs} tai \ci{newline} +\end{lscommand} +\noindent aloittaa uuden rivin, mutta ei uutta kappaletta. + +\begin{lscommand} +\ci{\bs*} +\end{lscommand} +\noindent estää lisäksi sivun vaihdon rivin katkaisun jälkeen. + +\begin{lscommand} +\ci{newpage} +\end{lscommand} +\noindent aloittaa uuden sivun. + +\begin{lscommand} +\ci{linebreak}\verb|[|\emph{n}\verb|]|, +\ci{nolinebreak}\verb|[|\emph{n}\verb|]|, +\ci{pagebreak}\verb|[|\emph{n}\verb|]| ja +\ci{nopagebreak}\verb|[|\emph{n}\verb|]| +\end{lscommand} +\noindent tekevät vastaavasti seuraavaa: rivinvaihto, rivinvaihdon esto, +sivun vaihto, sivunvaihdon esto. Nämä käskyt antavat kirjoittajalle +mahdollisuuden vaikuttaa niiden toimintaan vaihtoehtoisella argumentilla +\emph{n}. Sille voidaan antaa arvo nollan ja neljän väliltä. Alle neljän +olevalla arvolla \LaTeX{} saa luvan jättää käsky huomioimatta, jos +lopputulos olisi liian ruman näköinen. Näitä ''katkaisu''-käskyjä ei +tule sekoittaa ''uusi''-käskyihin. Vaikka ''katkaisu''-käskyä +käytettäisiinkin, \LaTeX{} yrittää silti tasata sivun oikean reunan ja +sivun kokonaispituuden seuraavassa osioissa kuvatulla tavalla. Jos todella +halutaan aloittaa ''uusi rivi'', on käytettävä vastaavaa komentoa. +Arvaa minkä nimistä!\footnote{Kääntäjän vihje: ''uusi rivi'' on englanniksi +\emph{new line}.} + +\LaTeX{} yrittää katkaista rivin aina parhaasta mahdollisesta paikasta. +Jos se ei löydä tapaa katkaista rivi sen korkeatasoisten vaatimusten +mukaisesti, se antaa rivin sojottaa ulos kappaleen oikeasta reunasta. +\LaTeX{} antaa lisäksi valituksen (``\wi{overfull hbox}'') käsikirjoitusta +työstäessään. Tällainen tilanne tulee yleensä silloin kun \LaTeX{} +ei löydä sopivaa tavutuskohtaa sanasta.\footnote{Vaikka \LaTeX{} +antaa näissä tapauksissa varoituksen (Overfull hbox), ei tällaisia rivejä +ole aina helppo löytää. Jos \ci{documentclass}-komennon yhteydessä +käytetään optiota \texttt{draft}, \LaTeX merkitsee nämä rivit mustalla +palkilla oikeassa marginaalissa.} LaTeX:ia voi pyytää alentamaan tasoaan +käskyllä \ci{sloppy}. Se estää ylipitkien rivien syntymisen lisäämällä +sanojen välejä, vaikka lopputulos ei olisi paras mahdollinen eikä yleensä +kovin hyvän näköinen. Siltä varalta, että haluat \LaTeX:n valittavan vähän +joka asiasta, on olemassa komento \ci{fussy}, joka on siis edellisen +komennon vastakohta. + +\subsection{Tavutus} \label{hyph} + +\LaTeX{} tavuttaa sanat tarpeen vaatiessa. Jos tavutusalgoritmi +ei löydä sopivaa tavutuskohtaa, voidaan tilannetta helpottaa +kertomalla \TeX:lle seuraavilla komennoilla, että kyseessä on +poikkeus. + +Komento +\begin{lscommand} +\ci{hyphenation}\verb|{|\emph{sanalista}\verb|}| +\end{lscommand} +\noindent aiheuttaa sen, että sanalistassa luetellut sanat tavutetaan +ainostaan kohdista, jotka on merkitty \verb|-|:llä. Komennon argumentin +pitäisi sisältää ainoastaan sanoja, joissa on normaaleja kirjaimia tai +ainakin merkkejä, joita \LaTeX{} pitää normaalikirjaimina. Tavutusvihjeet +koskevat komentoa käytettäessä aktiivisena olevaa kieltä. Tämä tarkoittaa +sitä, että komennon käyttäminen dokumentin esittelyosassa vaikuttaa +englannin tavutukseen. Jos komentoa käytetään \verb|\begin{document}|:n +jälkeen ja käytössä on jokin muuta kieltä tukeva makropakkaus kuten \pai{babel}, +niin tavutusvihjeet koskevat silloin \pai{babel}:n avulla aktivoitua +kieltä, esim.~suomea. + +Alapuolella oleva esimerkki kertoo, että ''tavutus'' +samoin kuin ''Tavutus'' tavutetaan, mutta ''FORTRAN'' ei. Mitään +erityismerkkejä tai symboleja ei argumenttiosassa sallita. + +Esimerkki: +\begin{code} +\verb|\hyphenation{FORTRAN Ta-vu-tus}| +\end{code} + +Komennolla \ci{-} lisätään sanaan tavutusohje. Englanninkielisissä +dokumenteissa tästä tulee samalla ainoa kohta, jossa tavutus sallitaan. +\textsf{Babelin} \texttt{finnish}-optio, kuitenkin muuttaa komennon merkitystä +niin, että tavutus sallitaan edelleen tarvittaessa muuallakin. Tästä +komennosta on hyötyä erityisesti ulkomaisten sanojen kohdalla. Niissä +voi olla erikoismerkkejä (esim.~aksenttimerkkejä), joita suomen kielen +tavutus ei tunne. Ääkköset kuitenkin tavuttuvat oikein jos käytetään +\textsf{Babelin} suomen kielen tukea ja \texttt{T1}-koodausta käyttäviä +kirjasimia.\footnote{Sekä lisäksi suomen kielen tavutussäännöt +on asennettu järjestelmään.} + +\begin{example} +Tavutus toimii jär\-jes\-tel\-% +mäl\-li\-syy\-del\-lään\-kin +\end{example} + +Koska suomen pitkät sanat vaativat jatkuvasti tavuttamista, +on suomalaisessa typografiassa hieman joustavammat säännöt +tavutuksen kohdalla kuin englannissa. \textsf{Babelin} suomen +kielen tuki lisää muutaman ylimääräisen ominaisuuden, jotka ovat +tarpeen suomalaisissa dokumenteissa. Huomaa kuitenkin, että +ne toimivat vain \textsf{Babelin} \texttt{finnish}-option kanssa. + +Normaalisti kun sanassa on tavuviiva (esim.~noita-akka) \LaTeX +tavuttaa sanan vain tämän tavuviivan kohdalta. Tarkoituksena välttää +samassa sanassa kahta tavuviivaa. Suomen pitkien sanojen kohdalla +on kuitenkin parempi luistaa tästä periaatteesta. Kirjoittamalla +esim.~\verb|noita"-akka| sallitaan tavutus myös muualla sanassa. + +Toinen ongelmatapaus on esim.~''pakastekaapit ja "=arkut'', jossa +tavuviiva tulee sanan eteen. Normaalisti \LaTeX{} olettaa, että +tavuviiva jää rivin loppuun ja sana ''arkut'' tulisi seuraavalle +riville. Koska suomessa näin ei aina ole, on esimerkki kirjoitettava +seuraavasti: \texttt{pakastekaapit ja} \verb|"=arkut|. + +Joskus sana pitää katkaista ilman tavutusviivaa. Silloin voi +käyttää \textsf{Babelin} merkintää \verb|""|, esim.~''entrada/""salida''. + +Peräkkäiset sanat saa pysymään samalla rivillä komennolla: +\begin{lscommand} +\ci{mbox}\verb|{|\emph{tekstiä}\verb|}| +\end{lscommand} +\noindent Se saa argumenttina olevan tekstin pysymään samalla rivillä +kaikissa tilanteissa. + +\begin{example} +Puhelinnumeroni vaihtuu piakkoin. +Siitä tulee \mbox{0116 291 2319}. + +Parametrin +\mbox{\emph{tiedostonnimi}} pitäisi +sisältää tiedoston nimi. +\end{example} + +\ci{fbox} on muuten sama kuin \ci{mbox}, mutta siinä +sisällön ympärille piirretään lisäksi laatikko. + +\section{Automaattitekstejä} + +Edellisten sivujen esimerkeissä on esiintynyt joitakin +hyvin yksinkertaisia \LaTeX-komentoja erityisten merkkijonojen +latomiseksi: + +\vspace{2ex} + +\noindent +\begin{tabular}{@{}lll@{}} +Komento&Esimerkki&Kuvaus\\ +\hline +\ci{today} & \today & Päivämäärä käytössä olevalla kielellä\\ +\ci{TeX} & \TeX & Suosikkiladontaohjelmasi nimi\\ +\ci{LaTeX} & \LaTeX & Hän itte\\ +\ci{LaTeXe} & \LaTeXe & \LaTeX:n nykyinen olomuoto\\ +\end{tabular} + + +\section{Erikoismerkit ja symbolit} + +\subsection{Lainausmerkit} + +Kirjoituskoneen \verb|"|-symbolia \emph{ei} pitäisi käyttää \index{lainausmerkit} +lainausmerkkinä. \index{""@\texttt{""}} Painetussa tekstissä Suomessa ja Ruotsissa käytetty +lainausmerkki saadaan \LaTeX:ssa kirjoittamalla kaksi peräkkäistä \verb|'|-merkkiä +(PC-koneissa heittopilkku). Anglo-amerikkalaisessa typografiassa lainauksen aloitus"- ja +lopetusmerkki ovat erilaiset. Siellä lainauksen aloittaa kaksi peräkkäistä +\verb|`|-merkkiä (PC-koneissa graavi-aksentti). Suomessa käytetään joissain kirjoissa myös +\UseTextSymbol{OT1}{\guillemotright}toisenlaisia\UseTextSymbol{OT1}{\guillemotright} +lainausmerkkejä. Nämä saadaan kirjoittamalla +kaksi peräkkäistä \verb|>|-merkkiä. Muissa kielissä on vielä toisenlaisia +käytäntöjä. + +\begin{example} +''Paina 'x'-näppäintä.'' +``Please press the `x' key.'' +\end{example} + +Ainakin PC-koneiden näppäimistöllä näiden merkkien kirjoittaminen on hieman +hankalaa. Heittopilkun sijasta ei pidä käyttää akuutin aksentin merkkiä. +Esimerkiksi MS Wordissa nämä symbolit tuotetaan eri tavalla. + +\subsection{Väli"-, yhdys"- ja ajatusviivat} + +\LaTeX{} tuntee neljä erilaista \index{väliviivat} viivaa. Kolme niistä saadaan +eri määrällä peräkkäisiä tavuviivoja. Neljäs viiva on matemaattinen +miinusmerkki: \index{-} \index{--} \index{---} \index{-@$-$} +\index{matemaattinen!miinus} + +\begin{example} +kuu-ukko, X-kirjain\\ +sivut 13--67\\ +Will Hunting --- syntynyt neroksi \\ +$0$, $1$ ja $-1$ +\end{example} + +Nimet näille viivoille ovat: +'-' \index{tavuviiva}\index{yhdysmerkki} tavu"- tai yhdysviiva, '--' \wi{väliviiva}, +'---' \wi{ajatusviiva} ja +'$-$' \wi{miinusmerkki}. + +Muista lisäksi mitä tavutuksen kohdalla todettiin yhdysviivasta. Lisäksi +on todettava, että suomalaisissa painotuotteissa näkee joskus käytettävän +väliviivaa ajatusviivana. Esa Saarimaan Kielenoppaan kuudes painos vuodelta +1964 taas käskee käyttäämään ajatusviivaa myös väliviivana! En nyt ota +sen kummemmin tässä kantaa ajatusviivan oikeaan pituuteen suomen +kielessä.\footnote{Venäläiset kinastelivat Internetissä kuukauden verran +ajatusviivan oikeasta pituudesta venäjässä. Lopulta \LaTeX:n kyrilliseen kirjaimistoon +tehtiin oma ajatusviivamerkki, jonka pituus on jotain englantilaisen väliviivan ja +ajatusviivan väliltä.} +Varmaa ainakin on, että ajatusviivan kummallekin puolelle tulee suomessa välilyönti. +Englannissa taas ajatusviiva kirjoitetaan perinteisesti ilman +välilyöntejä.\footnote{Tästäkin perinteestä kyllä lipsutaan nykyään usein.} + +\subsection{Tilde ($\sim$)} +\index{www}\index{URL}\index{tilde} +Webbiosoitteissa näkee usein $\sim$-merkkiä. Tämän merkin tuottamiseksi +voidaan latoa \verb|\~| mutta lopputulos: \~{} ei ole oikein halutun +kaltainen. Kannattaa kokeilla seuraavaa: + +\begin{example} +http://www.rich.edu/\~{}bush \\ +http://www.clever.edu/$\sim$demo +\end{example} + +\subsection{Astemerkki ($\circ$)} + +Seuraavassa esimerkissä nähdään, miten \wi{astemerkki} tehdään +{\LaTeX}:ssa: + +\begin{example} +On $-30\,^{\circ}\mathrm{C}$. +Tässähän muuttuu +suprajohtavaksi. +\end{example} + +Makropakkaus \pai{textcomp} antaa käyttöön myös komennon \ci{textcelsius}. + +\subsection{Euron symboli \texorpdfstring{(\euro{})}{}} + +Nykyään rahasta kirjoitettaessa tarvitaan euron symbolia. Useat nykyiset kirjasinperheet +sisältävät euron symbolin. Kun dokumentin johdanto-osassa on ensin otettu käyttöön +\pai{textcomp}-makropaketti +\begin{lscommand} +\ci{usepackage}\verb|{textcomp}| +\end{lscommand} +voidaan käyttää komentoa +\begin{lscommand} +\ci{texteuro} +\end{lscommand} +tuottamaan euron symboli. + +Mikäli kirjasimessa ei ole euron symbolia tai et pidä sen ulkoasusta kyseisessä +kirjasinperheessä, on vielä kaksi vaihtoehtoa: + +Ensinnäkin \pai{eurosym}-makropaketti tuo käyttöön euron virallisen symbolin: +\begin{lscommand} +\ci{usepackage}\verb|[|\emph{official}\verb|]{eurosym}| +\end{lscommand} +Jos kuitenkin haluat, että euron symboli sopii yhteen teksin kirjasimen kanssa, +voit käyttää optiota \texttt{gen} virallisemman option \texttt{official} sijasta. + +Jos järjestelmään on asennettu Adoben eurokirjasin (se on saatavilla ilmaiseksi +osoitteesta \url{ftp://ftp.adobe.com/pub/adobe/type/win/all}), voit käyttää +makropakkkausta \pai{europs} ja komentoa \ci{EUR} (kirjasimen kanssa +paremmin yhteensopiva euron symboli) + +% tai makropakkausta \pai{eurosans} +% ja komentoa \ci{euro} (virallinen euron symboli). + +Makropakkaus \pai{marvosym} tuo käyttöön paljon erilaisia symboleja, euro +mukaanluettuna. Euron symboli saadaan siinä komennolla \ci{EUR}. Tämän makropakkauksen +huono puoli on se, että siinä ei ole käytettävissä lihavoitua tai vinoa +muotoa euron symbolista. + +\begin{table}[!htbp] +\caption{Pussillinen euron symboleita} \label{eurosymb} +\begin{lined}{10cm} +\begin{tabular}{llccc} +makropakkaus & komento & antiikva & groteski & kirjoituskone \\ +eurosym &\verb+\euro+ & \huge\officialeuro &\huge\sffamily\officialeuro + & \huge\ttfamily\officialeuro\\ +$[$gen$]$eurosym &\verb+\euro+ & \huge\geneuro &\huge\sffamily\geneuro + & \huge\ttfamily\geneuro \\ +% En fait on appelle eurofont pour des conflits de noms... +europs &\verb+\EUR + & \huge\EURtm &\huge\EURhv & \huge\EURcr \\ +%eurosans &\verb+\euro+ & \huge\EUROSANS &\huge\sffamily\EUROSANS +% & \huge\ttfamily\EUROSANS \\ +marvosym &\verb+\EUR+ & \huge\mvchr164 &\huge\mvchr164 & \huge\mvchr164 +\end{tabular} +\medskip +\end{lined} +\end{table} + +\subsection{Ellipsi (\texorpdfstring{\ldots}{...})} + +Kirjoituskoneessa \wi{pilkku} tai \wi{piste} vie yhtä paljon tilaa kuin +mikä tahansa muu kirjain. Painetuissa kirjoissa nämä merkit vievät +vain vähän tilaa ja ne sijaitsevat hyvin lähellä edeltävää kirjainta. +Niinpä \index{ellipsi}''\wi{ellipsiä}'' ei voi lisätä kirjoittamalla yksinkertaisesti +kolme pistettä, sillä välistys olisi väärin. Sitäpaitsi näille pisteille +on oma komento. Sen nimi on + +\begin{lscommand} +\ci{ldots} +\end{lscommand} +\index{...@\ldots} + +\begin{example} +Ei näin ... vaan näin:\\ +New York, Tokio, Budapest, \ldots +\end{example} + +\subsection{Ligatuurit} + +Anglo-amerikkalaisessa typografiassa joitakin kirjainyhdistelmiä +ei ladota panemalla kirjain toisensa perään, vaan käyttämällä +erityisiä kirjainmerkkejä. +\begin{code} +{\large ff fi fl ffi\ldots}\quad +instead of\quad {\large f{}f f{}i f{}l f{}f{}i \ldots} +\end{code} +Nämä niin sanotut \wi{ligatuuri}t voidaan estää lisäämällä +\ci{mbox}\verb|{}| kyseessä olevien kirjainten väliin. Tämä voi olla +tarpeen joissain englannin yhdyssanoissa. + +\begin{example} +\Large Not shelfful\\ +but shelf\mbox{}ful +\end{example} + +\subsection{Aksentit ja erikoismerkit} + +\LaTeX:ssa on mahdollista latoa sellaisia eri kielissä +käytettyjä \index{aksentit} aksentteja ja \index{erikoismerkit} erikoismerkkejä, +joita ei löydy suomalaiselta näppäimistöltä. Taulukossa~\ref{accents} listataan +erilaisia aksentteja o-kirjaimen kanssa käytettynä. \LaTeX:ssa aksentin +voi liittää mihin tahansa muuhun kirjaimeen. + +Kun i:n ja j:n päälle pannaan aksentti, täytyy niissä oleva piste +poistaa. Tämä tehdään kirjoittamalla \verb|\i| ja \verb|\j|. + +\begin{example} +H\^otel, na\"\i ve, \'el\`eve,\\ +sm\o rrebr\o d, !`Se\~norita!,\\ +Sch\"onbrunner Schlo\ss{} +Stra\ss e +\end{example} + +\begin{table}[!hbp] +\caption{Aksentteja ja erikoismerkkejä} \label{accents} +\begin{lined}{10cm} +\begin{tabular}{*4{cl}} +\A{\`o} & \A{\'o} & \A{\^o} & \A{\~o} \\ +\A{\=o} & \A{\.o} & \A{\"o} & \B{\c}{c}\\[6pt] +\B{\u}{o} & \B{\v}{o} & \B{\H}{o} & \B{\c}{o} \\ +\B{\d}{o} & \B{\b}{o} & \B{\t}{oo} \\[6pt] +\A{\oe} & \A{\OE} & \A{\ae} & \A{\AE} \\ +\A{\aa} & \A{\AA} & \A{\ss}\\[6pt] +\A{\o} & \A{\O} & \A{\l} & \A{\L} \\ +\A{\i} & \A{\j} & \textexclamdown & \verb|!`| & \textquestiondown & \verb|?`| +\end{tabular} +\index{\i{} ja \j{} ilman pistettä}\index{aksentit!Ääkköset} +\index{ae@\ae}\index{umlaut}\index{grave}\index{akuutti} +\index{oe@\oe} + +\bigskip +\end{lined} +\end{table} + +Edellä oli puhetta suomen kielen tuen yhteydessä T1-merkistöstä. +Se lisää käyttöön muutaman uuden aksentin ja kirjainmerkin. +Katso taulukosta~\ref{T1}. + +\begin{table}[!htp] +\caption{T1-merkistön lisäämät aksentit ja kirjainmerkit}\label{T1} +\begin{lined}{10cm} +\begin{tabular}{*4{cl}} +\B{\r}{u} & \B{\k}{o} \\[6pt] +\A{\DH} & \A{\DJ} & \A{\NG} & \A{\TH} \\ +\A{\dh} & \A{\dj} & \A{\ng} & \A{\th} +\end{tabular} +\bigskip +\end{lined} +\end{table} + +\section{Muiden kielten tuki} + +Babelilla voidaan ottaa käyttöön myös useita kieliä samaan aikaan +seuraavasti: +\begin{lscommand} +\ci{usepackage}\verb|[|\emph{language},\emph{language}\verb|]{babel}| +\end{lscommand} +\noindent vasemmanpuoleisin kieli tulee oletuksena käyttöön ensin. +Komennolla +\begin{lscommand} +\ci{selectlanguage}\verb|{|\emph{kieli}\verb|}| +\end{lscommand} +voidaan kieltä vaihtaa dokumentissa. + + +\subsection{Portugalin tuki} + +\secby{Demerson Andre Polli}{polli@linux.ime.usp.br} +Tavutussääntöjen vaihtamiseksi ja automaattitekstien kääntämiseksi portugaliksi +\index{Portugu\^es} käytetään komentoa: +\begin{lscommand} +\verb|\usepackage[portuges]{babel}| +\end{lscommand} +tai jos ollaan brasiliassa, käytetään kielen nimenä \texttt{\wi{brazilian}}. + +Lisäksi tietysti pitää ottaa käyttöön portugalissa käytettävät merkistöt +komennoilla +\begin{lscommand} +\verb|\usepackage[latin1]{inputenc}| +\end{lscommand} +ja +\begin{lscommand} +\verb|\usepackage[T1]{fontenc}| +\end{lscommand} + +Nyt kaikki portugalin aksentit ovat käytössä normaalisti. +Katso taulukosta~\ref{portuguese} mallia portugalilaisen dokumentin +esittelyosaksi. Huomaa, että tässä käyteään latin1-merkistöä +tekstin syöttämiseen, joten esimerkki ei suoraan tule toimimaan +Macissa tai DOSissa. Käytä merkistöä jota järjestelmäsi tukee. + +\begin{table}[btp] +\caption{Portugalilainen esittelyosa.} \label{portuguese} +\begin{lined}{5cm} +\begin{verbatim} +\usepackage[portuges]{babel} +\usepackage[latin1]{inputenc} +\usepackage[T1]{fontenc} +\end{verbatim} +\bigskip +\end{lined} +\end{table} + +\subsection{Ranskan tuki} + +\secby{Daniel Flipo}{daniel.flipo@univ-lille1.fr} +Joitakin vinkkejä ranskalaisten dokumenttien luomiseksi \LaTeX:lla. +Ranskan kielen tuki ladataan käyttöön komennolla: + +\begin{lscommand} +\verb|\usepackage[frenchb]{babel}| +\end{lscommand} + +Huomaa, että historiallisista syistä \textsf{babel}in option nimi +ranskalle on joko \emph{frenchb} tai \emph{francais} muttei \emph{french}. + +Tämä ottaa käyttöön ranskalaisen tavutuksen, mikäli se on yleensä asennettu +\LaTeX-systeemiin. Myös automaattiset tekstit käännetään ranskaksi: +\verb+\chapter+ tulostaa sanan Chapitre, \verb+\today+ tulostaa +päivämäärän ranskalaisen käytännön mukaisesti jne. +Lisäksi käyttöön tulee uusia komentoja, jotka helpottavat +ranskalaisen käsikirjoituksen tekemisessä. Taulukko +\ref{cmd-french} voi toimia inspiraation lähteenä. + +\begin{table}[!htbp] +\caption{Ranskalaisia erikoiskomentoja.} \label{cmd-french} +\begin{lined}{9cm} +\selectlanguage{french} +\begin{tabular}{ll} +\verb+\og guillemets \fg{}+ \quad &\og guillemets \fg \\[1ex] +\verb+M\up{me}, D\up{r}+ \quad &M\up{me}, D\up{r} \\[1ex] +\verb+1\ier{}, 1\iere{}, 1\ieres{}+ \quad &1\ier{}, 1\iere{}, 1\ieres{}\\[1ex] +\verb+2\ieme{} 4\iemes{}+ \quad &2\ieme{} 4\iemes{}\\[1ex] +\verb+\No 1, \no 2+ \quad &\No 1, \no 2 \\[1ex] +\verb+20~\degres C, 45\degres+ \quad &20~\degres C, 45\degres \\[1ex] +\verb+\bsc{M. Durand}+ \quad &\bsc{M.~Durand} \\[1ex] +\verb+\nombre{1234,56789}+ \quad &\nombre{1234,56789} +\end{tabular} +\selectlanguage{finnish} +\bigskip +\end{lined} +\end{table} + +Kun käyttöön otetaan ranskan kieli, myös listojen ulkoasu muuttuu. +Tarkempia tietoja \textsf{babel}in option \texttt{frenchb} vaikutuksista +ja miten niitä voidaan säädellä lisää, saa ajamalla \LaTeX{}iin tiedoston +\texttt{frenchb.dtx}, jolloin tuloksena syntyy dokumentti \texttt{frenchb.dvi}. + +\subsection{Saksan tuki} + +Muutama vinkki saksalaisten\index{Deutsch} dokumenttien luomiseksi \LaTeX:lla. +Saksan kielen tuki otetaan käyttöön komennolla: + +\begin{lscommand} +\verb|\usepackage[german]{babel}| +\end{lscommand} + +Tämä ottaa käyttöön saksalaisen tavutuksen, mikäli se on asennettu +oikein \LaTeX-järjestelmään. Myös automaattiset tekstit muuttuvat +saksankielisiksi. Esim.~\verb|chapter| tulostaa sanan ''Kapitel''. +Lisäksi käyttöön tulee joukko uusia komentoja, jotka helpottavat +saksalaisen käsikirjoituksen tekemistä. Innoitusta voi etsiä +taulukosta \ref{german}. Jos käytetään inputenc-makropakkausta, +ei näillä pikakirjoituskomennoilla ole niin suurta merkitystä. + +\begin{table}[!hbp] +\caption{Saksalaiset erikoismerkit.} \label{german} +\begin{lined}{8cm} +\begin{tabular}{*2{ll}} +\verb|"a| & \"a \hspace*{1ex} & \verb|"s| & \ss \\[1ex] +\verb|"`| & \glqq & \verb|"'| & \grqq \\[1ex] +\verb|"<| tai \ci{flqq} & \flqq & \verb|">| tai \ci{frqq} & \frqq \\[1ex] +\ci{flq} & \flq & \ci{frq} & \frq \\[1ex] +\ci{dq} & " \\ +\end{tabular} +\bigskip +\end{lined} +\end{table} + +Saksalaisissa kirjoissa näkee usein ranskalaisia lainausmerkkejä (\flqq guillemets\frqq). +Saksalaiset latojat käyttävät niitä kuitenkin eri tavoin. Saksalaisessa +kirjassa lainaus näyttäisi \frqq tältä\flqq. Sveitsin saksankielisessä +osassa latojat käyttävät \flqq lainausmerkkejä\frqq samalla tavalla kuin ranskalaiset. + +Mikäli käytetään oletusmerkistöä OT1, niin komennoista kuten \verb+\flq+ tulee ongelma: +ranskalaiset lainausmerkit näyttävät samalta kuin matemaattinen symboli ''$\ll$''. +Tämä saa ammattilatojan voimaan pahoin. T1-merkistössä toisaalta on oikeat symbolit. +T1-merkistöä tulee siis käyttää jo lainausmerkkienkin tähden. + +\subsection[Korean kielen tuki]{Korean kielen tuki\footnotemark}\label{support_korean}% +\footnotetext{% +Tässä käsitellään asioita, joita korean kielisissä kirjoituksissa tulee ottaa huomioon. +Tämän osan on kirjoittanut Karnes KIM tämän dokumentin korean kielisen käännöksen +tekijöiden puolesta. Tekstin käänsi ensin englantiin SHIN Jungshik ja sitä lyhensi +Tobias Oetiker. Timo Hellgren käänsi sen englannista suomeksi.} + +Jotta \LaTeX{} voitaisiin käyttää korean latomiseen, on ensin ratkaistava kolme +ongelmaa: +\begin{enumerate} +\item Pitää pystyä käsittelemään korealaisia käsikirjoituksia. Korean kielisissä +tekstitiedostoissa käytetään usein EUC-KR-merkistöä ja korean kielisen Windowsin +merkistöä CP949/Windows-949/UHC, joka on edellisen laajenus. Näissä merkistöissä +ASCII-merkki esitetään normaalina ASCII-merkkinä aivan kuten tehdään myös merkistöissä +ISO-8859-\textit{x}, EUC-JP, Shift\_JIS ja Big5. Tämän lisäksi hangul-tavumerkit, +hanjat (Koreassa käytettävät kiinalaiset kirjoitusmerkit), hangul Jamot, hirakanat, +katakanat, kreikkalaiset ja kyrilliset kirjaimet ja muut symbolit ja kirjaimet +KS~X~1001-standardista esitetään kahtena peräkkäisenä kahdeksan bitin koodina. +Ennen 1990-luvun puoliväliä oli koreankielisen ympäristön pystyttäminen ei-korealaiseen +järjestelmään kohtalaisen työn takana. Jos haluat tietää miltä korean kielen +kirjoittaminen ei-korealaisessä järjestelmässä tuntui siihen aikaan, voit +tutustua nyt vanhentuneeseen dokumenttiin osoitteessa \url{http://jshin.net/faq} +Nykyään kaikki tärkeimmät käyttöjärjestelmät (Mac OS, Unix, Windows) sisältävät +hyvinkin kattavan monikielisyystuen, joten korealaisten tekstien kirjoittaminen +ei enää ole kovinkaan suuri ongelma edes länsimaisessa käyttöjärjestelmässä. + +\item \TeX{} ja \LaTeX{} suunniteltiin alun alkaen sellaisia kieliä varten, joille +256 kirjoitusmerkkiä riittää. Jotta ne saadaan toimimaan sellaisten kielien kuin +korea%, + \footnote{Korean hangul on aakkosiin perustuva kirjaimisto, jossa on 14 peruskonsonanttia +ja 10 perusvokaalia (jamoa). Latinalaisesta tai kyrillisestä kirjaimistosta +poiketen kirjaimet järjestetään kiinalaisten merkkien kokoa olevien nelikulmaisten +alueiden sisään. Jokainen tällainen alue vastaa yhtä tavua. Vokaalien ja konsonanttien +yhdistelmillä voidaan muodostaa ääretön määrä erilaisia tavuja. Nykykorean oikeinkirjoituksen +käytännöt (sekä Pohjois- että Etelä-Koreassa) kuitenkin rajoittavat näiden yhdistelmien +käyttöä. Näinollen oikeinkirjoituksen mukaan tavuja on äärellinen määrä. Korean kielen +merkistö määrittelee merkkikoodit jokaiselle tällaiselle tavulle (KS~X~1001:1998 ja +KS~X~1002:1992). Vaikka hangul-kirjoitus perustuu kirjaimiin, sitä siis käsitellään samoin +kuin kiinan ja japanin kirjoitusjärjestelmiä, joissa on kymmensiä tuhansia ideografeja. +ISO~10646 eli Unicode-merkistössä on sekä erilliset hangul-kirjainmerkit +(\url{http://www.unicode.org/charts/PDF/U1100.pdf}) sekä lisäksi näistä muodostetut +oikeinkirjoituksen sallimat nykykorean tavumerkit +(\url{http://www.unicode.org/charts/PDF/UAC00.pdf}). Korean latomisen suurimpia haasteita +on vanhan korean kielen ja mahdollisesti tulevaisuuden korean erilaiset tavut, joita +Unicodessa voidaan esittää ainoastaan yhdistämällä kirjainmerkkejä. +Tulevaisuuden \TeX{}-pohjaiset ladontajärjestelmät $\Omega$ ja $\Lambda$ tuovat toivottavasti +ratkaisun tähän, jotta korealaiset kielitieteilijät ja historioitsijat luopuvat MS Wordin +käytöstä. MS Wordissa on melko hyvä vanhan korean tuki.} +tai kiina kanssa, kehitettiin alikirjasinmekanismi. Siinä yksi +kiinalais-japanilais-korealainen kirjasin, jossa on tuhansia tai kymmensiä tuhansia +kirjoitusmerkkejä, jaetaan alikirjasimiin, joissa kussakin on 256 merkkiä. +Korean kielen tukeen käytetään yleisesti kolmea makropakettia: UN~Koaunghin \wi{H\LaTeX}, +CHA~Jaechoonin \wi{h\LaTeX{}p} ja Werner Lembergin \wi{CJK}.\footnote{% +Ne löytyvät osoitteesta \CTANref|language/korean/HLaTeX/|\\ + \CTANref|language/korean/CJK/| and + \texttt{http://knot.kaist.ac.kr/htex/}} +H\LaTeX{} ja h\LaTeX{}p on tarkoitettu nimenomaan vain korean kieltä varten ja ne lisäävät +korean kielen piirteet kirjasintuen päälle. Kumpikin pystyy käsittelemään käsikirjoitusta, +jonka merkistönä on EUC-KR. H\LaTeX{} osaa jopa käsitellä käsikirjoituksia, joiden +merkistönä on CP949/Windows-949/UHC ja UTF-8, kun sitä käytetään yhdessä $\Lambda$ tai +$\Omega$-järjestelmän kanssa. + +CJK-makropaketti ei ole erikoistunut koreaan. Se osaa käsitellä käsikirjoituksia, joiden +merkistönä on UTF-8 sekä useita muita Itä-Aasian kielten merkistöjä, +EUC-KR ja CP949/Windows-949/UHC mukaanlukien. Sitä voidaan käyttää latomaan myös monikielisiä +dokumentteja (erityisesti kiinaa, japania ja koreaa). +CJK-makroissa ei ole H\LaTeX:n tarjomaan korean kielen tukea eikä siinä ole niin paljon +erityisiä korealaisia kirjasinperheitä kuten H\LaTeX:ssa. + +\item \TeX:n ja \LaTeX:n kaltaisten ladontaohjelmien perimmäinen tarkoitus on +tuottaa esteettisesti tyydyttäviä dokumentteja. Typografian tärkein osa-alue +on hyvin suunnitellut kirjasimet. H\LaTeX:ssa on 10 korealaista UHC kirjasinperhettä +sekä 5 munhwabun\footnote{Korean kulttuuriministeriö} (TrueType) kirjasinperhettä. +CJK-makropaketti toimii H\LaTeX:n aikaisempien versioiden kirjasinperheiden kanssa +ja se voi käyttää Bitstreamin Cyberbit TrueType "=kirjasinta. +\end{enumerate} + +H\LaTeX:n käyttöönottamiseksi on dokumentin johdanto-osaan pantava +seuraava määrittely: +\begin{lscommand} +\verb+\usepackage{hangul}+ +\end{lscommand} + +Tämä komento ottaa käyttöön korean kielen ominaisuudet. Otsikoiden +automaattisesti tuotetut tekstit tulostuvat koreaksi ja dokumentin +ulkoasu noudattaa korealaisia käytäntöjä. Makropaketti tukee myös +automaattista ''partikkeleiden valintaa''. Korean kielessä eräät +keskenään samaa tarkoittavat partikkelit eli apusanat muodostavat pareja. Se +kumpaa parista käytetään eri tilanteissa riippuu siitä päättyykö +edeltävä tavu vokaaliin vai konsonanttiin. (Itse asiassa asia ei +ole näin yksinkertainen, mutta tästä saa jonkinalaisen kuvan.) +Äidinkielenään koreaa puhuvilla ei ole oikean partikkelin valinnassa +ongelmia, mutta ristiviitteissä ja muissa automaattisesti generoituvissa +teksteissä oikeaa partikkelia ei voi ennakoida. Oikeiden partikkelien +lisääminen aina kun ristiviitteitä tai dokumementin osia muutetaan +on liian työlästä. H\LaTeX{} poistaa käyttäjiltä tämän rasittavan +ja virhealttiin työvaiheen. + +Jos on tarkoitus ainoastaan latoa koreankielistä tekstiä ilman +muita korealaisia piirteitä, voidaan johdanto-osaan panna +seuraava rivi: +\begin{lscommand} +\verb+\usepackage{hfont}+ +\end{lscommand} + +Katso tarkempia yksityiskohtia dokumentista \emph{H\LaTeX{} Guide}. +Korealaisten \TeX:n käyttäjien ryhmän (KTUG) WWW-sivu on +osoitteessa \url{http://www.ktug.or.kr/}. Tästä oppaasta +on saatavilla myös koreankielinen käännös. + +\subsection{Kyrillisen tekstin tuki} + +\secby{Maksym Polyakov}{polyama@myrealbox.com} +Versiosta 3.7h lähtien on \pai{babel}-makropaketissa ollut tuki +kyrillisille \fei{T2*}-merkistöille ja bulgarian, venäjän ja ukrainan +kielten tuki. + +Kyrillisen kirjaimiston tuki perustuu \LaTeX:n standardimekanismeihin eli +\pai{fontenc}- ja \pai{inputenc}-makropaketteihin. Mikäli kyrillistä +kirjaimistoa tarvitaan matematiikkatilassa, täytyy käyttöön ottaa +\pai{mathtext}-makropaketti ennen \pai{fontenc}-makroja:\footnote{Jos käytetään +\AmS-\LaTeX-makropaketteja, on ne otettava käyttöön ennen \pai{fontenc}- +ja \pai{babel}-makropakettia.} +\begin{lscommand} +\verb+\usepackage{mathtext}+\\ +\verb+\usepackage[+\fei{T1}\verb+,+\fei{T2A}\verb+]{fontenc}+\\ +\verb+\usepackage[+\iei{koi8-ru}\verb+]{inputenc}+\\ +\verb+\usepackage[finnish,bulgarian,russian,ukranian]{babel}+ +\end{lscommand} + +Yleensä \pai{babel} valitsee automaattisesti tarvittavan merkistön, joka +yllä mainituille kolmelle slaavilaiselle kielelle on \fei{T2A}. Dokumenteissa +voidaan kuitenkin käyttää useampia merkistöjä. Monikielisille dokumenteille, +joissa on kyrillistä ja latinalaista kirjaimistoa käyttäviä kieliä on syytä +erikseen mainita käytettävä latinalaisen kirjaimiston merkistö. \pai{babel} +vaihtaa merkistön samalla kun tekstissä käytetään kielen vaihtavaa komentoa. + +\pai{babel} ottaa käyttöön bulgarian, venäjän tai ukrainan tavutuksen, +kääntää automaattiset tekstit, ottaa käyttöön kielikohtaiset typografiset +säännöt (kuten \ci{frenchspacing}) ja lisää käyttöön muutaman erikoiskomennon. + +Kaikissa kolmessa kielessä on käytössä erityisiä välimerkkejä. +Kyrillinen ajatusviiva on vähän lyhyempi kuin englantilainen ajatusviiva ja +vähän pitempi kuin väliviiva ja sen kummallakin puolella on välilyönti. +Lisäksi käytetään pitempää ajatusviivaa osoittamaan suoraa lainaa puheesta (tätä +viivaa käytetään myös suomalaisissa kirjoissa). Lisäksi käyttöön tulevat +kielikohtaiset lainausmerkit sekä kommennot tavutusta ajatellen. Ks. taulukko \ref{Cyrillic}. + +% Table borrowed from Ukrainian.dtx +\begin{table}[htb] + \begin{center} + \index{""-@\texttt{""}\texttt{-}} + \index{""---@\texttt{""}\texttt{-}\texttt{-}\texttt{-}} + \index{""=@\texttt{""}\texttt{=}} + \index{""`@\texttt{""}\texttt{`}} + \index{""'@\texttt{""}\texttt{'}} + \index{"">@\texttt{""}\texttt{>}} + \index{""<@\texttt{""}\texttt{<}} + \caption[bulgarian, russian ja ukrainian]{Lisämääritykset \pai{babel}in optioihin + bulgarian, russian ja ukrainian}\label{Cyrillic} + \begin{tabular}{@{}p{.1\hsize}@{}p{.9\hsize}@{}} + \hline + \verb="|= & poistaa käytöstä ligatuurin. \\ + \verb|"-| & tavumerkki, joka sallii sanan loppuosan tavutuksen. \\ + \verb|"---| & kyrillinen ajatusviiva. \\ + \verb|"--~| & kyrilinen yhdysviiva sukunimissä. \\ + \verb|"--*| & kyrillinen ajatusviiva osoittamaan puhelainaa. \\ + \verb|""| & kuten |"-|, mutta ei tulosta tavuviivaa + (yhdyssanoihin joissa on yhdysviiva, e.g.\ |x-""y| + tai muita merkkejä, kuten ''kyllä/ei''). \\ + \verb|"~| & sanaliitto, jota ei saa katkaista. \\ + \verb|"=| & yhdyssanan jälkiosan eteen tuleva yhdysviiva, + joka sallii tavutuksen sanana loppuosassa. \\ + \verb|",| & kapea väli sukunimen ja sitä edeltävän etunimen + alkukirjaimen välissä. \\ + \verb|"`| & saksalainen aloittava lainausmerkki + (näyttää tältä: ,\kern-0.08em,). \\ + \verb|"'| & saksalainen lopettava lainausmerkki (näyttää tältä: ``). \\%'' + \verb|"<| & ranskalainen aloittava lainausmerkki (näyttää tältä: $<\!\!<$). \\ + \verb|">| & ranskalainen lopettava lainausmerkki (näyttää tältä: $>\!\!>$). \\ + \hline + \end{tabular} + \end{center} +\end{table} + +\pai{babel}in optiot russian ja ukrainian määrittelevät komennot \ci{Asbuk} +ja \ci{asbuk}, jotka käyttäytyvät aivan kuin \ci{Alph} ja \ci{alph}, mutta +tulostavat kielestä riippuen venäjän tai ukrainan aakkosten isoja ja pieniä +kirjaimia. \pai{babel}in optio bulgarian määrittelee komennot \ci{enumBul} +ja \ci{enumLat} (\ci{enumEng}), jotka panevat komennot \ci{Alph} ja \ci{alph} +tulostamaan joko bulgarian tai englannin kielen aakkosten mukaisia kirjaimia. +Bulgariankielisessä ympäristössä \ci{Alph} ja \ci{alph} tulostavat oletusarvoisesti +bulgarian aakkosten kirjaimia. + +\section{Sanavälit} + +Jotta \LaTeX{} saisi oikean reunan tasattua, se lisää sanojen väliin +eripituisiä välejä. Englantia ladottaessa se lisää lauseiden perään +hieman suuremman välin, luettavuuden helpottamiseksi. \LaTeX{} olettaa, +että lause päättyy pisteeseen, kysysmerkkiin tai huutomerkkiin. Mikäli +pistettä edeltää iso kirjain, ei piste päätä lausetta, sillä piste +seuraa isoja kirjaimia vain lyhenteissä. + +Kirjoittaja voi määritellä kuitenkin poikkeuksia. Kenoviiva välilyönnin +edessä latoo tavallisen sanavälin. \verb|~|-merkki +latoo sanavälin joka estää rivinvaihdon. +\verb|\@|-komento pisteen edessä kertoo, että piste lopettaa lauseen, +vaikka se seuraisi isoa kirjainta. +\cih{"@} \index{~@ \verb.~.} \index{tilde@tilde ( \verb.~.)} +\index{., space after} + +\begin{example} +Mr.~Smith oli iloinen\\ +ks.~Kuva 5\\ +I like BASIC\@. What about you? +\end{example} + +Pisteen jälkeisen ylimääräisen välin voi estää komennolla +\begin{lscommand} +\ci{frenchspacing} +\end{lscommand} +\noindent joka kertoo \LaTeX:lle, että pisteen jälkeen ei tarvita +pitempää väliä. Tämä on yleinen käytäntö muissa kielissä kuin +englannissa, paitsi kirjallisuusluetteloissa. Kun +\ci{frenchspacing}-käskyä käytetään, ei \verb|\@|-käsky ole tarpeen. +\textsf{Babelin} \texttt{finnish}-optio lisää automaattisesti +\ci{frenchspacing}-käskyn käyttöön. + +\section{Nimiöt, luvut ja osiot} + +Helpottaakseen lukijaa suunnistamaan tekstin läpi, kirjoittaja jakaa +sen lukuihin, osioihin ja alaosioihin. \LaTeX:ssa on tätä varten +erityiset käskyt, joiden argumenteiksi annetaan otsikon teksti. +Kirjoittajan tehtävä on käyttää niitä oikeassa järjestyksessä. + +\texttt{article}-luokassa on käytössä seuraavat otsikointikäskyt: +\nopagebreak +\begin{code} +\ci{section}\verb|{...} |\ci{paragraph}\verb|{...}|\\ +\ci{subsection}\verb|{...} |\ci{subparagraph}\verb|{...} |\\ +\ci{subsubsection}\verb|{...}| +\end{code} + +Jos dokumentti halutaan jakaa isompiin osiin, jotka eivät vaikuta +lukujen tai alaotsikoiden numerointiin, voidaan käyttää komentoa \ci{part}\verb|{...}| + +\texttt{report}- ja \texttt{book}-luokissa voidaan myös otsikointikäskyä: +\ci{chapter}\verb|{...}| + +Koska \texttt{article}-luokka ei käytä lukuja, voidaan artikkeleita +lisätä helposti kirjaan lukuina. \LaTeX hoitaa automaattisesti otsikoiden asemoinnin, +numeroinnin ja kirjasimen koon valinnan. + +Otsikointikäskyistä pari on hieman erikoisia: +\begin{itemize} +\item \ci{part}-komento ei vaikuta lukujen numerointiin. +\item \ci{appendix}-komennolle ei anneta argumentteja. Sen tehtävänä + on ainoastaan vaihtaa lukujen numerointi kirjaimiksi.\footnote{Artikkeleissa + se vaihtaaa osioiden numeroinnin.} +\end{itemize} + +\LaTeX{} tekee sisällysluettelon otsikoiden teksteistä ja sivunnumeroista +dokumentin edellisen prosessoinnin perusteella. Komento +\begin{lscommand} +\ci{tableofcontents} +\end{lscommand} +\noindent luo sisällysluettelon siihen paikkaan, jossa se annetaan. +Uusi dokumentti täytyy ajaa \LaTeX:n läpi kahdesti, jotta +\wi{sisällysluettelo} saadaan tulostumaan oikein. Joskus dokumentti +täytyy kääntää kolmasti. \LaTeX{} kertoo kyllä, milloin tämä on tarpeen. + +Kaikista yllä mainituista otsikkokäskyistä on olemassa myös ''tähti''"-versiot. +Komennon ''tähti''"-versio saadaan lisäämällä \verb|*| komennon nimen perään. +Se luo otsikon, joka ei näy sisällysluettelossa ja jota ei numeroida. +Komennosta \verb|\section{Apuva}| tulisi \verb|\section*{Apuva}|. + +Normaalisti otsikot tulostuvat sisällysluetteloon samalla tavoin kuin +ne on kirjoitettu tekstiin. Joskus tämä ei ole mahdollista, kun +otsikko on liian pitkä mahtuakseen sisällysluetteloon. Sisällysluetteloon +menevä teksti voidaan antaa ylimääräisenä argumenttina varsinaisen +otsikon edellä. +\begin{code} +\verb|\chapter[Lue! Tärkeää!]{Tämä on hyvin pitkä|\\ +\verb| ja tylsä otsikko}| +\end{code} + +Koko dokumentin nimiö tulostetaan käskyllä +\begin{lscommand} +\ci{maketitle} +\end{lscommand} +\noindent Nimiön sisältö täytyy ensin määritellä komennoilla +\begin{lscommand} +\ci{title}\verb|{...}|, \ci{author}\verb|{...}| +ja mahdollisesti \ci{date}\verb|{...}| +\end{lscommand} +\noindent \ci{author}:n argumenteiksi voidaan antaa useita nimiä jotka +on eroteltu komennolla \ci{and}. + +Esimerkki yllämainituista käskyistä löytyy kuvasta~\ref{artikkeli} +sivulla~\pageref{artikkeli}. + +\begin{figure}[!bp] +\begin{lined}{10cm} +\begin{verbatim} +\documentclass[a4paper,11pt]{article} +\usepackage[latin1]{inputenc} +\usepackage[T1]{fontenc} +\usepackage[finnish]{babel} +% nimiön tiedot +\author{T.~Hellgren} +\title{Minimalismi} +\begin{document} +% kirjoita nimiö +\maketitle +% lisää sisällysluettelo +\tableofcontents +\section{Sananen aiheesta} +Aloitan tässä artikkelini. +\section{Tervemenoa} +\ldots{} ja päätän sen tähän. +\end{document} +\end{verbatim} +\end{lined} +\caption{Esimerkki oikeasta lehtiartikkelista.} \label{artikkeli} +\end{figure} + +Näiden otsikkokäskyjen lisäksi \LaTeX{} lisää \verb|book|-luokassa +käyttöön kolme lisäkäskyä. Niistä on hyötyä julkaisun jakamisessa osiin. +Nämä komennot muuttavat lukujen otsikointia ja sivunnumerointia niin +kuin kirjoissa on tapana. +\begin{description} +\item[\ci{frontmatter}] pitäisi olla ensimmäisenä heti komennon + \verb|\begin{document}| jälkeen. Sivut numeroidaan roomalaisilla + numeroilla. Alaotsikoissa käytetään yleensä tähtikomentoja + (esim.~\verb|\chapter*{Esipuhe}|), koska tämä estää \LaTeX{}ia + numeroimasta niitä. +\item[\ci{mainmatter}] käytetään ennen kirjan varsinaista ensimmäistä +lukua. Sivut numeroidaan arabialaisilla numeroilla, ykkösestä alkaen. +\item[\ci{appendix}] aloittaa liitemateriaalien osuuden. Tämän komennon +jälkeen luvut numeroidaan kirjaimin. +\item[\ci{backmatter}] käytetään ennen kirjallisuusluetteloa ja hakemistoa. +Normaalisti tämä komento ei vaikuta ulkoasuun mitenkään. +\end{description} + +\section{Ristiviitteet} + +Kirjoissa, raporteissa ja artikkeleissa on usein \index{ristiviittaukset} +ristiviittauksia kuviin, taulukoihin ja tiettyihin tekstin osiin. +\LaTeX tarjoaa ristiviittauksiin seuraavat komennot: +\begin{lscommand} +\ci{label}\verb|{|\emph{tunniste}\verb|}|, \ci{ref}\verb|{|\emph{tunniste}\verb|}| +ja \ci{pageref}\verb|{|\emph{tunniste}\verb|}| +\end{lscommand} +\noindent joissa \emph{tunniste} on käyttäjän valitsema nimi viitattavalle +kohteelle. \LaTeX{} korvaa \verb|\ref|:n sen otsikon, alaotsikon, kuvan, +taulukon tai teoreeman numerolla, jonka perässä on vastaavanniminen +\verb|\label|-komento. \verb|\pageref| tulostaa sen sivun numeron, jossa +vastaava \verb|\label|-komento on.\footnote{Huomaa, että nämä komennot +eivät tiedä viittaamistaan kohteista mitään. \ci{label} yksinkertaisesti +tallentaa viimeksi automaattisesti generoidun numeron.} Ristiviittausten +saamiseksi ajan tasalle on dokumentti ajettava \LaTeX:in läpi ainakin kahdesti. + +\begin{example} +Viittaus tähän alaotsikkoon +\label{sec:this} näyttää tältä: +''katso osiota~\ref{sec:this} +sivulla~\pageref{sec:this}.'' +\end{example} + +\section{Alaviitteet} + +Komennolla +\begin{lscommand} +\ci{footnote}\verb|{|\emph{alaviitteen teksti}\verb|}| +\end{lscommand} +\noindent alaviite tulostuu saman sivun alareunaan. Alaviitteet +pitäisi aina panna\footnote{''panna'' on yleinen suomalainen +kaksimielinen sana.} sen sanan tai lauseen perään, johon ne +viittaavat. Selvyyden vuoksi lauseeseen tai osaan viittavat +alaviitteet tulisi panna pilkun tai pisteen jälkeen.\footnote{Alaviitteet +vievät lukijan huomion pois päätekstistä. Kaikki kyllä lukevat +alaviitteitä, olemmehan uteliaita olentoja. Parempi olisi siis +panna asiat itse päätekstiin.\footnotemark} +\footnotetext{Älä tee niin kuin minä teen, vaan niin kuin minä sanon :-).} + +\begin{example} +Alaviitteitä\footnote{Tämä on + alaviite} käyttävät usein +\LaTeX:n käyttäjät. +\end{example} + +\section{Korostetut sanat} + +Kun teksti kirjoitetaan kirjoituskoneella, \texttt{\underline{alleviivausta} +käytetään ko\-ros\-ta\-maan tärkeitä sanoja.} +\begin{lscommand} +\ci{underline}\verb|{|\emph{tekstiä}\verb|}| +\end{lscommand} +Painetuissa kirjoissa sanoja korostetaan kuitenkin latomalla ne \emph{kursiivilla}. +\LaTeX:ssa voi käyttää komentoa +\begin{lscommand} +\ci{emph}\verb|{|\emph{tekstiä}\verb|}| +\end{lscommand} +\noindent tekstin korostamiseen. Komennon varsinainen tulos +riippuun siitä, missä yhteydessä sitä on käytetty: + +\begin{example} +\emph{Jos käytät + korostusta korostetun + tekstin sisällä, + \LaTeX{} käyttää + \emph{normaalia} kirjasinta + korostamiseen.} +\end{example} + +On eri asia käskeä \LaTeX:ia \emph{korostamaan} jotain +ja käskeä sitä käyttämään erilaista \emph{kirjasinta}: + +\begin{example} +\textit{Voit myös + \emph{korostaa} tekstiä, + joka on ladottu kursiivilla,} +\textsf{\emph{groteskilla},} +\texttt{tai + \emph{kirjoituskonetyylillä}.} +\end{example} + +\section{Ympäristöt} \label{env} + +Erityisten tekstien latomiseksi \LaTeX:ssa voidaan määritellä +eri tavalla muotoiltuja \index{ympäristöt} ympäristöjä: +\begin{lscommand} +\ci{begin}\verb|{|\emph{nimi}\verb|}|\quad + \emph{tekstiä}\quad +\ci{end}\verb|{|\emph{nimi}\verb|}| +\end{lscommand} +\noindent joissa \emph{nimi} on ympäristön nimi. Ympäristöjä voidaan +kutsua toistensa sisällä kunhan kutsujärjestys säilytetään. +\begin{code} +\verb|\begin{aaa}...\begin{bbb}...\end{bbb}...\end{aaa}| +\end{code} + +\noindent Seuraavissa osioissa selitetään kaikki tärkeät ympäristöt. + +\subsection{Numeroimaton, numeroitu ja määrittelyluettelo} + +\ei{itemize}-ympäristö sopii yksinkertaisiin luetteloihin, +\ei{enumerate}-ympäristö numeroituihin luetteloihin ja +\ei{description}-ympäristö määrittelyjen luetteloon. +\cih{item} + +\begin{example} +\flushleft +\begin{enumerate} +\item Voit sekoittaa makusi +mukaan luetteloympäristöjä: +\begin{itemize} +\item Mutta se voi näyttää +typerältä. +\item[--] Ranskalainen viiva. +\end{itemize} +\item Muista siis: +\begin{description} +\item[Typeryys] ei muutu +viisaudeksi luettelossa. +\item[Viisaus] voidaan silti +esittää kauniisti luettelossa. +\end{description} +\end{enumerate} +\end{example} + +\subsection{Tasaus vasemmalle, oikealle ja keskitys} + +Ympäristöt \ei{flushleft} ja \ei{flushright} luovat +joko vasemmalle tai \index{oikealle tasattu} oikealle tasattuja kappaleita. +\index{vasemalle tasattu} \ei{center}-ympäristö +luo keskitettyä tekstiä. Mikäli \ci{bs}-käskyä ei käytetä +rivinvaihdon merkitsemiseen, \LaTeX{} vaihtaa riviä +automaattisesti. + +\begin{example} +\begin{flushleft} +Tämä teksti on\\ vasemmalle tasattu. +\LaTeX{} ei yritä tehdä kaikista +riveistä saman pituisia. +\end{flushleft} +\end{example} + +\begin{example} +\begin{flushright} +Tämä teksti on oikealle\\ tasattu. +\LaTeX{} ei yritä tehdä kaikista +riveistä saman pituisia. +\end{flushright} +\end{example} + +\begin{example} +\begin{center} +Maapallon\\ keskustassa. +\end{center} +\end{example} + +\subsection{Lainaus, sitaatti ja säkeet} + +\ei{quote}-ympäristö on käyttökelpoinen lainausten, sitaattien ja +esimerkkien esittämiseen. + +\begin{example} +Typografinen nyrkkisääntö +rivin pituudesta on: +\begin{quote} +Rivissä ei tulisi olla enemmän +kuin 66~merkkiä. +\end{quote} +Tästä syystä \LaTeX:n sivuissa +on oletuksena niin isot marginaalit +ja samasta syystä sanomalehdissä +käytetään usein useampaa palstaa. +\end{example} + +Samanlaisia ympäristöjä ovat \ei{quotation} ja \ei{verse}. +Pitemmissä, useamman kappaleen mittaisissa, lainauksissa +on \texttt{quotation}-ympäristö hyödyllinen, sillä se +sisentää kappaleet. Runoissa rivin vaihto on tärkeä +määritellä käsin, joten niissä \texttt{verse}-ympäristö on hyödyllinen. +Säkeet erotetaan \ci{\bs}:llä rivin lopussa ja säkeistöt tyhjällä rivillä. + +\begin{example} +Tiedän ulkoa vain yhden +englantilaisen runon. Se kertoo +Humpty Dumptysta. +\begin{flushleft} +\begin{verse} +Humpty Dumpty sat on a wall:\\ +Humpty Dumpty had a great fall.\\ +All the King's horses and all +the King's men\\ +Couldn't put Humpty together again. +\end{verse} +\end{flushleft} +\end{example} + +\subsection{Tiivistelmä} + +Tieteellisissä julkaisuissa on tapana aloittaa tiivistelmällä, joka antaa +lukijalle nopean yleissilmäyksen sisältöön. Tätä varten \LaTeX:ssa on +ympäristö nimeltä \ei{abstract}. Normaalisti tätä ympäristöä käytetään +artikkeleissa. + +\newenvironment{abstract}% + {\begin{center}\begin{small}\begin{minipage}{0.8\textwidth}}% + {\end{minipage}\end{small}\end{center}} +\begin{example} +\begin{abstract} +Tiivis tiivistelmä. +\end{abstract} +\end{example} + +\subsection{Sananmukainen tulostus} + +\verb|\begin{|\ei{verbatim}\verb|}|:n ja \verb|\end{verbatim}|:n +väliin jäävä teksti tulostuu niin kuin se on kirjoitettu käsikirjoitukseen +ja niinkuin se olisi kirjoitettu kirjoituskoneella. Kaikki välilyönnit +tulostuvat välilyönteinä. \LaTeX:n komentoja ei suoriteta. + +Kappaleen sisällä sama vaikutus saadaan komennolla +\begin{lscommand} +\ci{verb}\verb|+|\emph{tekstiä}\verb|+| +\end{lscommand} +\noindent \verb|+| on vain esimerkki rajana käytettävästä merkistä. +Mitä tahansa muuta merkkiä voidaan käyttää paitsi kirjainta, +\verb|*|-merkkiä tai välilyöntiä. Useat tämän kirjasen \LaTeX-esimerkeistä +on ladottu tällä komennolla. + +\begin{example} +\verb|\ldots|-komento \ldots + +\begin{verbatim} +10 PRINT "HELLO WORLD "; +20 GOTO 10 +\end{verbatim} +\end{example} + +\begin{example} +\begin{verbatim*} +verbatim-ympäristön +tähtiversio korostaa +välilyöntejä tekstissä +\end{verbatim*} +\end{example} + +\ci{verb}-komentoa voidaan käyttää samalla tavoin tähden kanssa: + +\begin{example} +\verb*|näin ikkään :-) | +\end{example} + +\texttt{verbatim}-ympäristöä ja \verb|\verb|-komentoa ei +voida käyttää muiden komentojen parametreina. + +\subsection{Sarkaimet} + +\newcommand{\mfr}[1]{\framebox{\rule{0pt}{0.7em}\texttt{#1}}} + +\ei{tabular}-ympäristöllä voidaan latoa kauniita +\index{taulukot} taulukoita, joissa on mahdollisesti vaaka"- tai pystyviivoja. +\LaTeX{} laskee sarakkeiden leveyden automaattisesti. + +Komennon +\begin{lscommand} +\verb|\begin{tabular}[|\emph{sijainti}\verb|]{|\emph{table spec}\verb|}| +\end{lscommand} +\noindent \emph{table spec}"=argumentti määrittelee taulukon +muodon. \mfr{l} käytetään sarakkeisiin, joissa teksti on tasattu +vasemalle, \mfr{r} oikealle tasattuun tekstiin ja \mfr{c} +keskitettyyn tekstiin; \mfr{p\{\emph{leveys}\}} on sarakkeeseen, +jossa on molemmilta puolilta tasattua tekstiä ja rivinvaihtoja ja +\mfr{|} on pystysuoralle viivalle. + +Jos palsta on liian leveä, \LaTeX{} ei rivitä sitä automaattisesti. +Käyttämällä optiota \mfr{p\{\emph{leveys}\}} voidaan määritellä palsta, +jossa teksti jatkuu seuraavalle riville aivan kuten normaalissa kappaleessa. + +\emph{sijainti} määrittää koko taulukon sijainnin sivulla seuraavasti: +\mfr{t} sivun yläosassa, \mfr{b} sivun alaosassa ja \mfr{c} +keskellä sivua. + +\texttt{tabular}-ympäristössä \texttt{\&} siirtää seuraavaan sarakkeeseen, +\ci{\bs} aloittaa uuden rivin ja \ci{hline} lisää vaakasuoran viivan. +Eri pituisia viivoja voidaan lisätä komennolla +\ci{cline}\texttt{\{}\emph{j}\texttt{-}\emph{i}\texttt{\}}, +jossa j ja i ovat niiden sarakkeiden numerot, johon viiva yltää. + +\index{"|@ \verb."|.} + +\begin{example} +\begin{tabular}{|r|l|} +\hline +7C0 & heksadesimaali \\ +3700 & oktaali \\ \cline{2-2} +11111000000 & binääri \\ +\hline \hline +1984 & desimaali \\ +\hline +\end{tabular} +\end{example} + +\begin{example} +\begin{tabular}{|p{4.7cm}|} +\hline +Tervetuloa Kaken kappaleeseen. +Toivomme että kaikki +nauttivat esityksestä.\\ +\hline +\end{tabular} +\end{example} + +Sarakkeiden erotin voidaan määritellä \verb|@{...}| rakenteella. +Tämä komento korvaa sarakkeiden välisen tyhjän tilan aaltosulkeiden +välissä olevalla materiaalilla. Komennon tyypillinen käyttöesimerkki +on annettu alla desimaalisarkainta esiteltäessä. Toinen tyypillinen +käyttötapa on poistaa edeltävät välilyönnit komennolla \verb|@{}|. + +\begin{example} +\begin{tabular}{@{} l @{}} +\hline +ei edeltäviä välilyöntejä\\ +\hline +\end{tabular} +\end{example} + +\begin{example} +\begin{tabular}{l} +\hline +välit vasemalla ja oikealla\\ +\hline +\end{tabular} +\end{example} + +% +% This part by Mike Ressler +% + +\index{desimaalisarkain} Koska LaTeX:ssa ei ole mitään sisäänrakennettua +tapaa tasata numerosarakkeita desimaalipilkun kohdalta,\footnote{Jos +'tools'-makrokokoelma on asennettu systeemiin, kannattaa tutustua +\pai{dcolumn}-makropakettiin.} täytyy turvautua ''huijaamiseen'' ja +tehdä se kahta saraketta käyttämällä: tasaamalla kokonaisosa oikealle +ja murto-osat vasemmalle. \verb|@{,}|-komento +\verb|\begin{tabular}|-ympäristössä korvaa normaalin sarakkeiden välisen +välin pilkulla, jolloin saadaan vaikutelma yhdestä, desimaalipilkkuun +tasatusta sarakkeesta. Ei pidä unohtaa desimaalipilkun korvaamista +numeroissa sarake-erottimella (\verb|&|)! Sarakkeen nimi voidaan +asettaa numeerisen ''sarakkeen'' yläpuolelle \ci{multicolumn}-komennolla. + +\begin{example} +\begin{tabular}{c r @{,} l} +Piin merkintätapa & +\multicolumn{2}{c}{Arvo} \\ +\hline +$\pi$ & 3&1416 \\ +$\pi^{\pi}$ & 36&46 \\ +$(\pi^{\pi})^{\pi}$ & 80662&7 \\ +\end{tabular} +\end{example} + +\begin{example} +\begin{tabular}{|c|c|} +\hline +\multicolumn{2}{|c|}{Entten} \\ +\hline +tentten & teelikamentten! \\ +\hline +\end{tabular} +\end{example} + +Sarkainympäristössä ladottu teksti pysyy aina samalla sivulla. +Jos halutaan pitempiä taulukoita, kannattaa vilkaista ympäristöjä +\pai{supertabular} ja \pai{longtabular}. + +\section{Kelluvat osat} + +Nykyään useimmissa julkaisuissa on paljon kuvia ja taulukoita. Nämä +elementit kaipaavat erikoiskohtelua, sillä niitä ei voi jakaa eri sivuille. +Eräs tapa olisi aloittaa uusi sivu aina kun kuva tai taulukko on +liian iso mahtuakseen sivulle. Tämä tapa kuitenkin jättäisi sivut +osittain tyhjäksi, mikä näyttää pahalta. + +Ratkaisu on siirtää mikä tahansa sivulle sopimaton kaavio tai +taulukko, johonkin myöhemmälle sivulle ja samalla täyttää tyhjäksi jäävä +tila tekstillä. \LaTeX:ssa on kaksi ympäristöä \index{kelluvat objektit} +kelluville objekteille. Yksi taulukoille ja yksi kaavioille. +Näiden ympäristöjen hyödyntämiseksi +on ymmärrettävä suunnilleen kuinka \LaTeX{} käsittelee kelluvia osia. +Muutoin niistä voi tulla turhautumisen kohde, sillä \LaTeX{} ei koskaan +pane niitä siihen, mihin haluat. + +\bigskip +Katsotaanpa ensiksi mitä komentoja \LaTeX{} tarjoaa kelluvalle +materiaalille: + +Mikä tahansa aineisto, joka on \ei{figure}- tai \ei{table}-ympäristön +sisällä, käsitellään kelluvana materiaalina. Kumpikin ympäristö tarjoaa +vaihtoehtoisen parametrin +\begin{lscommand} +\verb|\begin{figure}[|\emph{sijoituksen määrittely}\verb|]| tai +\verb|\begin{table}[|\emph{sijoituksen määrittely}\verb|]| +\end{lscommand} +\noindent jota kutsutaan \emph{sijoituksen määrittelyksi}. Tämä parametri +kertoo \LaTeX:lle minne kelluvan objektin sallitaan siirtyvän. \emph{sijoituksen +määrittely} rakentuu \emph{kelluvan objektin sallittujen sijaintien} merkkijonosta. +Katso taulukko~\ref{tab:permiss}. + +\begin{table}[!bp] +\caption{Kelluvan objektin sallitut sijainnit}\label{tab:permiss} +\noindent \begin{minipage}{\textwidth} +\medskip +\begin{center} +\begin{tabular}{@{}cp{10cm}@{}} +Määrite&Sallittu sijainti \ldots\\ +\hline +\rule{0pt}{1.05em}\texttt{h} & juuri \emph{tässä} paikassa tekstiä. + Tämä sopii pääasiassa pieniin kelluviin objekteihin.\\[0.3ex] +\texttt{t} & sivun \emph{yläosassa}\\[0.3ex] +\texttt{b} & sivun \emph{alaosassa}\\[0.3ex] +\texttt{p} & erityisellä \emph{sivulla}, jossa on ainoastaan kelluvia + objekteja\\[0.3ex] +\texttt{!} & kyseisen kelluvan objektin asettelun estävistä sisäisistä + parametreista\footnote{Kuten yhdellä sivulla sallittujen + kelluvien objektien maksimimäärä} riippumatta. +\end{tabular} +\end{center} +HUOM. \texttt{0pt} ja \texttt{1.05em} ovat \TeX:n mittayksiköitä. +Näistä lisää taulukossa \ref{units}, sivulla \pageref{units}. +\end{minipage} +\end{table} + +Taulukko voisi alkaa esim. seuraavalla rivillä: +\begin{code} +\verb|\begin{table}[!hbp]| +\end{code} +\noindent \index{objektien sijoitus} Sijoituksen määrittely \verb|[!hbp]| sallii \LaTeX:n +sijoittaa taulukko juuri tähän (\texttt{h}) tai jonkin sivun alaosaan +(\texttt{b}) tai erityiselle sivulle (\texttt{p}) ja vieläpä niin, että +lopputuloksen ei tarvitse näyttää erityisen hyvältä (\texttt{!}). Jos +mitään määrityksiä paikan suhteen ei anneta, standardiluokat olettavat +määrityksiksi \verb|[tbp]|. + +\LaTeX{} sijoittaa kaikki kelluvat objektit kirjoittajan antamien +paikkamääritysten mukaisesti. Jos objektia ei voi sijoittaa samalle sivulle +se pannaan joko \emph{kuvien} tai \emph{taulukoiden} +jonoon\footnote{Nämä ovat ''ensimmäisenä sisään, ensimmäisenä +ulos'' jonoja!}. Kun uusi sivu alkaa \LaTeX{} tarkistaa ensin, onko +mahdollista täyttää kelluvilla objekteilla oma sivu. Jos tämä ei ole +mahdollista joka jonon ensimmäistä objektia käsitellään aivan kuin +se olisi juuri esiintynyt tekstissä: \LaTeX{} yrittää jälleen asemoida +sitä paikanmäritysten mukaisesti (paitsi 'h':n, joka ei ole enää +mahdollinen). Kaikki uudet tekstissä esiintyvät objektit siirtyvät +vastaavaan jonoon. \LaTeX{} säilyttää kunkin objektityypin alkuperäisen +järjestyksen. Tästä syystä, jos jotain kuvaa ei voida sijoittaa, se +siirtää kaikkia muita kuvia dokumentin loppua kohden. Niinpä: + +\begin{quote} +Jos \LaTeX{} ei sijoita objekteja odotetulla tavalla, on syynä usein +yksi kelluva objekti joka tukkii jommankumman jonoista. +\end{quote} + +Vaikka \LaTeX:lle on mahdollista antaa yksiselitteisiä sijoitusmääräyksiä, +niistä seuraa ongelmia. Mikäli kelluva objekti ei mahdu sille tarkoitettuun +paikkaan, se jää jumiin ja estää muita objekteja tulostumasta. +Erityisesti \texttt{[h]}-optiota ei tulisi käyttää lainkaan. Viimeisimmissä +\LaTeX:n versioissa se korvataankin automaattisesti optiolla \texttt{[ht]}. + +\bigskip +\noindent Vaikean osan jäädessä taakse on mainittava vielä muutama jäljellä oleva +asia \ei{table}- ja \ei{figure}-ympäristöistä. + +Komennolla + +\begin{lscommand} +\ci{caption}\verb|{|\emph{kuvateksti}\verb|}| +\end{lscommand} + +\noindent voidaan kelluvalle objektille määritellä kuvateksti. LaTeX{} +lisää juoksevan numeron ja tekstin ''Kuva'' tai +''Taulukko''.\footnote{Englannin kielisissä dokumenteissa vastaavasti +''Figure'' ja ''Table''.} + +Komennot + +\begin{lscommand} +\ci{listoffigures} ja \ci{listoftables} +\end{lscommand} + +\noindent toimivat samoin kuin \verb|\tableofcontents|-komento tulostaen +vastaavasti luettelon kuvista ja taulukoista. Näihin luetteloihin lisätään +koko kuvateksti. Jos käytät pitkiä kuvatekstejä, on luetteloon siis saatava +lyhyempi versio. Tämä on mahdollista lisäämällä lyhyt versio hakasulkeisiin +\verb|\caption|-komennon perään. +\begin{code} +\verb|\caption[Lyhyt]{Piiiiiiiitkääääääää}| +\end{code} + +Komennoilla \verb|\label| ja \verb|\ref| voidaan luoda viittaus kelluvaan +objektiin. + +Seuraava esimerkki piirtää neliön ja lisää sen dokumenttiin. +Tätä voidaan käyttää varaamaan tilaa kuville, jotka liimataan lopulliseen +dokumenttiin. + +\begin{code} +\begin{verbatim} +Kuva~\ref{white} on esimerkki pop-taiteesta. +\begin{figure}[!hbp] +\makebox[\textwidth]{\framebox[5cm]{\rule{0pt}{5cm}}} +\caption{Viisi kertaa viisi cm} \label{white} +\end{figure} +\end{verbatim} +\end{code} + +\noindent Yllä olevassa esimerkissä \LaTeX{} yrittää \emph{todella +kovasti}~(\texttt{!}) asettaa kuvan juuri \emph{tähän}~(\texttt{h}).\footnote{Olettaen, +että kuvien jono on tyhjä.} Mikäli tämä ei ole mahdollista, se yrittää +asemoida kuvan sivun \emph{alaosaan}~(\texttt{b}). Jos kuva ei sovi +sivulle, \LaTeX{} tarkistaa, olisiko mahdollista tehdä erillinen +sivu kuvaa ja jonossa olevia taulukoita varten. \LaTeX{} aloittaa uuden +sivun ja käsittelee kuvaa jälleen ikäänkuin se esiintyisi ensimmäistä kertaa. + +Jossain tilanteissa on tarpeen käyttää + +\begin{lscommand} +\ci{clearpage}- tai jopa \ci{cleardoublepage} +\end{lscommand} + +\noindent "=komentoa. Se pakottaa \LaTeX:n asemoimaan kaiken +jonoissa olevan kelluvan materiaalin välittömästi ja aloittamaan +sitten uuden sivun. Vasemanpuoleiselle sivulle saman tekee +\ci{cleardoublepage}. + +Myöhemmin tässä johdannossa opetetaan lisäämään Postscript"-kuvia +\LaTeXe-dokumentteihin. + +\section{Särkyvien komentojen suojaaminen} + +Kun tekstiä käytetään argumenttina komennoissa kuten \ci{caption} tai +\ci{section}, voi se esiintyä useammin kuin kerran dokumentissa (esim. +sisällysluettelossa sekä itse dokumentissa). Jotkin komennot sekoavat +eli hajoavat kun niitä käytetään \ci{section}:n kaltaisten komentojen +argumentteina. Tällaisia komentoja kutsutaan särkyviksi +komennoiksi.\index{särkyvät komennot} Särkyviä ovat mm.~\ci{footnote} tai +\ci{phantom}. Särkyvät komennot tarvitsevat suojelua (emmekö me kaikki?) +Komennon voi suojata panemalla sen eteen komennon \ci{protect}. + +\ci{protect} viittaa vain sitä välittömästi seuraavaan komentoon, eikä +edes sen argumentteihin. Useimmissa tapauksissa ylimääräinen \ci{protect} +ei haittaa mitään. + +\begin{code} +\verb|\section{Olen huomaavainen|\\ +\verb| \protect\footnote{ja suojaan alaviitteitäni}}| +\end{code} + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "lyhyt2e" +%%% End: diff --git a/Master/texmf-doc/doc/finnish/lshort-finnish/src/llyhyt2e.sty b/Master/texmf-doc/doc/finnish/lshort-finnish/src/llyhyt2e.sty new file mode 100644 index 00000000000..b8b7a62b9a3 --- /dev/null +++ b/Master/texmf-doc/doc/finnish/lshort-finnish/src/llyhyt2e.sty @@ -0,0 +1,266 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Special Commands for the LShort2e Introduction +% $Id: lshort2e.sty,v 1.1.1.1 2002/02/26 08:05:50 oetiker Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% By Tobias Oetiker +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%\errorcontextlines=10 + +%save pageref an label +\let\lsspageref\pageref +\ProvidesPackage{llyhyt2e} +\RequirePackage[frenchb,finnish]{babel} +\RequirePackage{mflogo} +\RequirePackage{verbatim} +\RequirePackage{fancyhea} +\RequirePackage{calc} +\RequirePackage{amsmath,amsfonts,amssymb} +\RequirePackage[all]{xy} +%\RequirePackage{lmodern} % I'd rather use the super computer modern fonts +\RequirePackage{type1cm}% remove size restrictions +% some packages which draw a euro +\RequirePackage{textcomp} +%need some magic here to keep the original definition of rightarrow +\newcommand{\org@Rightarrow}{} +\let\org@Rightarrow\Rightarrow +\usepackage{marvosym} +\let\MVRightarrow\Rightarrow +\let\Rightarrow\org@Rightarrow +%%% +\RequirePackage[gen]{eurosym} +%\RequirePackage{eurosans} +%\let\EUROSANS\euro +\RequirePackage{eurofont}% à la place d'europs (conflit de nom) +\RequirePackage{url} +% Lets have some nice headings +% +\pagestyle{fancyplain} +\renewcommand{\chaptermark}[1]{\markboth{#1}{}} +\renewcommand{\sectionmark}[1]{\markright{\thesection{} #1}} +\lhead[\fancyplain{}{\bfseries\thepage}] + {\fancyplain{}{\bfseries\rightmark}} +\rhead[\fancyplain{}{\bfseries\leftmark}] + {\fancyplain{}{\bfseries\thepage}} +\cfoot[]{} +\addtolength{\headheight}{1.6pt} +% +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Adapted from TeX FAQ +\renewcommand{\Email}{\begingroup \def\UrlLeft{<}\def\UrlRight{>} \urlstyle{tt}\Url} +\def\mailto|#1|{\href{mailto:#1}{\Email|#1|}} % url to mail somewhere +\newcommand{\CTANref}{\begingroup \urlstyle{tt}\Url} % +\def\CTAN|#1|{\href{ftp://ftp.dante.de/tex-archive/#1}{\CTANref|CTAN:/tex-archive/#1|}} +\newcommand\Newsgroup{\begingroup \urlstyle{tt}\Url} % newsgroup +\let\URL\url % just a URL +\newcommand{\PSi}{\textsc{PostScript}\index{PostScript@\textsc{PostScript}}} +\newcommand{\EPSi}{Encapsulated \textsc{PostScript}% +\index{Encapsulated PostScript@Encapsulated \textsc{PostScript}}% +\index{PostScript@\textsc{PostScript}!Encapsulated}% +} + +% Earlier paragraphs were separated by some space +% +%\setlength{\parindent}{0pt} +%\setlength{\parskip}{1.5ex plus 0.7ex minus 0.6ex} + +\newcommand{\manual}{\emph{\LaTeX{} Manual}~\cite{manual}} +\newcommand{\companion}{\emph{The \LaTeX{} Companion}~\cite{companion}} +\newcommand{\guide}{\emph{Local Guide}~\cite{local}} +\newcommand{\contrib}[3]{#1\quad\mailto|#2|{\small\\\quad\textit{#3}}\\[1ex]} +% +% Some commands for helping with INDEX creation +% +\newcommand{\bs}{\symbol{'134}}%Print backslash +%\newcommand{\bs}{\ensuremath{\mathtt{\backslash}}}%Print backslash +% Index entry for a command (\cih for hidden command index + +\newcommand{\eei}[1]{% +\index{tiedostopääte!\texttt{#1}}\texttt{#1}} + +\newcommand{\fni}[1]{% +\index{kirjasin!#1@\texttt{\bs#1}}% +\index{#1@\texttt{\hspace*{-1.2ex}\bs #1}}\texttt{\bs#1}} + +\newcommand{\cih}[1]{% +\index{komennot!#1@\texttt{\bs#1}}% +\index{#1@\texttt{\hspace*{-1.2ex}\bs #1}}} + +\newcommand{\ci}[1]{\cih{#1}\texttt{\bs#1}} +%Package +\newcommand{\paih}[1]{% +\index{makrokokoelmat!#1@\textsf{#1}}% +\index{#1@\textsf{#1}}} +\newcommand{\pai}[1]{% +\paih{#1}\textsf{#1}} +% Index entry for an environment +\newcommand{\ei}[1]{% +\index{ympäristöt!\texttt{#1}}% +\index{#1@\texttt{#1}}% +\texttt{#1}} +% Indexentry for a word (Word inserted into the text) +\newcommand{\wi}[1]{\index{#1}#1} +% +% Typesetting Commands +% +\newenvironment{lscommand}% + {\nopagebreak\par\small\addvspace{3.2ex plus 0.8ex minus 0.2ex}% + \vskip -\parskip + \noindent% + \begin{tabular}{|l|}\hline\rule{0pt}{1em}\ignorespaces}% + {\\\hline\end{tabular}\par\nopagebreak\addvspace{3.2ex plus 0.8ex + minus 0.2ex}% + \vskip -\parskip} +% +% Type setting Code Fragments +% +\newenvironment{code}{\begin{quote}}{\end{quote}} +% +% Intro Environment +\newenvironment{intro}{\sffamily}{\vspace*{2ex minus 1.5ex}} +% +\newcommand{\secby}[2]{\nopagebreak\par\addvspace{-1.5ex}% + \vskip -\parskip\noindent{\tiny Kirjoittanut #1 \mailto|#2|}\par\nopagebreak% + \addvspace{1ex plus 0.8ex minus 0.2ex}% + \vskip -\parskip\noindent\ignorespaces} +% +% propper bookmark entries in pdftex + +\ifx\hypersetup\undefined\else +\pdfstringdefDisableCommands{\edef\ci{\textbackslash}}% +\pdfstringdefDisableCommands{\edef\sim{\textasciitilde}}% +\pdfstringdefDisableCommands{\edef\circ{\textdegree}}% +\pdfstringdefDisableCommands{\edef\ldots{... }}% +\fi + +%\noindent\addvspace{1ex}\small #1 $<$\texttt{#2}$>$\par\addvspace{2ex}\noindent\ignorespaces} +% +% +% Symbol Entry for Math Symbol Tables +% +\newcommand{\X}[1]{$#1$&\texttt{\string#1}\hspace*{1ex}} +% normal text .... +\newcommand{\SC}[1]{#1&\texttt{\string#1}\hspace*{1ex}} +% for accents in text mode +\newcommand{\A}[1]{#1&\texttt{\string#1}\hspace*{1ex}} +\newcommand{\B}[2]{#1#2&\texttt{\string#1{} #2}\hspace*{1ex}} + +\newcommand{\W}[2]{$#1{#2}$& + \texttt{\string#1}\texttt{\string{\string#2\string}}\hspace*{1ex}} +\newcommand{\Y}[1]{$\big#1$ &\texttt{\string#1}} % +% Mathsymbol Table +\newsavebox{\symbbox} +\newenvironment{symbols}[1]% +{\par\vspace*{2ex} +\renewcommand{\arraystretch}{1.1} +\begin{lrbox}{\symbbox} +\hspace*{4ex}\begin{tabular}{@{}#1@{}}}% +{\end{tabular}\end{lrbox}\makebox[\textwidth]{\usebox{\symbbox}}\par\medskip} +% +% Special Prep for AMS Symbols Printout +% Should work if AMS is not available +% + +% we have no PS versions of the rsfs fonts ... so this is a nogo for pdf +%\ifx\HyPsd@pageref\undefined +\RequirePackage{mathrsfs} +%\fi +\RequirePackage{latexsym} +\RequirePackage[mathcal]{euscript} +% +% Print |--| to show a distance +% +\newcommand{\demowidth}[1]{\rule{0.3pt}{1.3ex}\rule{#1}{0.3pt}\rule{0.3pt}{1.3ex}} +% +% --- example ---- +% This is an environment to set LaTeX examples. +% On the left side the source text and on the +% right side the typeset text. +% +% \begin{example} +% \Large This is Large +% \end{example} +% +% This Part is stolen from the verbaim.sty by FMi +% +\newwrite\example@out +\newcounter{exacnt} +\setcounter{exacnt}{1} +\newlength{\savefboxrule} +\newlength{\savefboxsep} +\newlength{\outdent} +\setlength{\outdent}{2cm} +\addtolength{\headwidth}{\outdent} +\newenvironment{example}% +{\begingroup% Lets Keep the Changes Local + \@bsphack + \immediate\openout \example@out \jobname.exa + \let\do\@makeother\dospecials\catcode`\^^M\active + \def\verbatim@processline{% + \immediate\write\example@out{\the\verbatim@line}}% + \verbatim@start}% +{\immediate\closeout\example@out\@esphack\endgroup% + % + % And here comes my part. :- + % + \stepcounter{exacnt}% + \setlength{\parindent}{0pt}% + \par\addvspace{3.0ex plus 0.8ex minus 0.5ex}\vskip -\parskip\relax +% Page \lsspageref{exa:\theexacnt} + +%% The old Finnish part in case the new doesn't work +%% \expandafter\ifx\csname r@exacnt\endcsname\relax\else +%\ifx\pdfoutput\undefined % We're not running pdftex +% \ifodd0\expandafter\expandafter\expandafter +% \@secondoftwo\csname r@exa:\theexacnt\endcsname\relax +% \hspace*{0pt}\else\hspace*{-\outdent}\fi% +%\else +% \ifodd0\realpageref{exa:\theexacnt}\hspace*{0pt}\else\hspace*{-\outdent}\fi% +%\fi +%%\fi + +%% And now the new version +\expandafter\ifx\csname r@exa\theexacnt\endcsname\relax\else +\ifx\pdfoutput\undefined % We're not running pdftex + \ifodd\lsspageref{exa\theexacnt}\hspace*{0pt}\else\hspace*{-\outdent}\fi% +\else +% HyPsd@pageref internal hyperref command v6.69c + \ifodd\HyPsd@pageref{exa\theexacnt}\hspace*{0pt}\else\hspace*{-\outdent}\fi% +\fi +\fi +\makebox[\textwidth][l]{% +%\raisebox{-\height}[0pt][\totalheight]{% + \begin{minipage}[c]{0.5\outdent+0.46\textwidth-3mm}% + \small\verbatiminput{\jobname.exa} + \end{minipage}% + %}% + \hspace{5mm}% + \setlength{\savefboxrule}{\fboxrule}% + \setlength{\fboxrule}{0.1pt}% + \setlength{\savefboxsep}{\fboxsep}% + \setlength{\fboxsep}{3mm}% + % \raisebox{-\height}[0pt][\totalheight]{% + \fbox{% + \begin{minipage}{0.5\outdent+0.54\textwidth-3.5mm-2\fboxrule-2\fboxsep}% + \setlength{\fboxrule}{\savefboxrule}% + \setlength{\fboxsep}{\savefboxsep}% + \setlength{\fboxrule}{0.5pt}% + \setlength{\parskip}{1ex plus 0.4ex minus 0.2ex}% + \begin{trivlist}\item\small\input{\jobname.exa} + \end{trivlist} + \end{minipage} + }% +% }% +}\label{exa\theexacnt}% +\par\addvspace{3ex plus 0.8ex minus 0.5ex}\vskip -\parskip +} + +\newenvironment{lined}[1]% + {\begin{center}\begin{minipage}{#1}\hrule\medskip} + {\vspace{-1ex}\hrule \end{minipage}\end{center}} +% I want no headers on pages created by clearpage + +\renewcommand{\cleardoublepage} + {\clearpage\if@twoside \ifodd\c@page\else + \hbox{}\thispagestyle{empty}\newpage\if@twocolumn\hbox{}\newpage\fi\fi\fi} + diff --git a/Master/texmf-doc/doc/finnish/lshort-finnish/src/lyhyt2e.tex b/Master/texmf-doc/doc/finnish/lshort-finnish/src/lyhyt2e.tex new file mode 100644 index 00000000000..ac5498d6fea --- /dev/null +++ b/Master/texmf-doc/doc/finnish/lshort-finnish/src/lyhyt2e.tex @@ -0,0 +1,97 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Main Input File of the LaTeX2e Introduction +% $Id: lshort.tex,v 1.2 2003/03/19 15:36:54 oetiker Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% lshort.tex - The not so short introduction to LaTeX2e +% by Tobias Oetiker +% tobias@ife.ee.ethz.ch +% oetiker@dmu.ac.uk +% +% based on LKURTZ.TEX Uni Graz & TU Wien, 1987 +%----------------------------------------------------------------------- +% +% To compile lyhyt2e, you need TeX 3.x, LaTeX2e and makeindex +% +% The sources files of the Intro are: +% lyhyt2e.tex (this file), +% otsikko.tex, kiitokset.tex, biblio.tex +% asiat.tex, ladonta.tex, matikka.tex, symbolit.tex, erikois.tex, +% lshort2e.sty, fancyheadings.sty +% +% Further the verbatim.sty and the layout.sty +% from the LaTeX Tools distribution is +% required. +% +% +% To print the AMS symbols you need the AMS fonts and the packages +% amsfonts, eufrak and eucal from (AMS LaTeX 1.2) +% +% --------------------------------------------------------------------- + +\documentclass[11pt,a4paper,twoside]{book} +\usepackage{ifpdf} +\ifpdf +\usepackage{thumbpdf} +\pdfcompresslevel=9 +\fi +\usepackage[T1]{fontenc} +\usepackage[latin1]{inputenc} +\usepackage{llyhyt2e} +\usepackage{makeidx,shortvrb,latexsym} +\usepackage{mylayout} +% are we in pdftex ???? +\ifx\pdfoutput\undefined % We're not running pdftex +\else +\RequirePackage[colorlinks,hyperindex,plainpages=false]{hyperref} +\def\pdfBorderAttrs{/Border [0 0 0] } % No border arround Links +\fi +% +% This document is ``public domain''. It may be printed and +% distributed free of charge in its original form (including the +% list of authors). If it is changed or if parts of it are used +% within another document, then the author list must include +% all the original authors AND that author (those authors) who +% has (have) made the changes. +% +% Original Copyright H.Partl, E.Schlegl, and I.Hyna (1987). +% English Version Copyright by Tobias Oetiker (1994,1995), +% Finnish Version Copyright by Timo Hellgren (1998-2003) +% +% --------------------------------------------------------------------- +% +% +% Formats also with\textt{letterpaper} option, but the pagebreaks might not +% fall as nicely. +% +% To produce a A5 booklet, use a tool like pstops or dvitodvi +% to past them together in the right order. Most dvi printer drivers +% can shrink the resulting output to fit on a A4 sheet. +% +\hyphenation{Post-Script} +\makeindex +\typeout{Copyright T.Hellgren, T.Oetiker, H.Partl, E.Schlegl, I.Hyna} + +\begin{document} +\frontmatter +\include{otsikko} +\include{kiitokset} +\include{esipuhe} +\tableofcontents +\listoffigures +\listoftables +\enlargethispage{\baselineskip} +\mainmatter +\include{asiat} +\include{ladonta} +\include{matikka} +\include{symbolit} +\include{erikois} +\include{grafiikka} +\include{viritys} +\backmatter +\include{kirjallisuus} +\addcontentsline{toc}{chapter}{\numberline{}Hakemisto} +\printindex +\label{verylast} +\mbox{} +\end{document} diff --git a/Master/texmf-doc/doc/finnish/lshort-finnish/src/matikka.tex b/Master/texmf-doc/doc/finnish/lshort-finnish/src/matikka.tex new file mode 100644 index 00000000000..6d6b1ca0d94 --- /dev/null +++ b/Master/texmf-doc/doc/finnish/lshort-finnish/src/matikka.tex @@ -0,0 +1,701 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Math typesetting with LaTeX +% $Id: matikka.tex,v 1.2 2005/04/05 08:05:09 hellgren Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\chapter{Matemaattisten kaavojen ladonta} + +\begin{intro} + Nyt se alkaa! Tässä luvussa käydään kiinni \TeX:n päävahvuuteen: + matematiikan ladontaan. Varoituksena kuitenkin, että tämä luku + raapaisee vasta pintaa. Tässä selitetyt asiat riittävät useimmille, + eikä pidä hätääntyä vaikka täältä ei löytyisikään ratkaisuja omaan + työhösi liittyvän matematiikan ladontaan. Ongelmaan on ratkaisu + todennäköisesti \AmS-\LaTeX:ssa.\footnote{\emph{American Mathematical Society} + on tehnyt kattavan lisäyksen {\LaTeX}-makroihin. Monet tämän luvun + esimerkeistä käyttävät näitä lisämakroja, jotka kuuluvat kaikkiin + ajan tasalla oleviin {\TeX}-järjestelmiin. Tarvittaessa ne löytyvät + osoitteesta \CTANref|macros/latex/required/amslatex|.} + +\end{intro} + +\section{Yleistä} + +\LaTeX:ssa on erityinen toimintotila \index{matematiikka} matematiikan ladonnalle. +Matematiikkaa voidaan latoa joko samalle riville tekstin sekaan tai erikseen +omalle rivilleen. Matemaattinen teksti lisätään \ci{(}:n ja \ci{)}:n väliin, +\index{$@\texttt{\$}} +\texttt{\$}:n ja \texttt{\$}:n väliin tai \verb|\begin{|\ei{math}\verb|}|:n +ja \verb|\end{math}|:n väliin.\index{kaavat} + +\begin{example} +Laskemalla yhteen $a$:n neliö ja +$b$:n neliö saadaan $c$:n neliö. +Tai matemaattisemmin sanottuna: +$c^{2}=a^{2}+b^{2}$ +\end{example} + +\begin{example} +\TeX{} lausutaan +$\tau\epsilon\chi$.\\[6pt] +100~m$^{3}$ vettä\\[6pt] +Tämä tulee $\heartsuit$:stä. +\end{example} + +On suositeltavampaa esittää matemaattiset yhtälöt ja kaavat omalla +rivillään, eikä muun tekstin seassa. Tämä tarkoittaa, että ne pitäisi +kirjoittaa \ci{[}:n ja \ci{]}:n väliin tai \verb|\begin{|\ei{displaymath}\verb|}|:n +ja \verb|\end{displaymath}|:n väliin. + +\begin{example} +Laskemalla yhteen $a$:n ja $b$:n +neliöt saadaan $c$:n neliö. Tai +matemaattisemmin sanottuna: +\begin{displaymath} +c^{2}=a^{2}+b^{2} +\end{displaymath} +tai lyhyemmin: +\[a+b=c\] +\end{example} + +{\LaTeX}:n \ei{equation}-ympäristöä voidaan käyttää yhtälöjen +numerointiin. Yhtälön numero voidaan silloin merkitä \ci{label}:lla +ja siihen voidaan viitata muualla tekstissä makrolla \ci{ref} tai \ci{eqref}: + +\begin{example} +\begin{equation} \label{eq:eps} +\epsilon > 0 +\end{equation} +Yhtälöstä (\ref{eq:eps}) saadaan +\ldots Samoin yhtälöstä \eqref{eq:eps}. +\end{example} + +On huomattava, että ilmaisut ladotaan eri tavalla silloin kun ne tulevat +omalle rivilleen: +\begin{example} +$\lim_{n \to \infty} +\sum_{k=1}^n \frac{1}{k^2} += \frac{\pi^2}{6}$ +\end{example} +\begin{example} +\begin{displaymath} +\lim_{n \to \infty} +\sum_{k=1}^n \frac{1}{k^2} += \frac{\pi^2}{6} +\end{displaymath} +\end{example} + +\emph{Matematiikkatilan} ja \emph{tekstitilan} välillä on eroa. +Esimerkiksi \emph{matematiikkatilassa}: + +\begin{enumerate} + +\item Useimmat välilyönnit ja rivinvaihdot menettävät merkityksensä, sillä +kaikki välilyönnit johdetaan loogisesti matemaattisista ilmaisuista tai +ne pitää määritellä erityisesti komennoilla \ci{,}, \ci{quad} tai \ci{qquad}. + +\item Tyhjiä rivejä ei sallita. Kaavan pitää mahtua samaan kappaleeseen. + +\item Jokaista kirjainta käsitellään muuttujan nimenä ja ne ladotaan sen +mukaisesti. Jos halutaan latoa normaalia tekstiä kaavan sisään (normaalia +pystyä tekstiä normaalein välistyksin) on teksti lisättävä \verb|\textrm{...}|-komennnon +sisään (katso myös kohtaa \ref{sec:fontsz} sivulla \pageref{sec:fontsz}). +\end{enumerate} + +\begin{example} +\begin{equation} +\forall x \in \mathbf{R}: +\qquad x^{2} \geq 0 +\end{equation} +\end{example} + +\begin{example} +\begin{equation} +x^{2} \geq 0\qquad +\textrm{kaikille }x\in\mathbf{R} +\end{equation} +\end{example} + + +% +% Add AMSSYB Package ... Blackboard bold .... R for realnumbers +% +Matemaatikot voivat olla hyvin pikkutarkkoja käytetyistä symboleista: +perinteisesti tässä käytettäisiin '\wi{liitutaululihavointi}a',\index{lihavoidut +symbolit} joka saadaan käyttöön \ci{mathbb}-komennolla \pai{amsfonts}- tai +\pai{amssymb}-pakkauksesta. +\ifx\mathbb\undefined\else +Viimeisestä esimerkistä tulee +\begin{example} +\begin{displaymath} +x^{2} \geq 0\qquad +\textrm{for all }x\in\mathbb{R} +\end{displaymath} +\end{example} +\fi + +\section{Ryhmittely matematiikkatilassa} + +Useimmat matemaattiset komennnot vaikuttavat vain seuraavaan merkkiin. +Jos vaikutus halutaan ulottaa useampaan merkkiin, on ne ryhmiteltävä +yhteen käyttämällä aaltosulkeita: \verb|{...}|. + +\begin{example} +\begin{equation} +a^x+y \neq a^{x+y} +\end{equation} +\end{example} + +\section{Matemaattisten kaavojen rakentaminen} + +Tässä osiossa kerrotaan matemaattisen ladonnan tärkeimmät komennot. +Osi\-os\-sa \ref{symbols}, sivulla~\pageref{symbols} on yksityiskohtainen +luettelo komennoista, joilla ladotaan matemaattisia symboleja. + +\textbf{Pienet \wi{kreikkalaiset kirjaimet}} kirjoitetaan muodossa \verb|\alpha|, + \verb|\beta|, \verb|\gamma|, \ldots, isot kirjaimet kirjoitetaan muodossa + \verb|\Gamma|, \verb|\Delta|, \ldots\footnote{\LaTeXe{} ei määrittele + isoa Alfaa, sillä se näyttää samalta kuin normaali antiikva A. + Kunhan uusi matemaattinen merkistökoodaus on valmis, asiat muuttuvat tältä + osin.} + +\begin{example} +$\lambda,\xi,\pi,\mu,\Phi,\Omega$ +\end{example} + +\textbf{Eksponentit ja alaindeksit} voidaan määritellä käyttämällä\index{eksponentti} +\index{alaindeksi} \verb|^|\index{^@\verb"|^"|}- ja \verb|_|\index{_@\verb"|_"|}-merkkiä + +\begin{example} +$a_{1}$ \qquad $x^{2}$ \qquad +$e^{-\alpha t}$ \qquad +$a^{3}_{ij}$\\ +$e^{x^2} \neq {e^x}^2$ +\end{example} + +\textbf{Neliöjuuri}\index{neliöjuuri} kirjoitetaan \ci{sqrt}, $n$:s juuri saadaan +kirjoittamalla \verb|\sqrt[|$n$\verb|]|. Juuren koon \LaTeX{} määrittelee automaattisesti. +Jos pelkkä juuren merkki tarvitaan, käytä komentoa \verb|\surd|. + +\begin{example} +$\sqrt{x}$ \qquad +$\sqrt{ x^{2}+\sqrt{y} }$ +\qquad $\sqrt[3]{2}$\\[3pt] +$\surd[x^2 + y^2]$ +\end{example} + +Komennot \ci{overline} ja \ci{underline} piirtävät vastaavasti +ilmaisun ylä- tai alapuolelle \textbf{vaakaviivan}. +\index{vaakaviiva} +\begin{example} +$\overline{m+n}$ +\end{example} + +Komennot \ci{overbrace} ja \ci{underbrace} piirtävät ilmaisun +ylä- tai alapuolelle pitkän \textbf{vaakasulkeen} +\index{vaakasulje} +\begin{example} +$\underbrace{ a+b+\cdots+z }_{26}$ +\end{example} + +\index{matemaattiset!aksentit} Matemaattisten aksenttien, kuten pienten +nuolien tai \verb|~|-merkkien, lisäämiseksi muuttujiin voidaan käyttää +taulukossa~\ref{mathacc}, sivulla~\pageref{mathacc}, olevia komentoja. +Laajat hatut ja \verb|~|:t, jotka ulottuvat usean merkin yli, saadaan +aikaan komennoilla \ci{widetilde} ja \ci{widehat}. \verb|'|\index{'@\verb"|'"|}-symboli +tekee $'$:n. + +% a dash is -- + +\begin{example} +\begin{displaymath} +y=x^{2}\qquad y'=2x\qquad y''=2 +\end{displaymath} +\end{example} + +\textbf{Vektorit}\index{vektorit} määritellään usein lisäämällä pieni +\wi{nuoli} muuttujan päälle. Tämä tehdään \ci{vec}-komennolla. +\ci{overrightarrow} ja \ci{overleftarrow} ovat avuksi määriteltäessä +$A$:sta $B$:hen ulottuvaa vektoria. + +\begin{example} +\begin{displaymath} +\vec a\quad\overrightarrow{AB} +\end{displaymath} +\end{example} + +Yleensä kertolaskun pistesymbolia ei ladota näkyviin. +Joskus kuitenkin sitä käytetään helpottamaan kaavan +ryhmityksen hahmottamista. Siinä tapauksessa käytetään +komentoa \ci{cdot} + +\begin{example} +\begin{displaymath} +v = {\sigma}_1 \cdot {\sigma}_2 + {\tau}_1 \cdot {\tau}_2 +\end{displaymath} +\end{example} + +Logaritmien ja muiden vastaavien functioiden nimet ladotaan usein +pystyllä kirjasimella eikä kursiivilla kuten muuttujat. Tästä syystä +\LaTeX{} tarjoaa seuraavat komennot tärkeimpien funktioiden nimien +latomiseksi:\index{matemaattiset!funktiot} + +\begin{tabular}{lllllll} +\ci{arccos} & \ci{cos} & \ci{csc} & \ci{exp} & \ci{ker} & \ci{limsup} & \ci{min} \\ +\ci{arcsin} & \ci{cosh} & \ci{deg} & \ci{gcd} & \ci{lg} & \ci{ln} & \ci{Pr} \\ +\ci{arctan} & \ci{cot} & \ci{det} & \ci{hom} & \ci{lim} & \ci{log} & \ci{sec} \\ +\ci{arg} & \ci{coth} & \ci{dim} & \ci{inf} & \ci{liminf} & \ci{max} & \ci{sin} \\ +\ci{sinh} & \ci{sup} & \ci{tan} & \ci{tanh}\\ +\end{tabular} + +\begin{example} +\[\lim_{x \rightarrow 0} +\frac{\sin x}{x}=1\] +\end{example} + +Modulolle\index{modulo} on kaksi komentoa: \ci{bmod} +binäärioperaattorille ''$a \bmod b$'' ja \ci{pmod} ilmaisuille +''$x\equiv a \pmod{b}$''. +\begin{example} +$a\bmod b$\\ +$x\equiv a \pmod{b}$ +\end{example} + + +\textbf{Murtoluvut}\index{murtoluvut} ladotaan komennolla +\ci{frac}\verb|{...}{...}|. Usein kauttaviivaa käyttävä muoto +$1/2$ on parempi, koska se näyttää paremmalta pienemmässä tilassa. +\begin{example} +$1\frac{1}{2}$~hours +\begin{displaymath} +\frac{ x^{2} }{ k+1 }\qquad +x^{ \frac{2}{k+1} }\qquad +x^{ 1/2 } +\end{displaymath} +\end{example} + +Binomikertoimien tai vastaavien rakenteiden latomiseksi voidaan käyttää +\pai{amsmath}-makrojen komentoa \ci{binom}. + +\begin{example} +\begin{displaymath} +\binom{n}{k}\qquad\mathrm{C}_n^k +\end{displaymath} +\end{example} + +Binäärirelaatioita ajatellen voi olla hyvä, että symboleita voidaan +ladota päällekkäin. \ci{stackrel} sijoittaa ensimmäisessä +argumentissa annetun symbolin yläindeksin kokoisena jälkimmäisen +yläpuolelle. +\begin{example} +\begin{displaymath} +\int f_N(x) \stackrel{!}{=} 1 +\end{displaymath} +\end{example} + +\textbf{Integraali-operaattori}\index{integraali-operaattori} saadaan käskyllä +\ci{int}, \textbf{\wi{summa-operaattori}} käskyllä \ci{sum} ja \textbf{\wi{tulo-operaattori}} +käskyllä \ci{prod}. +Ylä- ja alarajat määritellään komennoilla \verb|^| ja \verb|_| kuten ylä- ja alaindeksit. +\footnote{\AmS-\LaTeX:ssa voidaan käyttää lisäksi monirivisiä ylä- ja alaindeksejä} +\begin{example} +\begin{displaymath} +\sum_{i=1}^{n} \qquad +\int_{0}^{\frac{\pi}{2}} \qquad +\end{displaymath} +\end{example} + +Mutkikkaiden kaavojen indeksien sijoitteluun \pai{amsmath} +tarjoaa kaksi työkalua: \ci{substack}-komennon ja \ei{subarray}-ympäristön: +\begin{example} +\begin{displaymath} +\sum_{\substack{0<i<n \\ 1<j<m}} + P(i,j) = +\sum_{\begin{subarray}{l} i\in I\\ + 1<j<m + \end{subarray}} Q(i,j) +\end{displaymath} +\end{example} + +\medskip + +\textbf{Sulkeille}\index{sulkeet} ja muille erottimille\index{erottimet} +on TeX:ssä kaikenlaisia symboleja (esim. $[\;\langle\;\|\;\updownarrow$). +Tavalliset ja hakasulkeet lisätään vastaavilla näppäimillä, kaarisulkeet +komennolla \verb|\{|. Kaikki muut eroittimet tehdään erityisillä komennoilla +(esim. \verb|\updownarrow|). Katso taulukosta~\ref{tab:delimiters}, +sivulta~\pageref{tab:delimiters} luetteloa saatavilla olevista erottimista. + +\begin{example} +\begin{displaymath} +{a,b,c}\neq\{a,b,c\} +\end{displaymath} +\end{example} + +Jos aloittavan erottimen eteen pannaan komento \ci{left} tai päättävän +erottimen eteen \ci{right}, \TeX{} määrittelee automaattisesti erottimen +oikean koon. On huomattava, että jokaiselle \ci{left}-komennolle pitää löytyä +vastaava \ci{right} ja että koko määritellään oikein vain, jos kummatkin +käskyt on kirjoitettu samalle riville. Mikäli oikealle puolelle ei haluta +mitään, voidaan ottaa käyttöön näkymätön '\ci{right.}'! + +\begin{example} +\begin{displaymath} +1 + \left( \frac{1}{ 1-x^{2} } + \right) ^3 +\end{displaymath} +\end{example} + +Joissain tapauksissa on tarpeen määrittää matemaattisen +erottimen\index{matemaattinen!erotin} oikea koko käsin. Se tehdään +panemalla useimpien erotinkomentojen eteen \ci{big}, \ci{Big}, +\ci{bigg} tai \ci{Bigg}.\footnote{Nämä komennot eivät toimi odotetusti, +mikäli tekstin kokoa on muutettu erityisillä käskyillä tai joko +\texttt{11pt}- tai \texttt{12pt}-optiota on käytetty. Tämän ongelman +ratkaisemiseksi voidaan käyttää makropaketteja \pai{exscale} tai +\pai{amsmath}.} + +\begin{example} +$\Big( (x+1) (x-1) \Big) ^{2}$\\ +$\big(\Big(\bigg(\Bigg($\quad +$\big\}\Big\}\bigg\}\Bigg\}$\quad +$\big\|\Big\|\bigg\|\Bigg\|$ +\end{example} + +Kaavaan voidaan lisätä \textbf{\wi{kolme pistettä}} useammalla käskyllä. +\ci{ldots} latoo pisteet perusviivalle, \ci{cdots} asettaa ne keskitetysti. +Tämän lisäksi käytössä ovat komennot \ci{vdots} pystysuorille ja \ci{ddots} +vinoille pisteille.\index{kolme pistettä!vaakasuorassa}\index{kolme pistettä!pystysuorassa} +\index{kolme pistettä!vinossa}\index{vaakasuorat!pisteet} Lisää esimerkkejä +löytyy osiosta~\ref{sec:vert}. + +\begin{example} +\begin{displaymath} +x_{1},\ldots,x_{n} \qquad +x_{1}+\cdots+x_{n} +\end{displaymath} +\end{example} + +\section{Välistys matematiikassa} + +\index{välistys matematiikassa} Mikäli \TeX:n määrittelemät välit kaavoissa +eivät tyydytä, niitä voidaan muuttaa lisäämällä erityisiä välistyskomentoja. +Pienille väleille on muutamia komentoja: \ci{,} $\frac{3}{18}\:\textrm{quad}$:n +välille (\demowidth{0.166em}), \ci{:} $\frac{4}{18}\:\textrm{quad}$:n välille +(\demowidth{0.222em}) ja \ci{;} $\frac{5}{18}\:\textrm{quad}$:n +välille (\demowidth{0.277em}). Komennolla lisätty välilyönti \verb*.\ . +lisää keskikokoisen välin ja \ci{quad} (\demowidth{1em}) ja +\ci{qquad} (\demowidth{2em}) lisäävät ison välin. \ci{quad}:n +koko riippuu käytössä olevan kirjasimen 'M'-kirjaimen leveydestä. +\verb|\!|\cih{"!}-komento tuottaa $-\frac{3}{18}\:\textrm{quad}$:n +(\demowidth{0.166em}) negatiivisen välin. + +\begin{example} +\newcommand{\ud}{\mathrm{d}} +\begin{displaymath} +\int\int_{D} g(x,y)\ud x \ud y +\end{displaymath} +sijaan tulee +\begin{displaymath} +\int\!\!\!\int_{D} g(x,y) + \, \ud x\, \ud y +\end{displaymath} +\end{example} +Huomaa, että differentiaalin 'd' ladotaan tavallisesti antiikvalla. + +\AmS-\LaTeX:ssa on toinen tapa välien säätämiseksi integraali-merkkien +välillä, nimittäin komennot \ci{iint}, \ci{iiint}, \ci{iiiint} ja \ci{idotsint}. +Kun \pai{amsmath}-makrot ovat käytössä, yllä oleva esimerkki voidaan +latoa näin: + +\begin{example} +\newcommand{\ud}{\mathrm{d}} +\begin{displaymath} +\iint_{D} \, \ud x \, \ud y +\end{displaymath} +\end{example} + +Katso lisätietoja tiedostosta testmath.tex (levitetään \AmS-\LaTeX:n mukana) tai +luvusta 8 kirjassa ''The LaTeX Companion''. + +\section{Vertikaalisesti tasattu materiaali} +\label{sec:vert} + +\textbf{Matriisien} latomiseksi käytetään \ei{array}-ympäristöä. Se +toimii samalla tavoin kuin \texttt{tabular}-ympäristö. Komentoa \verb|\\| +käytetään rivinvaihdon merkkinä. + +\begin{example} +\begin{displaymath} +\mathbf{X} = +\left( \begin{array}{ccc} +x_{11} & x_{12} & \ldots \\ +x_{21} & x_{22} & \ldots \\ +\vdots & \vdots & \ddots +\end{array} \right) +\end{displaymath} +\end{example} + +\ei{array}-ympäristöä voidaan käyttää myös latomaan ilmaisuja, joissa on +yksi iso rajoitin. Näkymättömästä \ci{right}-erottimesta käy \verb|.| (piste): + +\begin{example} +\begin{displaymath} +y = \left\{ \begin{array}{ll} + a & \textrm{if $d>c$}\\ + b+x & \textrm{aamulla}\\ + l & \textrm{pitkin päivää} + \end{array} \right. +\end{displaymath} +\end{example} + +Myös \ei{array}-ympäristössä voidaan piirtää viivoja samalla tavoin +kuin \verb|tabular|-ympäristössä, esim. matriisin sisällön jakamiseksi: +\begin{example} +\begin{displaymath} +\left(\begin{array}{c|c} + 1 & 2 \\ +\hline +3 & 4 +\end{array}\right) +\end{displaymath} +\end{example} + +Useamman rivin mittaisille kaavoille ja yhtälöille\index{yhtälöt} voidaan +\texttt{equation}:n sijasta käyttää ympäristöjä \ei{eqnarray} ja \verb|eqnarray*|. +\texttt{eqnarray}:ssa joka rivi saa yhtälön numeron. \verb|eqnarray*| ei numeroi +mitään. + +\texttt{eqnarray} ja \verb|eqnarray*| toimivat samoin kuin kolmisarakkeinen +taulukko, joka on muotoa \verb|{rcl}|, jossa keskimmäistä saraketta voidaan +käyttää yhtäsuuruusmerkkiin tai erisuuruusmerkkiin. Tai muuhun sopivaan +merkkiin. \verb|\\|-komento katkaisee rivin. + +\begin{example} +\begin{eqnarray} +f(x) & = & \cos x \\ +f'(x) & = & -\sin x \\ +\int_{0}^{x} f(y)dy & + = & \sin x +\end{eqnarray} +\end{example} + +\noindent Huomaa, että yhtäsuuruusmerkin ympärillä olevat välit ovat melko +suuret. Sitä voidaan vähentää asettamalla \verb|\setlength\arraycolsep{2pt}|, +kuten seuraavassa esimerkissä. + +\index{pitkät yhtälöt} \textbf{Pitkiä yhtälöitä} ei jaeta automaattisesti +sopiviin osiin. Kirjoittajan täytyy määritellä missä ne katkaistaan ja +miten paljon pitää sisentää. Kaksi yleisintä tapaa tehdä tämä esitellään +seuraavaksi. + +\begin{example} +{\setlength\arraycolsep{2pt} +\begin{eqnarray} +\sin x & = & x -\frac{x^{3}}{3!} + +\frac{x^{5}}{5!}-{} + \nonumber\\ + & & {}-\frac{x^{7}}{7!}+{}\cdots +\end{eqnarray}} +\end{example} +\pagebreak[1] + +\begin{example} +\begin{eqnarray} +\lefteqn{ \cos x = 1 + -\frac{x^{2}}{2!} +{} } + \nonumber\\ + & & {}+\frac{x^{4}}{4!} + -\frac{x^{6}}{6!}+{}\cdots +\end{eqnarray} +\end{example} + +%\enlargethispage{\baselineskip} +\noindent \ci{nonumber}-komento estää \LaTeX:ia numeroimasta tätä +yhtälöä. + +Voi olla vaikeaa saada pystyyn tasattuja yhtälöitä näkymään oikein +näillä keinoin; \pai{amsmath}-makropaketti tarjoaa tehokkaampia +tapoja (katso ympäristöjä \verb|align|, \verb|flalign|, \verb|gather|, +\verb|multline| ja \verb|split|). + +\section{Haamut} + +Haamuja ei voi nähdä, mutta ne kuitekin askarruttavat monien mieltä. +\LaTeX{} ei eroa tässä suhteessa. Haamuja voidaan käyttää mielenkiintoisten +välistystemppujen tekemiseen. + +Kun tekstiä tasataan pystysuunnassa \verb|^|- ja \verb|_|-komentoja käytettäessä, +\LaTeX{} on joskus vähän liiankin avulias. \ci{phantom}-komennolla voidaan +varata tilaa merkeille, jotka eivät tule näkyviin lopputuloksessa. Parasta +kun vilkaistaan seuraavaa esimerkkiä: + +\begin{example} +\begin{displaymath} +{}^{12}_{\phantom{1}6}\textrm{C} +\qquad \textrm{versus} \qquad +{}^{12}_{6}\textrm{C} +\end{displaymath} +\end{example} +\begin{example} +\begin{displaymath} +\Gamma_{ij}^{\phantom{ij}k} +\qquad \textrm{versus} \qquad +\Gamma_{ij}^{k} +\end{displaymath} +\end{example} + +\section{Matematiikan kirjasinkoko}\label{sec:fontsz} + +\index{matematiikan kirjasinkoko} Matematiikkatilassa \TeX{} valitsee +kirjasimen koon kontekstin mukaan. Jos osa yhtälöstä halutaan latoa +antiikvalla, ei pidä käyttää \verb|\textrm|-komentoa, sillä kirjasimen +koon vaihtava mekanismi ei toimi, koska \verb|\textrm| siirtyy väliaikaisesti +takaisin tekstitilaan. Koonvaihtomekanismin toiminnan kannalta pitäisi käyttää +\verb|\mathrm|-käskyä. On kuitenkin huomattava, että \ci{mathrm} toimii +ainoastaan lyhyillä kohteilla. Välilyönnit ja kirjainten aksentit +eivät edelleenkään toimi.\footnote{\AmS-\LaTeX:ssa \ci{textrm}-komento +toimii koon vaihdon kanssa.} + +\begin{example} +\begin{equation} +2^{\textrm{nd}} \quad +2^{\mathrm{nd}} +\end{equation} +\end{example} + +Toisinaan \LaTeX:lle täytyy kuitenkin kertoa kirjasimen oikea koko. +Matematiikkatilassa kirjasinkoko asetetaan neljällä komennolla: +\begin{flushleft} +\ci{displaystyle}~($\displaystyle 123$), + \ci{textstyle}~($\textstyle 123$), +\ci{scriptstyle}~($\scriptstyle 123$) ja +\ci{scriptscriptstyle}~($\scriptscriptstyle 123$). +\end{flushleft} + +Tyylin vaihtaminen vaikuttaa myös rajoittimien esittämiseen. + +\begin{example} +\begin{displaymath} +\mathop{\mathrm{corr}}(X,Y)= + \frac{\displaystyle + \sum_{i=1}^n(x_i-\overline x) + (y_i-\overline y)} + {\displaystyle\biggl[ + \sum_{i=1}^n(x_i-\overline x)^2 +\sum_{i=1}^n(y_i-\overline y)^2 +\biggr]^{1/2}} +\end{displaymath} +\end{example} +% This is not a math accent, and no maths book would be set this way. +% mathop gets the spacing right. + +\noindent Tämä on eräs niistä esimerkeistä, joissa tarvitaan suurempia +sulkeita kuin \verb|\left[ \right]|:n tarjoamat. + +\section{Teoreemat, lait, \ldots} + +Matemaattisia dokumentteja kirjoitettaessa tarvitaan todennäköisesti +keino latoa lemmoja, määritelmiä, aksioomeja ja vastaavia rakenteita. +\LaTeX:ssa tätä tukee komento +\begin{lscommand} +\ci{newtheorem}\verb|{|\emph{nimi}\verb|}[|\emph{laskuri}\verb|]{|% + \emph{teksti}\verb|}[|\emph{osio}\verb|]| +\end{lscommand} +Argumentti \emph{nimi} on lyhyt tunniste teoreemalle. +\emph{teksti}-argumentilla, määritellään teoreeman varsinainen nimi, joka +tulostuu lopulliseen dokumenttiin. + +Hakasulkeissa olevat argumentit ovat vaihtoehtoisia. Niitä kumpaakin +käytetään määrittelemään teoreemassa käytettyä numerointia. +\emph{laskuri}"-argumentilla määritellään aikaisemmin määritellyn +teoreeman \emph{nimi}. Uusi teoreema numeroidaan sitten saman sarjan +mukaan. \emph{osio}-argumentilla voidaan määritellä osiointiyksikkö, +minkä mukaan teoreema numeroidaan. + +Kun dokumentin esittelyosassa on suoritettu \ci{newtheorem}-komento, +voidaan dokumentissa käyttää seuraavaa käskyä. + +\begin{code} +\verb|\begin{|\emph{nimi}\verb|}[|\emph{teksti}\verb|]|\\ +Tämä on mielenkiintoinen teoreemani\\ +\verb|\end{|\emph{nimi}\verb|}| +\end{code} + +Tämä teoriapuolesta. Seuraavat esimerkit toivottavasti poistavat +viimeisetkin epäilyt ja tekevät selväksi, että \verb|\newtheorem|-ympäristö +on ymmärtämisen kannalta liian mutkikas. + +\begin{example} +% määritelmiä dokumentin +% esittelyosaan +\newtheorem{laki}{Laki} +\newtheorem{jury}[laki]{Jury} +%itse dokumentti +\begin{laki} \label{laki:box} +Alä piiloudu todistajanaitioon +\end{laki} +\begin{jury}[Kaksitoista] +Se voisit olla sinä! Siispä varo +ja katso lakia \ref{laki:box} +\end{jury} +\begin{laki}Ei, ei, ei, ei\end{laki} +\end{example} + +Jury-teoreema käyttää samaa laskuria kuin Laki-teoreema. Niinpä +se saa numeroinnin samasta sarjasta kuin muut ''Lait''. Hakasulkeissa +olevaa argumenttia käytetään määrittelemään teoreeman otsikkoa tai +vastaavaa. + +\begin{example} +\flushleft +\newtheorem{mur}{Murphy}[section] +\begin{mur} +Jos on kaksi tai useampi +tapaa tehdä jotain, ja yksi +näistä tavoista voi johtaa +katastrofiin, niin joku +käyttää sitä tapaa.\end{mur} +\end{example} + +Murphyn teoreema saa numeron joka on yhteydessä osion numeroon. Tässä +voidaan käyttää myös muita yksiköitä, esimerkiksi lukua tai alaosiota. + +\section{Lihavoidut symbolit} +\index{lihavoidut symbolit} + +\LaTeX:ssa on hyvin vaikeaa saada symboleja lihavoitua; tämä on +tehty ilmeisesti tarkoituksella, sillä amatöörilatojilla on tapana +käyttää niitä liikaa. Kirjasimenvaihtokäsky \verb|\mathbf| antaa +lihavoituja kirjaimia, mutta nämä ovat pystyjä antiikvakirjaimia, kun taas +matemaattiset symbolit ladotaan normaalisti kursiivilla. On olemassa +myös \ci{boldmath}-komento, mutta \emph{tätä voidaan käyttää vain +matematiikkatilan ulkopuolella}. Se toimii myös symboleille. + +\begin{example} +\begin{displaymath} +\mu, M \qquad \mathbf{M} \qquad +\mbox{\boldmath $\mu, M$} +\end{displaymath} +\end{example} + +\noindent Huomaa, että myös pilkku on lihavoitu, mikä voi olla tarkoituskin. + +\pai{amsbsy}-makrot (jotka kuuluvat osana \pai{amsmath}-pakettiin) tekevät +tästä helpomman tehtävän, sillä siinä on mukana komento \ci{boldsymbol}. + +\ifx\boldsymbol\undefined\else +\begin{example} +\begin{displaymath} +\mu, M \qquad +\boldsymbol{\mu}, \boldsymbol{M} +\end{displaymath} +\end{example} +\fi + + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "lyhyt2e" +%%% End:
\ No newline at end of file diff --git a/Master/texmf-doc/doc/finnish/lshort-finnish/src/mylayout.sty b/Master/texmf-doc/doc/finnish/lshort-finnish/src/mylayout.sty new file mode 100644 index 00000000000..b7a1ff57727 --- /dev/null +++ b/Master/texmf-doc/doc/finnish/lshort-finnish/src/mylayout.sty @@ -0,0 +1,361 @@ +%% +%% This is file `mylayout.sty', generated +%% on <1995/7/3> with the docstrip utility (2.2i). +%% +%% The original source files were: +%% +%% layout.dtx (with options: `package') +%% +%% IMPORTANT NOTICE: +%% This file is part of the `tools' bundle +%% in the LaTeX2e distribution. +%% +%% You are not allowed to distribute this file. +%% For distribution of the original source see +%% the copyright notice in the source file, and +%% in the file readme.txt distributed with the +%% tools bundle. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{mylayout} + [1995/06/25 v1.1i + Show layout parameters] +\DeclareOption{dutch}{% + \def\Headertext{Kopregel} + \def\Bodytext{Broodtekst} + \def\Footertext{Voetregel} + \def\MarginNotestext{Marge\\Notities} + \def\oneinchtext{een inch} + \def\notshown{niet getoond} + } +\DeclareOption{english}{% + \def\Headertext{Header} + \def\Bodytext{Body} + \def\Footertext{Footer} + \def\MarginNotestext{Margin\\Notes} + \def\oneinchtext{one inch} + \def\notshown{not shown} + } +\DeclareOption{french}{% + \def\Headertext{Ent\^{e}te} + \def\Bodytext{Corps} + \def\Footertext{Pied de page} + \def\MarginNotestext{Marge\\Notes} + \def\oneinchtext{un pouce} + \def\notshown{non affich\'{e}} + } +\DeclareOption{francais}{\ExecuteOptions{french}} +\DeclareOption{verbose}{\let\type\typeout} +\DeclareOption{silent}{\let\type\@gobble} +\def\lay@value{} +\DeclareOption{integers}{% + \renewcommand*{\lay@value}[2]{% + \expandafter\number\csname #1@#2\endcsname pt}} +\DeclareOption{reals}{% + \renewcommand*{\lay@value}[2]{\the\csname #2\endcsname}} +\ExecuteOptions{english,silent,integers} +\ProcessOptions +\@ifundefined{bs}{\newcommand\bs{\char '134 }}% + {\renewcommand\bs{\char '134 }} +\def\ConvertToCount#1#2{% + #1=#2 + \divide #1 by 65536} +\def\SetToHalf#1#2{#1=#2\relax\divide#1by\tw@} +\def\SetToQuart#1#2{#1=#2\relax\divide#1by4} +\def\Identify#1{% + \put(\PositionX,\PositionY){\circle{20}} + \put(\PositionX,\PositionY){\makebox(0,0){\tiny #1}} +} +\def\InsideHArrow#1{{% + \ArrowLength = #1 + \divide\ArrowLength by \tw@ + \advance\ArrowLength by -10 + \advance\PositionX by -10 + \ifnum\ArrowLength<\z@ + \put(\PositionX,\PositionY){\vector(1,0){-\ArrowLength}} + \advance\PositionX by 20 + \put(\PositionX,\PositionY){\vector(-1,0){-\ArrowLength}} + \else + \put(\PositionX,\PositionY){\vector(-1,0){\ArrowLength}} + \advance\PositionX by 20 + \put(\PositionX,\PositionY){\vector(+1,0){\ArrowLength}} + \fi +}} +\def\InsideVArrow#1{{% + \ArrowLength = #1 + \divide\ArrowLength by \tw@ + \advance\ArrowLength by -10 + \advance\PositionY by -10 + \put(\PositionX,\PositionY){\vector(0,-1){\ArrowLength}} + \advance\PositionY by 20 + \put(\PositionX,\PositionY){\vector(0,+1){\ArrowLength}} +}} +\def\OutsideHArrow#1#2#3{{% + \PositionX = #1 + \advance\PositionX by #3 + \put(\PositionX,\PositionY){\vector(-1,0){#3}} + \PositionX = #1 \advance\PositionX-#2 + \advance\PositionX by -#3 + \put(\PositionX,\PositionY){\vector(+1,0){#3}} +}} +\def\OutsideVArrow#1#2#3#4{{% + \PositionY = #1 + \advance\PositionY by -#3 + \put(\PositionX,\PositionY){\vector(0,+1){#3}} + \PositionY = #1 + \advance\PositionY#2 + \advance\PositionY#4 + \put(\PositionX,\PositionY){\vector(0,-1){#4}} +}} +\def\Show#1#2{\bs #2 = \lay@value{#1}{#2}} +\def\Type#1#2{% + \type{#2 = \lay@value{#1}{#2}}} +\newcount\oneinch +\oneinch=72 +\newcount\cnt@paperwidth +\newcount\cnt@paperheight +\ConvertToCount\cnt@paperwidth\paperwidth +\ConvertToCount\cnt@paperheight\paperheight +\newcount\cnt@hoffset +\newcount\cnt@voffset +\ConvertToCount\cnt@hoffset\hoffset +\ConvertToCount\cnt@voffset\voffset +\newcount\cnt@textheight +\newcount\cnt@textwidth +\ConvertToCount\cnt@textheight\textheight +\ConvertToCount\cnt@textwidth\textwidth +\newcount\cnt@topmargin +\newcount\cnt@oddsidemargin +\newcount\cnt@evensidemargin +\ConvertToCount\cnt@topmargin\topmargin +\ConvertToCount\cnt@oddsidemargin\oddsidemargin +\ConvertToCount\cnt@evensidemargin\evensidemargin +\newcount\cnt@headheight +\newcount\cnt@headsep +\ConvertToCount\cnt@headheight\headheight +\ConvertToCount\cnt@headsep\headsep +\newcount\cnt@marginparsep +\newcount\cnt@marginparwidth +\newcount\cnt@marginparpush +\ConvertToCount\cnt@marginparsep\marginparsep +\ConvertToCount\cnt@marginparwidth\marginparwidth +\ConvertToCount\cnt@marginparpush\marginparpush +\newcount\cnt@footskip +\ConvertToCount\cnt@footskip\footskip +\newcount\fheight +\fheight=12 +\newcount\ref@top +\ref@top=\cnt@paperheight \advance\ref@top by -\oneinch +\newcount\ref@hoffset +\newcount\ref@voffset +\ref@hoffset=\cnt@hoffset \advance\cnt@hoffset by \oneinch +\ref@voffset=\cnt@voffset +\cnt@voffset=\ref@top +\advance\cnt@voffset by -\ref@voffset +\newcount\ref@head +\ref@head=\ref@top + \advance\ref@head by -\ref@voffset + \advance\ref@head by -\cnt@topmargin + \advance\ref@head by -\cnt@headheight +\newcount\ref@body +\ref@body=\ref@head + \advance\ref@body by -\cnt@headsep + \advance\ref@body by -\cnt@textheight +\newcount\ref@foot + \ref@foot=\ref@body + \advance\ref@foot by -\cnt@footskip +\newcount\ref@margin +\newcount\ref@marginwidth +\newcount\ref@marginpar +\newcount\Interval +\newcount\ExtraYPos +\newcount\PositionX +\newcount\PositionY +\newcount\ArrowLength +\newcommand\layout{% + \@layout + \if@twoside + \@layout + \fi} +\newcommand\@layout{% + \thispagestyle{empty} + \if@twoside + \ifodd\count\z@ + \typeout{Two-sided document style, odd page.} + \ref@marginwidth=\cnt@oddsidemargin + \ref@marginpar=\oneinch + \advance\ref@marginpar by \ref@hoffset + \advance\ref@marginpar by \cnt@oddsidemargin + \ref@margin\ref@marginpar + \if@reversemargin + \advance\ref@marginpar by -\cnt@marginparsep + \advance\ref@marginpar by -\cnt@marginparwidth + \else + \advance\ref@marginpar by \cnt@textwidth + \advance\ref@marginpar by \cnt@marginparsep + \fi + \else + \typeout{Two-sided document style, even page.} + \ref@marginwidth=\cnt@evensidemargin + \ref@marginpar=\oneinch + \advance\ref@marginpar by \ref@hoffset + \advance\ref@marginpar by \cnt@evensidemargin + \ref@margin\ref@marginpar + \if@reversemargin + \advance\ref@marginpar by \cnt@textwidth + \advance\ref@marginpar by \cnt@marginparsep + \else + \advance\ref@marginpar by -\cnt@marginparsep + \advance\ref@marginpar by -\cnt@marginparwidth + \fi + \fi + \else + \typeout{One-sided document style.} + \ref@marginwidth=\cnt@oddsidemargin + \ref@marginpar=\oneinch + \advance\ref@marginpar by \ref@hoffset + \advance\ref@marginpar by \cnt@oddsidemargin + \ref@margin\ref@marginpar + \if@reversemargin + \advance\ref@marginpar by -\cnt@marginparsep + \advance\ref@marginpar by -\cnt@marginparwidth + \else + \advance\ref@marginpar by \cnt@textwidth + \advance\ref@marginpar by \cnt@marginparsep + \fi + \fi + \setlength{\unitlength}{.5pt} + \begin{picture}(\cnt@paperwidth,\cnt@paperheight) + \centering + \thicklines + \put(0,0){\framebox(\cnt@paperwidth,\cnt@paperheight){\mbox{}}} + \put(0,\cnt@voffset){\dashbox{10}(\cnt@paperwidth,0){\mbox{}}} + \put(\cnt@hoffset,0){\dashbox{10}(0,\cnt@paperheight){\mbox{}}} + \put(\ref@margin,\ref@head){% + \framebox(\cnt@textwidth,\cnt@headheight)% + {\footnotesize\Headertext}} + \put(\ref@margin,\ref@body){% + \framebox(\cnt@textwidth,\cnt@textheight){\Bodytext}} + \put(\ref@margin,\ref@foot){% + \framebox(\cnt@textwidth,\fheight){\footnotesize\Footertext}} + \put(\ref@marginpar,\ref@body){% + \framebox(\cnt@marginparwidth,\cnt@textheight)% + {\footnotesize\shortstack{\MarginNotestext}}} + \thinlines + \SetToHalf\PositionX\cnt@textwidth + \advance\PositionX by \ref@margin + \PositionY = \ref@body + \advance\PositionY by 50 + \Identify{8} + \InsideHArrow\cnt@textwidth + \SetToHalf\PositionY\cnt@textheight + \advance\PositionY by \ref@body + \PositionX = \cnt@textwidth + \divide\PositionX by 5 + \multiply \PositionX by 4 + \advance\PositionX by \ref@margin + \Identify{7} + \InsideVArrow\cnt@textheight + \PositionY = \ref@foot + \SetToHalf\PositionX\cnt@hoffset + \Identify{1} + \InsideHArrow\cnt@hoffset + \SetToQuart\PositionY\cnt@textheight + \advance\PositionY by \ref@body + \OutsideHArrow\ref@margin\ref@marginwidth{20} + \PositionX = \cnt@hoffset + \advance\PositionX by -30 + \Identify{3} + \SetToQuart\PositionY\cnt@textheight + \advance\PositionY by \ref@body + \advance\PositionY by 30 + \SetToHalf\PositionX\cnt@marginparwidth + \advance\PositionX by \ref@marginpar + \Identify{10} + \InsideHArrow\cnt@marginparwidth + \advance\PositionY by 30 + \if@twoside + \ifodd\count\z@ + \OutsideHArrow\ref@marginpar\cnt@marginparsep{20} + \PositionX = \ref@marginpar + \else + \OutsideHArrow\ref@margin\cnt@marginparsep{20} + \PositionX = \ref@margin + \fi + \else + \OutsideHArrow\ref@marginpar\cnt@marginparsep{20} + \PositionX = \ref@marginpar + \fi + \advance\PositionX by 30 + \Identify{9} + \PositionX = \cnt@textwidth + \divide\PositionX by 8 + \advance\PositionX by \ref@margin + \OutsideVArrow\ref@foot\cnt@footskip{20}{20} + \PositionY = \ref@foot + \advance\PositionY by -30 + \Identify{11} + \PositionX = \cnt@paperwidth + \advance\PositionX by -50 + \PositionY = \cnt@paperheight + \ExtraYPos = \PositionY + \advance\ExtraYPos by -\cnt@voffset + \advance\PositionY by \cnt@voffset + \divide\PositionY by \tw@ + \Identify{2} + \InsideVArrow\ExtraYPos + \Interval = \cnt@textwidth + \divide\Interval by 8 + \PositionX = \ref@margin + \advance\PositionX by \Interval + \Identify{4} + \ExtraYPos = \ref@head + \advance\ExtraYPos\cnt@headheight + \ArrowLength = \PositionY + \advance\ArrowLength-\ExtraYPos + \advance\ArrowLength-\cnt@topmargin + \advance\ArrowLength-10% + \OutsideVArrow\ExtraYPos\cnt@topmargin{20}{\ArrowLength} + \advance\PositionX by \Interval + \Identify{5} + \advance\ArrowLength\cnt@topmargin + \OutsideVArrow\ref@head\cnt@headheight{20}{\ArrowLength} + \advance\PositionX by \Interval + \Identify{6} + \advance\ArrowLength\cnt@headheight + \ExtraYPos=\ref@body + \advance\ExtraYPos\cnt@textheight + \OutsideVArrow\ExtraYPos\cnt@headsep{20}{\ArrowLength} + \end{picture} + + \medskip + \vtop to 0pt{% + \@minipagerestore\footnotesize\ttfamily + \begin{tabular}{@{}rl@{\hspace{20pt}}rl} + 1 & \oneinchtext\ + \bs\texttt{hoffset} + & 2 & \oneinchtext\ + \bs\texttt{voffset} \\ + 3 & \if@twoside + \ifodd\count\z@ \Show{cnt}{oddsidemargin} + \else \Show{cnt}{evensidemargin} + \fi + \else + \Show{cnt}{oddsidemargin} + \fi & 4 & \Show{cnt}{topmargin} \\ + 5 & \Show{cnt}{headheight} & 6 & \Show{cnt}{headsep} \\ + 7 & \Show{cnt}{textheight} & 8 & \Show{cnt}{textwidth} \\ + 9 & \Show{cnt}{marginparsep}&10& \Show{cnt}{marginparwidth} \\ + 11& \Show{cnt}{footskip} & & \Show{cnt}{marginparpush} + \rlap{(\notshown)}\\ + & \Show{ref}{hoffset} & & \Show{ref}{voffset} \\ + & \Show{cnt}{paperwidth} & & \Show{cnt}{paperheight} \\ + + \end{tabular}\vss} + \Type{ref}{hoffset} + \Type{ref}{voffset} + \Type{cnt}{textheight} + \Type{cnt}{textwidth} + \newpage +} +\endinput +%% +%% End of file `layout.sty'. diff --git a/Master/texmf-doc/doc/finnish/lshort-finnish/src/otsikko.tex b/Master/texmf-doc/doc/finnish/lshort-finnish/src/otsikko.tex new file mode 100644 index 00000000000..a2e170a4584 --- /dev/null +++ b/Master/texmf-doc/doc/finnish/lshort-finnish/src/otsikko.tex @@ -0,0 +1,67 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: The title page +% $Id: otsikko.tex,v 1.1.1.1 2002/11/11 15:36:54 hellgren Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\ifx\pdfoutput\undefined % We're not running pdftex +\else +\pdfbookmark{Title Page}{title} +\fi +\newlength{\centeroffset} +\setlength{\centeroffset}{-0.5\oddsidemargin} +\addtolength{\centeroffset}{0.5\evensidemargin} +%\addtolength{\textwidth}{-\centeroffset} +\thispagestyle{empty} +\vspace*{\stretch{1}} +\noindent\hspace*{\centeroffset}\makebox[0pt][l]{\begin{minipage}{\textwidth} +\flushright +{\Huge\bfseries Pitkänpuoleinen johdanto\\ +\LaTeXe:n käyttöön + +} +\noindent\rule[-1ex]{\textwidth}{5pt}\\[2.5ex] +\hfill\emph{\Large Eli opi \LaTeXe{} \pageref{verylast} minuutissa} +\end{minipage}} + +\vspace{\stretch{1}} +\noindent\hspace*{\centeroffset}\makebox[0pt][l]{\begin{minipage}{\textwidth} +\flushright +{\bfseries +Kirjoittaneet Tobias Oetiker\\[1.5ex] +Hubert Partl, Irene Hyna ja Elisabeth Schlegl\\[1.5ex] +Suomeksi sovittanut Timo Hellgren\\[3ex]} +Versio~4.17fi, lokakuu 2005 +\end{minipage}} + +%\addtolength{\textwidth}{\centeroffset} +\vspace{\stretch{2}} + + +\pagebreak +\begin{small} + Copyright \copyright 1995-2002 Tobias Oetiker and all the Contributors to LShort. + The Finnish edition Copyright \copyright 2005 Timo Hellgren + All rights reserved. + + Tämä dokumentti on vapaassa levityksessä; sitä voidaan levittää ja/tai muuttaa + Free Software Foundationin julkaiseman GNU General Public Licensen, + joko lisenssin version 2 tai (tarvittaessa) sitä myöhemmän version, + ehtojen mukaan. + + Tätä dokumenttia levitetään toivossa, että se olisi hyödyksi, mutta + ILMAN MITÄÄN TAKUITA. Katso lisätietoja GNU General Public Licensestä. + + Sinun olisi pitänyt saada kopio GNU General Public Licensestä tämän + dokumentin mukana; sitä voidaan myös pyytää kirjallisesti osoitteesta + Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +\end{small} + + +\endinput + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "lyhyt2e" +%%% End: + diff --git a/Master/texmf-doc/doc/finnish/lshort-finnish/src/symbolit.tex b/Master/texmf-doc/doc/finnish/lshort-finnish/src/symbolit.tex new file mode 100644 index 00000000000..85ff14b46d3 --- /dev/null +++ b/Master/texmf-doc/doc/finnish/lshort-finnish/src/symbolit.tex @@ -0,0 +1,343 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: TeX and LaTeX and AMS symbols for Maths +% $Id: symbolit.tex,v 1.2 2004/03/30 08:05:09 hellgren Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + +\section{Matemaattisten symbolien lista} \label{symbols} + +Seuraavista taulukoista löytyvät kaikki \emph{matematiikkatilassa} +normaalisti saatavilla olevat symbolit. + +% +% Conditional Text in case the AMS Fonts are installed +% +Jotta taulukoissa~\ref{AMSD}--\ref{AMSNBR},\footnote{Nämä +taulukot on otettu David Carlislen tiedostosta \texttt{symbols.tex}, jota on muutettu +Josef Tkadlecin ehdotusten mukaisesti.} listattuja symboleja voidaan +käyttää on dokumentin esittelyosassa ladattava makropakkaus \pai{amssymb} +ja AMS:n matematiikkakirjasinten on oltava asennettuina järjestelmään. +Mikäli AMS:n makroja ja kirjasimia ei ole asennettu, katso\\ +\CTANref|macros/latex/packages/amslatex|. Vielä tätäkin täydellisempi +lista löytyy osoitteesta \CTANref|info/symbols/comprehensive|. + +\begin{table}[!h] +\caption{Matematiikkatilan aksentit} \label{mathacc} +\begin{symbols}{*4{cl}} +\W{\hat}{a} & \W{\check}{a} & \W{\tilde}{a} & \W{\acute}{a} \\ +\W{\grave}{a} & \W{\dot}{a} & \W{\ddot}{a} & \W{\breve}{a} \\ +\W{\bar}{a} &\W{\vec}{a} &\W{\widehat}{A}&\W{\widetilde}{A}\\ +\end{symbols} +\end{table} + +\begin{table}[!h] +\caption{Pienet kreikkalaiset kirjaimet} +\begin{symbols}{*4{cl}} + \X{\alpha} & \X{\theta} & \X{o} & \X{\upsilon} \\ + \X{\beta} & \X{\vartheta} & \X{\pi} & \X{\phi} \\ + \X{\gamma} & \X{\iota} & \X{\varpi} & \X{\varphi} \\ + \X{\delta} & \X{\kappa} & \X{\rho} & \X{\chi} \\ + \X{\epsilon} & \X{\lambda} & \X{\varrho} & \X{\psi} \\ + \X{\varepsilon}& \X{\mu} & \X{\sigma} & \X{\omega} \\ + \X{\zeta} & \X{\nu} & \X{\varsigma} & & \\ + \X{\eta} & \X{\xi} & \X{\tau} +\end{symbols} +\end{table} + +\begin{table}[!h] +\caption{Isot kreikkalaiset kirjaimet} +\begin{symbols}{*4{cl}} + \X{\Gamma} & \X{\Lambda} & \X{\Sigma} & \X{\Psi} \\ + \X{\Delta} & \X{\Xi} & \X{\Upsilon} & \X{\Omega} \\ + \X{\Theta} & \X{\Pi} & \X{\Phi} +\end{symbols} +\end{table} +\clearpage + +\begin{table}[!tbp] +\caption{Binäärirelaatiot} +\bigskip +Vastaavat negaatiot saadaan lisäämällä \ci{not}-komento symbolin +eteen. +\begin{symbols}{*3{cl}} + \X{<} & \X{>} & \X{=} \\ + \X{\leq}or \verb|\le| & \X{\geq}or \verb|\ge| & \X{\equiv} \\ + \X{\ll} & \X{\gg} & \X{\doteq} \\ + \X{\prec} & \X{\succ} & \X{\sim} \\ + \X{\preceq} & \X{\succeq} & \X{\simeq} \\ + \X{\subset} & \X{\supset} & \X{\approx} \\ + \X{\subseteq} & \X{\supseteq} & \X{\cong} \\ + \X{\sqsubset}$^a$ & \X{\sqsupset}$^a$ & \X{\Join}$^a$ \\ + \X{\sqsubseteq} & \X{\sqsupseteq} & \X{\bowtie} \\ + \X{\in} & \X{\ni}, \verb|\owns| & \X{\propto} \\ + \X{\vdash} & \X{\dashv} & \X{\models} \\ + \X{\mid} & \X{\parallel} & \X{\perp} \\ + \X{\smile} & \X{\frown} & \X{\asymp} \\ + \X{:} & \X{\notin} & \X{\neq}or \verb|\ne| +\end{symbols} +\centerline{\footnotesize $^a$Käytä \textsf{latexsym}-pakkausta tämän symbolin +saamiseksi} +\end{table} + +\begin{table}[!tbp] +\caption{Binäärioperaattorit} +\begin{symbols}{*3{cl}} + \X{+} & \X{-} & & \\ + \X{\pm} & \X{\mp} & \X{\triangleleft} \\ + \X{\cdot} & \X{\div} & \X{\triangleright}\\ + \X{\times} & \X{\setminus} & \X{\star} \\ + \X{\cup} & \X{\cap} & \X{\ast} \\ + \X{\sqcup} & \X{\sqcap} & \X{\circ} \\ + \X{\vee}, \verb|\lor| & \X{\wedge}, \verb|\land| & \X{\bullet} \\ + \X{\oplus} & \X{\ominus} & \X{\diamond} \\ + \X{\odot} & \X{\oslash} & \X{\uplus} \\ + \X{\otimes} & \X{\bigcirc} & \X{\amalg} \\ + \X{\bigtriangleup} &\X{\bigtriangledown}& \X{\dagger} \\ + \X{\lhd}$^a$ & \X{\rhd}$^a$ & \X{\ddagger} \\ + \X{\unlhd}$^a$ & \X{\unrhd}$^a$ & \X{\wr} +\end{symbols} + +\end{table} + +\begin{table}[!tbp] +\caption{ISOT operaattorit} +\begin{symbols}{*4{cl}} + \X{\sum} & \X{\bigcup} & \X{\bigvee} & \X{\bigoplus}\\ + \X{\prod} & \X{\bigcap} & \X{\bigwedge} &\X{\bigotimes}\\ + \X{\coprod} & \X{\bigsqcup} & & & \X{\bigodot} \\ + \X{\int} & \X{\oint} & & & \X{\biguplus} +\end{symbols} + +\end{table} + + +\begin{table}[!tbp] +\caption{Nuolet} +\begin{symbols}{*3{cl}} + \X{\leftarrow}or \verb|\gets|& \X{\longleftarrow} & \X{\uparrow} \\ + \X{\rightarrow}or \verb|\to|& \X{\longrightarrow} & \X{\downarrow} \\ + \X{\leftrightarrow} & \X{\longleftrightarrow}& \X{\updownarrow} \\ + \X{\Leftarrow} & \X{\Longleftarrow} & \X{\Uparrow} \\ + \X{\Rightarrow} & \X{\Longrightarrow} & \X{\Downarrow} \\ + \X{\Leftrightarrow} & \X{\Longleftrightarrow}& \X{\Updownarrow} \\ + \X{\mapsto} & \X{\longmapsto} & \X{\nearrow} \\ + \X{\hookleftarrow} & \X{\hookrightarrow} & \X{\searrow} \\ + \X{\leftharpoonup} & \X{\rightharpoonup} & \X{\swarrow} \\ + \X{\leftharpoondown} & \X{\rightharpoondown} & \X{\nwarrow} \\ + \X{\rightleftharpoons} & \X{\iff}(bigger spaces)& \X{\leadsto}$^a$ + +\end{symbols} +\centerline{\footnotesize $^a$Käytä \textsf{latexsym}-pakkausta tämän symbolin +saamiseksi} +\end{table} + +\begin{table}[!tbp] +\caption{Erottimet}\label{tab:delimiters} +\begin{symbols}{*4{cl}} + \X{(} & \X{)} & \X{\uparrow} & \X{\Uparrow} \\ + \X{[}or \verb|\lbrack| & \X{]}or \verb|\rbrack| & \X{\downarrow} & \X{\Downarrow} \\ + \X{\{}or \verb|\lbrace| & \X{\}}or \verb|\rbrace| & \X{\updownarrow} & \X{\Updownarrow}\\ + \X{\langle} & \X{\rangle} & \X{|}or \verb|\vert| &\X{\|}or \verb|\Vert|\\ + \X{\lfloor} & \X{\rfloor} & \X{\lceil} & \X{\rceil} \\ + \X{/} & \X{\backslash} & &. (dual. tyhjä) +\end{symbols} +\end{table} + +\begin{table}[!tbp] +\caption{Isot erottimet} +\begin{symbols}{*4{cl}} + \Y{\lgroup} & \Y{\rgroup} & \Y{\lmoustache} & \Y{\rmoustache} \\ + \Y{\arrowvert} & \Y{\Arrowvert} & \Y{\bracevert} +\end{symbols} +\end{table} + + +\begin{table}[!tbp] +\caption{Sekalaisia symboleja} +\begin{symbols}{*4{cl}} + \X{\dots} & \X{\cdots} & \X{\vdots} & \X{\ddots} \\ + \X{\hbar} & \X{\imath} & \X{\jmath} & \X{\ell} \\ + \X{\Re} & \X{\Im} & \X{\aleph} & \X{\wp} \\ + \X{\forall} & \X{\exists} & \X{\mho}$^a$ & \X{\partial} \\ + \X{'} & \X{\prime} & \X{\emptyset} & \X{\infty} \\ + \X{\nabla} & \X{\triangle} & \X{\Box}$^a$ & \X{\Diamond}$^a$ \\ + \X{\bot} & \X{\top} & \X{\angle} & \X{\surd} \\ +\X{\diamondsuit} & \X{\heartsuit} & \X{\clubsuit} & \X{\spadesuit} \\ + \X{\neg}or \verb|\lnot| & \X{\flat} & \X{\natural} & \X{\sharp} + +\end{symbols} +\centerline{\footnotesize $^a$Käytä \textsf{latexsym}-pakkausta tämän +symbolin saamiseksi} +\end{table} + +\begin{table}[!tbp] +\caption{Ei-matemaattisia symboleja} +\bigskip +Näitä symboleja voidaan käyttää myös tekstitilassa. +\begin{symbols}{*4{cl}} +\SC{\dag} & \SC{\S} & \SC{\copyright} & \SC{\textregistered} \\ +\SC{\ddag} & \SC{\P} & \SC{\pounds} & \SC{\%} \\ +\end{symbols} +\end{table} + +% +% +% If the AMS Stuff is not available, we drop out right here :-) +% + +\begin{table}[!tbp] +\caption{AMS:n rajoittimet}\label{AMSD} +\bigskip +\begin{symbols}{*4{cl}} +\X{\ulcorner}&\X{\urcorner}&\X{\llcorner}&\X{\lrcorner}\\ +\X{\lvert}&\X{\rvert}&\X{\lVert}&\X{\rVert} +\end{symbols} +\end{table} + +\begin{table}[!tbp] +\caption{AMS:n kreikkalaiset ja heprealaiset kirjaimet} +\begin{symbols}{*5{cl}} +\X{\digamma} &\X{\varkappa} & \X{\beth}& \X{\daleth} &\X{\gimel} +\end{symbols} +\end{table} + +\begin{table}[!tbp] +\caption{AMS:n binäärirelaatiot} +\begin{symbols}{*3{cl}} + \X{\lessdot} & \X{\gtrdot} & \X{\doteqdot}or \verb|\Doteq| \\ + \X{\leqslant} & \X{\geqslant} & \X{\risingdotseq} \\ + \X{\eqslantless} & \X{\eqslantgtr} & \X{\fallingdotseq} \\ + \X{\leqq} & \X{\geqq} & \X{\eqcirc} \\ + \X{\lll}or \verb|\llless| & \X{\ggg}or \verb|\gggtr| & \X{\circeq} \\ + \X{\lesssim} & \X{\gtrsim} & \X{\triangleq} \\ + \X{\lessapprox} & \X{\gtrapprox} & \X{\bumpeq} \\ + \X{\lessgtr} & \X{\gtrless} & \X{\Bumpeq} \\ + \X{\lesseqgtr} & \X{\gtreqless} & \X{\thicksim} \\ + \X{\lesseqqgtr} & \X{\gtreqqless} & \X{\thickapprox} \\ + \X{\preccurlyeq} & \X{\succcurlyeq} & \X{\approxeq} \\ + \X{\curlyeqprec} & \X{\curlyeqsucc} & \X{\backsim} \\ + \X{\precsim} & \X{\succsim} & \X{\backsimeq} \\ + \X{\precapprox} & \X{\succapprox} & \X{\vDash} \\ + \X{\subseteqq} & \X{\supseteqq} & \X{\Vdash} \\ + \X{\Subset} & \X{\Supset} & \X{\Vvdash} \\ + \X{\sqsubset} & \X{\sqsupset} & \X{\backepsilon} \\ + \X{\therefore} & \X{\because} & \X{\varpropto} \\ + \X{\shortmid} & \X{\shortparallel} & \X{\between} \\ + \X{\smallsmile} & \X{\smallfrown} & \X{\pitchfork} \\ + \X{\vartriangleleft} & \X{\vartriangleright} & \X{\blacktriangleleft}\\ + \X{\trianglelefteq} & \X{\trianglerighteq} &\X{\blacktriangleright} +\end{symbols} +\end{table} + +\begin{table}[!tbp] +\caption{AMS:n nuolet} +\begin{symbols}{*3{cl}} + \X{\dashleftarrow} & \X{\dashrightarrow} & \X{\multimap} \\ + \X{\leftleftarrows} & \X{\rightrightarrows} & \X{\upuparrows} \\ + \X{\leftrightarrows} & \X{\rightleftarrows} & \X{\downdownarrows} \\ + \X{\Lleftarrow} & \X{\Rrightarrow} & \X{\upharpoonleft} \\ + \X{\twoheadleftarrow} & \X{\twoheadrightarrow} & \X{\upharpoonright} \\ + \X{\leftarrowtail} & \X{\rightarrowtail} & \X{\downharpoonleft} \\ + \X{\leftrightharpoons} & \X{\rightleftharpoons} & \X{\downharpoonright} \\ + \X{\Lsh} & \X{\Rsh} & \X{\rightsquigarrow} \\ + \X{\looparrowleft} & \X{\looparrowright} &\X{\leftrightsquigarrow}\\ + \X{\curvearrowleft} & \X{\curvearrowright} & & \\ + \X{\circlearrowleft} & \X{\circlearrowright} & & +\end{symbols} +\end{table} + +\begin{table}[!tbp] +\caption{AMS:n binäärirelaatiot ja nuolet negaatiolla}\label{AMSNBR} +\begin{symbols}{*3{cl}} + \X{\nless} & \X{\ngtr} & \X{\varsubsetneqq} \\ + \X{\lneq} & \X{\gneq} & \X{\varsupsetneqq} \\ + \X{\nleq} & \X{\ngeq} & \X{\nsubseteqq} \\ + \X{\nleqslant} & \X{\ngeqslant} & \X{\nsupseteqq} \\ + \X{\lneqq} & \X{\gneqq} & \X{\nmid} \\ + \X{\lvertneqq} & \X{\gvertneqq} & \X{\nparallel} \\ + \X{\nleqq} & \X{\ngeqq} & \X{\nshortmid} \\ + \X{\lnsim} & \X{\gnsim} & \X{\nshortparallel} \\ + \X{\lnapprox} & \X{\gnapprox} & \X{\nsim} \\ + \X{\nprec} & \X{\nsucc} & \X{\ncong} \\ + \X{\npreceq} & \X{\nsucceq} & \X{\nvdash} \\ + \X{\precneqq} & \X{\succneqq} & \X{\nvDash} \\ + \X{\precnsim} & \X{\succnsim} & \X{\nVdash} \\ + \X{\precnapprox} & \X{\succnapprox} & \X{\nVDash} \\ + \X{\subsetneq} & \X{\supsetneq} & \X{\ntriangleleft} \\ + \X{\varsubsetneq} & \X{\varsupsetneq} & \X{\ntriangleright} \\ + \X{\nsubseteq} & \X{\nsupseteq} & \X{\ntrianglelefteq}\\ + \X{\subsetneqq} & \X{\supsetneqq} &\X{\ntrianglerighteq}\\[0.5ex] + \X{\nleftarrow} & \X{\nrightarrow} & \X{\nleftrightarrow}\\ + \X{\nLeftarrow} & \X{\nRightarrow} & \X{\nLeftrightarrow} + +\end{symbols} +\end{table} + +\begin{table}[!tbp] +\caption{AMS:n binäärioperaattorit} +\begin{symbols}{*3{cl}} + \X{\dotplus} & \X{\centerdot} & \X{\intercal} \\ + \X{\ltimes} & \X{\rtimes} & \X{\divideontimes} \\ + \X{\Cup}or \verb|\doublecup|& \X{\Cap}or \verb|\doublecap|& \X{\smallsetminus} \\ + \X{\veebar} & \X{\barwedge} & \X{\doublebarwedge}\\ + \X{\boxplus} & \X{\boxminus} & \X{\circleddash} \\ + \X{\boxtimes} & \X{\boxdot} & \X{\circledcirc} \\ + \X{\leftthreetimes} & \X{\rightthreetimes}& \X{\circledast} \\ + \X{\curlyvee} & \X{\curlywedge} +\end{symbols} +\end{table} + +\begin{table}[!tbp] +\caption{AMS:n sekalaiset symbolit} +\begin{symbols}{*3{cl}} + \X{\hbar} & \X{\hslash} & \X{\Bbbk} \\ + \X{\square} & \X{\blacksquare} & \X{\circledS} \\ + \X{\vartriangle} & \X{\blacktriangle} & \X{\complement} \\ + \X{\triangledown} &\X{\blacktriangledown} & \X{\Game} \\ + \X{\lozenge} & \X{\blacklozenge} & \X{\bigstar} \\ + \X{\angle} & \X{\measuredangle} & \X{\sphericalangle} \\ + \X{\diagup} & \X{\diagdown} & \X{\backprime} \\ + \X{\nexists} & \X{\Finv} & \X{\varnothing} \\ + \X{\eth} & \X{\mho} +\end{symbols} +\end{table} + + + + +\begin{table}[!tbp] +\caption{Matemaattiset kirjaimistot.} +\begin{symbols}{@{}*3l@{}} +Esimerkki& Komento &Tarvittava makropakkaus\\ +\hline +\rule{0pt}{1.05em}$\mathrm{ABCDE abcde 1234}$ + & \verb|\mathrm{ABCDE abcde 1234}| + & \\ +$\mathit{ABCDE abcde 1234}$ + & \verb|\mathit{ABCDE abcde 1234}| + & \\ +$\mathnormal{ABCDE abcde 1234}$ + & \verb|\mathnormal{ABCDE abcde 1234}| + & \\ +$\mathcal{ABCDE abcde 1234}$ + & \verb|\mathcal{ABCDE abcde 1234}| + & \\ +$\mathscr{ABCDE abcde 1234}$ + &\verb|\mathscr{ABCDE abcde 1234}| + &\pai{mathrsfs}\\ +$\mathfrak{ABCDE abcde 1234}$ + & \verb|\mathfrak{ABCDE abcde 1234}| + &\pai{amsfonts} tai \textsf{amssymb} \\ +$\mathbb{ABCDE abcde 1234}$ + & \verb|\mathbb{ABCDE abcde 1234}| + &\pai{amsfonts} tai \textsf{amssymb} \\ +\end{symbols} +\end{table} + + +\endinput + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "lyhyt2e" +%%% End: diff --git a/Master/texmf-doc/doc/finnish/lshort-finnish/src/typeset.tex b/Master/texmf-doc/doc/finnish/lshort-finnish/src/typeset.tex new file mode 100644 index 00000000000..b4f4d9d6691 --- /dev/null +++ b/Master/texmf-doc/doc/finnish/lshort-finnish/src/typeset.tex @@ -0,0 +1,1656 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Typesetting Part of LaTeX2e Introduction +% $Id: typeset.tex,v 1.2 2003/03/19 20:57:47 oetiker Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{Typesetting Text} + +\begin{intro} + After reading the previous chapter, you should know about the basic + stuff of which a \LaTeXe{} document is made. In this chapter I + will fill in the remaining structure you will need to know in order + to produce real world material. +\end{intro} + +\section{The Structure of Text and Language} +\secby{Hanspeter Schmid}{hanspi@schmid-werren.ch} +The main point of writing a text (some modern DAAC\footnote{Different + At All Cost, a translation of the Swiss German UVA (Um's Verrecken + Anders).} literature excluded), is to convey ideas, information, or +knowledge to the reader. The reader will understand the text better +if these ideas are well-structured, and will see and feel this +structure much better if the typographical form reflects the logical +and semantical structure of the content. + +\LaTeX{} is different from other typesetting systems in that you just +have to tell it the logical and semantical structure of a text. It +then derives the typographical form of the text according to the +``rules'' given in the document class file and in various style files. + +The most important text unit in \LaTeX{} (and in typography) is the +\wi{paragraph}. We call it ``text unit'' because a paragraph is the +typographical form that should reflect one coherent thought, or one +idea. You will learn in the following sections how you can force +line breaks with e.g.{} \texttt{\bs\bs}, and paragraph breaks with e.g.{} +leaving an empty line in the source code. Therefore, if a new thought +begins, a new paragraph should begin, and if not, only line breaks +should be used. If in doubt about paragraph breaks, think about your +text as a conveyor of ideas and thoughts. If you have a paragraph +break, but the old thought continues, it should be removed. If some +totally new line of thought occurs in the same paragraph, then it +should be broken. + +Most people completely underestimate the importance of well-placed +paragraph breaks. Many people do not even know what the meaning of +a paragraph break is, or, especially in \LaTeX, introduce paragraph +breaks without knowing it. The latter mistake is especially easy to +make if equations are used in the text. Look at the following +examples, and figure out why sometimes empty lines (paragraph breaks) +are used before and after the equation, and sometimes not. (If you +don't yet understand all commands well enough to understand these +examples, please read this and the following chapter, and then read +this section again.) + +\begin{code} +\begin{verbatim} +% Example 1 +\ldots when Einstein introduced his formula +\begin{equation} + e = m \cdot c^2 \; , +\end{equation} +which is at the same time the most widely known +and the least well understood physical formula. + + +% Example 2 +\ldots from which follows Kirchhoff's current law: +\begin{equation} + \sum_{k=1}^{n} I_k = 0 \; . +\end{equation} + +Kirchhoff's voltage law can be derived \ldots + + +% Example 3 +\ldots which has several advantages. + +\begin{equation} + I_D = I_F - I_R +\end{equation} +is the core of a very different transistor model. \ldots +\end{verbatim} +\end{code} + +The next smaller text unit is a sentence. In English texts, there is +a larger space after a period that ends a sentence than after one +that ends an abbreviation. \LaTeX{} tries to figure out which one +you wanted to have. If \LaTeX{} gets it wrong, you must tell it what +you want. This is explained later in this chapter. + +The structuring of text even extends to parts of sentences. Most +languages have very complicated punctuation rules, but in many +languages (including German and English), you will get almost every +comma right if you remember what it represents: a short stop in the +flow of language. If you are not sure about where to put a comma, +read the sentence aloud and take a short breath at every comma. If +this feels awkward at some place, delete that comma; if you feel the +urge to breathe (or make a short stop) at some other place, insert a +comma. + +Finally, the paragraphs of a text should also be structured logically +at a higher level, by putting them into chapters, sections, +subsections, and so on. However, the typographical effect of writing +e.g.{} \verb|\section{The| \texttt{Structure of Text and Language}\verb|}| is +so obvious that it is almost self-evident how these high-level +structures should be used. + +\section{Line Breaking and Page Breaking} + +\subsection{Justified Paragraphs} + +Books are often typeset with each line having the same length. +\LaTeX{} inserts the necessary \wi{line break}s and spaces between words +by optimizing the contents of a whole paragraph. If necessary, it +also hyphenates words that would not fit comfortably on a line. +How the paragraphs are typeset depends on the document class. +Normally the first line of a paragraph is indented, and there is no +additional space between two paragraphs. Refer to section~\ref{parsp} +for more information. + +In special cases it might be necessary to order \LaTeX{} to break a +line: +\begin{lscommand} +\ci{\bs} or \ci{newline} +\end{lscommand} +\noindent starts a new line without starting a new paragraph. + +\begin{lscommand} +\ci{\bs*} +\end{lscommand} +\noindent additionally prohibits a page break after the forced +line break. + +\begin{lscommand} +\ci{newpage} +\end{lscommand} +\noindent starts a new page. + +\begin{lscommand} +\ci{linebreak}\verb|[|\emph{n}\verb|]|, +\ci{nolinebreak}\verb|[|\emph{n}\verb|]|, +\ci{pagebreak}\verb|[|\emph{n}\verb|]| and +\ci{nopagebreak}\verb|[|\emph{n}\verb|]| +\end{lscommand} +\noindent do what their names say. They enable the author to influence their +actions with the optional argument \emph{n}, which can be set to a number +between zero and four. By setting \emph{n} to a value below 4, you leave +\LaTeX{} the option of ignoring your command if the result would look very +bad. Do not confuse these ``break'' commands with the ``new'' commands. Even +when you give a ``break'' command, \LaTeX{} still tries to even out the +right border of the page and the total length of the page, as described in +the next section. If you really want to start a ``new line'', then use the +corresponding command. Guess its name! + +\LaTeX{} always tries to produce the best line breaks possible. If it +cannot find a way to break the lines in a manner that meets its high +standards, it lets one line stick out on the right of the paragraph. +\LaTeX{} then complains (``\wi{overfull hbox}'') while processing the +input file. This happens most often when \LaTeX{} cannot find a +suitable place to hyphenate a word.\footnote{Although \LaTeX{} gives + you a warning when that happens (Overfull hbox) and displays the + offending line, such lines are not always easy to find. If you use + the option \texttt{draft} in the \ci{documentclass} command, these + lines will be marked with a thick black line on the right margin.} +You can instruct \LaTeX{} to lower its standards a little by giving +the \ci{sloppy} command. It prevents such over-long lines by +increasing the inter-word spacing---even if the final output is not +optimal. In this case a warning (``\wi{underfull hbox}'') is given to +the user. In most such cases the result doesn't look very good. The +command \ci{fussy} brings \LaTeX{} back to its default behaviour. + +\subsection{Hyphenation} \label{hyph} + +\LaTeX{} hyphenates words whenever necessary. If the hyphenation +algorithm does not find the correct hyphenation points, you can +remedy the situation by using the following commands to tell \TeX{} +about the exception. + +The command +\begin{lscommand} +\ci{hyphenation}\verb|{|\emph{word list}\verb|}| +\end{lscommand} +\noindent causes the words listed in the argument to be hyphenated only at +the points marked by ``\verb|-|''. The argument of the command should only +contain words built from normal letters, or rather signs that are considered +to be normal letters by \LaTeX{}. The hyphenation hints are +stored for the language that is active when the hyphenation command +occurs. This means that if you place a hyphenation command into the preamble +of your document it will influence the English language hyphenation. If you +place the command after the \verb|\begin{document}| and you are using some +package for national language support like \pai{babel}, then the hyphenation +hints will be active in the language activated through \pai{babel}. + +The example below will allow ``hyphenation'' to be hyphenated as well as +``Hyphenation'', and it prevents ``FORTRAN'', ``Fortran'' and ``fortran'' +from being hyphenated at all. No special characters or symbols are allowed +in the argument. + +Example: +\begin{code} +\verb|\hyphenation{FORTRAN Hy-phen-a-tion}| +\end{code} + +The command \ci{-} inserts a discretionary hyphen into a word. This +also becomes the only point hyphenation is allowed in this word. This +command is especially useful for words containing special characters +(e.g.{} accented characters), because \LaTeX{} does not automatically +hyphenate words containing special characters. +%\footnote{Unless you are using the new +%\wi{DC fonts}.}. + +\begin{example} +I think this is: su\-per\-cal\-% +i\-frag\-i\-lis\-tic\-ex\-pi\-% +al\-i\-do\-cious +\end{example} + +Several words can be kept together on one line with the command +\begin{lscommand} +\ci{mbox}\verb|{|\emph{text}\verb|}| +\end{lscommand} +\noindent It causes its argument to be kept together under all circumstances. + +\begin{example} +My phone number will change soon. +It will be \mbox{0116 291 2319}. + +The parameter +\mbox{\emph{filename}} should +contain the name of the file. +\end{example} + +\ci{fbox} is similar to \ci{mbox}, but in addition there will +be a visible box drawn around the content. + + +\section{Ready-Made Strings} + +In some of the examples on the previous pages, you have seen +some very simple \LaTeX{} commands for typesetting special +text strings: + +\vspace{2ex} + +\noindent +\begin{tabular}{@{}lll@{}} +Command&Example&Description\\ +\hline +\ci{today} & \today & Current date in the current language\\ +\ci{TeX} & \TeX & The name of your favorite typesetter\\ +\ci{LaTeX} & \LaTeX & The Name of the Game\\ +\ci{LaTeXe} & \LaTeXe & The current incarnation of \LaTeX\\ +\end{tabular} + +\section{Special Characters and Symbols} + +\subsection{Quotation Marks} + +You should \emph{not} use the \verb|"| for \wi{quotation marks} +\index{""@\texttt{""}} as you would on a typewriter. In publishing +there are special opening and closing quotation marks. In \LaTeX{}, +use two~\verb|`|s (grave accent) for opening quotation marks and +two~\verb|'|s (vertical quote) for closing quotation marks. For single +quotes you use just one of each. +\begin{example} +``Please press the `x' key.'' +\end{example} +Yes I know the rendering is not ideal, it's really a back-tick or grave accent for +opening quotes and vertical quote for closing, despite what the font chosen might suggest. + +\subsection{Dashes and Hyphens} + +\LaTeX{} knows four kinds of \wi{dash}es. You can access three of +them with different numbers of consecutive dashes. The fourth sign +is actually not a dash at all---it is the mathematical minus sign: \index{-} +\index{--} \index{---} \index{-@$-$} \index{mathematical!minus} + +\begin{example} +daughter-in-law, X-rated\\ +pages 13--67\\ +yes---or no? \\ +$0$, $1$ and $-1$ +\end{example} +The names for these dashes are: +`-' \wi{hyphen}, `--' \wi{en-dash}, `---' \wi{em-dash} and +`$-$' \wi{minus sign}. + +\subsection{Tilde ($\sim$)} +\index{www}\index{URL}\index{tilde} +A character often seen in web addresses is the tilde. To generate +this in \LaTeX{} you can use \verb|\~| but the result: \~{} is not really +what you want. Try this instead: + +\begin{example} +http://www.rich.edu/\~{}bush \\ +http://www.clever.edu/$\sim$demo +\end{example} + +\subsection{Degree Symbol \texorpdfstring{($\circ$)}{}} + +The following example shows how to print a \wi{degree symbol} in \LaTeX{}: + +\begin{example} +It's $-30\,^{\circ}\mathrm{C}$. +I will soon start to +super-conduct. +\end{example} + +The \pai{textcomp} package makes the degree symbol also available as \ci{textcelsius}. + +\subsection{The Euro Currency Symbol \texorpdfstring{(\euro{})}{}} + +When writing about money these days, you need the Euro symbol. Many current +fonts contain a Euro symbol. After loading the \pai{textcomp} package in the preamble of your document +\begin{lscommand} +\ci{usepackage}\verb|{textcomp}| +\end{lscommand} +you can use the command +\begin{lscommand} +\ci{texteuro} +\end{lscommand} +to access it. + +If your font does not provide its own Euro symbol or if you do not like the +font's Euro symbol, you have two more choices: + +First the \pai{eurosym} package. It provides the official Euro symbol: +\begin{lscommand} +\ci{usepackage}\verb|[|\emph{official}\verb|]{eurosym}| +\end{lscommand} +If you prefer a Euro symbol that matches your font, use the option +\texttt{gen} in place of the \texttt{official} option. + +If the Adobe Eurofonts are installed on your system (they are available for +free from \url{ftp://ftp.adobe.com/pub/adobe/type/win/all}) you can use +either the package \pai{europs} and the command \ci{EUR} (for a Euro symbol +that matches the current font) or the package +\pai{eurosans} and the command \ci{euro} (for the ``official Euro''). + +The \pai{marvosym} package also provides many different symbols, including a +Euro, under the name \ci{EUR}. Its disadvantage is that it does not provide +slanted and bold variants of the Euro symbol. + +\begin{table}[!htbp] +\caption{A bag full of Euro symbols} \label{eurosymb} +\begin{lined}{10cm} +\begin{tabular}{llccc} +package & command & roman & sans-serif & typewriter \\ +eurosym &\verb+\euro+ & \huge\officialeuro &\huge\sffamily\officialeuro + & \huge\ttfamily\officialeuro\\ +$[$gen$]$eurosym &\verb+\euro+ & \huge\geneuro &\huge\sffamily\geneuro + & \huge\ttfamily\geneuro \\ +% En fait on appelle eurofont pour des conflits de noms... +europs &\verb+\EUR + & \huge\EURtm &\huge\EURhv & \huge\EURcr \\ +eurosans &\verb+\euro+ & \huge\EUROSANS &\huge\sffamily\EUROSANS + & \huge\ttfamily\EUROSANS \\ +marvosym &\verb+\EUR+ & \huge\mvchr164 &\huge\mvchr164 & \huge\mvchr164 +\end{tabular} +\medskip +\end{lined} +\end{table} + +\subsection{Ellipsis (\texorpdfstring{\ldots}{...})} + +On a typewriter, a \wi{comma} or a \wi{period} takes the same amount of +space as any other letter. In book printing, these characters occupy +only a little space and are set very close to the preceding letter. +Therefore, you cannot enter `\wi{ellipsis}' by just typing three +dots, as the spacing would be wrong. Instead, there is a special +command for these dots. It is called + +\begin{lscommand} +\ci{ldots} +\end{lscommand} +\index{...@\ldots} + + +\begin{example} +Not like this ... but like this:\\ +New York, Tokyo, Budapest, \ldots +\end{example} + +\subsection{Ligatures} + +Some letter combinations are typeset not just by setting the +different letters one after the other, but by actually using special +symbols. +\begin{code} +{\large ff fi fl ffi\ldots}\quad +instead of\quad {\large f{}f f{}i f{}l f{}f{}i \ldots} +\end{code} +These so-called \wi{ligature}s can be prohibited by inserting an \ci{mbox}\verb|{}| +between the two letters in question. This might be necessary with +words built from two words. + +\begin{example} +\Large Not shelfful\\ +but shelf\mbox{}ful +\end{example} + +\subsection{Accents and Special Characters} + +\LaTeX{} supports the use of \wi{accent}s and \wi{special character}s +from many languages. Table~\ref{accents} shows all sorts of accents +being applied to the letter o. Naturally other letters work too. + +To place an accent on top of an i or a j, its dots have to be +removed. This is accomplished by typing \verb|\i| and \verb|\j|. + +\begin{example} +H\^otel, na\"\i ve, \'el\`eve,\\ +sm\o rrebr\o d, !`Se\~norita!,\\ +Sch\"onbrunner Schlo\ss{} +Stra\ss e +\end{example} + +\begin{table}[!hbp] +\caption{Accents and Special Characters.} \label{accents} +\begin{lined}{10cm} +\begin{tabular}{*4{cl}} +\A{\`o} & \A{\'o} & \A{\^o} & \A{\~o} \\ +\A{\=o} & \A{\.o} & \A{\"o} & \B{\c}{c}\\[6pt] +\B{\u}{o} & \B{\v}{o} & \B{\H}{o} & \B{\c}{o} \\ +\B{\d}{o} & \B{\b}{o} & \B{\t}{oo} \\[6pt] +\A{\oe} & \A{\OE} & \A{\ae} & \A{\AE} \\ +\A{\aa} & \A{\AA} \\[6pt] +\A{\o} & \A{\O} & \A{\l} & \A{\L} \\ +\A{\i} & \A{\j} & !` & \verb|!`| & ?` & \verb|?`| +\end{tabular} +\index{dotless \i{} and \j}\index{Scandinavian letters} +\index{ae@\ae}\index{umlaut}\index{grave}\index{acute} +\index{oe@\oe}\index{aa@\aa} + +\bigskip +\end{lined} +\end{table} + +\section{International Language Support} +\index{international} When you write documents in \wi{language}s +other than English, there are three areas where \LaTeX{} has to be +configured appropriately: + +\begin{enumerate} +\item All automatically generated text strings\footnote{Table of + Contents, List of Figures, \ldots} have to be adapted to the new + language. For many languages, these changes can be accomplished by + using the \pai{babel} package by Johannes Braams. +\item \LaTeX{} needs to know the hyphenation rules for the new + language. Getting hyphenation rules into \LaTeX{} is a bit more + tricky. It means rebuilding the format file with different + hyphenation patterns enabled. Your \guide{} should give more + information on this. +\item Language specific typographic rules. In French for example, there is a + mandatory space before each colon character (:). +\end{enumerate} + +If your system is already configured appropriately, you can activate +the \pai{babel} package by adding the command +\begin{lscommand} +\ci{usepackage}\verb|[|\emph{language}\verb|]{babel}| +\end{lscommand} +\noindent after the \verb|\documentclass| command. A list of the +\emph{language}s built into your \LaTeX{} system will be displayed +every time the compiler is started. Babel will +automatically activate the appropriate hyphenation rules for the +language you choose. If your \LaTeX{} format does not support +hyphenation in the language of your choice, babel will still work but +will disable hyphenation, which has quite a negative effect on the +appearance of the typeset document. + +\textsf{Babel} also specifies new commands for some languages, which +simplify the input of special characters. The \wi{German} language, for +example, contains a lot of umlauts (\"a\"o\"u). With \textsf{babel}, +you can enter an \"o by typing \verb|"o| instead of~\verb|\"o|. + +If you call babel with multiple languages +\begin{lscommand} +\ci{usepackage}\verb|[|\emph{languageA}\verb|,|\emph{languageB}\verb|]{babel}| +\end{lscommand} +\noindent you have to use the command +\begin{lscommand} +\ci{selectlanguage}\verb|{|\emph{languageA}\verb|}| +\end{lscommand} +\noindent to set the current language. + +%Input Encoding +\newcommand{\ieih}[1]{% +\index{encodings!input!#1@\texttt{#1}}% +\index{input encodings!#1@\texttt{#1}}% +\index{#1@\texttt{#1}}} +\newcommand{\iei}[1]{% +\ieih{#1}\texttt{#1}} +%Font Encoding +\newcommand{\feih}[1]{% +\index{encodings!font!#1@\texttt{#1}}% +\index{font encodings!#1@\texttt{#1}}% +\index{#1@\texttt{#1}}} +\newcommand{\fei}[1]{% +\feih{#1}\texttt{#1}} + +Most of the modern computer systems allow you to input letter of +national alphabets directly from the keyboard. In order to +handle variety of input encoding used for different groups of +languages and/or on different computer platforms \LaTeX{} employs the +\pai{inputenc} package: +\begin{lscommand} +\ci{usepackage}\verb|[|\emph{encoding}\verb|]{inputenc}| +\end{lscommand} + +When using this package, you should consider that other people might not +be able to display your input files on their computer, because they use +a different encoding. For example, the German umlaut \"a on OS/2 is +encoded as 132, on Unix systems using ISO-LATIN~1 it is encoded as 228, +while in cyrillic encoding cp1251 for Windows this letter does not exist +at all; therefore you should use this feature with care. The following +encodings may come in handy, depending on the type of system you are +working on\footnote{To learn more about supported input +encodings for Latin-based and Cyrillic-based languages, read the +documentation for \texttt{inputenc.dtx} and \texttt{cyinpenc.dtx} +respectively. Section~\ref{sec:Packages} tells how to produce package +documentation.} + +\begin{center} +\begin{tabular}{l | r | r } +Operating & \multicolumn{2}{c}{encodings}\\ +system & western latin & cyrillic\\ +\hline +Mac & \iei{applemac} & \iei{macukr} \\ +Unix & \iei{latin1} & \iei{koi8-ru} \\ +Windows & \iei{ansinew} & \iei{cp1251} \\ +DOS, OS/2 & \iei{cp850} & \iei{cp866nav} +\end{tabular} +\end{center} + +If you have a multilingual document with conflicting input encodings, +you might want to switch to unicode, using the \pai{ucs} package. + + +\begin{lscommand} +\ci{usepackage}\verb|{ucs}|\\ +\ci{usepackage}\verb|[|\iei{utf8}\verb|]{inputenc}| +\end{lscommand} +\noindent will enable you to create \LaTeX{} input files in +\iei{utf8}, a multi-byte encoding in which each character can be encoded in +as little as one byte and as many as four bytes. + +Font encoding is a different matter. It defines at which position inside +a \TeX-font each letter is stored. Multiple input encodings could be mapped into +one font encoding, which reduces number of required font sets. +Font encodings are handled through +\pai{fontenc} package: \label{fontenc} +\begin{lscommand} +\ci{usepackage}\verb|[|\emph{encoding}\verb|]{fontenc}| \index{font encodings} +\end{lscommand} +\noindent where \emph{encoding} is font encoding. It is possible to load several +encodings simultaneously. + +The default \LaTeX{} font encoding is \label{OT1} \fei{OT1}, the encoding of the +original Computer Modern \TeX{} font. It containins only the 128 +characters of the 7-bit ASCII character set. When accented characters +are required, \TeX{} creates them by combining a normal character with +an accent. While the resulting output looks perfect, this approach stops +the automatic hyphenation from working inside words containing accented +characters. Besides, some of latin letters could not be created by +combining a normal character with an accent, to say nothing about letters of +non-latin alphabets, such as Greek or Cyrillic. + +To overcome these shortcomings, several 8-bit CM-like font sets were created. +\emph{Extended Cork} (EC) fonts in \fei{T1} encoding contains +letters and punctuation characters for most of the European +languages based on Latin script. The LH font set contains letters necessary +to typeset documents in languages using Cyrillic script. Because of the large +number of Cyrillic glyphs, they are arranged into four font +encodings---\fei{T2A}, \fei{T2B}, \fei{T2C}, +and~\fei{X2}.\footnote{The list of languages supported by each of these +encodings could be found in \cite{cyrguide}.} The CB bundle contains fonts +in \fei{LGR} encoding for the composition of Greek text. + +By using these fonts you can improve/enable hyphenation in non-English +documents. Another advantage of using new CM-like fonts is that they +provide fonts of CM families in all weights, shapes, and optically +scaled font sizes. + +\subsection{Support for Portuguese} + +\secby{Demerson Andre Polli}{polli@linux.ime.usp.br} +To enable hyphenation and change all automatic text to \wi{Portuguese}, +\index{Portugu\^es} use the command: +\begin{lscommand} +\verb|\usepackage[portuguese]{babel}| +\end{lscommand} +Or if you are in Brazil, substitute the language for \texttt{\wi{brazilian}}. + +As there are a lot of accents in Portuguese you might want to use +\begin{lscommand} +\verb|\usepackage[latin1]{inputenc}| +\end{lscommand} +to be able to input them correctly as well as +\begin{lscommand} +\verb|\usepackage[T1]{fontenc}| +\end{lscommand} +to get the hyphenation right. + +See table~\ref{portuguese} for the preamble you need to write in the +Portuguese language. Note that we are using the latin1 input encoding here, +so this will not work on a Mac or on DOS. Just use +the appropriate encoding for your system. + +\begin{table}[btp] +\caption{Preamble for Portuguese documents.} \label{portuguese} +\begin{lined}{5cm} +\begin{verbatim} +\usepackage[portuguese]{babel} +\usepackage[latin1]{inputenc} +\usepackage[T1]{fontenc} +\end{verbatim} +\bigskip +\end{lined} +\end{table} + + +\subsection{Support for French} + +\secby{Daniel Flipo}{daniel.flipo@univ-lille1.fr} +Some hints for those creating \wi{French} documents with \LaTeX{}: +you can load French language support with the following command: + +\begin{lscommand} +\verb|\usepackage[frenchb]{babel}| +\end{lscommand} + +Note that, for historical reasons, the name of \textsf{babel}'s option +for French is either \emph{frenchb} or \emph{francais} but not \emph{french}. + +This enables French hyphenation, if you have configured your +\LaTeX{} system accordingly. It also changes all automatic text into +French: \verb+\chapter+ prints Chapitre, \verb+\today+ prints the current +date in French and so on. A set of new commands also +becomes available, which allows you to write French input files more +easily. Check out table \ref{cmd-french} for inspiration. + +\begin{table}[!htbp] +\caption{Special commands for French.} \label{cmd-french} +\begin{lined}{9cm} +\selectlanguage{french} +\begin{tabular}{ll} +\verb+\og guillemets \fg{}+ \quad &\og guillemets \fg \\[1ex] +\verb+M\up{me}, D\up{r}+ \quad &M\up{me}, D\up{r} \\[1ex] +\verb+1\ier{}, 1\iere{}, 1\ieres{}+ \quad &1\ier{}, 1\iere{}, 1\ieres{}\\[1ex] +\verb+2\ieme{} 4\iemes{}+ \quad &2\ieme{} 4\iemes{}\\[1ex] +\verb+\No 1, \no 2+ \quad &\No 1, \no 2 \\[1ex] +\verb+20~\degres C, 45\degres+ \quad &20~\degres C, 45\degres \\[1ex] +\verb+\bsc{M. Durand}+ \quad &\bsc{M.~Durand} \\[1ex] +\verb+\nombre{1234,56789}+ \quad &\nombre{1234,56789} +\end{tabular} +\selectlanguage{english} +\bigskip +\end{lined} +\end{table} + +You will also notice that the layout of lists changes when switching to the +French language. For more information on what the \texttt{frenchb} +option of \textsf{babel} does and how you can customize its behaviour, run +\LaTeX{} on file \texttt{frenchb.dtx} and read the produced file +\texttt{frenchb.dvi}. + +\subsection{Support for German} + +Some hints for those creating \wi{German}\index{Deutsch} +documents with \LaTeX{}: you can load German language support with the following +command: + +\begin{lscommand} +\verb|\usepackage[german]{babel}| +\end{lscommand} + +This enables German hyphenation, if you have configured your +\LaTeX{} system accordingly. It also changes all automatic text into +German. Eg. ``Chapter'' becomes ``Kapitel.'' A set of new commands also +becomes available, which allows you to write German input files more quickly +even when you don't use the inputenc package. Check out table +\ref{german} for inspiration. With inputenc, all this becomes moot, but your +text also is locked in a particular encoding world. + +\begin{table}[!htbp] +\caption{German Special Characters.} \label{german} +\begin{lined}{8cm} +\selectlanguage{german} +\begin{tabular}{*2{ll}} +\verb|"a| & "a \hspace*{1ex} & \verb|"s| & "s \\[1ex] +\verb|"`| & "` & \verb|"'| & "' \\[1ex] +\verb|"<| or \ci{flqq} & "< & \verb|">| or \ci{frqq} & "> \\[1ex] +\ci{flq} & \flq & \ci{frq} & \frq \\[1ex] +\ci{dq} & " \\ +\end{tabular} +\selectlanguage{english} +\bigskip +\end{lined} +\end{table} + +In German books you often find French quotation marks (\flqq guillemets\frqq). +German typesetters, however, use them differently. A quote in a German book +would look like \frqq this\flqq. In the German speaking part of Switzerland, +typesetters use \flqq guillemets\frqq~the same way the French do. + +A major problem arises from the use of commands +like \verb+\flq+: If you use the OT1 font (which is the default font) the +guillemets will look like the math symbol ``$\ll$'', which turns a typesetter's stomach. +T1 encoded fonts, on the other hand, do contain the required symbols. So if you are using this type +of quote, make sure you use the T1 encoding. (\verb|\usepackage[T1]{fontenc}|) + +\subsection[Support for Korean]{Support for Korean\footnotemark}\label{support_korean}% +\footnotetext{% +Considering a number of issues Korean \LaTeX{} users +have to cope with. +This section was written by Karnes KIM on behalf of the +Korean lshort translation team. It was translated into English +by SHIN Jungshik and shortened by Tobi Oetiker.} + +To use \LaTeX{} for typesetting \wi{Korean}, +we need to solve three problems: + +\begin{enumerate} +\item +We must be able to +edit \wi{Korean input files}. +Korean input files must be in plain text format, but because Korean +uses its own character set outside the +repertoire of US-ASCII, they will look rather strange with a normal ASCII editor. The two most widely used encodings for +Korean text files are EUC-KR and its upward compatible +extension used in Korean MS-Windows, CP949/Windows-949/UHC. +In these encodings each US-ASCII character represents its normal ASCII +character similar to other ASCII compatible encodings such as +ISO-8859-\textit{x}, EUC-JP, Shift\_JIS, and Big5. On the other hand, Hangul +syllables, Hanjas (Chinese characters as used in Korea), Hangul Jamos, +Hirakanas, Katakanas, Greek and Cyrillic characters and other +symbols and letters drawn from KS~X~1001 are represented by two +consecutive octets. The first has its MSB set. +Until the mid-1990's, it took a considerable amount of time and effort to +set up a Korean-capable environment under a non-localized (non-Korean) +operating system. +You can skim through the now much-outdated \url{http://jshin.net/faq} to get +a glimpse of what it was like to use Korean under non-Korean OS in mid-1990's. +These days all three major operating systems (Mac OS, Unix, Windows) come equipped +with pretty decent multilingual support and internationalization features +so that editing Korean text file is not so much of a problem anymore, even +on non-Korean operating systems. + +\item \TeX{} and \LaTeX{} were originally written for +scripts with no more than 256 characters in their alphabet. +To make them work for languages with considerably +more characters such as +Korean%, + \footnote{Korean Hangul is an alphabetic script with 14 basic consonants + and 10 basic vowels (Jamos). Unlike Latin or Cyrillic scripts, the + individual characters have to be arranged in rectangular + clusters about the same size as Chinese characters. Each cluster + represents a syllable. An unlimited number of syllables can be + formed out of this finite set of vowels and consonants. Modern Korean + orthographic standards (both in South Korea and North Korea), however, + put some restriction on the formation of these clusters. + Therefore only a finite number of orthographically correct syllables exist. + The Korean Character encoding defines individual code points for each of these syllables (KS~X~1001:1998 and KS~X~1002:1992). So Hangul, albeit alphabetic, is + treated like the Chinese and Japanese writing systems with tens of thousands of + ideographic/logographic characters. ISO~10646/Unicode offers both ways of + representing Hangul used for \emph{modern} Korean by encoding Conjoining + Hangul Jamos (alphabets: \url{http://www.unicode.org/charts/PDF/U1100.pdf}) + in addition to encoding all the orthographically allowed Hangul syllables in + \emph{modern} Korean (\url{http://www.unicode.org/charts/PDF/UAC00.pdf}). + One of the most daunting challenges in Korean typesetting with + \LaTeX{} and related typesetting system is supporting Middle Korean---and possibly future Korean---syllables that can be only represented + by conjoining Jamos in Unicode. It is hoped that future \TeX{} engines like $\Omega$ and + $\Lambda$ will eventually provide solutions to this + so that some Korean linguists and historians + will defect from MS Word that already has a pretty good support + for Middle Korean.} +or Chinese, a subfont mechanism was developed. +It divides a single CJK font with thousands or tens of thousands of +glyphs into a set of subfonts with 256 glyphs each. +For Korean, there are three widely used packages; \wi{H\LaTeX} +by UN~Koaunghi, \wi{h\LaTeX{}p} by CHA~Jaechoon and the \wi{CJK package} +by Werner~Lemberg.\footnote{% +They can be obtained at \CTANref|language/korean/HLaTeX/|\\ + \CTANref|language/korean/CJK/| and + \texttt{http://knot.kaist.ac.kr/htex/}} +H\LaTeX{} and h\LaTeX{}p are specific to Korean and provide +Korean localization on top of the font support. +They both can process Korean input text files encoded in EUC-KR. H\LaTeX{} can +even process input files encoded in CP949/Windows-949/UHC and UTF-8 +when used along with $\Lambda$, $\Omega$. + +The CJK package is not specific to Korean. It can +process input files in UTF-8 as well as in various CJK encodings +including EUC-KR and CP949/Windows-949/UHC, it can be used to typeset documents with +multilingual content (especially Chinese, Japanese and Korean). +The CJK package has no Korean localization such as the one offered by H\LaTeX{} and it +does not come with as many special Korean fonts as H\LaTeX. + +\item The ultimate purpose of using typesetting programs like \TeX{} +and \LaTeX{} is to get documents typeset in an `aesthetically' satisfying way. +Arguably the most important element in typesetting is a set of +well-designed fonts. The H\LaTeX{} distribution +includes \index{Korean font!UHC font}UHC \PSi{} fonts +of 10 +different families and +Munhwabu\footnote{Korean Ministry of Culture.} +fonts (TrueType) of 5 different families. +The CJK package works with a set of fonts used by earlier versions +of H\LaTeX{} and it can use Bitstream's cyberbit TrueType +font. +\end{enumerate} + +To use the H\LaTeX{} package for typesetting your Korean text, put the following +declaration into the preamble of your document: +\begin{lscommand} +\verb+\usepackage{hangul}+ +\end{lscommand} + +This command turns the Korean localization on. The headings +of chapters, sections, subsections, table of content and table of +figures are all translated into Korean and the formatting of the document +is changed to follow Korean conventions. +The package also provides automatic ``particle selection.'' +In Korean, there are pairs of post-fix particles +grammatically equivalent but different in form. Which +of any given pair is correct depends on +whether the preceding syllable ends with a vowel or a consonant. +(It is a bit more complex than this, but this should give you +a good picture.) +Native Korean speakers have no problem picking the right particle, but +it cannot be determined which particle to use for references and other automatic +text that will change while you edit the document. +It +takes a painstaking effort to place appropriate particles manually +every time you add/remove references or simply shuffle parts +of your document around. +H\LaTeX{} relieves its users from this boring and error-prone process. + +In case you don't need Korean localization features +but just want +to typeset Korean text, you can put the following line in the +preamble, instead. +\begin{lscommand} +\verb+\usepackage{hfont}+ +\end{lscommand} + +For more details on typesetting Korean with H\LaTeX{}, refer to +the \emph{H\LaTeX{} Guide}. Check out the web site of the Korean +\TeX{} User Group (KTUG) at \url{http://www.ktug.or.kr/}. +There is also a Korean translation +of this manual available. + + +\subsection{Support for Cyrillic} + +\secby{Maksym Polyakov}{polyama@myrealbox.com} +Version~3.7h of \pai{babel} includes support for the +\fei{T2*}~encodings and for typesetting Bulgarian, Russian and +Ukrainian texts using Cyrillic letters. + +Support for Cyrillic is based on standard \LaTeX{} mechanisms through +the \pai{fontenc} and \pai{inputenc} packages. But, if you are going to +use Cyrillics in math mode, you need to load \pai{mathtext} package +before \pai{fontenc}:\footnote{If you use \AmS-\LaTeX{} packages, +load them before \pai{fontenc} and \pai{babel} as well.} +\begin{lscommand} +\verb+\usepackage{mathtext}+\\ +\verb+\usepackage[+\fei{T1}\verb+,+\fei{T2A}\verb+]{fontenc}+\\ +\verb+\usepackage[+\iei{koi8-ru}\verb+]{inputenc}+\\ +\verb+\usepackage[english,bulgarian,russian,ukranian]{babel}+ +\end{lscommand} + +Generally, \pai{babel} will authomatically choose the default font encoding, +for the above three languages this is \fei{T2A}. However, documents are not +restricted to a single font encoding. For multi-lingual documents using +Cyrillic and Latin-based languages it makes sense to include latin font +encoding explicitly. \pai{babel} will take care of switching to the appropriate +font encoding when a different language is selected within the document. + +In addition to enabling hyphenations, translating automatically +generated text strings, and activating some language specific +typographic rules (like \ci{frenchspacing}), \pai{babel} provides some +commands allowing typesetting according to the standards of +Bulgarian, Russian, or Ukrainian languages. + + +For all three languages, language specific punctuation is provided: +The cyrillic dash for the text (it is little narrower than latin dash and +surrounded by tiny spaces), a dash for direct speech, quotes, and +commands to facilitate hyphenation, see Table~\ref{Cyrillic}. + +% Table borrowed from Ukrainian.dtx +\begin{table}[htb] + \begin{center} + \index{""-@\texttt{""}\texttt{-}} + \index{""---@\texttt{""}\texttt{-}\texttt{-}\texttt{-}} + \index{""=@\texttt{""}\texttt{=}} + \index{""`@\texttt{""}\texttt{`}} + \index{""'@\texttt{""}\texttt{'}} + \index{"">@\texttt{""}\texttt{>}} + \index{""<@\texttt{""}\texttt{<}} + \caption[Bulgarian, Russian, and Ukrainian]{The extra definitions made + by Bulgarian, Russian, and Ukrainian options of \pai{babel}}\label{Cyrillic} + \begin{tabular}{@{}p{.1\hsize}@{}p{.9\hsize}@{}} + \hline + \verb="|= & disable ligature at this position. \\ + \verb|"-| & an explicit hyphen sign, allowing hyphenation + in the rest of the word. \\ + \verb|"---| & Cyrillic emdash in plain text. \\ + \verb|"--~| & Cyrillic emdash in compound names (surnames). \\ + \verb|"--*| & Cyrillic emdash for denoting direct speech. \\ + \verb|""| & like \verb|"-|, but producing no hyphen sign + (for compound words with hyphen, e.g.\verb|x-""y| + or some other signs as ``disable/enable''). \\ + \verb|"~| & for a compound word mark without a breakpoint. \\ + \verb|"=| & for a compound word mark with a breakpoint, allowing + hyphenation in the composing words. \\ + \verb|",| & thinspace for initials with a breakpoint + in following surname. \\ + \verb|"`| & for German left double quotes + (looks like ,\kern-0.08em,). \\ + \verb|"'| & for German right double quotes (looks like ``). \\%'' + \verb|"<| & for French left double quotes (looks like $<\!\!<$). \\ + \verb|">| & for French right double quotes (looks like $>\!\!>$). \\ + \hline + \end{tabular} + \end{center} +\end{table} + + +The Russian and Ukrainian options of \pai{babel} define the commands \ci{Asbuk} +and \ci{asbuk}, which act like \ci{Alph} and \ci{alph}, but produce capital +and small letters of Russian or Ukrainian alphabets (whichever is the +active language of the document). The Bulgarian option of \pai{babel} +provides the commands \ci{enumBul} and \ci{enumLat} (\ci{enumEng}), which +make \ci{Alph} and \ci{alph} produce letters of either +Bulgarian or Latin (English) alphabets. The default behaviour of +\ci{Alph} and \ci{alph} for the Bulgarian language option is to +produce letters from the Bulgarian alphabet. + +%Finally, math alphabets are redefined and as well as the commands for math +%operators according to Cyrillic typesetting traditions. + +\section{The Space Between Words} + +To get a straight right margin in the output, \LaTeX{} inserts varying +amounts of space between the words. It inserts slightly more space at +the end of a sentence, as this makes the text more readable. \LaTeX{} +assumes that sentences end with periods, question marks or exclamation +marks. If a period follows an uppercase letter, this is not taken as a +sentence ending, since periods after uppercase letters normally occur in +abbreviations. + +Any exception from these assumptions has to be specified by the +author. A backslash in front of a space generates a space that will +not be enlarged. A tilde~`\verb|~|' character generates a space that cannot be +enlarged and additionally prohibits a line break. The command +\verb|\@| in front of a period specifies that this period terminates a +sentence even when it follows an uppercase letter. +\cih{"@} \index{~@ \verb.~.} \index{tilde@tilde ( \verb.~.)} +\index{., space after} + +\begin{example} +Mr.~Smith was happy to see her\\ +cf.~Fig.~5\\ +I like BASIC\@. What about you? +\end{example} + +The additional space after periods can be disabled with the command +\begin{lscommand} +\ci{frenchspacing} +\end{lscommand} +\noindent which tells \LaTeX{} \emph{not} to insert more space after a +period than after ordinary character. This is very common in +non-English languages, except bibliographies. If you use +\ci{frenchspacing}, the command \verb|\@| is not necessary. + +\section{Titles, Chapters, and Sections} + +To help the reader find his or her way through your work, you should +divide it into chapters, sections, and subsections. \LaTeX{} supports +this with special commands that take the section title as their +argument. It is up to you to use them in the correct order. + +The following sectioning commands are available for the +\texttt{article} class: \nopagebreak + +\begin{lscommand} +\ci{section}\verb|{...}|\\ +\ci{subsection}\verb|{...}|\\ +\ci{subsubsection}\verb|{...}|\\ +\ci{paragraph}\verb|{...}|\\ +\ci{subparagraph}\verb|{...}| +\end{lscommand} + +If you want to split your document in parts without influencing the +section or chapter numbering you can use +\begin{lscommand} +\ci{part}\verb|{...}| +\end{lscommand} + +When you work with the \texttt{report} or \texttt{book} class, +an additional top-level sectioning command becomes available +\begin{lscommand} +\ci{chapter}\verb|{...}| +\end{lscommand} + +As the \texttt{article} class does not know about chapters, it is quite easy +to add articles as chapters to a book. +The spacing between sections, the numbering and the font size of the +titles will be set automatically by \LaTeX. + +Two of the sectioning commands are a bit special: +\begin{itemize} +\item The \ci{part} command does + not influence the numbering sequence of chapters. +\item The \ci{appendix} command does not take an argument. It just + changes the chapter numbering to letters.\footnote{For the article + style it changes the section numbering.} +\end{itemize} + + + +\LaTeX{} creates a table of contents by taking the section headings +and page numbers from the last compile cycle of the document. The command +\begin{lscommand} +\ci{tableofcontents} +\end{lscommand} +\noindent expands to a table of contents at the place it +is issued. A new +document has to be compiled (``\LaTeX ed'') twice to get a +correct \wi{table of contents}. Sometimes it might be +necessary to compile the document a third time. \LaTeX{} will tell you +when this is necessary. + +All sectioning commands listed above also exist as ``starred'' +versions. A ``starred'' version of a command is built by adding a +star \verb|*| after the command name. This generates section headings +that do not show up in the table of contents and are not +numbered. The command \verb|\section{Help}|, for example, would become +\verb|\section*{Help}|. + +Normally the section headings show up in the table of contents exactly +as they are entered in the text. Sometimes this is not possible, +because the heading is too long to fit into the table of contents. The +entry for the table of contents can then be specified as an +optional argument in front of the actual heading. + +\begin{code} +\verb|\chapter[Title for the table of contents]{A long|\\ +\verb| and especially boring title, shown in the text}| +\end{code} + +The \wi{title} of the whole document is generated by issuing a +\begin{lscommand} +\ci{maketitle} +\end{lscommand} +\noindent command. The contents of the title have to be defined by the commands +\begin{lscommand} +\ci{title}\verb|{...}|, \ci{author}\verb|{...}| +and optionally \ci{date}\verb|{...}| +\end{lscommand} +\noindent before calling \verb|\maketitle|. In the argument to \ci{author}, you can +supply several names separated by \ci{and} commands. + +An example of some of the commands mentioned above can be found in +Figure~\ref{document} on page~\pageref{document}. + +Apart from the sectioning commands explained above, \LaTeXe{} +introduced three additional commands for use with the \verb|book| class. +They are useful for dividing your publication. The commands alter +chapter headings and page numbering to work as you would expect it in +a book: +\begin{description} +\item[\ci{frontmatter}] should be the very first command after + \verb|\begin{document}|. It will switch page numbering to Roman + numerals and sections be non-enumerated. As if you were using + the starred sectioning commands (eg \verb|\chapter*{Preface}|) + but the sections will still show up in the table of contents. +\item[\ci{mainmatter}] comes right before the first chapter of + the book. It turns on Arabic page numbering and restarts the page + counter. +\item[\ci{appendix}] marks the start of additional material in your + book. After this command chapters will be numbered with letters. +\item[\ci{backmatter}] should be inserted before the very last items + in your book, such as the bibliography and the index. In the standard + document classes, this has no visual effect. +\end{description} + + +\section{Cross References} + +In books, reports and articles, there are often +\wi{cross-references} to figures, tables and special segments of text. +\LaTeX{} provides the following commands for cross referencing +\begin{lscommand} +\ci{label}\verb|{|\emph{marker}\verb|}|, \ci{ref}\verb|{|\emph{marker}\verb|}| +and \ci{pageref}\verb|{|\emph{marker}\verb|}| +\end{lscommand} +\noindent where \emph{marker} is an identifier chosen by the user. \LaTeX{} +replaces \verb|\ref| by the number of the section, subsection, figure, +table, or theorem after which the corresponding \verb|\label| command +was issued. \verb|\pageref| prints the page number of the +page where the \verb|\label| command occurred.\footnote{Note that these commands + are not aware of what they refer to. \ci{label} just saves the last + automatically generated number.} As with the section titles, the +numbers from the previous run are used. + +\begin{example} +A reference to this subsection +\label{sec:this} looks like: +``see section~\ref{sec:this} on +page~\pageref{sec:this}.'' +\end{example} + +\section{Footnotes} +With the command +\begin{lscommand} +\ci{footnote}\verb|{|\emph{footnote text}\verb|}| +\end{lscommand} +\noindent a footnote is printed at the foot of the current page. Footnotes +should always be put\footnote{``put'' is one of the most common + English words.} after the word or sentence they refer to. Footnotes +referring to a sentence or part of it should therefore be put after +the comma or period.\footnote{Note that footnotes + distract the reader from the main body of your document. After all, + everybody reads the footnotes---we are a curious species, so why not + just integrate everything you want to say into the body of the + document?\footnotemark} +\footnotetext{A guidepost doesn't necessarily go where it's pointing to :-).} + +\begin{example} +Footnotes\footnote{This is + a footnote.} are often used +by people using \LaTeX. +\end{example} + +\section{Emphasized Words} + +If a text is typed using a typewriter, \texttt{important words are + emphasized by \underline{underlining} them.} +\begin{lscommand} +\ci{underline}\verb|{|\emph{text}\verb|}| +\end{lscommand} +In printed books, +however, words are emphasized by typesetting them in an \emph{italic} +font. \LaTeX{} provides the command +\begin{lscommand} +\ci{emph}\verb|{|\emph{text}\verb|}| +\end{lscommand} +\noindent to emphasize text. What the command actually does with +its argument depends on the context: + +\begin{example} +\emph{If you use + emphasizing inside a piece + of emphasized text, then + \LaTeX{} uses the + \emph{normal} font for + emphasizing.} +\end{example} + +Please note the difference between telling \LaTeX{} to +\emph{emphasize} something and telling it to use a different +\emph{font}: + +\begin{example} +\textit{You can also + \emph{emphasize} text if + it is set in italics,} +\textsf{in a + \emph{sans-serif} font,} +\texttt{or in + \emph{typewriter} style.} +\end{example} + +\section{Environments} \label{env} + +% To typeset special purpose text, \LaTeX{} defines many different +% \wi{environment}s for all sorts of formatting: +\begin{lscommand} +\ci{begin}\verb|{|\emph{environment}\verb|}|\quad + \emph{text}\quad +\ci{end}\verb|{|\emph{environment}\verb|}| +\end{lscommand} +\noindent Where \emph{environment} is the name of the environment. Environments can be +nested within each other as long as the correct nesting order is +maintained. +\begin{code} +\verb|\begin{aaa}...\begin{bbb}...\end{bbb}...\end{aaa}| +\end{code} + +\noindent In the following sections all important environments are explained. + +\subsection{Itemize, Enumerate, and Description} + +The \ei{itemize} environment is suitable for simple lists, the +\ei{enumerate} environment for enumerated lists, and the +\ei{description} environment for descriptions. +\cih{item} + +\begin{example} +\flushleft +\begin{enumerate} +\item You can mix the list +environments to your taste: +\begin{itemize} +\item But it might start to +look silly. +\item[-] With a dash. +\end{itemize} +\item Therefore remember: +\begin{description} +\item[Stupid] things will not +become smart because they are +in a list. +\item[Smart] things, though, can be +presented beautifully in a list. +\end{description} +\end{enumerate} +\end{example} + +\subsection{Flushleft, Flushright, and Center} + +The environments \ei{flushleft} and \ei{flushright} generate +paragraphs that are either left- or \wi{right-aligned}. \index{left + aligned} The \ei{center} environment generates centred text. If you +do not issue \ci{\bs} to specify line breaks, \LaTeX{} will +automatically determine line breaks. + +\begin{example} +\begin{flushleft} +This text is\\ left-aligned. +\LaTeX{} is not trying to make +each line the same length. +\end{flushleft} +\end{example} + +\begin{example} +\begin{flushright} +This text is right-\\aligned. +\LaTeX{} is not trying to make +each line the same length. +\end{flushright} +\end{example} + +\begin{example} +\begin{center} +At the centre\\of the earth +\end{center} +\end{example} + +\subsection{Quote, Quotation, and Verse} + +The \ei{quote} environment is useful for quotes, important phrases and +examples. + +\begin{example} +A typographical rule of thumb +for the line length is: +\begin{quote} +On average, no line should +be longer than 66 characters. +\end{quote} +This is why \LaTeX{} pages have +such large borders by default and +also why multicolumn print is +used in newspapers. +\end{example} + +There are two similar environments: the \ei{quotation} and the +\ei{verse} environments. The \texttt{quotation} environment is useful +for longer quotes going over several paragraphs, because it indents the +first line of each paragraph. The \texttt{verse} environment is useful for poems +where the line breaks are important. The lines are separated by +issuing a \ci{\bs} at the end of a line and an empty line after each +verse. + + +\begin{example} +I know only one English poem by +heart. It is about Humpty Dumpty. +\begin{flushleft} +\begin{verse} +Humpty Dumpty sat on a wall:\\ +Humpty Dumpty had a great fall.\\ +All the King's horses and all +the King's men\\ +Couldn't put Humpty together +again. +\end{verse} +\end{flushleft} +\end{example} + +\subsection{Abstract} + +In scientific publications it is customary to start with an abstract which +gives the reader a quick overview of what to expect. \LaTeX{} provides the +\ei{abstract} environment for this purpose. Normally \ei{abstract} is used +in documents typeset with the article document class. + +\newenvironment{abstract}% + {\begin{center}\begin{small}\begin{minipage}{0.8\textwidth}}% + {\end{minipage}\end{small}\end{center}} +\begin{example} +\begin{abstract} +The abstract abstract. +\end{abstract} +\end{example} + +\subsection{Printing Verbatim} + +Text that is enclosed between \verb|\begin{|\ei{verbatim}\verb|}| and +\verb|\end{verbatim}| will be directly printed, as if typed on a +typewriter, with all line breaks and spaces, without any \LaTeX{} +command being executed. + +Within a paragraph, similar behavior can be accessed with +\begin{lscommand} +\ci{verb}\verb|+|\emph{text}\verb|+| +\end{lscommand} +\noindent The \verb|+| is just an example of a delimiter character. You can use any +character except letters, \verb|*| or space. Many \LaTeX{} examples in this +booklet are typeset with this command. + +\begin{example} +The \verb|\ldots| command \ldots + +\begin{verbatim} +10 PRINT "HELLO WORLD "; +20 GOTO 10 +\end{verbatim} +\end{example} + +\begin{example} +\begin{verbatim*} +the starred version of +the verbatim +environment emphasizes +the spaces in the text +\end{verbatim*} +\end{example} + +The \ci{verb} command can be used in a similar fashion with a star: + +\begin{example} +\verb*|like this :-) | +\end{example} + +The \texttt{verbatim} environment and the \verb|\verb| command may not be used +within parameters of other commands. + + +\subsection{Tabular} + +\newcommand{\mfr}[1]{\framebox{\rule{0pt}{0.7em}\texttt{#1}}} + +The \ei{tabular} environment can be used to typeset beautiful +\wi{table}s with optional horizontal and vertical lines. \LaTeX{} +determines the width of the columns automatically. + +The \emph{table spec} argument of the +\begin{lscommand} +\verb|\begin{tabular}[|\emph{pos}\verb|]{|\emph{table spec}\verb|}| +\end{lscommand} +\noindent command defines the format of the table. Use an \mfr{l} for a column of +left-aligned text, \mfr{r} for right-aligned text, and \mfr{c} for +centred text; \mfr{p\{\emph{width}\}} for a column containing justified +text with line breaks, and \mfr{|} for a vertical line. + +If the text in a column is too wide for the page, \LaTeX{} won't +automatically wrap it. Using \mfr{p\{\emph{width}\}} you can define +a special type of column which will wrap-around the text as in a normal paragraph. + +The \emph{pos} argument specifies the vertical position of the table +relative to the baseline of the surrounding text. Use either of the +letters \mfr{t}, \mfr{b} and \mfr{c} to specify table +alignment at the top, bottom or center. + +Within a \texttt{tabular} environment, \texttt{\&} jumps to the next +column, \ci{\bs} starts a new line and \ci{hline} inserts a horizontal +line. You can add partial lines by using the \ci{cline}\texttt{\{}\emph{j}\texttt{-}\emph{i}\texttt{\}}, +where j and i are the column numbers the line should extend over. + +\index{"|@ \verb."|.} + +\begin{example} +\begin{tabular}{|r|l|} +\hline +7C0 & hexadecimal \\ +3700 & octal \\ \cline{2-2} +11111000000 & binary \\ +\hline \hline +1984 & decimal \\ +\hline +\end{tabular} +\end{example} + +\begin{example} +\begin{tabular}{|p{4.7cm}|} +\hline +Welcome to Boxy's paragraph. +We sincerely hope you'll +all enjoy the show.\\ +\hline +\end{tabular} +\end{example} + +The column separator can be specified with the \mfr{@\{...\}} +construct. This command kills the inter-column space and replaces it +with whatever is between the curly braces. One common use for +this command is explained below in the decimal alignment problem. +Another possible application is to suppress leading space in a table with +\mfr{@\{\}}. + +\begin{example} +\begin{tabular}{@{} l @{}} +\hline +no leading space\\ +\hline +\end{tabular} +\end{example} + +\begin{example} +\begin{tabular}{l} +\hline +leading space left and right\\ +\hline +\end{tabular} +\end{example} + +% +% This part by Mike Ressler +% + +\index{decimal alignment} Since there is no built-in way to align +numeric columns to a decimal point,\footnote{If the `tools' bundle is + installed on your system, have a look at the \pai{dcolumn} package.} +we can ``cheat'' and do it by using two columns: a right-aligned +integer and a left-aligned fraction. The \verb|@{.}| command in the +\verb|\begin{tabular}| line replaces the normal inter-column spacing with +just a ``.'', giving the appearance of a single, +decimal-point-justified column. Don't forget to replace the decimal +point in your numbers with a column separator (\verb|&|)! A column label +can be placed above our numeric ``column'' by using the +\ci{multicolumn} command. + +\begin{example} +\begin{tabular}{c r @{.} l} +Pi expression & +\multicolumn{2}{c}{Value} \\ +\hline +$\pi$ & 3&1416 \\ +$\pi^{\pi}$ & 36&46 \\ +$(\pi^{\pi})^{\pi}$ & 80662&7 \\ +\end{tabular} +\end{example} + +\begin{example} +\begin{tabular}{|c|c|} +\hline +\multicolumn{2}{|c|}{Ene} \\ +\hline +Mene & Muh! \\ +\hline +\end{tabular} +\end{example} + +Material typeset with the tabular environment always stays together on one +page. If you want to typeset long tables, you might want to use the +\pai{longtable} environments. + +\section{Floating Bodies} +Today most publications contain a lot of figures and tables. These +elements need special treatment, because they cannot be broken across +pages. One method would be to start a new page every time a figure or +a table is too large to fit on the present page. This approach would +leave pages partially empty, which looks very bad. + +The solution to this problem is to `float' any figure or table that +does not fit on the current page to a later page, while filling the +current page with body text. \LaTeX{} offers two environments for +\wi{floating bodies}; one for tables and one for figures. To +take full advantage of these two environments it is important to +understand approximately how \LaTeX{} handles floats internally. +Otherwise floats may become a major source of frustration, because +\LaTeX{} never puts them where you want them to be. + +\bigskip +Let's first have a look at the commands \LaTeX{} supplies +for floats: + +Any material enclosed in a \ei{figure} or \ei{table} environment will +be treated as floating matter. Both float environments support an optional +parameter +\begin{lscommand} +\verb|\begin{figure}[|\emph{placement specifier}\verb|]| or +\verb|\begin{table}[|\emph{placement specifier}\verb|]| +\end{lscommand} +\noindent called the \emph{placement specifier}. This parameter +is used to tell \LaTeX{} about the locations to which the float +is allowed to be moved. A \emph{placement specifier} is constructed by building a string +of \emph{float-placing permissions}. See Table~\ref{tab:permiss}. + +\begin{table}[!bp] +\caption{Float Placing Permissions.}\label{tab:permiss} +\noindent \begin{minipage}{\textwidth} +\medskip +\begin{center} +\begin{tabular}{@{}cp{10cm}@{}} +Spec&Permission to place the float \ldots\\ +\hline +\rule{0pt}{1.05em}\texttt{h} & \emph{here} at the very place in the text + where it occurred. This is useful mainly for small floats.\\[0.3ex] +\texttt{t} & at the \emph{top} of a page\\[0.3ex] +\texttt{b} & at the \emph{bottom} of a page\\[0.3ex] +\texttt{p} & on a special \emph{page} containing only floats.\\[0.3ex] +\texttt{!} & without considering most of the internal parameters\footnote{Such as the + maximum number of floats allowed on one page.}, which could stop this + float from being placed. +\end{tabular} +\end{center} +Note that \texttt{pt} and \texttt{em} are \TeX{} units. Read more +on this in table \ref{units} on page \pageref{units}. +\end{minipage} +\end{table} + +A table could be started with the following line e.g.{} +\begin{code} +\verb|\begin{table}[!hbp]| +\end{code} +\noindent The \wi{placement specifier} \verb|[!hbp]| allows \LaTeX{} to +place the table right here (\texttt{h}) or at the bottom (\texttt{b}) +of some page +or on a special floats page (\texttt{p}), and all this even if it does not +look that good (\texttt{!}). If no placement specifier is given, the standard +classes assume \verb|[tbp]|. + +\LaTeX{} will place every float it encounters according to the +placement specifier supplied by the author. If a float cannot be +placed on the current page it is deferred either to the +\emph{figures} or the \emph{tables} queue.\footnote{These are FIFO---`first in first out'---queues!} When a new page is started, +\LaTeX{} first checks if it is possible to fill a special `float' +page with floats from the queues. If this is not possible, the first +float on each queue is treated as if it had just occurred in the +text: \LaTeX{} tries again to place it according to its +respective placement specifiers (except `h,' which is no longer +possible). Any new floats occurring in the text get placed into the +appropriate queues. \LaTeX{} strictly maintains the original order of +appearance for each type of float. That's why a figure that cannot +be placed pushes all further figures to the end of the document. +Therefore: + +\begin{quote} +If \LaTeX{} is not placing the floats as you expected, +it is often only one float jamming one of the two float queues. +\end{quote} + +While it is possible to give \LaTeX{} single-location placement +specifiers, this causes problems. If the float does not fit in the +location specified it becomes stuck, blocking subsequent floats. +In particular, you should never, ever use the [h] option---it is so bad +that in more recent versions of \LaTeX, it is automatically replaced by +[ht]. + +\bigskip +\noindent Having explained the difficult bit, there are some more things to +mention about the \ei{table} and \ei{figure} environments. +With the + +\begin{lscommand} +\ci{caption}\verb|{|\emph{caption text}\verb|}| +\end{lscommand} + +\noindent command, you can define a caption for the float. A running number and +the string ``Figure'' or ``Table'' will be added by \LaTeX. + +The two commands + +\begin{lscommand} +\ci{listoffigures} and \ci{listoftables} +\end{lscommand} + +\noindent operate analogously to the \verb|\tableofcontents| command, +printing a list of figures or tables, respectively. These lists will +display the whole caption, so if you tend to use long captions +you must have a shorter version of the caption for the lists. +This is accomplished by entering the short version in brackets after +the \verb|\caption| command. +\begin{code} +\verb|\caption[Short]{LLLLLoooooonnnnnggggg}| +\end{code} + +With \verb|\label| and \verb|\ref|, you can create a reference to a float +within your text. + +The following example draws a square and inserts it into the +document. You could use this if you wanted to reserve space for images +you are going to paste into the finished document. + +\begin{code} +\begin{verbatim} +Figure~\ref{white} is an example of Pop-Art. +\begin{figure}[!hbp] +\makebox[\textwidth]{\framebox[5cm]{\rule{0pt}{5cm}}} +\caption{Five by Five in Centimetres.\label{white}} +\end{figure} +\end{verbatim} +\end{code} + +\noindent In the example above, +\LaTeX{} will try \emph{really hard}~(\texttt{!})\ to place the figure +right \emph{here}~(\texttt{h}).\footnote{assuming the figure queue is + empty.} If this is not possible, it tries to place the figure at the +\emph{bottom}~(\texttt{b}) of the page. Failing to place the figure +on the current page, it determines whether it is possible to create a float +page containing this figure and maybe some tables from the tables +queue. If there is not enough material for a special float page, +\LaTeX{} starts a new page, and once more treats the figure as if it +had just occurred in the text. + +Under certain circumstances it might be necessary to use the + +\begin{lscommand} +\ci{clearpage} or even the \ci{cleardoublepage} +\end{lscommand} + +\noindent command. It orders \LaTeX{} to immediately place all +floats remaining in the queues and then start a new +page. \ci{cleardoublepage} even goes to a new right-hand page. + +You will learn how to include \PSi{} +drawings into your \LaTeXe{} documents later in this introduction. + +\section{Protecting Fragile Commands} + +Text given as arguments of commands like \ci{caption} or \ci{section} may +show up more than once in the document (e.g. in the table of contents as +well as in the body of the document). Some commands will break when used in +the argument of \ci{section}-like commands. Compilation of your document +will fail. These commands are called \wi{fragile commands}---for example, +\ci{footnote} or \ci{phantom}. These fragile commands need protection (don't +we all?). You can protect them by putting the \ci{protect} command in front +of them. + +\ci{protect} only refers to the command that follows right behind, not even +to its arguments. In most cases a superfluous \ci{protect} won't hurt. + +\begin{code} +\verb|\section{I am considerate|\\ +\verb| \protect\footnote{and protect my footnotes}}| +\end{code} + +% Local Variables: +% TeX-master: "lshort2e" +% mode: latex +% mode: flyspell +% End: diff --git a/Master/texmf-doc/doc/finnish/lshort-finnish/src/viritys.tex b/Master/texmf-doc/doc/finnish/lshort-finnish/src/viritys.tex new file mode 100644 index 00000000000..5a0eea1c5ce --- /dev/null +++ b/Master/texmf-doc/doc/finnish/lshort-finnish/src/viritys.tex @@ -0,0 +1,886 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Contents: Customising LaTeX output +% $Id: viritys.tex,v 1.1.1.1 2002/12/01 08:05:09 hellgren Exp $ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\chapter{\LaTeX:n virittely} + +\begin{intro} +Tähän asti opetuilla käskyillä tehdyt dokumentit ovat järjellisen +näköisiä suurimmalle osalle. Vaikka ne eivät ole mitenkään erikoisen +näköisiä, ne noudattavat korkealaatuisen typografian vakiintuneita +sääntöjä, jotka tekevät dokumenteista helppolukuisia ja silmää +miellyttäviä. + +On kuitenkin tilanteita, joissa \LaTeX{} ei tarjoa tarpeisiin +sopivia käskyjä tai ympäristöjä tai sitten käytössä olleilla +käskyillä tuotettu ulkoasu ei täytä sille asetettuja vaatimuksia. + +Tässä luvussa annetaan joitakin vinkkejä siitä, miten +\LaTeX:lle opetetaan uusia temppuja ja miten sen tulostama +ulkoasu saadaan näyttämään erilaiselta. +\end{intro} + +\section{Uudet käskyt, ympäristöt ja makropakkaukset} + +Lukija on varmaankin huomannut, että kaikki tässä kirjasessa +esitetyt komennot on ladottu laatikon sisään ja ne esiintyvät +kirjasen lopussa olevassa hakemistossa. Tätä varten kirjoittaja +on luonut makropaketin \index{makropaketti}, jossa on +määritelty uusia komentoja ja ympäristöjä tätä tarkoitusta varten. +Nyt voidaan kirjoittaa yksinkertaisesti: + +\begin{example} +\begin{lscommand} +\ci{esim} +\end{lscommand} +\end{example} + +Tässä esimerkissä käytetään sekä uutta \ei{lscommand}-ympäristöä, +joka vastaa laatikon piirtämisestä komennon ympärille, että +uutta \ci{ci}-komentoa, joka latoo komennon nimen ja lisää +vastaavan hakusanan hakemistoon. Tämän voi tarkistaa etsimällä +\ci{esim}-komentoa tämän kirjasen hakemistosta, josta löytyy +hakusana \ci{esim}, joka viittaa joka sivulle, jossa esim-komento +on mainittu. + +Jos tekijä päättää, ettei halua enää komentoja ladottavan laatikon +sisään, voidaan \texttt{command}-ympäristön määrittelyjä muuttaa. +Tämä on helpompaa kuin etsiä dokumentista kaikki ne kohdat, joissa +sanojen ympärille on piirretty laatikko \LaTeX:n +peruskäskyillä. + + +\subsection{Uudet käskyt} + +Omien käskyjen lisäämiseen käytetään +\begin{lscommand} +\ci{newcommand}\verb|{|% + \emph{nimi}\verb|}[|\emph{numero}\verb|]{|\emph{määritelmä}\verb|}| +\end{lscommand} +\noindent "=komentoa. +Komento tarvitsee vähintään kaksi argumenttia: uuden komennon \emph{nimen} +ja komennon \emph{määritelmän}. Hakasulkeissa oleva \emph{numero} on +vaihtoehtoinen. Sitä voidaan käyttää määrittelemään komentoja, jotka +saavat maksimissaan 9 argumenttia. Jos se puuttuu, argumenttien määräksi +oletataan 0 eli ei lainkaan argumentteja. + +Asia pitäisi selvitä seuraavasta kahdesta esimerkistä. Ensimmäinen +esimerkki määrittelee uuden \ci{pjlk}-komennon. Se on lyhenne +sanoista ''Pitkänpuoleinen johdanto \LaTeX2e:n käyttöön''. Kyseinen +komento voi olla tarpeen, jos tämän kirjasen nimi pitäisi latoa +yhä uudelleen ja uudelleen. + +\begin{example} +\newcommand{\pjlk}{Pitkänpuoleinen + johdanto \LaTeX2e:n + käyttöön} +Tämä on ''\pjlk'' \ldots{} +''\pjlk'' +\end{example} + +Seuraava esimerkki esittää \emph{numero}-argumentin käyttöä. +\verb|#1|:n tilalle tulee käyttäjän antama argumentti. Jos halutaan +käyttää useampia argumentteja, jatketaan numerointia \verb|#2| jne. + +\begin{example} +\newcommand{\txsit}[1] + {Tämä on \emph{#1} johdanto + \LaTeX2e:n käyttöön} +% varsinaisessa dokumentissa: +\begin{itemize} +\item \txsit{pitkänpuoleinen} +\item \txsit{hyvin lyhyt} +\end{itemize} +\end{example} + +\LaTeX{} ei anna määritellä uutta komentoa, jolla on sama nimi +kuin jollain jo määritellyllä. Tätä varten on kuitenkin olemassa +erityinen komento: \ci{renewcommand}. +Sen syntaksi on sama kuin \verb|\newcommand|-komennon. + +Tietyissä tilanteissa halutaan ehkä käyttää +\ci{providecommand}-komentoa. Se toimii kuten \ci{newcommand}, +mutta jos samanniminen komento on jo määritelty \LaTeX{} +jättää uuden määrittelyn huomiotta. + +\LaTeX:n komentoja seuraavissa välilyönneissä on tiettyjä seikkoja, +jotka tulee ottaa huomioon. Katso sivulta \pageref{whitespace} lisätietoja. + +\subsection{Uudet ympäristöt} + +Ympäristöjen määrittelemiseksi on samantapainen komento kuin +\verb|\newcommand|. \ci{newenvironment}-komennon syntaksi on seuraava: + +\begin{lscommand} +\ci{newenvironment}\verb|{|% + \emph{nimi}\verb|}[|\emph{numero}\verb|]{|% + \emph{ennen}\verb|}{|\emph{jälkeen}\verb|}| +\end{lscommand} + +Myös \ci{newenvironment}-komentoa voidaan käyttää vaihtoehtoisen +argumentin kanssa tai ilman. \emph{ennen}-argumentin materiaali +käsitellään ennen kuin ympäristössä olevaa tekstiä käsitellään. +\emph{jälkeen}-argumentin materiaali käsitellään sen jälkeen +kun vastaan on tullut \verb|\end{|\emph{nimi}\verb|}|-komento. + +Alla oleva esimerkki kuvaa \ci{newenvironment}-komennon käyttöä. +\begin{example} +\newenvironment{kuningas} + {\rule{1ex}{1ex}% + \hspace{\stretch{1}}} + {\hspace{\stretch{1}}% + \rule{1ex}{1ex}} + +\begin{kuningas} +Uskolliset alamaiseni \ldots +\end{kuningas} +\end{example} + +Argumenttia \emph{numero} käytetään samalla tavoin kuin +\verb|\newcommand|"-komennossa. \LaTeX{} varmistaa, ettei jo +olemassa olevaa ympäristöä aleta määritellä. Jos olemassa olevaa +ympäristöä pitää muuttaa, siihen voidaan käyttää komentoa \ci{renewenvironment}. +Se käyttää samaa syntaksia kuin komento \ci{newenvironment}. + +Esimerkissä käytetyt komennot selitetään myöhemmin: katso komentoa +\ci{rule} sivulta \pageref{sec:rule}, \ci{stretch} sivulta \pageref{cmd:stretch} +ja lisätietoa \ci{hspace}:sta saa sivulta \pageref{sec:hspace}. + +\subsection{Ylimääräiset välit} + +Uuteen ympäristöön tulee helposti mukaan ylimääräisiä tyhjiä välejä, joilla +voi olla kohtalokkaat vaikutukset. Otetaan esimerkiksi +otsikkoympäristö, jossa ei käytetään sisennystä eikä myöskään sitä +seuraavassa kappaleessa. Komento \ci{ignorespaces} ymäpäristön aloituksen +määrittelyissä estää rivinvaihtoja tekemästä tyhjiä välejä. +Ympäristön lopetuksen määrittely on hankalampi tapaus. Komennolla +\ci{ignorespacesafterend} panee {\LaTeX}:n lisäämään komennon +\ci{ignorespaces} kun ympäristö on päättynyt. + +\begin{example} +\newenvironment{simple}% + {\noindent}% + {\par\noindent} + +\begin{simple} +Huomaa välilyönti\\vasemmalla. +\end{simple} +Tässä\\myös. +\end{example} + +\begin{example} +\newenvironment{correct}% + {\noindent\ignorespaces}% + {\par\noindent\ignorespacesafterend} + +\begin{correct} +Vasemmalla ei ole\\välilyöntiä. +\end{correct} +Sama\\tässä. +\end{example} + +\subsection{\LaTeX{} komentorivillä} + +Unixin tapaisissa käyttöjärjestelmissä voidaan {\LaTeX}-projektien +koostamiseen käyttää Makefile-tiedostoja. Tähän liittyen voisi olla +mielenkiintoista tuottaa erilaisia versioita samasta dokumentista +kutsumalla {\LaTeX}:ia erilaisilla komentorivin parametreilla. Mikäli +dokumenttiin lisätään seuraava rakenne: + +\begin{verbatim} +\usepackage{ifthen} +\ifthenelse{\equal{\blackandwhite}{true}}{ + % mustavalkotila; jotain tehdään.. +}{ + % väritila; jotain muuta tehdään.. +} +\end{verbatim} + +Nyt {\LaTeX}:ia voidaan kutsua näin: +\begin{verbatim} +latex '\newcommand{\blackandwhite}{true}\input{test.tex}' +\end{verbatim} + +Ensin määritellään komento \verb|\blackandwhite| ja sitten luetaan varsinainen tiedosto. +Mikäli \verb|\blackandwhite| saa arvon \texttt{false}, dokumentista tehdään väriversio. + +\subsection{Omat makropakkaukset} + +Jos dokumentissa määritellään paljon uusia ympäristöjä ja komentoja, tulee +esittelyosasta pitkän puoleinen. Silloin on parempi tehdä makropakkaus, +joka sisältää kaikki uudet määrittelyt. Makropakkaus saadaan käyttöön +komennolla \ci{usepackage}. + +\begin{figure}[!htbp] +\begin{lined}{\textwidth} +\begin{verbatim} +% Tobias Oetikerin demopaketti +\ProvidesPackage{demopack} +\newcommand{\pjlk}{Pitkänpuoleinen johdanto \LaTeXe:n käyttöön} +\newcommand{\txsit}[1]{The \emph{#1} Johdanto + \LaTeXe:n käyttöön} +\newenvironment{king}{\begin{quote}}{\end{quote}} +\end{verbatim} +\end{lined} +\caption{Esimerkkipakkaus} \label{package} +\end{figure} + +Makropaketin kirjoittaminen vastaa oikeastaan dokumentin johdanto-osan +sisällön kopioimista erilliseen tiedostoon, jolla on \texttt{.sty}-pääte. +Makropakettitiedoston alussa annetaan erityinen +\begin{lscommand} +\ci{ProvidesPackage}\verb|{|\emph{makropaketin nimi}\verb|}| +\end{lscommand} +\noindent komento. \verb|\ProvidesPackage| kertoo \LaTeX:lle paketin +nimen. LaTeX{} antaa virheilmoituksen, mikäli makropaketti yritetään +ottaa käyttöön toistamiseen. Kuvassa \ref{package} on pieni esimerkkimakropakkaus, +joka sisältää edellisissä esimerkeissä esitetyt komennot. + +\section{Kirjasinmalli ja "=koko} + +\subsection{Kirjasimen vaihtokomennot} + +\index{kirjasin}\index{kirjasimen koko} \LaTeX{} valitsee kirjasimen leikkauksen +ja koon dokumentin loogisen rakenteen (otsikot, alaviitteet \ldots) perusteella. +Joissain tapauksissa kirjasinleikkaus ja "=koko halutaan ehkä muuttaa käsin. +Se voidaan tehdä taulukoissa~\ref{fonts} ja \ref{sizes} listatuilla komennoilla. +Jokaisen kirjasimen varsinainen koko riippuu dokumentin luokasta ja sen optioista. +Taulukossa~\ref{tab:pointsizes} esitetään näitä komentoja vastaavat absoluuttiset +pistekoot, sellaisina kuin ne on määritelty dokumenttien standardiluokissa. + +\begin{example} +{\small Pienet ja +\textbf{lihavat} latinot} +{\Large isottelivat käyttäen +\textit{kursiivia}.} +\end{example} + +\LaTeXe:n eräs tärkeä ominaisuus on se, että kirjasinten määreet ovat +toisistaan riippumattomia. Tämä tarkoittaa sitä, että kirjasimen kokoa +ja jopa leikkausta voidaan muuttaa ja samalla säilyttää aikaisemmin +määritellyt lihavoinnin tai vinouden määreet. + +\emph{Matematiikkatilassa} voidaan kirjasimen vaihtokomentoja käyttää +poistumiseen \emph{matematiikkatilasta} normaaliin tekstitilaan. Jos +kirjasinta halutaan vaihtaa matematiikkaa ladottaessa, on sitä varten +toinen kokoelma komentoja. Katso talukosta~\ref{mathfonts}. + +\begin{table}[!bp] +\caption{Kirjasimet} \label{fonts} +\begin{lined}{12cm} +% +% Alan suggested not to tell about the other form of the command +% eg \verb|\sffamily| or \verb|\bfseries|. This seems a good thing to me. +% +\begin{tabular}{@{}rl@{\qquad}rl@{}} +\ci{textrm}\verb|{...}| & \textrm{\wi{antiikva}}& +\ci{textsf}\verb|{...}| & \textsf{\wi{groteski}}\\ +\ci{texttt}\verb|{...}| & \texttt{kirjoituskone}\\[6pt] +\ci{textmd}\verb|{...}| & \textmd{keskivahva}& +\ci{textbf}\verb|{...}| & \textbf{\wi{lihavoitu}}\\[6pt] +\ci{textup}\verb|{...}| & \textup{\wi{pysty}}& +\ci{textit}\verb|{...}| & \textit{\wi{kursiivi}}\\ +\ci{textsl}\verb|{...}| & \textsl{\wi{vino}}& +\ci{textsc}\verb|{...}| & \textsc{\wi{kapiteelit}}\\[6pt] +\ci{emph}\verb|{...}| & \emph{korostettu} & +\ci{textnormal}\verb|{...}| & \textnormal{dokumentin} kirjasin +\end{tabular} + +\bigskip +\end{lined} +\end{table} + + +\begin{table}[!bp] +\index{kirjasinkoot} +\caption{Kirjasinkoot} \label{sizes} +\begin{lined}{12cm} +\begin{tabular}{@{}ll} +\ci{tiny} & \tiny pikkuruinen kirjasin \\ +\ci{scriptsize} & \scriptsize hyvin pieni kirjasin\\ +\ci{footnotesize} & \footnotesize melko pieni kirjasin\\ +\ci{small} & \small pieni kirjasin \\ +\ci{normalsize} & \normalsize normaali kirjasin \\ +\ci{large} & \large iso kirjasin +\end{tabular}% +\qquad\begin{tabular}{ll@{}} +\ci{Large} & \Large isompi kirjasin \\[5pt] +\ci{LARGE} & \LARGE hyvin iso kirjasin \\[5pt] +\ci{huge} & \huge valtava \\[5pt] +\ci{Huge} & \Huge suurin +\end{tabular} + +\bigskip +\end{lined} +\end{table} + +\begin{table}[!tbp] +\caption{Absoluuttiset pistekoot standardiluokissa}\label{tab:pointsizes} +\label{tab:sizes} +\begin{lined}{12cm} +\begin{tabular}{lrrr} +\multicolumn{1}{c}{koko} & +\multicolumn{1}{c}{10pt (oletusarvo) } & + \multicolumn{1}{c}{11pt optio} & + \multicolumn{1}{c}{12pt optio}\\ +\verb|\tiny| & 5pt & 6pt & 6pt\\ +\verb|\scriptsize| & 7pt & 8pt & 8pt\\ +\verb|\footnotesize| & 8pt & 9pt & 10pt \\ +\verb|\small| & 9pt & 10pt & 11pt \\ +\verb|\normalsize| & 10pt & 11pt & 12pt \\ +\verb|\large| & 12pt & 12pt & 14pt \\ +\verb|\Large| & 14pt & 14pt & 17pt \\ +\verb|\LARGE| & 17pt & 17pt & 20pt\\ +\verb|\huge| & 20pt & 20pt & 25pt\\ +\verb|\Huge| & 25pt & 25pt & 25pt\\ +\end{tabular} + +\bigskip +\end{lined} +\end{table} + + +\begin{table}[!bp] +\caption{Matemaattiset kirjasimet} \label{mathfonts} +\begin{lined}{0.7\textwidth} +\begin{tabular}{@{}ll@{}} +\fni{mathrm}\verb|{...}|& $\mathrm{Antiikva\ kirjasin}$\\ +\fni{mathbf}\verb|{...}|& $\mathbf{Lihavoitu\ kirjasin}$\\ +\fni{mathsf}\verb|{...}|& $\mathsf{Groteski\ kirjasin}$\\ +\fni{mathtt}\verb|{...}|& $\mathtt{Konekirjoituskirjasin}$\\ +\fni{mathit}\verb|{...}|& $\mathit{Kursiivi\ kirjasin}$\\ +\fni{mathcal}\verb|{...}|& $\mathcal{KALLIGRAFINEN\ KIRJASIN}$\\ +\fni{mathnormal}\verb|{...}|& $\mathnormal{Normaali\ kirjasin}$\\ +\end{tabular} + +%\begin{tabular}{@{}lll@{}} +%\textit{Komento}&\textit{Esimerkki}& \textit{Tulos}\\[6pt] +%\ci{mathcal}\verb|{...}|& \verb|$\mathcal{B}=c$|& $\mathcal{B}=c$\\ +%\ci{mathrm}\verb|{...}|& \verb|$\mathrm{K}_2$|& $\mathrm{K}_2$\\ +%\ci{mathbf}\verb|{...}|& \verb|$\sum x=\mathbf{v}$|& $\sum x=\mathbf{v}$\\ +%\ci{mathsf}\verb|{...}|& \verb|$\mathsf{G\times R}$|& $\mathsf{G\times R}$\\ +%\ci{mathtt}\verb|{...}|& \verb|$\mathtt{L}(b,c)$|& $\mathtt{L}(b,c)$\\ +%\ci{mathnormal}\verb|{...}|& \verb|$\mathnormal{R_{19}}\neq R_{19}$|& +%$\mathnormal{R_{19}}\neq R_{19}$\\ +%\ci{mathit}\verb|{...}|& \verb|$\mathit{ffi}\neq ffi$|& $\mathit{ffi}\neq ffi$ +%\end{tabular} + +\bigskip +\end{lined} +\end{table} + +Kirjasinkokojen yhteydessä aaltosulkeilla \index{aaltosulkeet} on +merkittävä rooli. Niitä käytetään \emph{ryhmittelyyn}. Ryhmittely rajoittaa +useimpien \LaTeX:n komentojen vaikutusaluetta. \index{ryhmittely} + +\begin{example} +Hän pitää {\LARGE Suurista ja +{\small pienistä} kirjaimista}. +\end{example} + +Kirjasinkoon muutos vaikuttaa myös riviväleihin, mutta vain jos +kappale päättyy ennen kuin kirjasinkokoa vaihtavan komennon vaikutus +päättyy. Lopettavaa suljetta \verb|}| ei pitäisi siis käyttää liian +aikaisin. Huomaa seuraavissa kahdessa esimerkissä \verb|\par|-komennon +sijainti.\footnote{\texttt{\bs{}par} +vastaa kappaleiden välissä olevaa tyhjää riviä.} + +\begin{example} +{\Large Älä lue tätä! Se ei ole +totta. Usko huviksesi!\par} +\end{example} + +\begin{example} +{\Large Tämäkään ei ole totta. +Mutta minä olenkin valehtelija.}\par +\end{example} + +Jos kirjasinkokoa halutaan vaihtaa koko kappaleessa tai vielä suuremmassa +osassa tekstiä, halutaan ehkä käyttää ympäristöä kirjasinkoon vaihtamiseksi. + +\begin{example} +\begin{Large} +Tämä ei ole totta. +Mutta mikä nykyään +on \ldots +\end{Large} +\end{example} + +\noindent Tämä säästää sulkeiden laskemiselta. + +\subsection{Vaaksa väärään voi olla virsta vaaraan} + +Kuten tämän luvun alussa todettiin, voi olla vaarallista sorkkia +dokumenttia tällaisilla komennoilla, sillä ne toimivat vastoin +\LaTeX:n perusajatusta, joka on dokumentin loogisen ja visuaalisen +muotoilun erottaminen toisistaan. Tämä tarkoittaa sitä, että +kun samaa kirjasinta vaihtavaa komentoa käytetään useammassa paikassa +tietyn tyyppistä tietoa ladottaessa, pitäisi käyttää +\verb|\newcommand|-määritystä määrittelemään ''looginen peitekomento'', +joka käyttää kyseistä kirjasinkomentoa. + +\begin{example} +\newcommand{\hups}[1]{\textbf{#1}} +Älä \hups{tule} tähän huoneeseen, +siinä on tuntematonta alkuperää +oleva \hups{kone}. +\end{example} + +Tällä tavalla on se etu, että myöhemmin voidaan päättää, halutaanko +vaaraa ilmaisemaan jokin muu visuaalinen keino kuin \verb|\textbf| +ilman, että täytyisi etsiä dokumentista kaikki kohdat, joissa +on \verb|\textbf| ja joissa sitä on käytetty nimenomaan ilmaisemaan +vaaraa. + +\subsection{Neuvo} + +Tämän matkan kirjasinten ja kirjasinkokojen maailmaan päättää +muutama neuvon sananen:\nopagebreak + +\begin{quote} + \underline{\textbf{Muista\Huge!}} \textit{Mitä} + \textsf{EN\textbf{\LARGE EM} \texttt{M}\textsl{ÄN}} kirjasimia \Huge + dokumentissa \tiny käytetään \footnotesize \textbf{sitä} \small \texttt{luettavampi}, + \large \textit{ja} \normalsize \textsc{kauniimpi} + \textsl{\textsf{siitä} t\large u\Large l\LARGE e\huge e}. +\end{quote} + +\section{Välistys} + +\subsection{Rivivälit} + +\index{riviväli} Mikäli dokumentissa halutaan käyttää isompaa riviväliä, +voidaan sitä muuttaa panemalla +\begin{lscommand} +\ci{linespread}\verb|{|\emph{kerroin}\verb|}| +\end{lscommand} +\noindent "=komento dokumentin esittelyosaan. \verb|\linespread{1.3}| +käytetään ''yhden ja puolen'' riviväliin ja \verb|\linespread{1.6}| ''kakkosen'' +riviväliin. Normaalisti riviväliä ei levitetä, joten kerroin on silloin 1. +\index{kakkosen riviväli} + +Komennon \ci{linespread} huomattavat vaikutukset eivät sovi julkaistaviin töihin. +Mikäli rivivälin muuttamiseen on hyvät syyt, on ehkä syytä käyttää +komentoa: +\begin{lscommand} +\verb|\setlength{\baselineskip}{1.5\baselineskip}| +\end{lscommand} + +\begin{example} +{\setlength{\baselineskip}% + {1.5\baselineskip} +Tämä kappale on ladottu 1,5 kertaa +leveämmällä rivivälillä. Huomaa +par-komento kappaleen lopussa.\par} + +Tämän kappaleen tarkoitus on esittää, +että sulkeen jälkeen riviväli on +taas normaali. +\end{example} + +\subsection{Kappaleen muotoilu}\label{parsp} + +\LaTeX:ssa on kaksi kappaleen ulkoasuun vaikuttavaa parametria. +Panemalla käsikirjoitustiedoston esittelyosaan määrittelyn +\begin{code} +\ci{setlength}\verb|{|\ci{parindent}\verb|}{0pt}| \\ +\verb|\setlength{|\ci{parskip}\verb|}{1ex plus 0.5ex minus 0.2ex}| +\end{code} +voidaan kappaleiden ulkoasua muuttaa. Nämä kaksi komentoa kasvattavat +kappaleiden väliä ja samalla asettavat ensimmäisen rivin sisennyksen +nollaksi. + +Yllä olevan esimerkin \texttt{plus} ja \texttt{minus} kertovat +\TeX:lle, että kappaleiden väliä voidaan kasvattaa tai kutistaa +kerrottu määrä, jos näin kappaleet sopivat sivulle paremmin. + +Mannereurooppalaisessa typografiassa (myös Suomessa) kappaleiden +väliin tulee usein tyhjä rivi eikä ensimmäistä riviä sisennetä. Tämä +vaikuttaa myös sisällysluetteloon. Sen rivit ladotaan myös väljemmin. +Tämän välttämiseksi voi olla parempi siirtää nämä kaksi komentoa +esittelyosasta johonkin kohtaan \verb|\tableofcontents|-käskyn jälkeen +tai sitten jättää käyttämästä niitä, sillä useimmissa ammattilaisen +tekemissä kirjoissa ensimmäinen rivi on sisennetty eikä kappaleiden +välissä ole tyhjää riviä. + +Jos halutaan sisentää sellaisen kappaleen ensimmäinen rivi, jossa se +ei ole sisennetty voidaan käyttää +\begin{lscommand} +\ci{indent} +\end{lscommand} +\noindent "=komentoa kappaleen alussa.\footnote{Jos halutaan sisentää otsikon jälkeinen +ensimmäinen kappale, kannattaa käyttää 'tools'-kokoelman \pai{indentfirst}-makropakkausta.} +Tämä toimii luonnollisesti vain silloin kuin \verb|\parindent| ei ole saanut +arvoa nolla. + +Jos halutaan luoda sisentämätön kappale, voidaan käyttää +\begin{lscommand} +\ci{noindent} +\end{lscommand} +\noindent "=käskyä kappaleen alussa. Tästä voi olla hyötyä silloin kun +dokumentti alkaa suoraan leipätekstillä eikä jollain otsikolla. + +\subsection{Vaakasuora välistys} + +\label{sec:hspace} +\LaTeX{} määrittelee sanojen ja lauseiden välit automaattisesti. +Vaakavälistyksen lisäämiseksi käytetään komentoa\index{vaakavälistys} +\begin{lscommand} +\ci{hspace}\verb|{|\emph{mitta}\verb|}| +\end{lscommand} +Jos tämä välistys tulee säilyttää vaikka se osuisi rivin loppuun tai +alkuun, käytetään \verb|\hspace*|"=komentoa \verb|\hspace|"=komennon +sijasta. \emph{Mitta} on yksinkertaisimmillaan vain numero ja mittayksikkö. +Tärkeimmät mittayksiköt on listattu taulukossa~\ref{units}. +\index{mittayksiköt} + +\begin{example} +Tämä\hspace{1.5cm} on 1,5 cm:n +mittainen väli. +\end{example} +\suppressfloats +\begin{table}[tbp] +\caption{\TeX:n mittayksiköt} \label{units} +\begin{lined}{9.5cm} +\begin{tabular}{@{}ll@{}} +\texttt{mm} & millimetri $\approx 1/25$~tuumaa \quad \demowidth{1mm} \\ +\texttt{cm} & senttimetri = 10~mm \quad \demowidth{1cm} \\ +\texttt{in} & tuuma $=$ 25.4~mm \quad \demowidth{1in} \\ +\texttt{pt} & piste $\approx 1/72$~tuumaa $\approx \frac{1}{3}$~mm \quad\demowidth{1pt}\\ +\texttt{em} & käytössä olevan kirjasimen 'M':n leveys \quad \demowidth{1em}\\ +\texttt{ex} & käytössä olevan kirjasimen 'x':n korkeus \quad \demowidth{1ex} +\end{tabular} + +\bigskip +\end{lined} +\end{table} + +\label{cmd:stretch} +Komento +\begin{lscommand} +\ci{stretch}\verb|{|\emph{n}\verb|}| +\end{lscommand} +\noindent luo erityisen kumisen välin. Se venyy niin pitkälle, että +rivillä jäljellä oleva tila tulee täyteen. Jos samalla rivillä +annetaan kaksi \verb|\hspace{\stretch{|\emph{n}\verb|}}|"-komentoa, +kasvavat välit venymiskertoimen mukaisesti. + +\begin{example} +x\hspace{\stretch{1}} +x\hspace{\stretch{3}}x +\end{example} + +Tekstiä välistettäessä voi olla järkevää, että välit riippuvat +käytetyn kirjasimen koosta. Tätä varten on olemessa suhteelliset +mittayksiköt \texttt{em} ja \texttt{ex}.: + +\begin{example} +{\Large{}iso\hspace{1em}y}\\ +{\tiny{}pieni\hspace{1em}y} +\end{example} + +\subsection{Pystysuora välistys} + +Kappaleiden, otsikoiden \ldots\ välit \LaTeX{} määrittää automaattisesti. +Tarvittaessa \emph{kahden kappaleen väliin} voidaan lisätä ylimääräinen +väli komennolla +\begin{lscommand} +\ci{vspace}\verb|{|\emph{mitta}\verb|}| +\end{lscommand} + +Tätä komentoa pitäisi normaalisti käyttää kahden tyhjän rivin välissä. +Jos tämä väli pitäisi säilyttää myös sivun ylä"- tai alareunassa, käytetään +komennon tähtiversiota \verb|\vspace*|. +\index{pystysuora välistys} + +Komentoa \verb|\stretch| voidaan käyttää \verb|\pagebreak|:n yhteydessä +latomaan sivun viimeinen rivi tai keskittämään teksti sivulla pystysuunnassa. +\begin{code} +\begin{verbatim} +Vähän tekstiä \ldots + +\vspace{\stretch{1}} +Tämä menee sivun viimeiselle riville.\pagebreak +\end{verbatim} +\end{code} + +Ylimääräistä väliä lisätään \emph{saman} kappaleen kahden rivin väliin +\begin{lscommand} +\ci{\bs}\verb|[|\emph{mitta}\verb|]| +\end{lscommand} +\noindent "=komennolla. + +Mikäli väliä ei haluta määritellä tarkkaan, voidaan käyttää komentoja +\ci{bigskip} (isoon väliin) ja \ci{smallskip} (pieneen väliin). + +\section{Sivun ulkoasu} + +\begin{figure}[!hp] +\begin{center} +\makeatletter\@layout\makeatother +\end{center} +\vspace*{1.8cm} +\caption{Sivun ulkoasun asetukset.} +\label{fig:layout} +\cih{footskip} +\cih{headheight} +\cih{headsep} +\cih{marginparpush} +\cih{marginparsep} +\cih{marginparwidth} +\cih{oddsidemargin} +\cih{paperheight} +\cih{paperwidth} +\cih{textheight} +\cih{textwidth} +\cih{topmargin} +\end{figure} +\index{page layout} + +\index{sivun ulkoasu} +\LaTeXe{} antaa mahdollisuuden määritellä arkkikoon \index{arkin koko} +\verb|\documentclass|"-komennossa. \LaTeXe{} valitsee sitten automaattisesti +\wi{marginaalit}. Joskus kuitenkin ennalta määrätyt arvot eivät tyydytä. +Niitä voidaan luonnollisesti muuttaa. +%no idea why this is needed here ... +\thispagestyle{fancyplain} +Kuvassa~\ref{fig:layout} näytetään kaikki muutettavissa olevat parametrit. +Kuva on tehty 'tools' kokoelman \pai{layout}-makropakkauksella.% +\footnote{\CTANref|tex-archive/macros/latex/required/tools|}. + +\textbf{SEIS!} \ldots ennenkuin syöksytään ''kapeat sivut leveämmäksi kiihkoon'' +kannattaa asiaa miettiä ensin muutama sekunti. Kuten muillakin asioissa \LaTeX:ssa, +on sivun ulkoasulla tarkoituksensa. + +Niinpä, MS Wordilla tehtyihin sivuihin verrattuna ne näyttävät hyvinkin kapeilta. +Katsotaanpa kuitenkin lukijan mielikirjaa\footnote{Nyt on kyse vakavaraisen kustantajan +julkaisemasta oikeasta painetusta kirjasta.} ja lasketaan rivillä keskimäärin +olevien merkkien määrä. Huomataan, että rivillä on vain noin 66 merkkiä. +Tehdäänpä sama myös \LaTeX:n sivulla. Huomataan, että myös siinä on 66 merkkiä +rivillä. Kokemus osoittaa, että lukeminen vaikeutuu heti kun rivillä on +enemmän merkkejä. Tämä johtuu siitä, että silmiä on vaikea siirtää +rivin lopusta seuraavan rivin alkuun. Samasta syystä sanomalehdet ladotaan +useammalla palstalla. + +Eli jos leipätekstin leveyttä lisätään on muistettava, että lukijoiden +elämä tehdään vaikeammaksi. Riittäköön tämä kuitenkin varoituksista, +lupasinhan kertoa miten se tehdään \ldots + +\LaTeX{} tarjoaa näiden parametrien muuttamiseksi kaksi komentoa. Niitä +käytetään tavallisesti dokumentin johdanto-osassa. + +Ensimmäinen komento liittää johonkin parametreista tietyn arvon: +\begin{lscommand} +\ci{setlength}\verb|{|\emph{parametri}\verb|}{|\emph{mitta}\verb|}| +\end{lscommand} + +Seuraava komento lisää pituutta johonkin parametreista. +\begin{lscommand} +\ci{addtolength}\verb|{|\emph{parametri}\verb|}{|\emph{mitta}\verb|}| +\end{lscommand} + +Tämä toinen komento on oikeastaan hyödyllisempi kuin \ci{setlength}-komento, +sillä nyt tullaan työskentelemään yksinomaan aikaisemmin määritellyillä +asetuksilla. Koko tekstin levyden kasvattamiseksi yhden senttimetrin verran, +dokumentin johdanto-osaan pannaan: +\begin{code} +\verb|\addtolength{\hoffset}{-0.5cm}|\\ +\verb|\addtolength{\textwidth}{1cm}| +\end{code} + +Tässä yhteydessä voitaisiin tutustua \pai{calc}-makropakettiin, +joka antaa mahdollisuuden käyttää aritmeettisia operaatioita aina +kun funktioiden argumenteille annetaan jotain arvoja. + +\section{Lisää hupia mitoista} + +Aina kuin vain mahdollista on \LaTeX"-dokumenteissa parasta välttää +absoluuttisia mittoja. On parempi perustaa asiat muiden elementtien +leveydelle tai korkeudelle. Kuvan leveys voisi olla \verb|\textwidth|, +jotta se täyttäisi sivun. + +Seuraavat kolme komentoa mahdollistavat tekstijonon leveyden, korkeuden +ja syvyyden määrittämisen. + +\begin{lscommand} +\ci{settoheight}\verb|{|\emph{komento}\verb|}{|\emph{teksti}\verb|}|\\ +\ci{settodepth}\verb|{|\emph{komento}\verb|}{|\emph{teksti}\verb|}|\\ +\ci{settowidth}\verb|{|\emph{komento}\verb|}{|\emph{teksti}\verb|}| +\end{lscommand} + +\noindent Seuraava esimerkki esittää tavan käyttää näitä komentoja. + +\begin{example} +\flushleft +\newenvironment{vardesc}[1]{% + \settowidth{\parindent}{#1:\ } + \makebox[0pt][r]{#1:\ }}{} + +\begin{displaymath} +a^2+b^2=c^2 +\end{displaymath} + +\begin{vardesc}{Jossa}$a$, +$b$ -- ovat suorakulmaisen kolmion +suoran kulman adjunkteja. + +$c$ -- on kolmion +yksinäinen hypotenuusa. + +$d$ -- ei lopulta esiinny tässä +lainkaan. Eiko olekin hämäävää? +\end{vardesc} +\end{example} + +\section{Laatikot} + +\LaTeX{} rakentaa sivuja työntelemällä laatikoita sinne tänne. Ensinnäkin +jokainen kirjain on pieni laatikko, joka sitten liimataan muihin kirjaimiin +muodostamaan sanoja. Nämä liimataan edelleen muihin sanoihin, mutta erityisellä +elastisella liimalla, jotta joukko sanoja voidaan ahtaa tai levittää täyttämään +sivun yksi rivi. + +Myönnettäköön, että tämä oli yksinkertaistettu kuvaus siitä, mitä todella +tapahtuu, mutta ajatus on se, että \TeX{} operoi liimalla ja laatikoilla. +Eikä ainoastaan kirjain ole laatikko. Mitä tahansa voidaan panna laatikkoon, +myös muita laatikoita. \LaTeX{} käsittelee sitten jokaista laatikkoa aivan +kuin yksittäistä kirjainta. + +Menneissä luvuissa olemme jo törmänneet joihinkin laatikoihin, vaikka +niitä ei erikseen mainittu. Esimerkiksi \ei{tabular}"-ympäristö ja komento +\ci{includegraphics} saa aikaan laatikon. Tämä tarkoittaa sitä, että kaksi +taulukkoa tai kuvaa voidaan helposti asemoida vierekkäin. On vain varmistettava, +että niiden yhteisleveys ei ylitä tekstin leveyttä. + +Tietty kappale voidaan myös pakata laatikkoon joko + +\begin{lscommand} +\ci{parbox}\verb|[|\emph{sijainti}\verb|]{|\emph{leveys}\verb|}{|\emph{teksti}\verb|}| +\end{lscommand} + +\noindent "=komennolla tai + +\begin{lscommand} +\verb|\begin{|\ei{minipage}\verb|}[|\emph{sijainti}\verb|]{|\emph{leveys}\verb|}| teksti +\verb|\end{|\ei{minipage}\verb|}| +\end{lscommand} + +\noindent "=ympäristöllä. \texttt{Sijainti} voi olla jokin kirjaimista +\texttt{c, t} tai \texttt{b}, jolla määritellään laatikon pystysuora sijainti +suhteessa ympäröivän tekstin peruslinjaan. \texttt{leveys} ilmaisee +laatikon leveyden. Pääero on siinä, että parboxin sisällä ei voida käyttää +kaikkia komentoja, kun taas minipagessa kaikki on mahdollista. + +Vaikka \ci{parbox} pakkaa koko kappaleen rivinvaihtoineen kaikkineen, +on olemassa myös laatikointikomentoja, jotka toimivat vaakasuoralla +asemoidulla materiaalilla. Yksi niistä onkin jo tuttu eli \ci{mbox}. +Se yksinkertaisesti pakkaa joukon laatikoita toiseen laatikkoon, ja +sitä voidaan käyttää estämään \LaTeX:ia panemasta rivinvaihtoa tiettyjen +sanojen väliin. Koska kerran laatikoiden sisään voidaan panna laatikoita, +ovat nämä vaakasuorat laatikonpakkaajat äärimmäisen joustavia käyttää. + +\begin{lscommand} +\ci{makebox}\verb|[|\emph{leveys}\verb|][|\emph{sijainti}\verb|]{|\emph{teksti}\verb|}| +\end{lscommand} + +\noindent \emph{leveys} määrittää tuloksena saatavan laatikon leveyden ulkoa +nähtynä.\footnote{Tämä tarkoittaa sitä, että se voi olla pienempi kuin +laatikon sisällä oleva materiaali. Leveydeksi voidaan antaa jopa 0 pt, jolloin +laatikon sisällä oleva teksti ladotaan niin, ettei se vaikuta ympäröiviin +laatikoihin.} Mittayksiköiden lisäksi leveytenä voidaan antaa \ci{width}, +\ci{height}, \ci{depth} ja \ci{totalheight}. Ne saavat arvon ladotun +\emph{tekstin} mitoista. \emph{sijainti}"-parametri saa yksikirjaimisen arvon: +\textbf{c} keskitetty, \textbf{l} vasemmalle tasattu, \textbf{r} oikealle tasattu +tai \textbf{s}, joka tasaa tekstin laatikon koko alalle. + +\ci{framebox} toimii samalla tavoin kuin \ci{makebox}, mutta se piirtää +tekstin ympärille kehyksen. + +Seuraavat esimerkit näyttävät mitä \ci{makebox}:lla ja \ci{framebox}:lla +voidaan muun muassa tehdä. + +\begin{example} +\makebox[\textwidth]{% + k e s k i n e n}\par +\makebox[\textwidth][s]{% + l e v i t e t t y}\par +\framebox[1.1\width]{Näin sitä + ollaan kehyksissä!} \par +\framebox[0.8\width][r]{Hitto, + tuli liian leveä} \par +\framebox[1cm][l]{Hällä + väliä, eiks je?} +Pystytkö lukemaan tämän? +\end{example} + +Nyt kun vaakasuorat asiat ovat hallinassa, voidaan siirtyä +pystysuoriin.\footnote{Täydellinen kontrolli saavutetaan vain hallitsemalla + sekä vaakasuoraa että pystysuoraa materiaalia \ldots} Se ei ole ongelma +\LaTeX:lle. + +\begin{lscommand} +\ci{raisebox}\verb|{|\emph{nosto}\verb|}[|\emph{syvyys}\verb|][|\emph{korkeus}\verb|]{|\emph{teksti}\verb|}| +\end{lscommand} + +\noindent "=komennolla voidaan määritellä laatikon ominaisuuksia pystysuoralla akselilla. +Kolmessa ensimmäisessä parametrissa voidaan käyttää muuttujia \ci{width}, \ci{height}, +\ci{depth} ja \ci{totalheight}, jolloin laatikon kokoon vaikuttaa \emph{teksti}-argumentti. + +\begin{example} +\raisebox{0pt}[0pt][0pt]{\Large% +\textbf{Aaaa\raisebox{-0.3ex}{a}% +\raisebox{-0.7ex}{aa}% +\raisebox{-1.2ex}{r}% +\raisebox{-2.2ex}{g}% +\raisebox{-4.5ex}{h}}} +hän huusi, mutta ei edes seuraava +rivissä huomannut, että jotain +kauheaa oli tapahtunut hänelle. +\end{example} + +\section{Linjat ja välikkeet} +\label{sec:rule} + +Muutama sivu sitten nähtiin komento + +\begin{lscommand} +\ci{rule}\verb|[|\emph{noste}\verb|]{|\emph{leveys}\verb|}{|\emph{korkeus}\verb|}| +\end{lscommand} + +\noindent Normaalikäytössä se tekee mustan laatikon. + +\begin{example} +\rule{3mm}{.1pt}% +\rule[-1mm]{5mm}{1cm}% +\rule{3mm}{.1pt}% +\rule[1mm]{1cm}{5mm}% +\rule{3mm}{.1pt} +\end{example} + +\noindent Siitä on hyötyä piirrettäessä pysty"- ja vaakasuoria viivoja. +Kansisivulla oleva viiva on esimerkiksi tehty \ci{rule}-komennolla. + +Erityistapaus on linja, jolla ei ole leveyttä, mutta kylläkin tietty korkeus. +Painoalalla tätä kutsutaan välikkeeksi. \index{välike} Sitä käytetään +varmistamaan, että sivulla olevalla elementillä on tietty minimikorkeus. +Sitä voidaan käyttää \texttt{tabular}-ympäristössä varmistamaan, että +rivillä on tietty minimikorkeus. + +\begin{example} +\begin{tabular}{|c|} +\hline +\rule{1pt}{4ex}Tukipalkki \ldots\\ +\hline +\rule{0pt}{4ex}Välike\\ +\hline +\end{tabular} +\end{example} + +\bigskip +{\flushright Loppu.\par} + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: "lyhyt2e" +%%% End: + |