Ubuntu Suomen keskustelualueet
Ubuntun käyttö => Ubuntu tietokoneissa => Aiheen aloitti: jekku - 18.08.13 - klo:18.27
-
Näyttää listä että locale fi_FI.UTF-8 on toteutettu jotenkin hassusti, esimerkiksi komennon
ls
listaus kuvittelee että merkit 'k' ja 'K' olisivat sama asia!
Ja sama kai muillakin kirjaimilla.
Joten onkohan tuolle(kin) komennolle joku vipu jolla saisi käyttämään jotain natiivimpaa asetusta?
-
env LANG=C ls
Voi toimia, edellyttäen että ls käyttää tuota LANG-muuttujaa eikä jotain muuta. Minulla näytti LC_ALL:lla olevan enemmän vaikutusta:
env LC_ALL=C ls
Ja voihan sitä laittaa molemmatkin:
env LC_ALL=C LANG=C ls
http://linux.fi/wiki/Ympäristömuuttuja (http://linux.fi/wiki/Ympäristömuuttuja)
http://linux.fi/wiki/Komentorivin_perusteet#Ymp.C3.A4rist.C3.B6muuttujat (http://linux.fi/wiki/Komentorivin_perusteet#Ymp.C3.A4rist.C3.B6muuttujat)
Muokkaus: Näkyy toimivan ilman env-komentoakin kuten SuperOscar alla kirjoittaa.
-
Yksittäisen komennon saanee helpoimmin ajettua näin:
LC_ALL=C ls
(Ympäristömuuttujan asetus ja komento mahdollisine parametreineen samalla rivillä.)
Muoks: Ai niin, aika monella (minulla ainakin) taitaa olla ls aliaksena, joten ehkä mieluusti:
LC_ALL=C \ls
(Takakeno estää aliastulkinnan.)
-
Joskus on tehty näin:
export LC_ALL=C
Säilyy sen aikaa kun kyseinen päätteesi on auki.
-
Joskus on tehty näin:
export LC_ALL=C
Säilyy sen aikaa kun kyseinen päätteesi on auki.
Joo, hienosti toimii - ja sekoilee merkistössä ihan odotetusti.
Mutta kaikkea ei voi saada. Onneksi, sanoo joku...
-
Esitetyt keinot eivät muuten välttämättä tehoa päätteestä käynnistettyihin graafisen työympäristön ohjelmiin. Ainakin KDE:ssa lokaaliasetus tahtoo (ilmeisesti jaettujen kirjastojen takia?) koskea kaikkia käynnissä olevia ohjelmia eikä yksittäistä ohjelmaa saa eri lokaaliin näillä keinoin.
-
Esitetyt keinot eivät muuten välttämättä tehoa päätteestä käynnistettyihin graafisen työympäristön ohjelmiin. Ainakin KDE:ssa lokaaliasetus tahtoo (ilmeisesti jaettujen kirjastojen takia?) koskea kaikkia käynnissä olevia ohjelmia eikä yksittäistä ohjelmaa saa eri lokaaliin näillä keinoin.
En nyt muista mikä oli ohjelman nimi, mutta kauan sitten jouduin tekemään käynnistimen tyyliin:
#!/bin/sh
LANG=C
/bin/se-ohjelma &
Ainkain tuo lopetti kiukuttelun siitä kun $LANG jotain muuta kuin 'C' ...
Mutta jos softa käyttää jaettuja kirjastoja niin kai ne osaavat jyrätä ympäristömuuttujat mieleisikseen elleivät usko pärjäävänsä oletusasetusten kanssa?
-
En nyt aivan saanut selville alkuperäistä ongelmaa, mutta ehkä tässä voisi mainita ohjelman nimeltä luit, joka löytynee jo oletuksena kokoonpanosta:
luit - Locale and ISO 2022 support for Unicode terminals
http://linux.die.net/man/1/luit