Finnish-HOWTO Pekka Taipale, pjt@iki.fi v1.1f, 14 February 1996 This document describes how to finlandize Linux - Finnish keyboard mapping, time zone, 8-bit clean settings for applications, etc. Except for this abstract, the text is in Finnish because that is the benefit of the intended audience. This document may be reproduced at the usual Linux HOWTO terms. If you use it commercially, you're wel­ come to do so but I'd like to be notified. If you have questions, con­ tact me at my e-mail address. ______________________________________________________________________ Table of Contents 1. Johdanto 1.1 Mikä HOWTO? 1.2 Tekijänoikeuksista ja kopioinnista 1.3 Tekstin esitystavasta 1.4 Kiitokset 2. Näppäimistöasetukset 2.1 Perusnäppäimistö 2.2 ISO Latin-1 -merkistö 2.3 Näppäimistökartan parantelua 3. Pääteasetukset 4. Ympäristön lokaaliasetukset 5. Aikavyöhykeasetukset 6. X11R6 7. Eräiden sovellusten asetukset 7.1 bash 7.2 tcsh 7.3 emacs 7.4 telnet 7.5 rlogin 7.6 joe 7.7 less 7.8 irc 7.9 elm 7.10 pine 7.11 TeX 7.11.1 NTeX 7.11.2 teTeX 7.11.3 LaTeX-otsikot 8. Posti, nyyssit ja 8-bittiset merkit 8.1 Perusratkaisu: 8-bittiset merkit viesteihin 8.2 MIME Quoted Printable-koodaus 9. Aiheeseen liittyvää materiaalia ______________________________________________________________________ 1. Johdanto 1.1. Mikä HOWTO? Tämä dokumentti kertoo, mitä pitäisi tehdä Linuxin suomettamiseksi sen jälkeen kun käyttöjärjestelmä perussovelluksineen on asennettu koneeseen jostain Linux-jakelusta. Näin saadaan suomalaiset kirjaimet, näppäimistö ja muut paikalliset asetukset toimimaan oikein. Lähtökohtana on Slackware- tai RedHat-jakelusta asennettu Linux- järjestelmä, mutta ohjeista on todennäköisesti apua myös muiden Linux- jakeluversioiden käyttäjille. Varsin suuri osa ohjeista pätee Linuxin lisäksi muissakin Unix- tyyppisissä järjestelmissä. Sama toimii myös toisinpäin: jos et löydä etsimääsi tietoa tästä dokumentista, tutki muita FAQ- jne. tiedostoja (ks. esim. Linuxin HOWTO-dokumentit sekä viitteet [``UNIXHelp''] ja [``faqs'']). Tämän dokumentin viitteissä on, mikäli mahdollista, käytetty kotimaisia peilauksia ulkomailla sijaitsevien alkuperäisten tiedostovarastojen asemesta. Tässä ohjeessa ei ole yleensä eritelty root-käyttäjän ja tavallisen käyttäjän tekemiä asetuksia. Jotkut ohjeista ovat siis ainoastaan ylläpitäjän heiniä ja vaikuttavat koneen kaikkiin käyttäjiin, jotkut taas ovat tavallisen käyttäjän itselleen tekemiä asetuksia. Linux- koneissa ylläpitäjä ja käyttäjä ovat usein - mutta eivät aina - sama henkilö. Hyvin monet asetukset voi tehdä molemmilla tavoilla; esim. kaikkien käyttäjien oletukset hakemistossa /etc oleviin tiedostoihin ja käyttäjän omat asetukset kotihakemistossa $HOME oleviin pisteellä alkaviin tiedostoihin. 1.2. Tekijänoikeuksista ja kopioinnista Copyright © 1996 by Pekka Taipale. Tätä dokumenttia saa kopioida ja levittää muuttamattomana vapaasti. Jos levität muutettua tai lyhennettyä versiota dokumentista, tätä tekijänoikeusmerkintää ei saa poistaa. En ota vastuuta mahdollisista virheistä enkä varsinkaan muiden muuttamista versioista. Jos teet dokumenttiin lisäyksiä tai korjauksia, merkitse selvästi oma työsi. Parasta olisi, jos lähettäisit korjausehdotuksesi minulle osoitteeseen pjt@iki.fi jolloin ne voidaan ottaa mukaan alkuperäiseen tekstiin. 1.3. Tekstin esitystavasta Tämä HOWTO on kirjoitettu SGML-muodossa. HTML-, TeX- ja tekstiversiot generoidaan SGML:stä Linuxdoc-SGML -ohjelmalla [``Linuxdoc'']. Tämän tekstin ulkopuolelle osoittavat viittaukset (HTML-versiossa linkit) on koottu yhteen paikkaan, ks. luku ``Aiheeseen liittyvää materiaalia''. Muualla dokumentissa olevat linkit ovat ristiinviittauksia dokumentin sisällä. Näin on menetelty siksi, että olisi helpompi hahmottaa, milloin HTML-version linkin seuraaminen on viemässä lukemaan jotakin muuta dokumenttia ja milloin se on ristiinviittaus tämän HOWTO:n sisällä. 1.4. Kiitokset Kiitos kaikille kommentteja ja korjauksia esittäneille. Erityisesti mainittakoon Tuomas Aura, Tuomas Eerola, Timo Korvola, Jaakko Ruohio, Jani Tammi ja Lars Wirzenius. 2. Näppäimistöasetukset 2.1. Perusnäppäimistö Tässä kerrotaan tekstikonsolin näppäimistöasetuksista. X-ympäristöstä on tietoa luvussa ``X11R6''. Jos näppäimistösi on Linuxin asennuksen jäljiltä amerikkalaista mallia, olet ohittanut näppäimistökartan valinnan asennusohjelmassa. Näppäimistökartaksi kannattaa valita ISO Latin-1-merkkejä (ks. kohta ``alla'') tuottava kartta fi-latin1. Seitsemänbittinen fi-kartta on poistumassa käytöstä eikä sitä kannata käyttää jos siihen ei ole erityistä tarvetta. Slackware-järjestelmissä näppäimistökartan voi asettaa lisäämällä tiedostoon /etc/rc.d/rc.keymap tai /etc/rc.d/rc.local seuraava rivi: ______________________________________________________________________ /usr/bin/loadkeys fi-latin1 # Finnish latin1 keymap ______________________________________________________________________ RedHatissa asetus taas on tiedostossa /etc/sysconfig/keyboard, jossa pitää olla seuraava rivi: ______________________________________________________________________ KEYTABLE=/usr/lib/kbd/keytables/fi-latin1.map ______________________________________________________________________ Debian-järjestelmissä asetus tehdään tiedostoon /etc/rc.boot/console. Näppäimistökarttatiedostot ovat yleensä hakemistossa /usr/lib/kbd/keytables. Mikäli fi-latin1 -karttaa ei löydy tästä hakemistosta, etsi esim. Slackware-jakelun keytbls-paketti. Ruotsalaiset käyttävät samaa näppäimistökarttaa kuin suomalaiset. 2.2. ISO Latin-1 -merkistö Suomenkielinen teksti kirjoitetaan Linux-ympäristössä ISO Latin-1 -merkistöllä, joka käyttää 7-bittisiä ASCII-merkkejä englannin perusaakkosten näyttämiseen ja 8-bittisiä ns. ISO-skandeja suomalaisiin kirjaimiin å, ä, ö jne. Myös mm. MS Windows käyttää samaa merkistöä. Lisätietoja löytyy Timo Kiravuon merkistöohjeesta [``skandit''] ja Jukka Korpelan ISO-Latin-1-merkkejä käsittelevästä tekstistä [``ISO-latin1'']. Jos fi-latin1 -näppäimistöllä ä:n ja ö:n painalluksista tulee d- ja v- kirjaimia, hukkuu kahdeksas bitti jonnekin. Ks. Pääteasetukset-kohta (``'') sekä rlogin (``'') ja telnet (``''). Jos skandien painaminen aiheuttaa piippauksia tai mitään ei tapahdu, sovellus (esim. komentotulkki) ei huoli 8-bittisiä merkkejä. Katso sovelluksien kohdalta komentotulkkisi asetukset (kohdat ``bash'' ja ``tcsh''). 2.3. Näppäimistökartan parantelua Timo Korvola ehdottaa: Gravea, tildeä ja sirkumfleksia tarvitaan sen verran usein, että elämän helpottamiseksi voi tehdä fi-latin1.map:in lataamisen jälkeen vaikkapa näin: ______________________________________________________________________ loadkeys << '@loadkeys' keycode 5 = four currency dollar keycode 13 = dead_acute grave keycode 27 = dead_diaeresis asciicircum asciitilde keycode 97 = Compose @loadkeys ______________________________________________________________________ Tämä korjaa myös shift 4:n tuottamaan valuuttamerkin siten kuin näppäimistössä lukee. Oikeasta controlista tehdään compose, jolla voi tuottaa vaikkapa è:n näppäilemällä compose ` e. Konsolin näppäinkoodit saa helposti selville ohjelmalla showkey. 3. Pääteasetukset 8-bittisten suomalaisten merkkien toimiminen vaatii, että pääteyhteys on 8-bittinen. Yleensä Linux-koneen näppäimistöllä ja päätelinjoilla näin onkin, mutta mikäli ei ole, asetus saadaan päälle laittamalle seuraava komento komentotulkin alustustiedostoon (.profile, .login jne): ______________________________________________________________________ stty pass8 ______________________________________________________________________ 8-bittisten merkkien toimiminen rlogin- ja telnet-yhteyksien yli on selitetty alempana sovelluksien kohdalla (ks. kohdat ``rlogin'' ja ``telnet''). 4. Ympäristön lokaaliasetukset Lokaaliasetusten tarkoitus on saada ohjelmat noudattamaan esimerkiksi eri kielten erilaisia aakkosjärjestyssääntöjä ja muita käytäntöjä. Lokaalit vaikuttavat mm. kellonaikojen ja päivämäärien tulostusmuotoon ja tietueiden lajittelujärjestykseen eri ohjelmia käytettäessä - mikäli ohjelmat on tehty asianmukaisella tavalla ja kirjastot tukevat kyseistä lokaalia. Uudehkojen Linux-jakelujen (Slackware 3.0 ja RedHat 2.1) kirjastot tukevat dokumenttien mukaan yleistä eurooppalaista Latin1-merkistölokaalia ISO-8859-1. Oikea lokaaliasetus Suomessa on finnish.iso88591. Lokaali asetetaan ympäristömuuttujien LC_CTYPE, LC_TIME jne. avulla (ks. man 7 locale). Voi olla viisasta asettaa suomalainen lokaali jo nyt, niin että spesifisen suomalaisen lokaalituen mahdollisesti joskus ilmestyessä kirjastoihin se otetaan käyttöön. Lokaalin asetus voi olla myös epäviisasta, koska esim. päivämäärätulostuksen muodon muuttuminen voi muuttaa komentotiedostojen toimintaa ja rikkoa siten ohjelmia. LC_TIME-lokaalin POSIX-asetuksella date-komennon tulostus on muotoa Wed Aug 9 13:33:39 EETDST 1995 kun taas suomalaisella lokaalilla se olisi muotoa 9.8.1995 13:33:39. LC_ALL- tai LC_TIME-asetuksen tekeminen ei siis ole välttämättä järkevää, mutta LC_CTYPE ja LC_COLLATE kannattaa asettaa suomalaiseksi. Esim. tcsh vaatii LC_CTYPE-asetuksen, jotta 8-bittiset merkit toimisivat. Jos käytät komentotulkkina csh-varianttia (kuten tcsh), haluat todennäköisesti tehdä asetuksen tiedostossa /etc/csh.cshrc tai $HOME/.cshrc: ______________________________________________________________________ setenv LC_CTYPE finnish.iso88591 ______________________________________________________________________ Jos taas käytät sh-varianttia (kuten bash tai pdksh), kirjoita tiedostoon /etc/profile tai $HOME/.profile: ______________________________________________________________________ export LC_CTYPE=finnish.iso88591 ______________________________________________________________________ 5. Aikavyöhykeasetukset Linux-koneen CMOS-kello voi osoittaa joko UTC-aikaa - kuten UNIX- koneissa on yleensä tapana - tai paikallista aikaa. (UTC on kansainvälinen normaaliaika, suunnilleen sama kuin Greenwich Mean Time eli GMT.) Linux-jakelut olettavat yleensä kellon käyvän paikallista aikaa, koska MS-DOS ja muut tavalliset PC-käyttöjärjestelmät eivät tunne aikavyöhykkeitä. Tällöin Linuxin käynnistystiedostoissa - esim. /etc/rc.d/rc.S (Slackware) tai /etc/rc.d/rc.sysinit (RedHat) - on komento clock -s. Jos kello on UTC-ajassa, komennon pitää olla clock -u -s. Kun CMOS-kello on UTC-ajassa, käyttöjärjestelmä huolehtii ajan näyttämisestä oikein mm. kesäaikaan siirryttäessä, kunhan aikavyöhyke on asetetty oikein. Jos CMOS-kello on paikallisessa ajassa, kesä- ja talviaikoihin siirtymiset on tehtävä käsin. CMOS-kellon aikaa voi muuttaa joko CMOS-setupista käsin tai sitten Linuxissa clock- komennolla (ks. man 8 clock). Suomen aikavyöhyke on EET (Eastern European Time). Aikavyöhykkeen voi asentaa käyttöjärjestelmän asennuksen yhteydessä; mikäli et tehnyt sitä tai teit sen väärin, voit tehdä asetuksen root-tunnuksella komennolla ______________________________________________________________________ ln -s /usr/lib/zoneinfo/Europe/Helsinki /usr/lib/zoneinfo/localtime ______________________________________________________________________ (Vanhemmissa Linux-jakeluissa ei ole Helsinki-vyöhykettä; käytä EET:tä). Yleensä systeemin oletusaikavyöhykkeen asettaminen riittää. Jos yksittäinen käyttäjä tarvitsee erilaisen aikavyöhykkeen, sen voi asettaa käyttäjäkohtaisesti TZ-muuttujalla. POSIX-käytäntö on, että TZ-asetus on muotoa EET-2EETDST, mikä tarkoittaa, että aikavyöhyke on EET, se on kaksi tuntia edellä GMT:tä, ja kesäaikaan siirrytään EETDST-säännön mukaan. Asetus saadaan aikaan komentotulkin alustustiedostossa, esim. bash-käyttäjille lisäämällä kotihakemiston .profile-tiedostoon rivi ______________________________________________________________________ export TZ=EET-2EETDST ______________________________________________________________________ 6. X11R6 XFree86 saa näppäimistökarttansa Linuxin konsolilta. Useimpien näppäinten (ml. ä ja ö) pitäisi toimia suoraan oikein, kun konsolin näppäimistökartta on asetettu. "Kuolleiden" näppäinten määrityksiä (dead_acute, dead_diaeresis ym.) ei kuitenkaan saada konsolilta, joten lopputulosta täytyy hieman paikkailla. Jos kone on konfiguroitu käynnistämään xdm eli käyttäjä ei kirjoittaudu sisään virtuaalikonsolille vaan suoraan X11:aan, voi olla tarpeen asettaa koko suomalainen näppäimistökartta .Xmodmap- tiedostossa. Mikäli AltGr-näppäin ei toimi (merkit {, [, ], }, \ jne.), tarkista, että X:n konfigurointitiedostossa (/etc/XF86Config tai /usr/lib/X11/XF86Config) on rivi ______________________________________________________________________ RightAlt ModeShift ______________________________________________________________________ ja että sitä ei ole kommentoitu pois #-merkillä. X:n käynnistysskriptit ajavat yleensä xmodmap-ohjelman, joka muuttaa X:n näppäimistökarttaa käyttäjän .Xmodmap-tiedoston perusteella. .Xmodmap-tiedosto voi näyttää esim. tältä: ______________________________________________________________________ keycode 13 = 4 currency dollar keycode 21 = acute grave keycode 35 = dead_diaeresis asciicircum asciitilde ______________________________________________________________________ Tässä näppäimeen, jonka näppäinkoodi on 13 (näppäimistön päälohkon numeronäppäin 4) sidotaan merkit 4, valuuttamerkki ja $, jotka tulevat, kun ko. näppäintä painetaan yksinään, shiftin kanssa ja AltGr-näppäimen kanssa. Näppäimeen 21 (Backspace-näppäimen vieressä) sidotaan hipsumerkit ja näppäimeen 35 (å:n ja Enterin välissä) sidotaan "kuolleet pisteet" (¨) sekä sirkumfleksi ("hattumerkki") ja tilde (~). Voit kirjoittaa esim. saksalaisen ü-kirjaimen painamalla ensin kuolleita pisteitä ja sitten u:ta. .Xmodmap-tiedoston muutokset saa heti käyttöön komennolla ______________________________________________________________________ xmodmap .Xmodmap ______________________________________________________________________ Ks. man xmodmap. Huomaa, että emacs saattaa kohdella näppäimiä poikkeavasti. X:n alla näppäinkoodit saa selville ohjelmalla xev. Esimerkki X11-näppäimistökartasta Tämän voi sijoittaa .Xmodmap-tiedostoon. ______________________________________________________________________ keycode 8 = keycode 9 = Escape keycode 10 = 1 exclam keycode 11 = 2 quotedbl at keycode 12 = 3 numbersign sterling keycode 13 = 4 dollar dollar keycode 14 = 5 percent keycode 15 = 6 ampersand keycode 16 = 7 slash braceleft keycode 17 = 8 parenleft bracketleft keycode 18 = 9 parenright bracketright keycode 19 = 0 equal braceright keycode 20 = plus question backslash keycode 21 = apostrophe grave keycode 22 = Delete keycode 23 = Tab keycode 24 = Q keycode 25 = W keycode 26 = E keycode 27 = R keycode 28 = T keycode 29 = Y keycode 30 = U keycode 31 = I keycode 32 = O keycode 33 = P keycode 34 = aring Aring keycode 35 = dead_diaeresis asciicircum asciitilde keycode 36 = Return keycode 37 = Control_L keycode 38 = A keycode 39 = S keycode 40 = D keycode 41 = F keycode 42 = G keycode 43 = H keycode 44 = J keycode 45 = K keycode 46 = L keycode 47 = odiaeresis Odiaeresis keycode 48 = adiaeresis Adiaeresis keycode 49 = section onehalf keycode 50 = Shift_L keycode 51 = apostrophe asterisk keycode 52 = Z keycode 53 = X keycode 54 = C keycode 55 = V keycode 56 = B keycode 57 = N keycode 58 = M keycode 59 = comma semicolon keycode 60 = period colon keycode 61 = minus underscore keycode 62 = Shift_R keycode 63 = KP_Multiply keycode 64 = Alt_L keycode 65 = space keycode 66 = Caps_Lock keycode 67 = F1 keycode 68 = F2 keycode 69 = F3 keycode 70 = F4 keycode 71 = F5 keycode 72 = F6 keycode 73 = F7 keycode 74 = F8 keycode 75 = F9 keycode 76 = F10 keycode 77 = Num_Lock keycode 78 = Scroll_Lock keycode 79 = Home KP_7 KP_7 Home keycode 80 = Up KP_8 KP_8 Up keycode 81 = Prior KP_9 KP_9 Prior keycode 82 = KP_Subtract keycode 83 = Left KP_4 KP_4 Left keycode 84 = Begin KP_5 KP_5 Begin keycode 85 = Right KP_6 KP_6 Right keycode 86 = KP_Add keycode 87 = End KP_1 KP_1 End keycode 88 = Down KP_2 KP_2 Down keycode 89 = Next KP_3 KP_3 Next keycode 90 = Insert KP_0 KP_0 Insert keycode 91 = Delete KP_Decimal KP_Decimal Delete keycode 92 = 0x1007ff00 keycode 93 = keycode 94 = less greater bar keycode 95 = F11 keycode 96 = F12 keycode 97 = Home keycode 98 = Up keycode 99 = Prior keycode 100 = Left keycode 101 = Begin keycode 102 = Right keycode 103 = End keycode 104 = Down keycode 105 = Next keycode 106 = Insert keycode 107 = Delete keycode 108 = KP_Enter keycode 109 = Control_R keycode 110 = Pause keycode 111 = Print keycode 112 = KP_Divide keycode 113 = Alt_R Mode_switch keycode 114 = Break keycode 115 = ______________________________________________________________________ 7. Eräiden sovellusten asetukset Tähän ei ole kerätty kaikkia mahdollisia sovelluksia; lisäapua voi löytyä esim. German-HOWTO:sta [``german'']. 7.1. bash Tee kotihakemistoosi tiedosto .inputrc, ja laita sinne nämä rivit: ______________________________________________________________________ set meta-flag on set convert-meta off set output-meta on ______________________________________________________________________ Tämän jälkeen komentotulkki huolii 8-bittiset merkit ja näyttää ne oikein. bash lukee käynnistyessään useita eri tiedostoja. .profile, .bash_login ja .bash_profile luetaan ainoastaan sisäänkirjoittautumisen (login) yhteydessä; .bashrc taas suoritetaan aina kun bash käynnistyy (myös esim. xterm-ikkunassa). 7.2. tcsh tcsh käyttää lokaaliasetusta LC_CTYPE. Tee kotihakemistoosi tiedosto .tcshrc, ja laita sinne rivi ______________________________________________________________________ setenv LC_CTYPE finnish.iso88591 ______________________________________________________________________ Huomaa, että RedHat 2.1:n mukana tuleva tcsh ei jostain syystä toimi 8-bittisten merkkien kanssa oikein. Voit joko kääntää tcsh:n itse, tai kopioida tcsh-binäärin esim. Slackware 3.0:sta. 7.3. emacs Tee tai editoi kotihakemistossasi tiedostoa .emacs. Laita sinne rivit: ______________________________________________________________________ (standard-display-european 1) (set-input-mode (car (current-input-mode)) (nth 1 (current-input-mode)) 'accept-8bit-input) (require 'iso-syntax) ______________________________________________________________________ Huomaa, että GNU Emacs 19.25, joka on mm. Slackware-jakelun versiossa 2.0.0, on rikki eikä eurooppalaisten merkkien tuki toimi. Jos käytät tätä versiota, poista se ja asenna uudempi versio. Myös emacs 19.30 toimii väärin jos se on käännetty vanhalla gcc:llä (esim. 2.6.3). 7.4. telnet Luo kotihakemistoosi tiedosto .telnetrc ja tee sinne oma rivi kullekin koneelle johon otat yhteyttä telnetillä. Rivillä on koneen nimi sekä komento set outbinary. Jos esim. otat yhteyttä koneeseen masina paikallisessa verkossa sekä koneeseen hissi.kone.fi Internetin yli, .telnetrc-tiedostosi pitäisi näyttää tältä: ______________________________________________________________________ masina set outbinary hissi.kone.fi set outbinary ______________________________________________________________________ Voit myös antaa käynnistettäessä option -8 tai asettaa binäärimoodin telnet-istunnon aikana painamalla telnetin escape-merkkiä (ei ESC- näppäin vaan telnetin escape character, oletuksena C-] joka löytyy yleensä näppäilemällä Ctrl-5) ja antamalla komennon. Ks. man telnet. 7.5. rlogin rlogin-komennossa pitää antaa optio -8 jotta 8-bittiset merkit kulkisivat yhteyden läpi. Ks. man rlogin. 7.6. joe joe tarvitsee option -asis jotta se kohtelisi merkkejä 8-bittisinä. Poista välilyönti joerc-tiedostosta sen rivin alusta, jolla lukee -asis. Kaikkien käyttäjien yhteinen joerc-tiedosto on yleensä /usr/lib/joe/joerc ja käyttäjäkohtainen tiedosto $HOME/.joerc. 7.7. less Aseta ympäristömuuttuja LESSCHARSET arvoon latin1: ______________________________________________________________________ export LESSCHARSET=latin1 ______________________________________________________________________ tai vastaava C-shellin komento. 7.8. irc Tämän kirjoitti Jani Tammi (jantam@utu.fi). Laita .ircrc-tiedostoon rivi: ______________________________________________________________________ set eight_bit_characters on ______________________________________________________________________ Tämän lisäksi saatat tarvita myös komennon ______________________________________________________________________ /set translation latin_1 ______________________________________________________________________ Huomaa, että tämä komento annetaan irc:issä, eikä sitä kirjoiteta .ircrc-tiedostoon. 7.9. elm Laita tiedostoon $HOME/.elm/elmrc seuraavat rivit: ______________________________________________________________________ charset = iso-8859-1 displaycharset = iso-8859-1 textencoding = 8bit ______________________________________________________________________ 7.10. pine Laita tiedostoon /usr/local/lib/pine.conf tai $HOME/.pinerc seuraava rivi: ______________________________________________________________________ character-set=ISO-8859-1 ______________________________________________________________________ 7.11. TeX Suomalaiset aakkoset ja tavutuksen saa TeXissä toimimaan parhaiten käyttämällä babel-pakettia, joka on siis syytä valita asennettavaksi TeXiä asennettaessa. TeXistä on kaksi Linux-järjestelmissä yleisesti käytettyä jakelua: NTeX ja teTeX. NTeX tulee Slackwaren ja teTeX RedHatin mukana. teTeX on näistä helpompi konfiguroida. TeXin hakemistopolut ja konfigurointi vaihtelevat jakelusta toiseen. Voit joutua tekemään asiat jakelusta riippuen hyvinkin paljon tästä ohjeesta poikkeavalla tavalla. 7.11.1. NTeX Tässä opasti Tuomas Aura (Tuomas.Aura@hut.fi): LaTeXissa (2e) ei ole valmiina suomenkielistä tavutusta, vaan se on käännettävä itse. Tämä tapahtuu seuraavasti (root-käyttäjänä): · Etsi tiedosto language.dat (Slackwaren NTeXissä /usr/lib/texmf/tex/latex/cfg/language.dat) ja editoi sitä. Valitse enintään 4 kieltä ja poista niiden edestä kommenttimerkki %. Slackware 3.0:n NTeX:issä on kielen nimi "finnish" kirjoitettu väärin: "finish". Tämä on syytä korjata (tiedoston hyphen.finish nimessä se ei haittaa). · Samassa hakemistossa on lthyphen.cfg joka on korvattava babel- versiolla: ______________________________________________________________________ rm lthyphen.cfg ln -s lthyphen.babel lthyphen.cfg ______________________________________________________________________ · Poista tavutuksen amerikkalainen oletustiedosto: ______________________________________________________________________ rm /usr/lib/texmf/tex/tex/macros/hyphen.tex ______________________________________________________________________ · Etsi tiedosto latex.ltx ja mene samaan hakemistoon (NTeXissä /usr/lib/texmf/tex/latex/latex-base). Aja initex: ______________________________________________________________________ initex latex.ltx ______________________________________________________________________ · Näin syntyy tiedosto latex.fmt. Kopioi se LaTeXin ini-hakemistoon, esim. NTeXissä: ______________________________________________________________________ mv latex.fmt /usr/lib/texmf/ini/ ______________________________________________________________________ Nyt pitäisi suomen tavutuksen toimia, kunhan dokumentin otsikot ovat kunnossa. 7.11.2. teTeX teTeX:in konfigurointi on helppoa: · Ajetaan texconfig · Valitaan valikosta HYPHEN · Editori aukeaa editoimaan language.dat-tiedostoa, poistetaan kommentti sen rivin alusta, jossa lukee finnish · Uusi LaTeX-formaatti luodaan automaattisesti 7.11.3. LaTeX-otsikot Suomalaisen LaTex-dokumentin alkuriveillä pitäisi lukea jotain tämän tapaista: ______________________________________________________________________ \documentclass[a4paper,finnish]{article} \usepackage{t1enc,isolatin1,babel} ______________________________________________________________________ LaTeX2e <1994/12/01> -formaatilla ja uudemmilla toimii myös hienompi ratkaisu: ______________________________________________________________________ \documentclass[a4paper, finnish]{article} \usepackage{babel} \usepackage[latin1]{inputenc} \usepackage[T1]{fontenc} ______________________________________________________________________ Näillä otsikoilla pitäisi suomalaisen tavutuksen ja kirjainten toimia oikein, mikäli TeX-jakelu on asennettu ja konfiguroitu oikein. Tässä ei neuvota LaTeX-dokumenttien tekemistä tarkemmin. Jukka Korpelan TKK:lle tekemästä Tex-ohjeesta [``texref''] voi olla apua. 8. Posti, nyyssit ja 8-bittiset merkit 8.1. Perusratkaisu: 8-bittiset merkit viesteihin Posti- ja nyyssiviesteissä (USENET news ja vastaavat paikalliset järjestelmät) on järkevintä lähettää 8-bittisiä ISO Latin1-skandeja silloin kun kirjoitetaan suomeksi tai ruotsiksi. Postiohjelmat kuten elm ja pine näyttävät Latin1-merkit oikein, kun ne on konfiguroitu sovellusten kohdalla kuvatulla tavalla (ks. kohdat ``elm'' ja ``pine''). Jäljellä on kuitenkin vielä yksi ongelma: miten saada postissa mitä kummallisimmissa muodoissa tulevat viestit ISO-8859-1:n mukaisiksi? 8-bittiset ISO Latin1-merkit kirjoitetaan viestiin sellaisenaan ja viestin otsikossa ilmoitetaan, että sisältö on 8-bittistä tekstiä. Tämä tapahtuu liittämällä lähteviin viesteihin seuraavat MIME- standardin [``RFC1521''] mukaiset otsikot. Tämä edellyttää, että kaikki viestiä välittävät koneet kykenevät käsittelemään 8-bittistä tietoa viestin rungossa. Suomi on jo jokseenkin läpeensä 8-bittinen, mutta erityisesti USA:sta löytyy vielä runsaasti 7-bittisiä postijärjestelmiä, jotka ovat postistandardin RFC822 mukaisia [``RFC822'']. Näiden kanssa on yleensä tyydyttävä käyttämään QP- koodausta (ks. ``MIME Quoted Printable-koodaus''). Tavallisesti seuraavat otsikot ja 8-bittiset merkit kuitenkin riittävät: ______________________________________________________________________ Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit ______________________________________________________________________ Esim. elm-ohjelmassa nämä otsikot laitetaan tiedostoon $HOME/.elm/elmheaders. emacs-pohjaisilla posti- ja nyyssisovelluksilla asetus tapahtuu helpoiten laittamalla seuraavat rivit .emacs- tiedostoon: ______________________________________________________________________ (setq mail-default-headers "Mime-Version: 1.0\n\ Content-Type: text/plain; charset=ISO-8859-1\n\ Content-Transfer-Encoding: 8bit\n") ______________________________________________________________________ 8.2. MIME Quoted Printable-koodaus Yleisin ongelma viestien vastaanotossa ovat MIME Quoted Printable -koodatut merkit [``RFC1521'']. Näitä kutsutaan usein sattuvasti myös nimellä Quoted Unreadable. QP-koodattuja viestejä ei kannata lähettää, jos 8-bittisten merkkien lähettäminen sellaisenaan vain on mahdollista, koska varsin monet lukijat n=E4kev=E4t QP-viestit t=E4m=E4n n=E4k=F6isin=E4. QP-koodatut - samoin kuin kokonaan binääridataa sisältävät Base64-koodatut viestit - saa purettua lukukelpoisiksi metamail-ohjelmalla [``metamail'']. metamail tulee valmiina ainakin RedHat 2.1-jakelun mukana. elm (ainakin versio 2.4 PL24) osaa käyttää metamailia suoraan, mikäli metamail on polun varrella eli ajettavissa. emacs-pohjaiset posti- ja nyyssisovellukset saattavat tarvita tiedon metamailin sijainnista .emacs-tiedostossa esim. näin: ______________________________________________________________________ (setq metamail-program-name "/usr/local/bin/metamail") ______________________________________________________________________ 9. Aiheeseen liittyvää materiaalia Seuraavat dokumentit voivat olla hyödyllistä luettavaa näiden ongelmien kanssa painiessasi: 1. [skandit] Suomalaiset merkit tietokoneissa, Timo Kiravuo: 2. [ISO-latin1] ISO-Latin-1-merkistöstä, Jukka Korpela: 3. [texref] TeX-ladontaohjelma, Jukka Korpela: 4. [danish] Danish-HOWTO, Thomas Petersen: 5. [german] German-HOWTO, Thomas Ploss: 6. [RFC822] Format of Internet Text Messages, David Crocker: 7. [RFC1521] MIME, Part One: Format of Internet Message Bodies, N. Borenstein & N. Freed: 8. [RFC1522] MIME, Part Two: Message Header Extensions, K. Moore: 9. [metamail] Metamail-ohjelma: 10. [linuxdoc] Linuxdoc-SGML, Matthew D. Welsh: 11. [unixhelp] UNIXHelp for Users, University of Edinburgh: 12. [faqs] FAQ Collection, Thomas Fine: