2929 'https://tldr-pages.github.io/assets/tldr.zip'
3030)
3131
32-
33- def get_language_code (language ):
34- language = language .split ('.' )[0 ]
35- if language in ['pt_PT' , 'pt_BR' , 'zh_TW' ]:
36- return language
37- elif language == "pt" :
38- return "pt_PT"
39- return language .split ('_' )[0 ]
40-
41-
42- DEFAULT_LANG = get_language_code (
43- os .environ .get (
44- 'LANG' ,
45- 'C'
46- ))
47-
48- if DEFAULT_LANG == 'C' or DEFAULT_LANG == 'POSIX' :
49- DEFAULT_LANG = None
50-
5132USE_CACHE = int (os .environ .get ('TLDR_CACHE_ENABLED' , '1' )) > 0
5233MAX_CACHE_AGE = int (os .environ .get ('TLDR_CACHE_MAX_AGE' , 24 ))
5334
@@ -65,6 +46,29 @@ def get_language_code(language):
6546}
6647
6748
49+ def get_language_code (language ):
50+ language = language .split ('.' )[0 ]
51+ if language in ['pt_PT' , 'pt_BR' , 'zh_TW' ]:
52+ return language
53+ elif language == "pt" :
54+ return "pt_PT"
55+ return language .split ('_' )[0 ]
56+
57+
58+ def get_default_language ():
59+ default_lang = get_language_code (
60+ os .environ .get (
61+ 'LANG' ,
62+ 'C'
63+ )
64+ )
65+
66+ if default_lang == 'C' or default_lang == 'POSIX' :
67+ default_lang = None
68+
69+ return default_lang
70+
71+
6872def get_cache_dir ():
6973 if not os .environ .get ('XDG_CACHE_HOME' , False ):
7074 if not os .environ .get ('HOME' , False ):
@@ -175,9 +179,11 @@ def get_language_list():
175179 get_language_code ,
176180 filter (lambda x : not (x == 'C' or x == 'POSIX' or x == '' ), languages )
177181 ))
178- if DEFAULT_LANG is not None :
179- if DEFAULT_LANG not in languages :
180- languages .append (DEFAULT_LANG )
182+
183+ default_lang = get_default_language ()
184+
185+ if default_lang is not None and default_lang not in languages :
186+ languages .append (default_lang )
181187 else :
182188 languages = []
183189 if 'en' not in languages :
@@ -306,7 +312,8 @@ def output(page):
306312
307313def update_cache (language = None ):
308314 if language is None :
309- language = DEFAULT_LANG if DEFAULT_LANG is not None else 'en'
315+ default_lang = get_default_language ()
316+ language = default_lang if default_lang is not None else 'en'
310317 elif isinstance (language , list ):
311318 language = language [0 ]
312319 try :
0 commit comments