Disable support for Asian languages at Linux console.
authorRichard W.M. Jones <rjones@redhat.com>
Tue, 25 Mar 2008 16:59:13 +0000 (16:59 +0000)
committerRichard W.M. Jones <rjones@redhat.com>
Tue, 25 Mar 2008 16:59:13 +0000 (16:59 +0000)
virt-p2v

index 4e2d9dd..3106363 100755 (executable)
--- a/virt-p2v
+++ b/virt-p2v
@@ -144,6 +144,20 @@ module P2VGettext = Gettext.Program (
 ) (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. *)
 
@@ -823,18 +837,12 @@ let rec main ttyname =
   );
 
   (* 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)