Muutamia LaTeX-vinkkejä

LaTeXilla kirjoittaminen ei ole kovinkaan yksinkertaista, jos tekstin lisäksi haluaa myös hieman erikoisempia rakenteita tai kuvia. Onneksi Internetistä löytyy paljon ohjeita ja yksi hyvä lähde on ”Pitkänpuoleinen johdanto LaTeXinkäyttöön: Eli opi LATEX 2ε 133 minuutissa” (pdf).

Helpointa LaTeXin lähestyminen on käyttämällä jotain valmista dokumenttipohjaa kuten Tapio Leppälammen Thesis-pohjaa (zip, 23KB) tai Mikko Hämäläisen Thesis -pohjaa. Mallipohjista voi katsella eri menetelmiä toteuttaa asioita ja soveltaa omiin tarpeisiinsa. Etenkin Leppälammen mallipohjassa on hyvin käsitelty eri asioiden toimivuutta LaTeXissa, vaikkakin lähtökohta on matemaattispainotteiseen dokumenttiin.

Tässä muutamia vinkkejä, jotka ovat itsellä tulleet eteen. Lista täydentynee, kun ongelmakohtia ilmenee.

Kuvien liittäminen dokumenttiin
Kuvien liittäminen LaTeX-dokumenttiin ei ole niin yksinkertaista kuin mitä sen haluaisi olla. LaTeX osaa helposti käsitellä eps-formaatissa olevia kuvia, mutta kaikkia kuvia ei ole järkevää muuntaa eps-muotoon.

Kuvia voidaan liittää onneksi myös muissa formaateissa, kun dokumentti käännetään PDFLatexilla, joka syö tutumpia PNG, JPG ja PDF -tiedostoja. Tämä onnistuu määrittelemällä grafiikat \usepackage[pdftex]{graphicx} -pakettikomennolla. Tämän jälkeen ei tosin Latexilla kääntö enää onnistu, eli DVI ja PS -muotoiset dokumentit jäävät saamatta, mutta koska PDFLatex tuottaa lopputuloksena PDF:iä, ei muita formaatteja tarvitakaan.

Lyhyesti sanottuna, kuvan liittäminen dokumenttiin onnistuu \includegraphics[scale=0.8]{kuvahakemisto/kuva} -komennolla, jossa voi lisäksi määritellä esimerkiksi skaalauksen scale-parametrillä. Skaalausta voi myös tehdä sisällyttämällä kuvan \scalebox{0.8}{} -laatikkoon.

Kuvien sijoittuminen dokumentissa onkin sitten aivan toinen asia. Hyvänä sääntönä voi kuitenkin pitää, että kuva ei ainakaan tule siihen kohtaan, johon sen haluaisit. Asiaan on opastettu hyvin ”Pitkänpuoleinen johdanto LaTeXin käyttöön” -oppaassa.

Taulukot
Taulukoidenkin kanssa joutuu hieman askartelemaan ja taiteilemaan, joten kannattaa lukaista ohje Wikibooksin LaTeX-kirjasta.

Kaavioiden otsikot ja viittaukset
Taulukoiden, kaavioiden ja kuvien yhteydessä, on dokumentteihin hyvä lisätä myös otsikkoteksti ja viittauskenttä. Kaavio merkitään \begin{figure} -alueen sisälle ja lisätään otsikkoa varten \caption{} -merkintä ja viittaukseen \label{} -merkintä. Nyt haluttuun kaavioon voi viitata tekstissä \ref{fig:kaavio} -merkinnällä, joka lisää tekstiin kaavion numeron. (LaTeX/Floats, Figures and Captions)

\begin{figure}[!h]
	\includegraphics{kuvahakemisto/kuva}
\caption{Kaavion otsikkoteksti}
\label{fig:kaavio}
\end{figure}

Usean rivin kommentti:
Tekstin jättäminen kommentiksi dokumenttiin onnistuu lisäämällä rivin eteen % -merkki tai merkitsemällä teksti comment-alueeksi. Komento löytyy \usepackage{verbatim} -paketista.

\begin{comment}
Lorem ipsum
Dolor sit
\end{comment}

