diff options
author | Matt Wilson <msw@redhat.com> | 2002-02-06 17:48:27 +0000 |
---|---|---|
committer | Matt Wilson <msw@redhat.com> | 2002-02-06 17:48:27 +0000 |
commit | 8a93f6a1a7a6f5062e7179840541fba6154b60e8 (patch) | |
tree | 6564d6c1177f86661444213128cfeac78fb1b0f9 /language.py | |
parent | f30ead9067dc1a9ded72532055f5e6354981cd5a (diff) | |
download | anaconda-8a93f6a1a7a6f5062e7179840541fba6154b60e8.tar.gz anaconda-8a93f6a1a7a6f5062e7179840541fba6154b60e8.tar.xz anaconda-8a93f6a1a7a6f5062e7179840541fba6154b60e8.zip |
autogenerate unicode language names and read that in at install time
Diffstat (limited to 'language.py')
-rw-r--r-- | language.py | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/language.py b/language.py index 82c830718..e04d42fe6 100644 --- a/language.py +++ b/language.py @@ -46,12 +46,24 @@ class InstallTimeLanguage: self.current = os.environ["LANG"] else: self.current = "en_US" - if os.access("lang-table", os.R_OK): - f = open("lang-table", "r") - elif os.access("/etc/lang-table", os.R_OK): - f = open("/etc/lang-table", "r") - else: - f = open("/usr/lib/anaconda/lang-table", "r") + self.nativeLangNames = {} + + search = ('lang-names', '/usr/lib/anaconda/lang-names') + for path in search: + if os.access(path, os.R_OK): + f = open(path, 'r') + for line in f.readlines(): + lang, native = line.split(' ', 1) + native = native.strip() + self.nativeLangNames[lang] = native + break + + search = ('lang-table', '/etc/lang-table', + '/usr/lib/anaconda/lang-table') + for path in search: + if os.access(path, os.R_OK): + f = open(path, "r") + break lines = f.readlines () f.close() @@ -97,6 +109,9 @@ class InstallTimeLanguage: # returns the short locale ID return self.langNicks[lang] + def getNativeLangName(self, lang): + return self.nativeLangNames.get(lang) + def getLangNameByNick(self, lang): # The nick we get here may be long (fr_FR@euro), when we need # shorter (fr_FR), so be a bit fuzzy |