<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<!--NewPage-->
<html>
<head>
<!-- Generated by javadoc on Sat Nov 03 18:12:01 CET 2001 -->
<title>
  Class gnu.gettext.GettextResource
</title>
</head>
<body>
<a name="_top_"></a>
<pre>
<a href="packages.html">All Packages</a>  <a href="tree.html">Class Hierarchy</a>  <a href="Package-gnu.gettext.html">This Package</a>  <a href="Package-gnu.gettext.html">Previous</a>  <a href="Package-gnu.gettext.html">Next</a>  <a href="AllNames.html">Index</a></pre>
<hr>
<h1>
  Class gnu.gettext.GettextResource
</h1>
<pre>
java.lang.Object
   |
   +----java.util.ResourceBundle
           |
           +----gnu.gettext.GettextResource
</pre>
<hr>
<dl>
  <dt> public abstract class <b>GettextResource</b>
  <dt> extends ResourceBundle
</dl>
This class implements the main GNU libintl functions in Java.
 <P>
 Using the GNU gettext approach, compiled message catalogs are normal
 Java ResourceBundle classes and are thus interoperable with standard
 ResourceBundle based code.
 <P>
 The main differences between the Sun ResourceBundle approach and the
 GNU gettext approach are:
 <UL>
   <LI>In the Sun approach, the keys are abstract textual shortcuts.
       In the GNU gettext approach, the keys are the English/ASCII version
       of the messages.
   <LI>In the Sun approach, the translation files are called
       "<VAR>Resource</VAR>_<VAR>locale</VAR>.properties" and have non-ASCII
       characters encoded in the Java
       <CODE>\</CODE><CODE>u<VAR>nnnn</VAR></CODE> syntax. Very few editors
       can natively display international characters in this format. In the
       GNU gettext approach, the translation files are called
       "<VAR>Resource</VAR>.<VAR>locale</VAR>.po"
       and are in the encoding the translator has chosen. Many editors
       can be used. There are at least three GUI translating tools
       (Emacs PO mode, KDE KBabel, GNOME gtranslator).
   <LI>In the Sun approach, the function
       <CODE>ResourceBundle.getString</CODE> throws a
       <CODE>MissingResourceException</CODE> when no translation is found.
       In the GNU gettext approach, the <CODE>gettext</CODE> function
       returns the (English) message key in that case.
   <LI>In the Sun approach, there is no support for plural handling.
       Even the most elaborate MessageFormat strings cannot provide decent
       plural handling. In the GNU gettext approach, we have the
       <CODE>ngettext</CODE> function.
 </UL>
 <P>
 To compile GNU gettext message catalogs into Java ResourceBundle classes,
 the <CODE>msgfmt</CODE> program can be used.
<p>
<hr>
<a name="index"></a>
<h2>
  <img src="images/variable-index.gif" width=207 height=38 alt="Variable Index">
</h2>
<dl>
  <dt> <img src="images/blue-ball-small.gif" width=6 height=6 alt=" o ">
	<a href="#verbose"><b>verbose</b></a>
  <dd> 
</dl>
<h2>
  <img src="images/constructor-index.gif" width=275 height=38 alt="Constructor Index">
</h2>
<dl>
  <dt> <img src="images/yellow-ball-small.gif" width=6 height=6 alt=" o ">
	<a href="#GettextResource()"><b>GettextResource</b></a>()
  <dd> 
</dl>
<h2>
  <img src="images/method-index.gif" width=207 height=38 alt="Method Index">
</h2>
<dl>
  <dt> <img src="images/green-ball-small.gif" width=6 height=6 alt=" o ">
	<a href="#gettext(java.util.ResourceBundle, java.lang.String)"><b>gettext</b></a>(ResourceBundle, String)
  <dd>  Returns the translation of <VAR>msgid</VAR>.
  <dt> <img src="images/green-ball-small.gif" width=6 height=6 alt=" o ">
	<a href="#ngettext(java.util.ResourceBundle, java.lang.String, java.lang.String, long)"><b>ngettext</b></a>(ResourceBundle, String, String, long)
  <dd>  Returns the plural form for <VAR>n</VAR> of the translation of
 <VAR>msgid</VAR>.
</dl>
<a name="variables"></a>
<h2>
  <img src="images/variables.gif" width=153 height=38 alt="Variables">
</h2>
<a name="verbose"><img src="images/blue-ball.gif" width=12 height=12 alt=" o "></a>
<b>verbose</b>
<pre>
 public static boolean verbose
</pre>
<a name="constructors"></a>
<h2>
  <img src="images/constructors.gif" width=231 height=38 alt="Constructors">
</h2>
<a name="GettextResource"></a>
<a name="GettextResource()"><img src="images/yellow-ball.gif" width=12 height=12 alt=" o "></a>
<b>GettextResource</b>
<pre>
 public GettextResource()
</pre>
<a name="methods"></a>
<h2>
  <img src="images/methods.gif" width=151 height=38 alt="Methods">
</h2>
<a name="gettext(java.util.ResourceBundle, java.lang.String)"><img src="images/green-ball.gif" width=12 height=12 alt=" o "></a>
<a name="gettext"><b>gettext</b></a>
<pre>
 public static String gettext(ResourceBundle catalog,
                              String msgid)
</pre>
<dl>
  <dd> Returns the translation of <VAR>msgid</VAR>.
<p>
  <dd><dl>
    <dt> <b>Parameters:</b>
    <dd> catalog - a ResourceBundle
    <dd> msgid - the key string to be translated, an ASCII string
    <dt> <b>Returns:</b>
    <dd> the translation of <VAR>msgid</VAR>, or <VAR>msgid</VAR> if
         none is found
  </dl></dd>
</dl>
<a name="ngettext(java.util.ResourceBundle, java.lang.String, java.lang.String, long)"><img src="images/green-ball.gif" width=12 height=12 alt=" o "></a>
<a name="ngettext"><b>ngettext</b></a>
<pre>
 public static String ngettext(ResourceBundle catalog,
                               String msgid,
                               String msgid_plural,
                               long n)
</pre>
<dl>
  <dd> Returns the plural form for <VAR>n</VAR> of the translation of
 <VAR>msgid</VAR>.
<p>
  <dd><dl>
    <dt> <b>Parameters:</b>
    <dd> catalog - a ResourceBundle
    <dd> msgid - the key string to be translated, an ASCII string
    <dd> msgid_plural - its English plural form
    <dt> <b>Returns:</b>
    <dd> the translation of <VAR>msgid</VAR> depending on <VAR>n</VAR>,
         or <VAR>msgid</VAR> or <VAR>msgid_plural</VAR> if none is found
  </dl></dd>
</dl>
<hr>
<pre>
<a href="packages.html">All Packages</a>  <a href="tree.html">Class Hierarchy</a>  <a href="Package-gnu.gettext.html">This Package</a>  <a href="Package-gnu.gettext.html">Previous</a>  <a href="Package-gnu.gettext.html">Next</a>  <a href="AllNames.html">Index</a></pre>
</body>
</html>