Viitteet
Viittausten hallinta on LaTeXissa hoidettu kätevästi ja siitä kannattaa lukea Wikibooksin LaTeX-teoksen viite-osiosta. Kaikki viitteet saa tulostumaan käyttämällä \nocite{*} -merkintää.

UTF-8 -merkistöllä kirjoittamista varten määritellään tekstin enkoodaus seuraavasti:

\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

Kuitenkin, jos aikoo kirjoittaa dokumenttia eri alustoilla, etenkin myös Windowsilla, kannattaa tyytyä suosiolla perinteiseen Latin1 (ISO 8859-1) -merkistöön.

Futurama palaa ruutuun vuonna 2010

Matt Groeningin ja David X. Cohenin huumorin ystävät saavat ensi vuonna iloita, sillä Comedy Central on julkaissut tiedotteen, jossa kerrotaan Futuraman palaavan ruutuun 26:lla uudella jaksolla vuoden 2010 puolessa välissä, yli kuuden vuoden tauon jälkeen.

TV-sarjan loputtua DVD:lle julkaistut noin puolitoista tuntiset ”Bender’s Big Score,” ”The Beast with a Billion Backs,” ”Bender’s Game” ja ”Into the Wild Green Yonder” eivät oikein yltäneet TV-sarjan tasolle, sillä Futuraman huumori sopii paremmin TV-sarjan mittaisiin annoksiin. Saa nähdä, riittääkö tarinassa vielä samanlaista intoa, kuin aikaisemmin, vai jääkö lopputulos laimeaksi. Hieman toiveikas pitää olla, vaikka samojen tekijöiden Simpsonien huumori ei enää jaksa oikein innostaa.

Rokkausta ja kitarasankaruutta Guitar Herolla

En ole kovinkaan musikaalinen ihminen, mutta pelaaminen on mukavaa ajanvietettä. Olin pidemmän aikaa harkinnut Guitar Hero -kitarapelin hankkimista Xbox 360:lle, mutta hieman ennen Vappua raaskin sen viimeinkin hankkia. Pohdin pitkään, että riittääkö pelissä vetovoimaa muutamaa soittokertaa enemmän ja sujuuko se soittaminen alkuunkaan. Onneksi epäilyt osoittautuivat turhiksi ja soittosessiot virkistävät hyvin iltoja ja viikonloppuja kandidaatintyön parissa.

Olisin halunnut ostaa Rock Band -pelin, mutta tarjonnan puutteessa piti tyytyä Guitar Hero IV: World Touriin. Rock Band olisi ollut juttujen mukaan hieman rennompaa soittamista, eikä niin suorittamispainotteista. Molemmat pelit ovat kuitenkin periaatteiltaan samanlaisia kitaranrämpytyspelejä, joissa on mahdollisuus soittaa myös bassoa ja lisäsoittimilla myös rumpuja ja laulaa. Itselleni riitti alkuun pelkkä kitaraosuus, vaikka rummut voisivatkin olla ihan kiintoisat.

Alkuun kitaran nappien painaminen ja ruudulla valuvien ympyröiden tahdistaminen tuntui hieman hankalalta, mutta pienen harjoittelun jälkeen oikea ajoitus alkoi löytymään. Jo muutaman biisin jälkeen sormet alkoivat löytää oikeat napit itsestään ja hieman vaikeammatkin yhdistelmät taipuivat. Keskivaikealla tasolla neljän napin kanssa perusvire löytyi helposti yli 90% osumatarkkuuteen, mutta vaikealla vaikeusasteella eli viiden napin kanssa soittaminen meni jo aikamoiseksi taituroinniksi. Opettaa arvostamaan oikeita soittajia ja unohtamaan sen kitaransoiton opettelun ajattelun.

Pelinä Guitar Hero IV: World Tour on kohtalaisen toimiva ja soittaminen on ihan mukavaa, vaikka parempia biisejä voisikin olla enemmän. Biisejä voi toki ostaa lisää verkosta, mutta hinnat ovat kohtalaiset järeitä. Kaupasta tarttuikin mukaan Guitar Hero III: Legends of Rock, joka oli jo ajautunut sopivasti alennuslaariin.

