Finnish HOWTO

Ari Mäkelä


                                hauva@iki.fi
                        

Revision History
Revision v2.0.42001-07-18Revised by: am
Completely rewritten.

Abstract

This document describes how to localize GNU/Linux for Finnish users and is intended to replace Pekka Taipale's original Finnish-HOWTO which has not been updated for some time. This document derives from original Finnish HOWTO and more importantly from the Danish-HOWTO by Niels Kristian Bech Jensen.

Language of the HOWTO is Finnish. Non-Finnish users should consult Danish HOWTO which is not in Danish but in English.


Table of Contents
1. Johdanto
1.1. Mikä on HOWTO?
1.2. Mitä tämä dokumentti ei käsittele?
1.3. Tekijänoikeuksista ja kopioinnista
1.4. Tekstin esitystavasta
1.5. Kiitokset
2. Näppäimistöasetukset
2.1. Merkistö
2.1.1. Näppäimistökartan lataaminen
2.1.1.1. Konsolissa
2.1.1.2. XFree86 3
2.1.1.3. XFree86 4
2.1.2. Kuolleet näppäimet
3. Näytön ja ohjelmien asetukset
3.1. Locale-asetukset
3.2. Euro-merkki
3.3. Merkit, joita voidaan näyttää GNU/Linuxissa
3.4. Ohjelmakohtaiset merkistöasetukset
3.4.1. bash
3.4.2. elm
3.4.3. emacs
3.4.3.1. Gnus
3.4.3.2. vm
3.4.4. groff
3.4.5. joe
3.4.6. kermit
3.4.7. less
3.4.8. ls
3.4.9. links
3.4.10. lynx
3.4.11. man
3.4.12. metamail
3.4.13. nn
3.4.14. pine
3.4.15. rlogin
3.4.16. sendmail
3.4.17. tcsh
3.4.18. telnet
3.4.19. TeX/LaTeX
3.4.20. tin
3.5. Tekstitiedostoformaatit muilla alustoilla
4. Lokaalituki glibc2:ssa ja uudemmissa
List of Tables
4-1. Lokaalit

Chapter 1. Johdanto

1.1. Mikä on HOWTO?

Tämän dokumentin tarkoituksen on antaa ohjeet GNU/Linuxin asetusten suomalaistamiseksi asennuksen jälkeen. Lähtökohtana on tekijän käyttämä I>Debian GNU/Linux< (kirjoitushetkellä versio 2.2), mutta dokumentista on todennäköisesti hyötyä myös muiden jakeluiden käyttäjille, vaikka erityisesti erilaisten käynnistysskriptien nimet ja paikat vaihtelevat eri distribuutioiden välillä hyvinkin paljon.

GNU/Linux on muuttunut paljon sitten Pekka Taipaleen alkuperäisen Finnish-HOWTO:n: sen asentaminen on muuttunut helpommaksi ja asetukset ovat entistä useammin valmiiksi oikein, mutta aina näin ei ole eikä suinkaan ole haitaksi tietää miten GNU/Linuxin kieliasetukset toimivat.

GNU/Linux on entistä useammin palvelinkäytossä ja siksi on entistä tärkeämpää huomata /etc-hakemiston alla olevien konfiguraatiotiedostojen ero verrattuna käyttäjien kotihakemistoissa oleviin konfiguraatiotiedostoihin. Asetukset, joiden on tarkoitus olla kaikilla voimassa on syytä olla /etc-hakemistossa.


1.2. Mitä tämä dokumentti ei käsittele?

Dokumentti ei lokaalien osalta käsittele GNU/Linux-järjestelmiä, jotka käyttävät C-kirjaston versiota viisi tai vanhempia. Yksikään valtajakelu ei enää näitä C-kirjastoja käytä (Debian ja Red Hat vaihtoivat C-kirjastonsa versioissa Debian GNU/Linux 2.0 ja Red Hat Linux 5.0).

Dokumentti ei käsittele XFree86:n versiota 3.2 vanhempia versioita.


1.3. Tekijänoikeuksista ja kopioinnista

Dokumenttia saa muuttaa ja levittää GNU Free Documentation License version 1.1 ehtojen mukaisesti. Dokumentin lähteinä ovat toimineet erityisesti Niels Kristian Bech Jensenin Danish-HOWTO ja jossain määrin Pekka Taipaleen Finnish HOWTO v. 1.1f.

