1 #!/bin/sh
   2 # 
   3 # Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
   4 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   5 # 
   6 # This code is free software; you can redistribute it and/or modify it
   7 # under the terms of the GNU General Public License version 2 only, as
   8 # published by the Free Software Foundation.
   9 # 
  10 # This code is distributed in the hope that it will be useful, but WITHOUT
  11 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  12 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  13 # version 2 for more details (a copy is included in the LICENSE file that
  14 # accompanied this code).
  15 # 
  16 # You should have received a copy of the GNU General Public License version
  17 # 2 along with this work; if not, write to the Free Software Foundation,
  18 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  19 # 
  20 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  21 # or visit www.oracle.com if you need additional information or have any
  22 # questions.
  23 #
  24 #
  25 #
  26 #
  27 # A simple tool to output all the installed locales on a Unix machine, and 
  28 # corresponding Java default locale/file.encoding using PrintDefaultLocale
  29 #
  30 # Usage: "deflocale.sh <java launcher>
  31 #
  32 cat /etc/*release
  33 uname -a
  34 echo "Testing all available locales"
  35 /usr/bin/locale -a | while read line; do
  36     echo ""
  37     echo "OS Locale: " $line
  38     env LC_ALL= LC_CTYPE= LC_MESSAGES= LANG=$line $1 $2 $3 $4 $5 $6 $7 $8 $9 PrintDefaultLocale
  39 done
  40 
  41 echo ""
  42 echo "Testing some typical combinations"
  43 echo ""
  44 while read lcctype lcmessages; do
  45     if [ "$lcctype" = "#" -o "$lcctype" = "" ]; then
  46         continue
  47     fi
  48     echo ""
  49     echo "OS Locale (LC_CTYPE: "$lcctype", LC_MESSAGES: "$lcmessages")"
  50     env LC_ALL= LC_CTYPE=$lcctype LC_MESSAGES=$lcmessages $1 $2 $3 $4 $5 $6 $7 $8 $9 PrintDefaultLocale
  51 done < deflocale.input