World Touriin verrattuna Legends of Rock on perusominaisuuksiltaan kuin uudempi versionsa. Onneksi sentään kitarataistelut on osattu muuttaa hieman inhimillisemmiksi World Tourissa, sillä Legends of Rockissa kitarataistelut ovat todella syvältä. Soittolistaltaan Legends of Rock on ehkä ”laadultaan” hieman tasaisempi, mutta molemmista löytyy valikoima hienoja biisejä. World Tourissa voi listalta tilulilutella muun muassa Bullet for My Valentinen Scream Aim Fire, Dream Theaterin Pull Me Under, Lacuna Coilin Our Truth, Nirvanan About a Girl ja Smashing Pumpkinsin Today. Legends of Rock tarjoaa vastaavasti Black Sabbathin Paranoid, The Rolling Stonesin Paint It Black ja Guns N’ Rosesin Welcome to the Jungle.

Musiikkipelit ovat edelleen kovassa nosteessa ja uudet versiot seuraavat toisiaan. Eli eiköhän sitä taas lisää soitettavaa voi puolen vuoden sisään noutaa alennuslaareista, joissa pelien hinnatkin ovat oikealla tasolla. Voisi lisäksi harkita myös jonkin tanssipelin hankkimista, ainakin alakerran naapurit arvostaisivat.

Ben & Jerry’s Cookie Dough -jäätelö

Ben & Jerry’s -jäätelö on maineeltaan herkullista ja raaskin viimeinkin pitkän mainostuksen jälkeen ostaa purkin Ben & Jerry’s Cookie Dough -jäätelöä, joka on siis vaniljakermajäätelöä ja suklaapikkuleipätaikinan paloja (16%). Hyväähän se tietenkin oli, mutta niin oli myös sen hintakin. Puoli litraa herkuttelua maksoi saman verran kuin kolme litraa ”normaalia” jäätelöä.

Kuitenkin ihan mielellään jäätelön nautiskeli ja hinnan suhteen voi hieman omatuntoa parannella sillä, että Ben & Jerry’s suosii toiminnassaan kaikenlaisia reilua arvoja, kuten huolta ympäristöstä, reilua kauppaa, ekologisempia pakkauksia mainostaakin jäätelöään ilmastoneutraalina. Tuoteselosteessa mainitaan hieman huvittavasta vielä erikseen, että kananmunankeltuainen on vapaiden kanojen munista. Hienoja tavoitteita ja ilmeisesti vihreät ajatukset eivät ole hävinneet, vaikka Unilever-elintarvikejätti vuonna 2000 Ben & Jerry’sin ostikin.

Kenties sitä joutuu toistekin maistamaan Ben & Jerry’sin jäätelöitä ja eipähän tule syötyä niin paljon kerralla, kun pakkaus on puolet normaalia pienempi. Ja onhan jäätelö sentään tuotettu vastuullisesti. Om nom nom nom.

LaTeX-dokumenttien kirjoittaminen ja Mac OS X

Dokumenttien kirjoittaminen OpenOffice.orgilla tai Microsoft Wordilla on loppupeleissä suhteellisen ärsyttävää näpertämistä tyylien, taulukoiden ja kuvien sijainnin kanssa ja usein dokumentti kuitenkin sekoaa. Hieman helpommalla pääsee, kun viitsii opetella LaTeXia, joka on alun oppimiskynnyksen jälkeen suhteellisen helppoa käytettäessä graafisia työkaluja, vaikka ei tällöinkään aivan tuskatonta.

LaTeXin käyttöön Mac OS X:ssä pääsee parhaiten alkuun lukemalla tarvittavista ohjelmista ja saatavilla olevista editoreista Tex on Mac OS X -sivustolta, joka ei tosin tarjoa kovin selkeää lähestymistapaa aiheeseen. Tässä siis muutamia asioita ja suuntaviivoja LaTeXin käyttöön.

TeX ja Mac OS X
Aivan ensimmäiseksi tarvitaan TeX-ladontajärjestelmän, jonka käyttämiseksi LaTeX tarjoaa makropaketin. TeXin asentaminen onnistuu yksinkertaisimmin MacTeX-paketilla, josta löytyy kaikki tarpeellinen ja paljon muuta. Paketilla on myös kokoa, 1.2 Gt, joten latauksen ajan voi soitella muutaman keikan Guitar Hero World Tourissa. Onneksi perustarpeisiin riittää vaihtoehtoiset paketit -sivulta löytyvä huomattavasti pienempi BasicTeX-2008-paketti (52 Mt). Lisäksi huomasin tarpeelliseksi asentaa myös MacTeX-Additions -paketin (144 Mt).