Tekijä ei vastaa mahdollisista virheistä, mutta ottaa korjaus- ja parannusehdotuksia mielellään vastaan osoitteeseen .


1.4. Tekstin esitystavasta

Dokumentti on kirjoitettu DocBookin XML-versiolla, josta on tuotettu muut versiot.


1.5. Kiitokset

Kiitän kaikkia minulle meilitse ja uutisryhmässä sfnet.atk.linux kommentteja esittäneitä ihmisiä.


Chapter 2. Näppäimistöasetukset

Konsolilla näppäimistöasetukset asetetaan loadkeys ja X Window Systemissä xmodmap komennolla.


2.1. Merkistö

Suomalaistettu GNU/Linux käyttää kansainvälistä ISO-8859-1- eli Latin-1-merkistöä. Tämän määritteleminen ei ole aina välttämätöntä, mutta monet tärkeät ohjelmat vaativat sen asettamisen.

Euro löytyy uudemmasta ISO-8859-15- eli Latin-9-merkistöstä. Tästä lisää myöhemmin.


2.1.1. Näppäimistökartan lataaminen

2.1.1.1. Konsolissa

Näppäimistökartan voi ladata käskyllä loadkeys /usr/share/keymaps/i386/qwerty/fi-latin1.map.gz

Joissakin jakeluissa näppäimistökartan nimessä on .map.gz päätteen sijasta .kmap.gz pääte. Näppäimistökarttojen sijainnissa on eroja eri distribuutioiden välillä. Näppäimistökartat löytää esimerkiksi käskyllä find /usr -name '*latin1.*map*' -print

Debian GNU/Linuxissa loadkeys ajetaan käynnistyksen aikana skriptistä /etc/init.d/keymaps.sh. Red Hatissa käynnistyksen aikana suoritetaan yleensä /etc/rc.d/init.d/keytable -skripti. Tämä skripti lukee /etc/sysconfig/keyboard -tiedoston, jossa määritellään käytettävä näppäimistökartta. Näppäimistön ollessa suomenkielinen tietosto sisältää sauraavan rivin:
	KEYTABLE=fi-latin1


2.1.1.2. XFree86 3

XFree86 3.2:ssa ja uudemmissa /etc/X11/XF86Config-tiedostossa pitäisi olla Keyboard section -kohdassa seuraavat rivit:

	Section "Keyboard"
	   Protocol        "Standard"
	   XkbRules        "xfree86"
	   XkbModel        "pc102"
	   XkbLayout       "fi"
	   XkbVariant      "nodeadkeys"
	EndSection

Näitä, kuten monia muitakin, asetuksia voi muokata omien mieltymyksien mukaan ja alla on esimerkkinä Debian GNU/Linux 2.2 (tätä kirjoitettaessa kyseessä oli vielä kehitysversio) "Keyboard Section:"

	Section "Keyboard"
	   Protocol        "Standard"
	   AutoRepeat      500 30
	   LeftAlt         Meta
	   RightAlt        Meta
	   ScrollLock      Compose
	   RightCtl        Control
	   XkbKeycodes     "xfree86"
	   XkbTypes        "default"
	   XkbCompat       "default"
	   XkbSymbols      "us(pc101)"
	   XkbGeometry     "pc"
	   XkbRules        "xfree86"
	   XkbModel        "pc102"
	   XkbLayout       "fi"
	EndSection

Lisätietoja XF86Config-tiedoston manuaalisivulta.


2.1.1.3. XFree86 4

XFreen versiossa neljä on hiukan erilaiset näppäimistöasetukset, joista tässä esimerkki:

	Section "InputDevice"
        	Identifier      "Generic Keyboard"
	        Driver          "keyboard"
	 	Option          "CoreKeyboard"
 		Option          "XkbRules"      "xfree86"
	 	Option          "XkbModel"      "pc105"
	 	Option		"XkbLayout"     "fi"
	EndSection

2.1.2. Kuolleet näppäimet

Kuolleet näppäimet ovat näppäimiä, joiden painaminen ei tulosta mitään ruudulle ennenkuin painetaan toista näppäintä. Mm. tilde, ~, on tällainen näppäin.


Chapter 3. Näytön ja ohjelmien asetukset

Useimmat ohjelmat pitää kääntää "8-bit-clean", jotta ne toimisivat hyvin skandinaavisilla merkeillä. Jotkin ohjelmat tarvitsevat muitakin asetuksia.


