Blame Manual/repository-html/repository_51.html

ee1f37
ee1f37
<html>
d1db00
d1db00
organization, and administration of CentOS Artwork Repository.
d1db00
d1db00
Copyright C 2009-2011 Alain Reguera Delgado
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
-->
632e8b
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>
632e8b
<title>CentOS Artwork Repository: 2.47 The trunk/Locales Directory</title>
ee1f37
632e8b
<meta name="description" content="CentOS Artwork Repository: 2.47 The trunk/Locales Directory">
632e8b
<meta name="keywords" content="CentOS Artwork Repository: 2.47 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
632e8b
[ < ]
632e8b
[ > ]
ee1f37
   
671838
[ << ]
671838
[ Up ]
632e8b
[ >> ]
ee1f37
   
ee1f37
   
ee1f37
   
ee1f37
   
56a476
[Top]
56a476
[Contents]
632e8b
[Index]
56a476
[ ? ]
ee1f37
632e8b
632e8b
632e8b

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

982d5c
632e8b

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

632e8b
messages used to produce content in different languages.
632e8b

632e8b

Translation messages are organized using the directory structure of

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

632e8b

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

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

632e8b

The basic translation process is as follow: first, translatable

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

632e8b

Inside the repository there are two ways to retrive translatable

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

632e8b

When translatable strings are retrived from XML files, using the

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

632e8b

Another difference between xml2po and xgettext we

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

632e8b

Automation of localization tasks is achived through the locale

632e8b
functionality of command-line interface.
632e8b

632e8b
632e8b
2.65 The <tt>`trunk/Scripts/Bash/Cli/Functions/Locale'</tt> Directory  
632e8b
632e8b
671838
b130a0
ee1f37
ee1f37
632e8b
[ < ]
632e8b
[ > ]
ee1f37
   
671838
[ << ]
632e8b
[ Up ]
632e8b
[ >> ]
ee1f37
ee1f37

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

ee1f37
</body>
ee1f37
</html>