Neden LANG ortam değişkenini geçersiz kılmak benim için dili değiştirmiyor?


11

Mevcut ortamım olarak başka bir dilde bir uygulama çalıştırmaya çalışıyorum. Başlamak için dilini değiştirmek istedim ls.

İşte her yerde okuduğum şey (ilgili sorular için aşağıya bakın): LANGdesteklenen yerel ayarlardan birine ayarlayın , örneğin:

LANG=nl_NL.UTF-8 ls /nonexistent

Hollandaca (NL) çıktılarını göstermesini sağlamak.

Ancak, yine de İngilizce çıktı alıyorum:

$ LANG=nl_NL.UTF-8 ls -al /nonexistent
ls: cannot access /nonexistent: No such file or directory

Mevcut ortamım:

$ locale
LANG=en_GB.UTF-8
LANGUAGE=en_GB:en
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=

Emin olmak için kontrol ettim:

  • Yerel ayar desteklenir:

    $ grep nl_NL /usr/share/i18n/SUPPORTED 
    nl_NL.UTF-8 UTF-8
    nl_NL ISO-8859-1
    nl_NL@euro ISO-8859-15
    
  • Yerel ayar oluşturulur:

    sudo locale-gen nl_NL.UTF-8
    

    ve sudo dpkg-reconfigure localesayrıca üretildiğini gösterir.

  • Hollandaca dil paketini kurdu (zaten kurulu):

    sudo apt-get install language-pack-nl
    

Başka ne denedim?

  • Kullanılması exporthem ayarlamak LANGve LANGUAGEyerine komutu prepending arasında.
  • Ayrıca ayarlama LC_ALL.

İronik olarak, bazı (sadece bazı!) GUI uygulamaları aslında Hollandaca, ama bunu hiç yapılandırmadım!

resim açıklamasını buraya girin

Önemli olduğu ölçüde Kubuntu 12.04 (.2) kullanıyorum.

Benzer sorular (boşuna):

Sistemimde yanlış olan ne? Bunun neresinde daha fazla hata ayıklanır?

Yanıtlar:


12

Çünkü LANG üzerinde önceliğe sahip olan LANGUAGE ayarlandı ve değişmedi.

$ LANGUAGE=nl ls /nonexistent
ls: kan geen toegang krijgen tot /nonexistent: Bestand of map bestaat niet

Daha fazla bilgi GNU gettext belgelerinde bulunmaktadır :

GNU gettext, ileti işleme amacıyla LC_ALL ve LANG yerine LANGUAGE tercih eder, ancak yine de birincil dile LANG (veya LC_ALL) ayarlamanız gerekir; bu, sistem kitaplıklarının diğer bölümleri için gereklidir.


Yemin ederim bunu zaten denemiştim. Yine de, kabuk geçmişime baktığımda bunun sadece yerel ayarı oluşturmadan önce denediğim için olduğunu düşünüyorum . "DİL, LANG yerine öncelik taşır" için bir kaynak ekleyebilir misiniz? Söylediğin için teşekkürler.
gertvdijk

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.