3.1. Locale-asetukset

Debianissa /etc/environment ja Red Hatissa /etc/sysconfig/i18n

LANG=C
LC_CTYPE=fi_FI
LESSCHARSET=latin1

Red Hat Linux 5.2:ssa on virhe, jonka vuoksi linux-lat pitää muuttaa linux:ksi tiedostossa /etc/profile.d/lang.sh.


3.2. Euro-merkki

Uusi merkistö, ISO-8859-15 eli latin9 on luotu korvaamaan ISO-8859-1 (latin1). EURO-paketti tarvitaan latin9-tukeen. Paketissa on sekä fontit että näppäimistökartat. EURO-paketin tämänhetkinen sijainti on valitettavasti dokumentin tekijälle tuntematon.

KDE-projektin euro-sivut .


3.3. Merkit, joita voidaan näyttää GNU/Linuxissa

Komento dumpkeys -l | less näyttää käytettävissä olevat merkit.


3.4. Ohjelmakohtaiset merkistöasetukset

Monet ohjelmat vaativat erityisasetuksia toimiakseen. Esimerkiksi GNU readline -kirjastoa käyttävät kirjastot lukevat /etc/inputrc- tai ~/.inputrc-tiedostot käynnistyessään. Mm. bash ja MySQL:n komentoriviasiakas käyttävät tätä kirjastoa.

Ennen ohjelmakohtaisia asetuksia on kuitenkin syytä säätää lokaalit kuntoon. Ongelmat häviävät usein jo tällön.


3.4.1. bash

Tiedostoon /etc/inputrc tai ~/.inputrc seuraavat rivit:

	set input-meta on
	set output-meta on

3.4.2. elm

Tiedostoon ~/.elm/elmrc seuraavat rivit:

	charset = iso-8859-1
	displaycharset = iso-8859-1
	textencoding = 8bit

Tämä ei välttämättä toimi kaikkien elm-versioiden kanssa. Osittaisen MIME-tuen saa elmiin metamail-paketin avulla.


3.4.3. emacs

Nykyiset Emacsit toimivat oikein kunhan lokaaliasetukset ovat kunnossa.


3.4.3.1. Gnus

Gnus toimii merkistöjen osalta oikein ilman muutoksia GNU Emacsin ja XEmacsin uudempien versioiden kanssa, mikäli näihin on käännetty mukaan monikielisyyslaajennukset (MULE, Multi-lingual enhancements) ja järjestelmän lokaaliasetukset on konfiguroitu oikein.

