) (GettextStub.Native)
open P2VGettext
+let supported_langs =
+ (* Note these strings are NOT translated! *)
+ let nonasian_langs = [
+ "English", "en_US.UTF-8";
+ ] in
+ let asian_langs = [
+ "\xE6\x97\xA5\xE6\x9C\xAC\xE8\xAA\x9E (Japanese)", "ja_JP.UTF-8"
+ ] in
+ (* Linux console doesn't support Asian or RTL languages. *)
+ let term = try getenv "TERM" with Not_found -> "" in
+ match term with
+ | "linux" -> nonasian_langs
+ | _ -> nonasian_langs @ asian_langs
+
(*----------------------------------------------------------------------*)
(* General helper functions. *)
);
(* Choose language early, so messages are translated. *)
- if !config_greeting then (
+ if !config_greeting && List.length supported_langs > 1 then (
with_newt (
fun () ->
- (* Note these strings are NOT translated! *)
- let items = [
- "English", "en_US.UTF-8";
- "\xE6\x97\xA5\xE6\x9C\xAC\xE8\xAA\x9E (Japanese)", "ja_JP.UTF-8"
- ] in
-
let lang = select_single ~stage:(s_ "Select language") 40
(s_ "Select language")
- items in
+ supported_langs in
putenv "LANG" lang;
ignore (GettextStubCompat.setlocale GettextStubCompat.LC_ALL lang)