-tukisivusto
Unix/Shell-palveluiden
TNNet OY
UTF-8 Ja Irssi

Mikä on UTF-8?

UTF-8 -koodaus mahdollistaa latinalaista aakkostoa ja muutamaa erikoismerkkiä laajemman merkistön. Esimerkiksi erilaisten kielien kuten kiinan, japanin ja latinan kielen ja matemaattisten symbolien esittäminen eksaktisti onnistuu. UTF-8 on eräs Unicode-merkistön koodaustapa.

UTF-8:n käyttöönotto Irssiin

UTF-8:n käyttöönotto nikitalla tapahtuu kanssa seuraavasti:

- Pääteterminaalin translationin muuttaminen UTF-8:ksi
- Shellin lokaalin muutos fi_FI.UTF-8:ksi
- Screenin lokaalin muutos UTF-8:ksi


Pääteterminaalin merkistön muuttaminen UTF-8:ksi

Koska erilaisia pääteohjelmia löytyy hieman jokalöytöön, eikä koskaan voi tietää mitä pääteohjelmaa tämänkin ohjeen lukija käyttää, niin syvennymme tässäkin vain ja ainoastaan puttyn asetuksien säätämiseen. Puttyn saa ymmärtämään UTF-8:a hyvin vähällä vaivalla; Riittää, kun uutta yhteyttä ottaessa menee Category -> Window -> Translation, ja asettaa ensimmäiseen alasvetoikkunaan (joka on Character set translation on received data) UTF-8. Muihin asetuksiin ei tarvitse koskea UTF-8:a koskien.

Tällä toimenpiteellä varmistetaan se, että itse yhteysohjelma lukee ja kirjoittaa UTF-8:aa oikein. Ohessa vielä kuva, jotta lukija on varmasti oikeassa paikassa tekemässä oikeat asetukset.

wtf-8
Shellin lokaalin muutos fi_FI.UTF-8:ksi

Kun putty on konfiguroitu käyttämään UTF-8:aa ja yhteys nikitaan on muodostettu, on aika siirtää itse shelli käyttämään UTF-8-lokaalia. Tämä tapahtuu suorittamalla seuraava komento:

» export LC_ALL=fi_FI.utf8

Tässä kohtaa kannattaa muistaa se, että nyt tehty muutos vaikuttaa VAIN JA AINOASTAAN TÄLLÄ HETKELLÄ AUKI OLEVAAN YHTEYTEEN TÄSSÄ SAMAISESSA PUTTY-IKKUNASSA! Tulevaisuutta ajatellen lokaalin muuttaminen automaattisesti oikeaksi aina, kun käyttäjä kirjautuu uudelleen, tulee käyttäjän tehdä seuraava:

» echo "export LC_ALL=fi_FI.utf8" >>~/.bash_profile

Kun olet tehnyt em.asiat, voit tarkistaa locale-komennolla, että kaikki on varmasti oikein. Jos teit kaiken oikein, tulostuu sinulle seuraava:

tnnet@nikita ~ $ locale
LANG=
LC_CTYPE="fi_FI.utf8"
LC_NUMERIC="fi_FI.utf8"
LC_TIME="fi_FI.utf8"
LC_COLLATE="fi_FI.utf8"
LC_MONETARY="fi_FI.utf8"
LC_MESSAGES="fi_FI.utf8"
LC_PAPER="fi_FI.utf8"
LC_NAME="fi_FI.utf8"
LC_ADDRESS="fi_FI.utf8"
LC_TELEPHONE="fi_FI.utf8"
LC_MEASUREMENT="fi_FI.utf8"
LC_IDENTIFICATION="fi_FI.utf8"
LC_ALL=fi_FI.utf8
tnnet@nikita ~ $

Tämän jälkeen shellin lokaalit ovat oikein. Mikäli homma ei pelitä, teit jotakin väärin ja et lukenut ohjeita kuten piti. Aloita alusta. Ylläpito ei kykene auttamaan sinua enempää kuin mitä tässä on kirjoitettu, joten säästä itsesi ja ylläpidon aikaa ja lue ohje huolellisemmin läpi.


Screenin lokaalin muutos UTF-8:ksi

Kun pääteterminaalin sekä shellin lokaali on kunnossa, on aika tehdä viimeinen muutos UTF-8:n käyttöönottamiseen; Screenin lokaalin vaihtaminen. Se, että pääteterminaalissa ja shellissä on oikea lokaali ei riitä yksinään, sillä syystä tai toisesta joku neropatti on onnistunut keksimään sen, että myös screeniin voi pistää oman lokaalin.

Screenin lokaalin muuttaminen onnistuu parhaiten luomalla erillisen .screenrc -tiedoston "kotihakemiston juureen, jossa ääritellään mitä lokaalia screeni käyttää. Suorittamalla "echo "defutf8 on" > ~/.screenrc" saat luotua oikean tiedoston joka pitää sisällään "kaiken tarvittavan lokaalin muuttamiseksi.

Kun tiedosto on luotu, on aika käynnistää screeni. Tämä tapahtuu seuraavalla komennolla: "screen -U -S irssi".

Nyt kaikki on valmista irssin käyttämiselle UTF-8 -lokaalilla. Mikäli et ole aiemmin käynnistänyt irssiä, luo irssi automaattisesti toimivan konfiguraation UTF-8:n käyttöönottamiseen. Mikäli sinulla on vanha konfiguraatio, tulee sinun kertoa irssille mitä lokaalia tulisi käyttää.


UTF-8 -määrittäminen irssiin

Tapauksissa joissa käyttäjällä on jo valmis irssin konfiguraatiotiedosto, tulee käyttäjän määrittää oikeat parametrit jotta irssi rupeaa käyttämään UTF-8 (tai muuta) -lokaalia. Tarkista kuitenkin ensin mitkä lokaalit ovat käytössä. NIKITALLA TODISTETUSTI TOIMIVAT UTF-8 -asetukset menevät seuravasti:

Nikitalla varmasti toimivat UTF-8 -asetukset:
recode_autodetect_utf8 = ON
recode_fallback = CP1252
recode = ON
recode_out_default_charset = UTF-8
recode_transliterate = UTF-8 ON

"Lokaaliasetuksien muuttaminen onnistuu seuraavilla komennoilla:

/set recode_autodetect_utf8 ON
/set recode_fallback CP1252
/set recode ON
/set recode_out_default_charset UTF-8
/set recode_transliterate ON
/set term_charset UTF-8

© 2021 TNNet Oy. Kaikki oikeudet pidätetään. Tämän sivuston (sen sisällön, kuvien tai muun materiaalin kopioiminen)
on ehdottomasti kiellettyä ilman erillistä lupaa TNNet Oy:ltä.