Peruspakettien lisäksi kannattaa asentaa myös TeX Live Utility, joka on graafinen liittymä TeX Live 2008 -työkaluun. Tex Live Utilityn avulla voi hallita ja asentaa tarvittavia TeX-paketteja. Itse huomasin tarvitsevani subfigure ja paralist -paketteja, joita Diplomityö-pohja kaipasi.

LaTex-editorit Mac OS X:ssä
Graafisten editoreiden osalta löytyy muutamia eri vaihtoehtoja. Tässä kaksi, joita testasin.

Texmaker on enemmän graafinen editori tex-dokumenttien näyttämiseen, kuin varsinaisesti tekstieditori, jossa myös muotoilut näkyisivät. Lähestymistapa on hieman tekninen, mutta tarvittavat ”tagit” löytyvät valikosta. Pienen alkujyrkkyyden jälkeen dokumenttien kirjoittaminen ja muotoilu sujuu suhteellisen vaivattomasti. Texmaker on avoimen lähdekoodin (GPL) ohjelma ja on saatavilla Linux/Unix, Mac OS X ja Windows -käyttöjärjestelmille.

Texmakerissa tekstin oikolukuun ei ole juuri panostettu ja vaikka suomenkielinen sanakirja (hunspell) onkin mahdollista asentaa, en saanut toimimaan. Eli jos tekstin haluaa oikolukea, pitää se suorittaa jossain muualla.

texmaker
texmaker

LyX tarjoaa vastaavasti hieman enemmän tekstinkäsittelymäisen käyttöliittymän LaTeXilla kirjoittamiseen, mutta on mielestäni silti hieman hankalammin lähestyttävä kuin Texmaker. LyX haluaa lisäksi käyttää omaa lyx-tiedostoaa, joten TeX-dokumentit pitää viedä erikseen. LyX on avoimen lähdekoodin (GPL) sovellus ja saatavilla Linux/Unix, Windows ja Mac OS X -käyttöjärjestelmille.

LyX osaa oikolukea ispell/aspell/hspell:n avustuksella, jonka asentaminen onnistuu Macportsin kautta myös OS X:lle (sudo port install aspell aspell-dict-fi), mutta joko en osannut sitä asentaa oikein, tai sitten LyXin oikoluku toimi vain muuten heikosti.

texmaker
texmaker

TeXShop on yksinkertainen, mutta toimiva LaTeX-editori. TeXShop osaa hyödyntää Voikon Mac OS X -järjestelmän oikolukukomponenttia.

texshop

Myös TextWrangleriin on saatavilla LaTexin kanssa työskentelyä helpottavat Pluginit (BBEdit extensions for teTeX), mutta totesin niiden olevan hieman hankalat. Lisäksi skripti syötti ulostulevan tekstinsä avoinna olevaan terminaaliin, joka ei ole todellaan kiva asia.

Kaikilla ohjelmilla onnistuu kirjoittaminen, tekstin vieminen haluttuun muotoon kuten PDF:ksi tai HTML:ksi ja tarvittavat muotoilut löytyvät valikoista. Se, mikä on sitten hyvä ohjelma, riippuu ihan omasta mieltymyksestä.

Miten LaTeXilla sitten kirjoitetaan?
LaTeXin käyttöön löytyy Tobias Oetikerin kirjoittama ”The Not So Short Introduction to LATEX 2ε” -teos, jonka Timo Hellgren on sovittanut suomeksi ”Pitkänpuoleinen johdanto LaTeXinkäyttöön: Eli opi LATEX 2ε 133 minuutissa”. (pdf)

Mozvoikko 1.0 ja Mac OS X

Firefoxin Suomen kielen oikoluku -lisäosasta eli mozvoikosta julkaistiin jokin aika sitten uusi versio, samoin kuin lisäosan käyttämistä libvoikosta ja suomi-malagasta. Oli siis aika päivittää lisäosan Mac OS X versio käyttämään uusia kirjastoja.

