Praktikum 2
Uus dokument vanal põhjal
Et iga kord uue dokumendi kirjutamist ei peaks päise kirjutamisega alustama, on mõttekas teha koopia mõnest juba eksisteerivast failist ja lähtekoodi keha lihtsalt ära kustutada. Käsureal on selleks käsk copy. Kui soovid kopeerida vaid jooksva kausta piires, piisab argumentidena failinimedest: copy vana.tex uus.tex. Kui soovid aga kopeerida ühest kaustast teise, on vaja ette anda mõlema faili tee (path). Võib anda absoluutse tee näiteks nii: copy "C:\Users\getter\latex\pr1\prax1.tex" "C:\Users\getter\latex\pr2\pax2.tex", kuid kui oletada, et jooksev kaust on näiteks latex, siis piisab ka relatiivse tee ette andmisest: copy "pr1\prax1.tex" "pr2\prax2.tex".
Teha praktikumi jaoks uus tühi failipõhi. Kasutada tekstitoimetit Notepad++.
Vana faili sisust jätta alles ainult preambul (enne käsku \begin{document}) ja kustutada eelmine põhisisu (pärast käsku \begin{document}).
Meeldetuletuseks ka operatsioonid käsureal: kompileerimine latex failinimi ja vaatamine yap failinimi.
Mitmerealised valemid
Ava fail naidis4.pdf ning proovi samasugune tekst (alustades pärast joonist nr 12) vormistada LaTeXi abil.
Kasulikud teadmised:
\[…\]- matemaatiline valem eraldi real (ja keskele joondatud)\sfrac- väike kaldmurd; vajab pakettixfrac\begin{equation}…\end{equation}- nummerdatud valem (millele viitamist vaatame hilisemates praktikumides)\begin{align}…&=…\\…&=…\end{align}- mitmerealine valem, kus ampersandid (&) tähistavad kohakuti jäävaid sümboleid ning "\\", nagu ikka, rea vahetust; vajab pakettiamsmath- Selleks, et iga rea juurde uut numbrit ei tekiks, tuleb vastavate ridade ette lisada
\nonumber - Nummerdamata mitmerealise valemi saamiseks kasuta
\begin{align*} … \end{align*}
- Selleks, et iga rea juurde uut numbrit ei tekiks, tuleb vastavate ridade ette lisada
- Üksikjuhtudel saab reavalemile anda numbrit, mis ei sõltuks vastavast
counter-ist:\tag \int_{a}^{b}f(x)\,dx- integraal rajadega a-st b-ni funktsioonist f muutuja x-i järgi\sum_{a}^{b}- summa a-st b-nia_{b}- ab\xi- kreeka täht ksii; veel kreeka tähti tuleviku tarbeks\in- element kuulub hulka\left( … \right)- sulud matemaatilises režiimis, mille suurus vastab sulgude sisse jääva valemiosaga\dotsvõi\cdotsvõi\ldots- kolm punkti "…" (erinevus on muu tekstiga joondumises, pigem stiili küsimus millal millist varianti kasutada)
Kiirematele ka naidis5.pdf
Käsurea käsu üldkuju
Käsurea iga käsk on järgmisel kujul:
käsk lipud parameetrid
Siin käsk tähistab käsu nime, nagu näiteks latex, copy, dir jms. Käsuviibale sisseehitatud käsud, mis tegelevad kõige lihtsamate toimingutega, on sisekäsud (nt cd, dir, copy, del jne). Ülejäänud käsud on väliskäsud ja nende jaoks on tegelikult kettal olemas programm, mida käsu andmisel käivitatakse. Näiteks käsk latex käivitab tegelikult programmi c:\MiKTeX2.9\miktex\bin\latex.exe (täpne asukoht sõltub installatsioonist).
lipud tähistab (tavaliselt mittekohustuslikke) lüliteid, mida käsu töö täpsustamiseks antakse. Lülitid algavad sümboliga -, -- või /. Lüliti -h, --help või /? annab tavaliselt käsu kohta abiinfot.
parameetrid võimaldavad anda käsu täitmiseks vajalikke lähteandmeid, nt. sisendfailide nimed jmt.
Failivormingud

