Versiohistoria | ||
---|---|---|
Versio v.2.0.29 | 2005-01-05 | Revised by: am |
Changed the license to dual GPL and GFDL. OpenOffice in Finnish in Debian. Language corrections. More verbose "why fi-latin[19] and not fi?". | ||
Versio v.2.0.28 | 2004-11-23 | Revised by: am |
Fixed broken link to lyhyt2e.ps. | ||
Versio v.2.0.27 | 2004-11-19 | Revised by: am |
How to use comma instead of dot in floating point numbers with tex. | ||
Versio v.2.0.26 | 2004-10-19 | Revised by: am |
"Scandinavian letters do not work in program foo. What should I do?" | ||
Versio v.2.0.25 | 2004-08-26 | Revised by: am |
SuSE and UTF-8. | ||
Versio v.2.0.24 | 2004-08-11 | Revised by: am |
Clearer fi-latin[19] section. Removed obsolete euro.inc.gz. Fixed the broken Euro Character mini-HOWTO link. Better explanation for LC_ALL. | ||
Versio v.2.0.23 | 2004-03-10 | Revised by: am |
Updated the tcsh section. | ||
Versio v.2.0.22 | 2004-03-03 | Revised by: am |
Removed "export" from Debian /etc/environment. | ||
Versio v.2.0.21 | 2003-11-24 | Revised by: am |
lang="fi" attribute to the book element. Language corrections. | ||
Versio v.2.0.20 | 2003-01-09 | Revised by: am |
Debian needs xfonts-.*-transcoded packages in order to work properly. | ||
Versio v.2.0.19 | 2002-12-29 | Revised by: am |
Added RH 8.1 beta and recode example to UTF-8 chapter. | ||
Versio v.2.0.18 | 2002-11-27 | Revised by: am |
loadkeys no more uses the exact file name but fi-latin1. fi-latin9 keymap is now mentioned. Added LC_PAPER to locales section. | ||
Versio v.2.0.17 | 2002-11-27 | Revised by: am |
Fixed emacs euro support. | ||
Versio v.2.0.16 | 2002-11-27 | Revised by: am |
Red Hat 8 UTF-8 support. | ||
Versio v.2.0.15 | 2002-05-09 | Revised by: am |
Added a DocBook XSL tag - because I want to try AxKit on arska.org Finnish HOWTO page. | ||
Versio v.2.0.14 | 2002-05-03 | Revised by: am |
Less obscure description of dead keys in X. | ||
Versio v.2.0.13 | 2002-04-09 | Revised by: am |
Less obscure description of LC_MESSAGES. Fixed an XML structure error in the locales table. Fixed the forgotten bookinfo date. | ||
Versio v2.0.12 | 2002-04-06 | Revised by: am |
More irc stuff. Added set convert-meta off to readline section. Updated Debian specific information to Debian 3.0. More keymap stuff. Removed Red Hat 5.2 stuff. Changed the example locales to fi_FI@euro. Added KDE, Gnome and Emacs to the Euro section. Added fi_FI@euro to the elm section. Added the Debian 3.0 way of locales to the locales section. | ||
Versio v2.0.11 | 2002-02-24 | Revised by: am |
More Euro-support links, updated the KDE link. Added "convert-meta off" to bash. | ||
Versio v2.0.10 | 2001-10-04 | Revised by: am |
Fixed emacsen on console. | ||
Versio v2.0.9 | 2001-10-04 | Revised by: am |
Fixed title of elm-ME+ title from elm to elm-ME+ | ||
Versio v2.0.8 | 2001-09-26 | Revised by: am |
Corrected the erraneous revhistory order. | ||
Versio v2.0.7 | 2001-09-26 | Revised by: am |
Fixed a typo in euro support. | ||
Versio v2.0.6 | 2001-09-26 | Revised by: am |
Added euro support. | ||
Versio v2.0.5 | 2001-09-14 | Revised by: am |
Fixed locale example. Fixed some typos. Fixed some mark-up errors. Added irc and elm-me+ | ||
Versio v2.0.4 | 2001-07-18 | Revised 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.
Tämän dokumentin tarkoituksen on antaa ohjeet GNU/Linuxin asetusten suomalaistamiseksi asennuksen jälkeen. Lähtökohtana on tekijän käyttämä Debian GNU/Linux (kirjoitushetkellä versio 3.0), 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.
HOWTO:n virallinen kotisivu on http://arska.org/finnish-howto/ vaikka myös Linux Documentation Project levittää sitä niin se on usein huomattavasti vanhempi kuin viralliselta kotisivulta löytyvä versio.
Dokumentti ei lokaalien osalta käsittele GNU/Linux-järjestelmiä, jotka käyttävät C-kirjaston versiota viisi tai vanhempia. Valtajakelut käyttävät C-kirjaston versiota kuusi, joka tunnetaan paremmin nimellä glibc2. (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.
Dokumenttia saa muuttaa ja levittää GNU Free Documentation License version 1.1 ehtojen mukaisesti tai vaihtoehtoisesti GNU General Public Licensen version 2, tai minkä tahansa myöhemmän version, 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 <[email protected]>.
Konsolilla näppäimistöasetukset asetetaan loadkeys ja X Window Systemissä xmodmap komennolla.
Suomalaistettu GNU/Linux käyttää kansainvälistä ISO-8859-1- eli Latin-1-merkistöä tai ISO-8859-15- eli Latin-9-merkistöä. Tämän määritteleminen ei ole aina välttämätöntä, mutta monet tärkeät ohjelmat vaativat sen asettamisen.
ISO-8859-15-merkistöä, joka tukee euro -merkkiä, kutsutaan joskus myös nimellä Latin-0
Näppäimistökartan voi ladata käskyllä loadkeys fi-latin1 tai jos kbd on 1.08 tai uudempi voidaan käyttää myös komentoa loadkeys fi-latin9
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
On syytä huomata, että oikea näppäimistökartta on fi-latin1 tai fi-latin9 eikä fi, joka on vanha 7-bittinen näppäimistökartta.
Debian GNU/Linuxissa loadkeys ajetaan käynnistyksen aikana skriptistä /etc/init.d/keymap.sh. Näppäimistökartan voi vaihtaa komennolla /usr/sbin/install-keymap.
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 |
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.
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" Option "XkbVariant" "nodeadkeys" EndSection |
UTF-8 on Unicoden muoto, jolla voi kirjoittaa käytännössä mitä tahansa maailmassa puhuttavaa kieltä ja siihen on varattu tilaa symboleille kuten shakkinappulat ja sillä voi jopa kirjoittaa Tolkienin Tengwar-kirjaimilla.
Vaikka UTF-8 tuottaakin siirtymävaiheessa ongelmia muille kuin amerikanenglantia kirjoittaville niin se on ehdoton edellytys maailmanlaajuisesti toimivalle lokalisaatiolle.
Tekstitiedostoja voi konvertoida recode-komennolla esimerkiksi näin:
$ recode Latin1..UTF-8 foo.dtd |
Red Hat otti käyttöön UTF-8 -merkistön 8-sarjassaan. Alla esitetty korjaus on helppo, mutta oikeastaan väärä tapa korjata ongelma: sen sijaan, että siirryttäisiin UTF-8:iin palataan yksitavuiseen merkistöön. Oikea tapa korjata asia on jättää lokaalit UTF-8-lokaaleiksi muuten kuin meilin ja nyyssien suhteen.
Red Hat 8.0 on tätä kirjoitettaessa ainut distribuutio, joka käyttää oletuksena UTF-8-lokaaleja. Jotta se toimisi moitteettomasti normaalissa työpöytäkäytössä tiedostoon /etc/sysconfig/i18n pitää tehdä seuraavat muutokset:
LANG="fi_FI@euro" SUPPORTED="en_US:en:fi_FI@euro:fi_FI:fi" SYSFONT="lat0-16" SYSFONTACM="iso15" |
Käyttäjien, jotka haluavat käyttää UTF-8:ia yhdessä Debianin kanssa, kannattaa tutustua dokumenttiin Step by step introduction to switching your debian installation to utf-8 encoding.
Debianin versiossa 3.0 merkistöt, joita tarvitaan suomen kirjoittamiseen, siirrettiin fonttipaketteihin, joiden nimessä on sana transcoded. Ne, tai osa niistä, pitää asentaa, jotta mm. Gnome sovellukset toimivisivat.
$ apt-cache search transcoded | egrep font xfonts-base-transcoded - standard fonts for X (transcoded from ISO 10646-1) xfonts-75dpi - 75 dpi fonts for X xfonts-100dpi-transcoded - 100 dpi fonts for X (transcoded from ISO 10646-1) xfonts-base - standard fonts for X xfonts-100dpi - 100 dpi fonts for X xfonts-75dpi-transcoded - 75 dpi fonts for X (transcoded from ISO 10646-1) |
Jotkin ohjelmat pitää kääntää "8-bit-clean", jotta ne toimisivat hyvin skandinaavisilla merkeillä. Jotkin ohjelmat tarvitsevat muitakin asetuksia.
Tarkista lokaaliasetuksesi. Toimiiko ohjelma oikein jos käynnistät sen komennolla LC_ALL=fi_FI ohjelman_nimi?. Tarkista mitä tulostaa komento locale.
Jos käyttämästi ohjelma on komentoriviohjelma ja komentotulkkisi on bash, joka on linuxin oletus, tarkista readline-kirjaston asetukset.
Tarkista löytyykö käyttämäsi ohjelma niiden ohjelmien joukosta, joille oikea lokaali ei riitä.
Debianissa lokaaliasetukset asetetaan tiedostoon /etc/environment ja Red Hatissa tiedostoon /etc/sysconfig/i18n
Uusi merkistö, ISO-8859-15 eli latin9, jota hämmennyksen maksimoimiseksi usein myös latin0:ksi kutsutaan, on luotu korvaamaan ISO-8859-1 (latin1) ja se tarjoaa Euroopan unionin yhteisen rahayksikön euro- ja senttimerkit.
Euro löytyy näppäinyhdistelmällä AltGr-e. Sentti löytyy näppäinyhdistelmän AltGr-Shift-e takaa X:ssä ja konsolissa oikea näppäinyhdistelmä on AltGr-c. Senttejä ei kuitenkaan normaalisti käytetä.
Tämä luku on erityisen Debian-painoitteinen, mutta sen ohjeilla saanee myös muut distrot toimimaan, mutta se vaatinee normaalia enemmän luovuutta.
Distribuutiosta riippuen pitää ladata konsolifontti, joka tukee euroa joko komennolla setfont (RH-johdannaiset) tai consolechars (Debian-johdannaiset).
Debianissa muokataan tiedostoa /etc/console-tools/config siten, että poistetaan kommenttimerkki SCREEN_FONT:
SCREEN_FONT=lat0-16 |
Red Hatissa asetetaan tiedoon /etc/sysconfig/i18n rivit
SYSFONT=lat0-16 SYSFONTACM=iso15 |
AltGr-e tuottaa normaaliasetuksilla geneerisen valuuttasymbolin, joka näyttää nelijalkaiselta hämähäkiltä. Kun sovelluksen käyttämä fontti vaihdetaan ISO-8859-15-fontiksi niin sen tilalle tulee euro. Debianissa tämän voi tehdä lisäämällä tiedostoon /etc/X11/app-defaults/XTerm esimerkiksi rivi
.XTerm.VT100.font: -jmk-neep alt-medium-r-*-*-*-120-*-*-*-*-iso8859-15 |
Mikäli AltGr-e ei toimi lisää tiedostoon /etc/X11/Xmodmap rivi
keycode 26 = e E EuroSign |
Vaihda Gnome Control Centerissä fonttiasetus ISO-8859-15-merkistöksi.
Parempi tapa tehdä tämä on vaihtaa GTK+:n konfiguraatiota komennoilla
cd /etc/gtk ln -s gtkrc.iso-8859-15 gtkrc |
Emacs 21 ja uudemmat tukevat euroa seuraavalla elisp-asetuksella:
(set-language-environment "Latin-9") |
Komento dumpkeys -l | less näyttää käytettävissä olevat merkit.
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.
Tiedostoon /etc/inputrc tai ~/.inputrc seuraavat rivit:
set input-meta on set output-meta on |
Jotkin järjestelmät vaativat lisäksi asetuksen
set convert-meta off |
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.
Lisää tiedostoon /etc/elm-me/elm.mimecharsets seuraava rivit:
fi_FI ISO-8859-1 fi_FI@euro ISO-8859-15 |
Nykyiset Emacsit toimivat oikein X Window Systemissä kunhan lokaaliasetukset ovat kunnossa. Konsolissa tai -nw valitsimella käynnistettynä näin ei kuitenkaan ole vaan ~/.emacs-tiedostoon pitää lisätä seuraava rivi:
(set-input-mode nil nil 'foo) |
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) |
Lisätään tiedostoon /etc/irc/script/local rivit tai kirjoitetaan ne komentokehotteeseen:
set EIGHT_BIT_CHARACTERS on set TRANSLATION LATIN_1 |
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.
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.
Tiedostoon ~/.lynxrc seuraava rivi:
character_set=ISO Latin 1 |
Tämän voi asettaa myös tiedostossa /etc/lynx.cfg tai lynxin Options -valikossa.
Kunhan lokaalit on asetettu suomalaisiksi suomenkielisen OpenOfficen saa kun asentaa paketin openoffice.org-l10n-fi.
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 |
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 |
Lisätään tiedostoon ~/.telnetrc rivi jokaista remote hostia kohden:
hostname set outbinary true |
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} |
Nyyssiartikkelissa annetaan seuraava ohje, jolla desimaalipilkun saa toimimaan.
\documentclass{article} \usepackage{t1enc} \usepackage{a4} \usepackage[finnish]{babel} \DeclareMathSymbol{,}{\mathpunct}{letters}{"3B} \DeclareMathSymbol{.}{\mathord}{letters}{"3B} \DeclareMathSymbol{\decimal}{\mathord}{letters}{"3A} \begin{document} Ajatellaan, että $f(x, y, z) = 3.333$. Mitäs sitten? \end{document} |
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.
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 |
tai arvoon
fi_FI@euro |
Taulu 6-1. Lokaalit
Lokaaliympäristömuuttuja | Käyttö |
---|---|
LC_COLLATE | Merkkijonojen järjesteminen. |
LC_CTYPE | Merkkien luokittelu ja muuntaminen. |
LC_MESSAGES | Ohjelmien kääntäminen mikäli ohjelma käännöstä tukee ja muut lokaaliympäristömuuttujat eivät ole ristiriidassa LC_MESSAGES-ympäristömuuttujan kanssa. |
LC_MONETARY | Raha-arvot |
LC_NUMERIC | Numeeristen ei-raha-arvojen muotoilu |
LC_TIME | Päivämäärän ja ajan muotoilu |
LC_PAPER | Paperikoon määrittely |
LC_ALL | Määrittelee kaikki edellä mainitut ympäristömuuttujat. Muut lokaaliympäristömuuttujat jätetään huomiotta. |
LANG | Määrittelee kaikki edellä mainitut ympäristömuuttujat, mutta yksittäiset lokaaliympäristömuuttujat voi määritellä erikseen. |
Tässä mallisesimerkki:
LANG=C LC_CTYPE=fi_FI@euro LESSCHARSET=latin1 |
Tilan säästämiseksi Debianin asennus ei generoi kaikkia lokaaleja automaattisesti vaan ne pitää valita asennuksen aikana tai generoida asennuksen jälkeen lisäämällä tiedostoon /etc/locale.gen rivit
fi_FI ISO-8859-1 fi_FI@euro ISO-8859-15 |
ja ajamalla sen jälkeen komento locale-gen.
Mikäli lokaaleja ei haluta ylläpitää Debianissa käsin voidaan käyttää komentoa dpkg-reconfigure locales.