Uutta versiota kääntäessä huomasin, että olin epähuomiossa nimennyt mozvoikon Makefilessä tarvittavien kirjastojen nimet hieman huonosti, seuraamatta yleistä käytäntöä jättää tarkka versionumero pois. Eli turha määritellä esim. kirjastoa libvoikko.1.7.0.dylib, kun asian voi ilmaista libvoikko.1.dylib. Sama muutos piti tehdä myös src/mozVoikkoUtils.cpp -tiedostoon. Muutoksista löytyy diff-tiedosto.

Tein Mozvoikon käännöstä lyhyet muistiinpanot, joista näkyy käytettyjen kirjastojen versiot. Nyt koko toimenpide meni hieman yksinkertaisemmin kuin viime kerralla.

Lopputuloksena oli Suomen kielen oikoluvun sisältävä mozvoikko-1.0.2009.07.22-Darwin_x86-gcc3.xpi -laajennustiedosto, joka asentui sopuisasti Firefoxiin ja näyttäisi toimivan. Lisäosaa voi kokeilla omalla vastuulla.

Tein samalla asiasta oman alasivun, josta jatkossa löytyy kootusti asiaan liittyvät tieto.

WordPressin varmuuskopiointi ja palauttaminen

Kyllästyin päivittämään sivujani perinteisesti vimillä terminaalista näpertäen ja päätin virittää blogimoottorina toimivan WordPressin hoitamaan myös muutamat muut sivut. Ajattelin tietenkin, että tämä onnistuisi helposti ja nopeasti, mutta käytännössä asia ei näin todellakaan ollut. Samalla oli hyvä tilaisuus raapaista WordPress puhtaalle pöydälle ja siivota tietokanta sinne kerääntyneistä lisäosista.

Tietenkin alkuun otin tuoreet varmuuskopiot blogin sisällöstä ihan perinteisesti mysqldumpilla (mysqldump --opt -u <username> -p <database> \
| bzip2 -c > mydatabasedump.sql.bz2
), joka myöhemmin osoittautui hyväksi ratkaisuksi. Vaikka WordPress tarjoaa mahdollisuuden ottaa blogin sisällöstä XML-muotoisen tulosteen ja palauttamaan sen, jää tietosisältö osiltaan vajavaiseksi. Aikaansaatu XML sisältää merkinnät, sivut, kommentit, tagit ja kategoriat, mutta jättää esimerkiksi linkit tallettamatta. Linkki-taulun (wp_links) palauttamiseen liittyen palautin myös tagit, kategoriat (wp_terms) sekä niiden luokittelun (wp_term_taxonomy ja (wp_term_relationships), jolla sain linkkeihin luokat kuntoon.

Kannattaa lisäksi huomioida, että WordPressin tarjoama sisällön vieminen XML-tiedostoon ei sisällä lisäosien tietokantaan tallettamia tietoja ja asetuksia. Palautin siis myös Now Reading -lisäosan erikseen ja samalla kertaa muokkasin blogikirjoitusten SQL:stä niihin sisällytettyä CSS-luokkia ja polkumäärityksiä, ja näin tuli kirjoitustenkin palauttaminen testattua sekä SQL-tiedostosta että WordPressin tarjoaman XML-tiedoston tuonnin kautta. Kannan palautuksen SQL-tiedostoista tein phpMyAdminissa, vaikka helpommin se olisi varmaan onnistunut konsolissa.

Tietojen palauttamisen jälkeen piti vielä kopioida käytetyt lisäosat ja muistinvaraisesti käsin naputella niihin suurin piirtein oikeat asetukset. Loppujen lopuksi sain kaiken suurin piirtein kasaan, vaikka vielä jäi hieman säätämistä sekä ulkoasullisesti että WordPressin sivuluokituksen ja kustomoitujen elementtien näyttämisessä eri sivuilla. WordPressin is_page(), is_home() ja is_front_page() -template tagit eivät oikein tunnu toimivan loogisesti sivupalkissa (sidebar) käytettynä. Ehdollisten tagien toimivuuteen auttoi, kun ennen sivupalkin kutsumista lisäsi <?php wp_reset_query(); ?> -funktiokutsun.