Muussa tapauksessa lisätään tiedostoon ~/.gnus:

         (setq gnus-default-posting-charset 'iso-8859-1)
         (setq message-default-charset 'iso-8859-1)

3.4.3.2. vm

Lisää tiedostoon ~/.vm
	(setq vm-mime-8bit-text-transfer-encoding '8bit)


3.4.4. groff

Käynnistetään groff käskyllä groff -Tlatin1 %lt;input-tiedosto%gt;


3.4.5. joe

Käynnistetään joe käskyllä joe -asis tai lisätään tiedostoon ~/.joerc

	-asis

3.4.6. kermit

Epätäydellinen, mutta varsin toimiva ~/kermrc:

        set terminal bytesize 8
        set command bytesize 8
        set file bytesize 8
        set language finnish
        set file character-set latin1-iso
        set transfer character-set latin1-iso
        set terminal character-set latin1-iso	

Asetuksia on muutettava jos remote host on käyttöjärjestelmältään DOS tai OS/2.


3.4.7. less

Asetetaan ympäristömuuttuja: LESSCHARSET=latin1 Tämä ei ole välttämätöntä, jos järjestelmä tukee lokaaleja. Tällöin voidaan myös asettaa ympäristömuuttujien LANG, LC_CTYPE tai LC_ALL arvo.


3.4.8. ls

ls toimii oikein kunhan lokaaliympäristömuuttuja LC_CTYPE tai LC_ALL on asetettu.


3.4.9. links

Lisätään tiedostoon ~/.links/.links.cfg rivi

	terminal2 "linux" 0 0 0 0 ISO-8859-1

3.4.10. lynx

Tiedostoon ~/.lynxrc seuraava rivi:

	character_set=ISO Latin 1

Tämän voi asettaa myös tiedostossa /etc/lynx.cfg tai lynxin Options -valikossa.


3.4.12. metamail

Asetetaan ympäristömuuttuja MM_CHARSET=ISO-8859-1


3.4.13. nn

Tiedostoon ~/.nn/init seuraava rivi:

	set data-bits 8

3.4.14. pine

Tiedostoon ~/.pinerc seuraava rivi:

	character-set=ISO-8859-1

Tämä voidaan asettaa myös pinen Setup | Config -menussa. pinen news-asetukset ovat:

	enable-8bit-esmtp-negotiation
	enable-8bit-nntp-posting

3.4.15. rlogin

Käynnistetään rlogin käskyllä rlogin -8 foo.bar.fi


3.4.16. sendmail

Lisätään tiedostoon /etc/sendmail.mc rivi

	define(`confEIGHT_BIT_HANDLING', `mimefy')dnl

tai lisätään /etc/sendmail.cf:ään rivit:

	O EightBitMode=mimefy

3.4.17. tcsh

Lisätään tiedostoon /etc/csh.login tai ~/.login rivi

	setenv LANG C

Itse asiassa pitää vain määritellä ympäristömuuttuja LANG tai LC_CTYPE. Arvolla ei ole merkitystä. tcsh:n manuaalisivulla on lisätietoja.


3.4.18. telnet

Lisätään tiedostoon ~/.telnetrc rivi jokaista remote hostia kohden:

	hostname set outbinary true

3.4.19. TeX/LaTeX

Aja ensin texconfig. Valitse hyphenation -> latex ja poista kommentointi finnish -sanan edestä sekä tallenna tekemäsi muutokset. EDITOR-ympäristömuuttujan on syytä olla kunnossa, jotta voit käyttää tuttua editoria. Tämän jälkeen tarvitset vielä ao. määritykset dokumenttiisi, jotta ääkköset ja suomenkielinen tavutus toimisi.

	\usepackage[latin1]{inputenc}
	\usepackage[T1]{fontenc}
	\usepackage[finnish]{babel}

Lisätietoja ftp://ftp.funet.fi/pub/TeX/CTAN/documentation/lshort/finnish/lyhyt2e.ps


3.4.20. tin

Lisää ~/.tin/headers-tiedostoon rivit

	Mime-Version: 1.0
	Content-Type: text/plain; charset=iso-8859-1
	Content-Transfer-Encoding: 8bit

3.5. Tekstitiedostoformaatit muilla alustoilla

ISO-8859-1 -tekstitiedostoja voidaan muuttaa esimerkiksi DOS-tekstitiedostoiksi käyttämällä recode-ohjelmaa koodisivulla 850. Esimerkiksi DOS-tiedosto foo.txt muutetaan unix-tekstitiedostoksi käskyllä recode cp850:latin1 foo.txt recode on saatavissa Debian GNU/Linuxiin pakettina ja kaikista GNU ftp-arkistoista.


Chapter 4. Lokaalituki glibc2:ssa ja uudemmissa

Monia kohdan Ohjelmakohtaiset näppäimistöasetukset ongelmia voidaan välttäää asettamalle oikeat lokaaliasetukset.

Lokaaliasetuksia voi muuttaa monella tavalla, joita localen manuaalisivu kuvaa tarkemmin. Suosittuja asetuksia ovat ympäristömuuttujien LANG, LC_ALL tai LC_CTYPE arvon asettaminen arvoon

	fi_FI

Table 4-1. Lokaalit

LokaaliympäristömuuttujaKäyttö
LC_COLLATE Merkkijonojen järjesteminen.
LC_CTYPE Merkkien luokittelu ja muuntaminen.
LC_MESSAGES Mm. "Yes" ja "No" -sanojen käännökset.
LC_MONETARY Raha-arvot  
LC_NUMERIC Numeeristen ei-raha-arvojen muotoilu
LC_TIME Päivämäärän ja ajan muotoilu
LC_ALL Määrittelee kaikki edellä mainitut ympäristömuuttujat
LANG Määrittelee kaikki edellä mainitut ympäristömuuttujat, mutta yksittäiset lokaaliympäristömuuttujat voi määritellä erikseen.

Tässä mallisesimerkki:

	LANG=fi_FI
	LINGUAS=fi_FI
	LC_ALL=fi_FI
	SYSFONT=lat1u-16.psf
	SYSTERM=linux