F14: lokalizace trochu jinak

Ve Fedore 12 jsem mel bajecne nastavene prostredi - v anglictine, ale s ceskym locale pro cas, datum, cisla, … bohuzel ten samy trik mi ve F14 nefunguje. Zkousel jsem si s tim vsemozne hrat, ale stale sem niceho nedocilil.

Jde mi o to mit prostredi anglicky ale napriklad s ceskym datem (a hlavne aby mi clock applet ukazoval pondeli jako prvni den v tydnu!).

Nyni mam v ~/.bashrc toto:


export LANG="en_US.UTF-8"
export LC_ALL="en_GB.UTF-8"
export LC_CTYPE="cs_CZ.UTF-8"
export LC_NUMERIC="cs_CZ.UTF-8"
export LC_TIME="cs_CZ.UTF-8"
export LC_COLLATE="cs_CZ.UTF-8"
export LC_MONETARY="cs_CZ.UTF-8"
export LC_PAPER="cs_CZ.UTF-8"
export LC_NAME="cs_CZ.UTF-8"
export LC_ADDRESS="cs_CZ.UTF-8"
export LC_TELEPHONE="cs_CZ.UTF-8"
export LC_MEASUREMENT="cs_CZ.UTF-8"
export LC_IDENTIFICATION="cs_CZ.UTF-8"

zkousel sem to s prazdnym LANG, i uplne bez nej, podobne s LC_ALL, ale zda se, ze je toto nastaveni uplne ignorovane (ackoliv kdyz si to vypisu, vse je jak sem nastavil)


$ locale
LANG=en_US.UTF-8
LC_CTYPE="en_GB.UTF-8"
LC_NUMERIC="en_GB.UTF-8"
LC_TIME="en_GB.UTF-8"
LC_COLLATE="en_GB.UTF-8"
LC_MONETARY="en_GB.UTF-8"
LC_MESSAGES="en_GB.UTF-8"
LC_PAPER="en_GB.UTF-8"
LC_NAME="en_GB.UTF-8"
LC_ADDRESS="en_GB.UTF-8"
LC_TELEPHONE="en_GB.UTF-8"
LC_MEASUREMENT="en_GB.UTF-8"
LC_IDENTIFICATION="en_GB.UTF-8"
LC_ALL=en_GB.UTF-8

Vedel by nekdo? Z ceskeho prekladu silim (nejvice z toho “Budiž”, ale celkove nemam rad ceske preklady - mnohdy nevim, o cem je rec (kdyz se ponorim do nejakeho nastaveni))

Predem diky za jakoukoliv radu :slight_smile:

A načítá se ti obsah .bashrc do .bash_profile? Mělo by stačit nastaveni LC_ALL v .bash_profile. Popř. do .bashrc umísti něco jako tohle:
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi

to tam mam (vychozi podoba souboru)… bash_profile spousti bashrc …

s nastavenim LC_ALL to ale stejne nefrci (nebo tam mam dat jake locale?)

Zdravim

Kdyz si prectes hlavicku /etc/bashrc, zjistis ze:

# /etc/bashrc

# System wide functions and aliases
# Environment stuff goes in /etc/profile

Vloz co mas v ~/.bashrc do ~/.profile, log out && log in a melo by to co hledas :wink:

kuku.mp3

/etc/bashrc také zmiňuje soubory v /etc/profile.d. Z nich je zajímavý soubor lang.sh, který načítá nastavení z $HOME/.i18n popř. /etc/sysconfig/i18n.

V LC_ALL by jsi měl mít “cs_CZ.utf8” a v LANG “en_GB.utf8”. Jestli se nepletu, tak LC_ALL přepisuje všechna LC_… nastavení. Dostupné lokalizace vypíšeš příkazem $ locale -a

Je to divne ze by to nastaveni v .bashrc bylo ignorovano, pokud je tento soubor skutecne odkazan z .bash_profile. Nicmene pokud mas jednouzivatelsky system, klidne to pridej do /etc/sysconfig/i18n.

jal jsem se tedy hratek a… nic nefunguje :frowning:

  1. kuku.mp3
    LC_* a LANG nastaveni jsem dal do ~/.profile, ale udelalo to uplne stejne nic, jako kdyz jsem to mel v ~/.bashrc

  2. pakanek
    zkusil jsem tedy nastavit:


LANG="en_US.UTF-8"
LC_ALL="cs_CZ.UTF-8"

vysledkem vsak bylo prostredi v cestine, a kdyz jsem se zalogoval a vybral si jazyk EN, tak jsem dostal americke locale, kde je nedele prvnim dnem v tydnu

  1. covex
    zkusil jsem to naklast primo do /etc/sysconfig/i18n ale opet zadny vysledek, stale to same… bud komplet cestina a nebo komplet anglictina s US locale

jeste jsem zkusil editovat /usr/share/i18n/locales/en_US hodnotu ohledne zacatku tydne… ale stale nic - tyden mi zacina nedeli :((

… a prozatim jsem si nasel jine reseni - nastavit si britskou anglictinu, britske locale ma pondeli jako prvni den v tydnu… hura!

jen mi vrta hlavou, ze ve F12 muj postup s .bashrc fungoval na prvni pokus, a ted clovek dela psi kusy a porad nic, jako by byl v systemu nejakej zakernej sotek :))

Mýlil jsem se. LC_ALL přepíše i LANG viz. http://opengroup.org/onlinepubs/007908799/xbd/envvar.html. Do souboru ~/.i18n jsem vložil:
LANG=en_US.utf8
LC_CTYPE=“cs_CZ.utf8”
LC_NUMERIC=“cs_CZ.utf8”
LC_TIME=“cs_CZ.utf8”
LC_COLLATE=“cs_CZ.utf8”
LC_MONETARY=“cs_CZ.utf8”
LC_PAPER=“cs_CZ.utf8”
LC_NAME=“cs_CZ.utf8”
LC_ADDRESS=“cs_CZ.utf8”
LC_TELEPHONE=“cs_CZ.utf8”
LC_MEASUREMENT=“cs_CZ.utf8”
LC_IDENTIFICATION=“cs_CZ.utf8”

Pozn.: LC_MESSAGES vynecháno.

$ locale
LANG=en_US.utf8
LC_CTYPE=cs_CZ.utf8
LC_NUMERIC=cs_CZ.utf8
LC_TIME=cs_CZ.utf8
LC_COLLATE=cs_CZ.utf8
LC_MONETARY=cs_CZ.utf8
LC_MESSAGES=“en_US.utf8”
LC_PAPER=cs_CZ.utf8
LC_NAME=cs_CZ.utf8
LC_ADDRESS=cs_CZ.utf8
LC_TELEPHONE=cs_CZ.utf8
LC_MEASUREMENT=cs_CZ.utf8
LC_IDENTIFICATION=cs_CZ.utf8
LC_ALL=

Problém tedy asi byl v nastavení LC_ALL.

Zajimave… Pro me to funguje jak jsem uvadel vyse. Jazyk nastaveny na en_US.utf8 a v ~/.profile mam export LC_TIME=cs_CZ.utf8, kvuli kalendari. Pokud jsem mel to same v ~/.bashrc, fungovalo to jen pro terminal.

Btw. diky za tip, nastavil jsem si taky LC_TIME=en_GB.utf8, pracovni tyden zacina pondelim a zobrazuje se mi to v anglictine, ne v cestine (coz mi vcelku vadilo).

umm, tak ja asi vazne delam neco spatne :smiley: … prosim, mejte se mnou trpelivost - co kam mam presne dat? :)) (kdyz k tomu budu pristupovat jako viceuzivatelsky system - tedy chci si to nastavit v ~/.bashrc a ~/.profile … popripade jinych ~/*)

mozna me jeste napada, nehraje nejak roli jazyk, ktery je vybrany v GDM? (ted tam mam pro jistotu pri loginu vybranou UK English)

Obsah ~/.i18n jsem ti uvedl ve svém předchozím příspěvku. Pokud jsi zapsal nastavení jazyka do více souborů, tak se mohou navzájem přepisovat viz. LC_ALL. Odstraň tedy takové změny a nastav jazyk jen na jednom místě.

To je asi dobry zacatek - napsat to jen na jedno misto. Jazyk zvoleny v GDM bude mit urcite vliv. Zkus nastartovat system to textoveho rezimu a spustit Xka rucne (startx).

S výše uvedeným .i18n souborem jsem se přihlásil s US, GB angličtinou a s češtinou přes GDM do Gnome. Zdá se, že přepisuje LANG a nastavuje prázdné (nenastavené) LC_* kromě LC_ALL.