Seni oleme konverteerinud vaid .tex faile .dvi failideks. Vaatame, kuidas teisendada siit edasi .ps failiks ning seejärel .pdf failiks.
- Kui sa seda veel teinud ei ole, siis võta oma eelnevas punktis koostatud (poolik) dokument ning konverteeri see laiendiga .tex failist laiendiga .dvi faili käsuga
latex fail.tex - Konverteeri saadud .dvi fail laiendiga Postscript-failiks (laiend .ps), kasutades käsku
dvips -o väljund.ps sisend.dvi-o väljund.psmärgib väljundfaili nime (-otähendab output). Kui väljundfaili nime ei täpsustata, saadetakse PostScripti sisu hoopis konsoolile.- käsule
dvipson vaja parameetriks anda ette sisendfaili nimi (dvi-vormingus fail)
- Saadud Postscript-faili saad avada mitmesuguste programmidega:
- Evince (ei tööta kõigil juhtudel)
- GSView (vananenud)
- Ghostscriptiga, kasutades lippu
-sDEVICE=display - EPS Viewer, IrfanView (näitab ainult 1. lehekülge)
- PostScript üleüldiselt on printerikeel, see tähendab, et mistahes dokumendi saab konvertida PostScriptiks, teostades printimise sellise draiveriga, mille nimes esineb väljend "PostScript".
- Konverteeri saadud .ps fail .pdf failiks
- Ghostscripti kasutamiseks on vaja esmalt määrata tema "tee" (path). Selleks on mõistlik kasutada tabulaatorit - ilma ühtegi tähte ette andmata, saab läbi vaadata kõik kaustas paiknevad alamkaustad, dokumendid ja programmid. Andes aga ette üks või rohkem tähte, saab läbi vaadata vaid vastava tähekombinatsiooniga algavad kaustad, dokumendid ja programmid. Nõnda toimides saab tee kätte tõenäoliselt üsna kiiresti. Üks võimalik lõpptulemus on näiteks selline:
"C:\Program Files\gs\gs9.50\bin\gswin64.exe" - Käsureal määratud teele järgnevad lipud ja parameetrid
-sDEVICE=pdfwrite -sOutputFile=väljund.pdf -sPAPERSIZE=a4 -dNOPAUSE -dBATCH sisend.ps-sDEVICE=pdfwritemäärab väljundvormingu; näiteks on kasutusel veel ps2write, png16m, jpeg ja palju muud-sPAPERSIZE=a4määrab väljundi paberi suuruse; kasutusel on veel a3, a5, letter ja palju muud; endamääratud suuruse jaoks tuleb kasutada-dDEVICEWIDTHPOINTS=w -dDEVICEHEIGHTPOINTS=h, kuswjahon paberi laius ja kõrgus punktides. 72 punkti võrdub 1 tolli ehk 2;54 sentimeetriga-dNOPAUSEtähendab, et ühe lehekülje konverteerimise järel ei oodata kasutajalt Enter-klahvi vajutust-dBATCHtähendab, et Ghostscriptist väljutakse kohe pärast konverteerimise lõppu (Ghostscript ei jää kasutajalt ootama edasisi käske)- Täiendavaid parameetreid (pole ammendav loetelu): PDF
- Ghostscripti ametlik dokumentatsioon
- Ghostscripti kasutamiseks on vaja esmalt määrata tema "tee" (path). Selleks on mõistlik kasutada tabulaatorit - ilma ühtegi tähte ette andmata, saab läbi vaadata kõik kaustas paiknevad alamkaustad, dokumendid ja programmid. Andes aga ette üks või rohkem tähte, saab läbi vaadata vaid vastava tähekombinatsiooniga algavad kaustad, dokumendid ja programmid. Nõnda toimides saab tee kätte tõenäoliselt üsna kiiresti. Üks võimalik lõpptulemus on näiteks selline:
Kõige sellega annab võrdväärse tulemuse käsk pdflatex fail.tex
Ülesanne
Eesmärgiks on 10-leheküljelise dokumendi muutmine nii, et kokkuvõttes saadaks 5-leheküljeline dokument, kus esialgse dokumendi lehed on vähendatult kahekaupa kokku pandud ühele leheküljele.
- Lae alla fail smm_dirichletov.tex
- Konverteeri see eelneva alapeatüki põhjal käskude
latexjadvipsabil näiteks failiks smm.ps - Paiguta 2 lehekülge ühe peale kasutades
psnup -2 sisend.ps valjund.ps - Konverteeri saadud väljundfail Ghostscripti abil pdf-failiks
Käsufailid
Eelmises punktis oli vaja teha mitu sammu käsureal enne lõpptulemuseni jõudmist. Mõnikord on aga käsurea avaldised pikad ning nende meeldejätmine ja kirjutamine aeganõudev (eriti kui on vaja töö tegemise jooksul mitu korda samu käske samas järjekorras kasutada). Sellistel juhtudel on mõistlik kasutada käsufaile (batch file). Käsufaile saab vormistada Notepad++is kirjutades vajalikud käsurea avaldised õiges järjekorras üksteise alla ning salvestades selle laiendiga .bat või .cmd. Siis piisab edaspidi vaid käsureale selle faili kirjutamisest, et kõik sammud ära tehtaks.
Iga keerukam käsufail peaks sisaldama ka kommentaare. Kommentaarid antakse käsuga rem, näiteks rem Nüüd algab kopeerimise osa
Teine võimalus on kasutada käsku echo. Käsk echo kirjutab tema järele kirjutatud teksti lihtsalt konsoolile tagasi. Seda saab aga suunamisoperaatorite abil suunata mujale edasi, kas faili või mõne järgmise käsu sisendiks.
Kasutatakse järgmisi operaatoreid:
>– suunab väljundi faili|– suunab väljundi järgmise käsu sisendiks (konveier ehk toru [pipe])- Näiteks
echo load("draw"); draw2d(file_name="tere", terminal=pdf, explicit(x**2, x, -3, 3)); | "c:\Program Files (x86)\Maxima-5.34.1\bin\maxima.bat"programmile "maxima" suunatakse teatavad käsud, mis joonistavad ruutparabooli {$y=x^2$}, kus {$x\in[-3,3]$}( echo \documentclass{article} \begin{document} & ( for /L %x in (1,1,100) do @echo %x ) & echo \end{document} ) | latex -job-name=arvud --täidab järjest käsud "kirjuta väljundisse \documentclass{article} \begin{document}", "tsükkel 1-st 100-ni, väljundisse tsüklimuutuja", "kirjuta väljundisse \end{document}" ning saadud väljund läheb programmile "latex" sisendiks, tulemusena saadakse fail arvud.dvi, mille sisuks on arvud 1-st 100-ni
- Näiteks
>>– suunab väljundi olemasolevale failile lõppu juurde- Näiteks
echo uus rida >> smm.batlisab allolevale failile juurde rea "uus rida".
- Näiteks
Eelmise ülesande käsufail (nt smm.bat) võib välja näha umbes selline: latex smm_dirichletov.tex dvips -o smm.ps smm_dirichletov.dvi psnup -2 smm.ps smm2.ps
"C:\Program Files\gs\gs9.15\bin\gswin64.exe" -sDEVICE=pdfwrite -sOutputFile=smm2.pdf -dNOPAUSE -dBATCH smm2.ps

Kodus
Installi oma arvutisse Ghostscript näiteks siit: https://www.ghostscript.com/
Installi oma arvutisse Evince näiteks siit: https://wiki.gnome.org/Apps/Evince
Proovi lõpetada tunnis pooleli jäänud tööd