Blame Manual/repository-html/repository_38.html

ee1f37
ee1f37
<html>
ee1f37
ee1f37
ee1f37
Permission is granted to copy, distribute and/or modify this document
ee1f37
under the terms of the GNU Free Documentation License, Version 1.2 or
ee1f37
any later version published by the Free Software Foundation; with no
ee1f37
Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A
ee1f37
copy of the license is included in the section entitled GNU Free
ee1f37
Documentation License.  
ee1f37
-->
406f69
ee1f37
ee1f37
Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
ee1f37
            Karl Berry  <karl@freefriends.org>
ee1f37
            Olaf Bachmann <obachman@mathematik.uni-kl.de>
ee1f37
            and many others.
ee1f37
Maintained by: Many creative people <dev@texi2html.cvshome.org>
ee1f37
Send bugs and suggestions to <users@texi2html.cvshome.org>
ee1f37
ee1f37
-->
ee1f37
<head>
b130a0
<title>CentOS Artwork Repository: 1.37 The trunk/Locales Directory</title>
ee1f37
b130a0
<meta name="description" content="CentOS Artwork Repository: 1.37 The trunk/Locales Directory">
b130a0
<meta name="keywords" content="CentOS Artwork Repository: 1.37 The trunk/Locales Directory">
ee1f37
<meta name="resource-type" content="document">
ee1f37
<meta name="distribution" content="global">
ee1f37
<meta name="Generator" content="texi2html 1.76">
ee1f37
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
ee1f37
<style type="text/css">
ee1f37
ee1f37
@import "/home/centos/artwork/trunk/Identity/Models/Css/Texi2html/common.css";
ee1f37
ee1f37
a.summary-letter {text-decoration: none}
ee1f37
pre.display {font-family: serif}
ee1f37
pre.format {font-family: serif}
ee1f37
pre.menu-comment {font-family: serif}
ee1f37
pre.menu-preformatted {font-family: serif}
ee1f37
pre.smalldisplay {font-family: serif; font-size: smaller}
ee1f37
pre.smallexample {font-size: smaller}
ee1f37
pre.smallformat {font-family: serif; font-size: smaller}
ee1f37
pre.smalllisp {font-size: smaller}
ee1f37
span.sansserif {font-family:sans-serif; font-weight:normal;}
ee1f37
ul.toc {list-style: none}
ee1f37
-->
ee1f37
</style>
ee1f37
ee1f37
ee1f37
</head>
ee1f37
ee1f37
<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
ee1f37
ee1f37
b130a0
[ < ]
b130a0
[ > ]
ee1f37
   
aaf678
[ << ]
aaf678
[ Up ]
b130a0
[ >> ]
ee1f37
   
ee1f37
   
ee1f37
   
ee1f37
   
56a476
[Top]
56a476
[Contents]
b130a0
[Index]
56a476
[ ? ]
ee1f37
b130a0
aaf678
b130a0

1.37 The <tt>`trunk/Locales'</tt> Directory

ee1f37
b130a0

The <tt>`trunk/Locales'</tt> directory exists to store the translation

b130a0
messages used to produce content in different languages.
b130a0

b130a0

Translation messages are organized using the directory structure of

b130a0
the component being translated. For example, if we want to provide
b130a0
translation messages for <tt>`trunk/Manuals/Filesystem'</tt>, then the
b130a0
<tt>`trunk/Locales/Manuals/Filesystem'</tt> directory needs to be created.
b130a0

b130a0

Once the locale directory exists for the component we want to provide

b130a0
translation messages for, it is necessary to create the translation
b130a0
files where translation messages are. The translation files follows
b130a0
the concepts of xml2po and GNU gettext tools.
b130a0

b130a0

The basic translation process is as follow: first, translatable

b130a0
strings are extracted from files and a portable object template (.pot)
b130a0
is created or updated with the information. Using the portable object
b130a0
template, a portable object (.po) is created or updated for translator
b130a0
to locale the messages retrived.  Finally, a machine object (.mo) is
b130a0
created from portable object to sotore the translated messages.
b130a0

b130a0

Inside the repository there are two ways to retrive translatable

b130a0
strings from files. The first one is through xml2po command
b130a0
and the second through xgettext command. The xml2po
b130a0
is used to retrive translatable strings from XML files (e.g., Scalable
b130a0
Vector Graphics, DocBook, etc.) and the xgettext command is
b130a0
used to retrive translatable strings from shell scripts files (e.g.,
b130a0
the files that make the centos-art.sh command-line
b130a0
interface).
b130a0

b130a0

When translatable strings are retrived from XML files, using the

b130a0
xml2po command, there is no need to create the machine
b130a0
object as we do when translatable strings ar retrived from shell
b130a0
files, using the xgettext command. The xml2po
b130a0
produces a temporal machine object in order to create a translated XML
b130a0
file. Once the translated XML file has been created the machine object
b130a0
is no longer needed. On the other hand, the machine object produced by
b130a0
the xgettext command is required by the system in order for
b130a0
the show shell script localized messages.
b130a0

b130a0

Another difference between xml2po and xgettext we

b130a0
need to be aware of is the directory structure used to store machine
b130a0
objects. In xml2po, the machine object is created in the
b130a0
current working directory as <tt>`.xml2po.mo'</tt> and can be safetly
b130a0
removed once the translated XML file has been created. In the case of
b130a0
xgettext, the machine object needs to be stored in the
b130a0
<tt>`$TEXTDOMAIN/$LOCALE/LL_MESSAGES/$TEXTDOMAIN.mo'</tt> file in order
b130a0
for the system to interpret it and should not be removed since it is
b130a0
the file that contain the translation messages themselves.
b130a0

b130a0

Automation of localization tasks is achived through the locale

b130a0
functionality of command-line interface.
b130a0

ee1f37
b130a0
1.55 The <tt>`trunk/Scripts/Bash/Cli/Functions/Locale'</tt> Directory  
ee1f37
ee1f37
ee1f37
ee1f37
b130a0
ee1f37
b130a0
[ < ]
aaf678
[ > ]
ee1f37
   
aaf678
[ << ]
b130a0
[ Up ]
b130a0
[ >> ]
ee1f37
ee1f37

ee1f37
 <font size="-1">
406f69
  This document was generated on March, 1 2011 using texi2html 1.76.
ee1f37
 </font>
ee1f37
 
ee1f37
ee1f37

ee1f37
</body>
ee1f37
</html>