|
|
4c79b5 |
|
|
|
4c79b5 |
<html>
|
|
|
4c79b5 |
|
|
|
4c79b5 |
can you do inside it.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Copyright C 2009, 2010 The CentOS Project. All rights
|
|
|
4c79b5 |
reserved.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Permission is granted to copy, distribute and/or modify this document
|
|
|
4c79b5 |
under the terms of the GNU Free Documentation License, Version 1.2 or
|
|
|
4c79b5 |
any later version published by the Free Software Foundation; with no
|
|
|
4c79b5 |
Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A
|
|
|
4c79b5 |
copy of the license is included in the section entitled GNU Free
|
|
|
4c79b5 |
Documentation License.
|
|
|
4c79b5 |
-->
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author)
|
|
|
4c79b5 |
Karl Berry <karl@freefriends.org>
|
|
|
4c79b5 |
Olaf Bachmann <obachman@mathematik.uni-kl.de>
|
|
|
4c79b5 |
and many others.
|
|
|
4c79b5 |
Maintained by: Many creative people <dev@texi2html.cvshome.org>
|
|
|
4c79b5 |
Send bugs and suggestions to <users@texi2html.cvshome.org>
|
|
|
4c79b5 |
|
|
|
4c79b5 |
-->
|
|
|
4c79b5 |
<head>
|
|
|
4c79b5 |
<title>CentOS Artwork Repository: 3.23.4 Concepts</title>
|
|
|
4c79b5 |
|
|
|
4c79b5 |
<meta name="description" content="CentOS Artwork Repository: 3.23.4 Concepts">
|
|
|
4c79b5 |
<meta name="keywords" content="CentOS Artwork Repository: 3.23.4 Concepts">
|
|
|
4c79b5 |
<meta name="resource-type" content="document">
|
|
|
4c79b5 |
<meta name="distribution" content="global">
|
|
|
4c79b5 |
<meta name="Generator" content="texi2html 1.76">
|
|
|
4c79b5 |
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
|
4c79b5 |
<style type="text/css">
|
|
|
4c79b5 |
|
|
|
4c79b5 |
@import "/home/centos/artwork/trunk/Identity/Themes/Motifs/Modern/Web/Css/Texi2html/common.css";
|
|
|
4c79b5 |
|
|
|
4c79b5 |
a.summary-letter {text-decoration: none}
|
|
|
4c79b5 |
pre.display {font-family: serif}
|
|
|
4c79b5 |
pre.format {font-family: serif}
|
|
|
4c79b5 |
pre.menu-comment {font-family: serif}
|
|
|
4c79b5 |
pre.menu-preformatted {font-family: serif}
|
|
|
4c79b5 |
pre.smalldisplay {font-family: serif; font-size: smaller}
|
|
|
4c79b5 |
pre.smallexample {font-size: smaller}
|
|
|
4c79b5 |
pre.smallformat {font-family: serif; font-size: smaller}
|
|
|
4c79b5 |
pre.smalllisp {font-size: smaller}
|
|
|
4c79b5 |
span.sansserif {font-family:sans-serif; font-weight:normal;}
|
|
|
4c79b5 |
ul.toc {list-style: none}
|
|
|
4c79b5 |
-->
|
|
|
4c79b5 |
</style>
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
</head>
|
|
|
4c79b5 |
|
|
|
4c79b5 |
<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
[ < ]
|
|
|
4c79b5 |
[ > ]
|
|
|
4c79b5 |
|
|
|
4c79b5 |
[ << ]
|
|
|
4c79b5 |
[ Up ]
|
|
|
4c79b5 |
[ >> ]
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
[Top]
|
|
|
4c79b5 |
[Contents]
|
|
|
4c79b5 |
[Index]
|
|
|
4c79b5 |
[ ? ]
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
3.23.4 Concepts
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Inside <tt>`trunk/Translations'</tt> directory, we use "translation
|
|
|
4c79b5 |
entries" to organize artworks "translation files" and their
|
|
|
4c79b5 |
"translation templates".
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Translation Entries
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Translation entries exists for each artwork you want to produce.
|
|
|
4c79b5 |
Translation entries can be empty directories, or directories
|
|
|
4c79b5 |
containing translation files and translation templates.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
When translation entries are empty directories, the identity entry is
|
|
|
4c79b5 |
used as reference to create file names and directories layout for
|
|
|
4c79b5 |
rendered files. In this case, the centos-art script takes
|
|
|
4c79b5 |
one design template and outputs one non-translated file for each
|
|
|
4c79b5 |
design template available. This configuration is mainly used to
|
|
|
4c79b5 |
produce non-translatable artworks like themes' backgrounds.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
When translation entries contain translation files, the translation
|
|
|
4c79b5 |
entry implements the CentOS release schema and is used as reference to
|
|
|
4c79b5 |
create file names and directories layout for translated artworks. In
|
|
|
4c79b5 |
this case, the centos-art script applies one translation
|
|
|
4c79b5 |
file to one design template to create one translated instance which is
|
|
|
4c79b5 |
used to output one translated file. When the translated file is
|
|
|
4c79b5 |
rendered, the centos-art script remove the previous instance
|
|
|
4c79b5 |
and takes the next file in the list of translation files to repate the
|
|
|
4c79b5 |
whole process once again, and so on for all files in the list. This
|
|
|
4c79b5 |
configuration is mainly used to produce translatable artworks like
|
|
|
4c79b5 |
Anaconda's progress slide images.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
To find out correspondence between translation entries and identity
|
|
|
4c79b5 |
entries, you need to look the path of both translation entries and
|
|
|
4c79b5 |
identity entries. For example, if you are using the Modern's artisitic
|
|
|
4c79b5 |
motif, the identity entry for Anaconda progress artwork is:
|
|
|
4c79b5 |
|
|
|
4c79b5 |
trunk/Identity/Themes/Motifs/Modern/Distro/Anaconda/Progress
|
|
|
4c79b5 |
|
|
|
4c79b5 |
and its translation entry is:
|
|
|
4c79b5 |
|
|
|
4c79b5 |
trunk/Translations/Identity/Themes/Distro/Anaconda/Progress
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Note how the <tt>`Translations/'</tt> directory prefixes <tt>`Identity/'</tt>
|
|
|
4c79b5 |
directory, also how static values (e.g., Identity, Themes, Distro,
|
|
|
4c79b5 |
etc.) in the identity's entry path remain in translation's entry path,
|
|
|
4c79b5 |
and how variable values like theme names (e.g., Modern) are stript out
|
|
|
4c79b5 |
from translation's entry path. The same convenction can be applied to
|
|
|
4c79b5 |
other identity entries in order to determine their translation
|
|
|
4c79b5 |
entries, or to other translation entries to determine their identity
|
|
|
4c79b5 |
entries.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Note Translation entries related to identity entries under
|
|
|
4c79b5 |
<tt>`trunk/Identity/Themes/Motifs'</tt> do not use <tt>`Motifs/'</tt> in the
|
|
|
4c79b5 |
path. We've done this because <tt>`trunk/Identity/Themes/Models'</tt>
|
|
|
4c79b5 |
structure, the other structure under <tt>`trunk/Identity/Themes'</tt>,
|
|
|
4c79b5 |
doesn't require translation paths so far. So in the sake of saving
|
|
|
4c79b5 |
characters space when building translation entries for
|
|
|
4c79b5 |
<tt>`trunk/Identity/Themes/Motifs'</tt> structure, we organize Motifs
|
|
|
4c79b5 |
translation entries under <tt>`trunk/Translations/Identity/Themes/'</tt>
|
|
|
4c79b5 |
directly.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
If for some reason <tt>`trunk/Identity/Themes/Models'</tt> structure
|
|
|
4c79b5 |
requires translation entries, we need to re-oraganize the current
|
|
|
4c79b5 |
directory structure accordingly.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Translation entries, as described above, can be re-used by similar
|
|
|
4c79b5 |
identity entries. For example the following identity entries:
|
|
|
4c79b5 |
|
|
|
4c79b5 |
trunk/Identity/Themes/Motifs/Modern/Distro/Anaconda/Progress/
|
|
|
4c79b5 |
trunk/Identity/Themes/Motifs/TreeFlower/Distro/Anaconda/Progress/
|
|
|
4c79b5 |
trunk/Identity/Themes/Motifs/Mettle/Distro/Anaconda/Progress/
|
|
|
4c79b5 |
|
|
|
4c79b5 |
are all valid identity entries able to re-use translation files inside
|
|
|
4c79b5 |
Anaconda progress translation entry (the one shown in our example
|
|
|
4c79b5 |
above). This way, you can create several identity entries and maintain
|
|
|
4c79b5 |
just one translation entry for all of them. Once you change the
|
|
|
4c79b5 |
translation files inside the common translation entry, changes inside
|
|
|
4c79b5 |
identity entries will take effect inside the next you render them.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Trying to make things plain and simple: inside CentOS Artwork
|
|
|
4c79b5 |
Repository, graphic designers can concentrate their efforts in
|
|
|
4c79b5 |
artworks look and feel (the identity entries), and translators in
|
|
|
4c79b5 |
artworks translations (the translation entries).
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Translation Markers
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Translation markers are used in "Theme Model Designs" and
|
|
|
4c79b5 |
"Translation Files" as replacement patterns to commit content
|
|
|
4c79b5 |
translation. When you are rendering content using
|
|
|
4c79b5 |
centos-art script inisde <tt>`trunk/Identity'</tt> structure,
|
|
|
4c79b5 |
artistic motifs and translation files are applied to model designs to
|
|
|
4c79b5 |
produce translated content as result. In order to have the appropriate
|
|
|
4c79b5 |
translation in content rendered, markers defintion in translation
|
|
|
4c79b5 |
files should match markers in model designs exactly.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Figure 3.1: The image rendering flow.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Translation markers can be whatever text you want, but as convenction
|
|
|
4c79b5 |
we use the following to represent releases of CentOS distribution:
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
<samp>`=MINOR_RELEASE='</samp>
|
|
|
4c79b5 |
Replace with minor release of CentOS distribution. In the schema M.N, the minor
|
|
|
4c79b5 |
release is represented by the N letter.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
<samp>`=MAJOR_RELEASE='</samp>
|
|
|
4c79b5 |
Replace with major release of CentOS distribution. In the schema M.N,
|
|
|
4c79b5 |
the major release is represented by the M letter.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
<samp>`=RELEASE='</samp>
|
|
|
4c79b5 |
Replace the full release of CentOS distribution. It is
|
|
|
4c79b5 |
<samp>`=MAJOR_RELEASE=.=MINOR_RELEASE='</samp> basically.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Specific translation markers convenctions are described inside
|
|
|
4c79b5 |
specific translation entries. Read translation entries documentation
|
|
|
4c79b5 |
to know more about supported translation markers.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Translation markers standardization creates a common point of
|
|
|
4c79b5 |
reference for translators and graphic designers. To have a clean
|
|
|
4c79b5 |
definition of translation markers makes possible that translators and
|
|
|
4c79b5 |
graphic designers can work together but independently one another.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Translation Templates
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Translation temlpates are organized inside translation entries, under
|
|
|
4c79b5 |
<tt>`Tpl/'</tt> directory. There is just one <tt>`Tpl/'</tt> per translation
|
|
|
4c79b5 |
entry. The translation template directory contains common translations
|
|
|
4c79b5 |
files for different release-specific translation directories. The
|
|
|
4c79b5 |
translation template directory may be used as base to build
|
|
|
4c79b5 |
non-reusable translations.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Translation Files
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Translation files are text files with sed 's commands inside,
|
|
|
4c79b5 |
replacement commands mainly. As convenction, translation file names
|
|
|
4c79b5 |
end in <samp>`.sed'</samp>. Translation files are used by centos-art
|
|
|
4c79b5 |
script to produce translated artworks for specific major releases of
|
|
|
4c79b5 |
CentOS Distribution. There are common translation files, specific
|
|
|
4c79b5 |
translation, and template translation files.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
For example, the Firstboot artwork of CentOS distribution uses the
|
|
|
4c79b5 |
images <tt>`splash-small.png'</tt> and <tt>`firstboot-left.png'</tt> as based
|
|
|
4c79b5 |
to control its visual style. The <tt>`splash-small.png'</tt> image
|
|
|
4c79b5 |
contains, in its graphic design, the release number information of
|
|
|
4c79b5 |
CentOS distribution. So the <tt>`splash-small.png'</tt> is
|
|
|
4c79b5 |
release-specific. In the other hand, the <tt>`firstboot-left.png'</tt>
|
|
|
4c79b5 |
doesn't contain release number information. So the
|
|
|
4c79b5 |
<tt>`firstboot-left.png'</tt> is not release-specific.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
If we want to produce Firstboot artwork for different major releases
|
|
|
4c79b5 |
of CentOS distribution, using a monolithic visual identity, all
|
|
|
4c79b5 |
Firstboot images should have the same visual style and, at the same
|
|
|
4c79b5 |
time, the release-specific information in the release-specific images.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Note The monolithic visual identity is implemented using
|
|
|
4c79b5 |
theme models (see section trunk/Identity/Themes/Models) and artistic
|
|
|
4c79b5 |
motifs (see section trunk/Identity/Themes/Motifs).
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Assuming that both theme models and theme motifs are ready for using,
|
|
|
4c79b5 |
the initial translation entry to produce Firstboot artworks would look
|
|
|
4c79b5 |
like the following:
|
|
|
4c79b5 |
|
|
|
4c79b5 |
trunk/Translations/Identity/Themes/Distro/BootUp/Firstboot/
|
|
|
4c79b5 |
|
|
|
|
4c79b5 |
| `
|
|
|
4c79b5 |
`-- firstboot-left.sed <-- common translation file
|
|
|
4c79b5 |
|
|
|
4c79b5 |
With this translation entry, the centos-art command is able
|
|
|
4c79b5 |
to produce the image <tt>`firstboot-left.png'</tt> only. To produce
|
|
|
4c79b5 |
<tt>`splash-small.png'</tt> images for major releases (e.g., 3, 4, 5, and
|
|
|
4c79b5 |
6) of CentOS distribution we need to produce the release-specific
|
|
|
4c79b5 |
translation files using the centos-art script as following:
|
|
|
4c79b5 |
|
|
|
4c79b5 |
centos-art render --translation=/home/centos/artwork/trunk/Translations/Identity/Themes/BootUp/Firstboot --filter='3,4,5,6'
|
|
|
4c79b5 |
|
|
|
4c79b5 |
The above command produces the following translation entiry:
|
|
|
4c79b5 |
|
|
|
4c79b5 |
trunk/Translations/Identity/Themes/Distro/BootUp/Firstboot/
|
|
|
4c79b5 |
|
|
|
|
4c79b5 |
| `
|
|
|
4c79b5 |
|
|
|
|
4c79b5 |
| `
|
|
|
4c79b5 |
|
|
|
|
4c79b5 |
| `
|
|
|
4c79b5 |
|
|
|
|
4c79b5 |
| `
|
|
|
4c79b5 |
|
|
|
|
4c79b5 |
| `
|
|
|
4c79b5 |
`-- firstboot-left.sed <-- common translation file
|
|
|
4c79b5 |
|
|
|
4c79b5 |
At this point centos-art is able to produce the Firstboot
|
|
|
4c79b5 |
artwork images for major releases of CentOS distribution. To add new
|
|
|
4c79b5 |
release-specific translation files, run the translation rendering
|
|
|
4c79b5 |
command with the release number you want to produce translation files
|
|
|
4c79b5 |
for in the <samp>`--filter='release-number''</samp> argument.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Template Translation Files
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Template translation files are translation files stored inside
|
|
|
4c79b5 |
translation template directory. Template translation files are used by
|
|
|
4c79b5 |
centos-art script to produce specific translation files
|
|
|
4c79b5 |
only. Template translation files may be empty or contain
|
|
|
4c79b5 |
sed 's replacement commands. If template translation files
|
|
|
4c79b5 |
are empty files, the final specifc translation file built from it
|
|
|
4c79b5 |
contains release-specific replacement commands only. For example, the
|
|
|
4c79b5 |
Firstboot <tt>`splash-small.sed'</tt> template translation file looks like
|
|
|
4c79b5 |
the following:
|
|
|
4c79b5 |
|
|
|
4c79b5 |
# -------------------------------------
|
|
|
4c79b5 |
# $Id: splash-small.sed 5316 2010-04-04 04:42:12Z al $
|
|
|
4c79b5 |
# -------------------------------------
|
|
|
4c79b5 |
|
|
|
4c79b5 |
In the above template translation file there are three comments lines,
|
|
|
4c79b5 |
but when you render it, the centos-art adds the
|
|
|
4c79b5 |
release-specific replacement commands. In our Firstboot example, after
|
|
|
4c79b5 |
rendering Firstboot translation entry, the <tt>`splash-small.sed'</tt>
|
|
|
4c79b5 |
translation file specific to CentOS 5, looks like the following:
|
|
|
4c79b5 |
|
|
|
4c79b5 |
# Warning: Do not modify this file directly. This file is created
|
|
|
4c79b5 |
# automatically using 'centos-art' command line interface. Any change
|
|
|
4c79b5 |
|
|
|
4c79b5 |
# translation files using 'centos-art' command line interface. If you
|
|
|
4c79b5 |
|
|
|
4c79b5 |
# template file instead and run the 'centos-art' command line
|
|
|
4c79b5 |
|
|
|
4c79b5 |
# -------------------------------------
|
|
|
4c79b5 |
# $Id: splash-small.sed 5316 2010-04-04 04:42:12Z al $
|
|
|
4c79b5 |
# -------------------------------------
|
|
|
4c79b5 |
|
|
|
4c79b5 |
# Release number information.
|
|
|
4c79b5 |
s!=RELEASE=!=MAJOR_RELEASE=.=MINOR_RELEASE=!g
|
|
|
4c79b5 |
s!=MINOR_RELEASE=!0!g
|
|
|
4c79b5 |
s!=MAJOR_RELEASE=!5!g
|
|
|
4c79b5 |
|
|
|
4c79b5 |
If template translation files are not empty, replacement commands
|
|
|
4c79b5 |
inside template translation files are preserved inside
|
|
|
4c79b5 |
release-specific translation files. For example, consider the English
|
|
|
4c79b5 |
template translation file of Anaconda progress welcome slide. The
|
|
|
4c79b5 |
translation template directory structure looks like the following:
|
|
|
4c79b5 |
|
|
|
4c79b5 |
trunk/Translations/Identity/Themes/Distro/Anaconda/Progress/
|
|
|
4c79b5 |
`
|
|
|
4c79b5 |
`
|
|
|
4c79b5 |
`-- 01-welcome.sed
|
|
|
4c79b5 |
|
|
|
4c79b5 |
and if we render translation files for CentOS 4 and CentOS 5 major
|
|
|
4c79b5 |
releases, the translation entry would look like the following:
|
|
|
4c79b5 |
|
|
|
4c79b5 |
trunk/Translations/Identity/Themes/Distro/Anaconda/Progress/
|
|
|
4c79b5 |
|
|
|
|
4c79b5 |
| `
|
|
|
4c79b5 |
| `
|
|
|
4c79b5 |
|
|
|
|
4c79b5 |
| `
|
|
|
4c79b5 |
| `
|
|
|
4c79b5 |
`
|
|
|
4c79b5 |
`
|
|
|
4c79b5 |
`-- 01-welcome.sed
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Note Release-specific translation directories preserve
|
|
|
4c79b5 |
template translation directory structure and file names.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
In the example above, the template translation file looks like the
|
|
|
4c79b5 |
following:
|
|
|
4c79b5 |
|
|
|
4c79b5 |
# ------------------------------------------------------------
|
|
|
4c79b5 |
# $Id: 01-welcome.sed 4959 2010-03-18 02:27:24Z al $
|
|
|
4c79b5 |
# ------------------------------------------------------------
|
|
|
4c79b5 |
s/=TITLE=/Welcome to CentOS =MAJOR_RELEASE= !/
|
|
|
4c79b5 |
s/=TEXT1=/Thank you for installing CentOS =MAJOR_RELEASE=./
|
|
|
4c79b5 |
s/=TEXT2=/CentOS is an enterprise-class Linux Distribution derived from sources freely provided to the public by a prominent North American Enterprise Linux vendor./
|
|
|
4c79b5 |
s/=TEXT3=/CentOS conforms fully with the upstream vendors redistribution policy and aims to be 100% binary compatible. CentOS mainly changes packages to remove upstream vendor branding and artwork./
|
|
|
4c79b5 |
s/=TEXT4=
|
|
|
4c79b5 |
s/=TEXT5=
|
|
|
4c79b5 |
s/=TEXT6=
|
|
|
4c79b5 |
s!=URL=!http:
|
|
|
4c79b5 |
|
|
|
4c79b5 |
and after render release-specific translation files, specific
|
|
|
4c79b5 |
translation files look like the following:
|
|
|
4c79b5 |
|
|
|
4c79b5 |
# Warning: Do not modify this file directly. This file is created
|
|
|
4c79b5 |
# automatically using 'centos-art' command line interface. Any change
|
|
|
4c79b5 |
|
|
|
4c79b5 |
# translation files using 'centos-art' command line interface. If you
|
|
|
4c79b5 |
|
|
|
4c79b5 |
# template file instead and run the 'centos-art' command line
|
|
|
4c79b5 |
|
|
|
4c79b5 |
# ------------------------------------------------------------
|
|
|
4c79b5 |
# $Id: 01-welcome.sed 4959 2010-03-18 02:27:24Z al $
|
|
|
4c79b5 |
# ------------------------------------------------------------
|
|
|
4c79b5 |
|
|
|
4c79b5 |
s/=TITLE=/Welcome to CentOS =MAJOR_RELEASE= !/
|
|
|
4c79b5 |
s/=TEXT1=/Thank you for installing CentOS =MAJOR_RELEASE=./
|
|
|
4c79b5 |
s/=TEXT2=/CentOS is an enterprise-class Linux Distribution derived from sources freely provided to the public by a prominen t North American Enterprise Linux vendor./
|
|
|
4c79b5 |
s/=TEXT3=/CentOS conforms fully with the upstream vendors redistribution policy and aims to be 100% binary compatible. Cent OS mainly changes packages to remove upstream vendor branding and artwork./
|
|
|
4c79b5 |
s/=TEXT4=
|
|
|
4c79b5 |
s/=TEXT5=
|
|
|
4c79b5 |
s/=TEXT6=
|
|
|
4c79b5 |
s!=URL=!http:
|
|
|
4c79b5 |
|
|
|
4c79b5 |
# Release number information.
|
|
|
4c79b5 |
s!=RELEASE=!=MAJOR_RELEASE=.=MINOR_RELEASE=!g
|
|
|
4c79b5 |
s!=MINOR_RELEASE=!0!g
|
|
|
4c79b5 |
s!=MAJOR_RELEASE=!5!g
|
|
|
4c79b5 |
|
|
|
4c79b5 |
In the example above, relevant lines begin with the <samp>`s'</samp> word
|
|
|
4c79b5 |
followed by a separation character (e.g., <samp>`/'</samp>, <samp>`!'</samp>, etc.).
|
|
|
4c79b5 |
These lines have the following format:
|
|
|
4c79b5 |
|
|
|
4c79b5 |
s/REGEXP/REPLACEMENT/FLAGS
|
|
|
4c79b5 |
|
|
|
4c79b5 |
The <samp>`/'</samp> characters may be uniformly replaced by any other single
|
|
|
4c79b5 |
character within any given s command. The <samp>`/'</samp>
|
|
|
4c79b5 |
character (or whatever other character is used in its stead) can
|
|
|
4c79b5 |
appear in the REGEXP or REPLACEMENT only if it is preceded by a
|
|
|
4c79b5 |
<samp>`\'</samp> character.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
The s command is probably the most important in
|
|
|
4c79b5 |
sed and has a lot of different options. Its basic concept
|
|
|
4c79b5 |
is simple: the s command attempts to match the pattern space
|
|
|
4c79b5 |
against the supplied REGEXP; if the match is successful, then that
|
|
|
4c79b5 |
portion of the pattern space which was matched is replaced with
|
|
|
4c79b5 |
REPLACEMENT.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Tip For more information about how to use sed 's
|
|
|
4c79b5 |
replacement commands and flags, read sed 's documentation
|
|
|
4c79b5 |
manual using the following command:
|
|
|
4c79b5 |
info sed
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
In the context of our translation files, the REGEXP space is where you
|
|
|
4c79b5 |
define translation markers and REPLACEMENT space is where you define
|
|
|
4c79b5 |
the translation text you want to have after artwork rendering.
|
|
|
4c79b5 |
Sometimes we use the FLAG component with the <samp>`g'</samp> command to apply
|
|
|
4c79b5 |
the replacements globally.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Tip Use sed 's <samp>`g'</samp> flag when one translation
|
|
|
4c79b5 |
marker needs to be replaced many times in the same translation file.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Inside translation files, you can use translation markers not only in
|
|
|
4c79b5 |
the REGEXP space but in the REPLACEMENT space too. In order for this
|
|
|
4c79b5 |
configuration to work, the REPLACEMENT of translation markers need to
|
|
|
4c79b5 |
be define after its definition. For example, see in the
|
|
|
4c79b5 |
release-specific translation file above how the
|
|
|
4c79b5 |
<samp>`s!=MAJOR_RELASE=!5!g'</samp> replacement command is defined
|
|
|
4c79b5 |
after <samp>`=MAJOR_RELASE='</samp> translation marker definition in
|
|
|
4c79b5 |
the REPLACEMENT space of <samp>`=TITLE='</samp> translation marker replacement
|
|
|
4c79b5 |
command.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Common Translation Files
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Common translation files contain common localization or no
|
|
|
4c79b5 |
localization at all for their related artworks. They are in the root
|
|
|
4c79b5 |
directory of the translation entry. Common translation files create
|
|
|
4c79b5 |
common artworks for all major releases of CentOS Distribution.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Specific Translation Files
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Specific translation files contain specific localization for their
|
|
|
4c79b5 |
related artworks. Specific translation files are not in the root
|
|
|
4c79b5 |
directory of the translation entry. Specific translation files are
|
|
|
4c79b5 |
inside directories which describe the type of translation they are
|
|
|
4c79b5 |
doing.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Translation Rendering
|
|
|
4c79b5 |
|
|
|
4c79b5 |
When rendering translations, the centos-art script checks
|
|
|
4c79b5 |
the translation entry to verify that it has a translation template
|
|
|
4c79b5 |
directory inside. The translation template directory (<tt>`Tpl/'</tt>)
|
|
|
4c79b5 |
contains common translation files used to build release-specific
|
|
|
4c79b5 |
translation files. If the translation template directory doesn't exist
|
|
|
4c79b5 |
inside the translation entry the translation rendering fails. In this
|
|
|
4c79b5 |
case the centos-art script outputs a message and quits
|
|
|
4c79b5 |
script execution.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Translation (Pre-)Rendering Configuration Scripts
|
|
|
4c79b5 |
When the centos-art script finds a translation template
|
|
|
4c79b5 |
directory inside translation entry, it looks for translations
|
|
|
4c79b5 |
pre-rendering configuration scripts for that translation entry.
|
|
|
4c79b5 |
Translation pre-rendeirng configuration scripts let you extend
|
|
|
4c79b5 |
translation's default functionality (described below).
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Translation pre-rendering configuration scripts are stored in the
|
|
|
4c79b5 |
<tt>`trunk/Scripts'</tt> directory structure, inside the appropriate
|
|
|
4c79b5 |
language implementation. If you are using centos-art Bash's
|
|
|
4c79b5 |
implementation, the translation pre-rendering scripts are store in the
|
|
|
4c79b5 |
<tt>`trunk/Scripts/Bash/Config'</tt> location; if you are using
|
|
|
4c79b5 |
centos-art Python's implementation, then translation
|
|
|
4c79b5 |
pre-rendering scripts are stored in the
|
|
|
4c79b5 |
<tt>`trunk/Scripts/Python/Config'</tt> location, and so on for other
|
|
|
4c79b5 |
implementations.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Bash's translation pre-rendering configuration scripts look like the
|
|
|
4c79b5 |
following:
|
|
|
4c79b5 |
|
|
|
4c79b5 |
#!/bin/bash
|
|
|
4c79b5 |
#
|
|
|
4c79b5 |
# loadConfiguration.sh -- brief description here.
|
|
|
4c79b5 |
#
|
|
|
4c79b5 |
# Copyright (C) YEAR YOURNAME
|
|
|
4c79b5 |
#
|
|
|
4c79b5 |
# This program is free software; you can redistribute it and/or modify
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
#
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
# General Public License for more details.
|
|
|
4c79b5 |
#
|
|
|
4c79b5 |
|
|
|
4c79b5 |
# along with this program; if not, write to the Free Software
|
|
|
4c79b5 |
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
|
|
|
4c79b5 |
# USA.
|
|
|
4c79b5 |
#
|
|
|
4c79b5 |
# ----------------------------------------------------------------------
|
|
|
4c79b5 |
# $Id$
|
|
|
4c79b5 |
# ----------------------------------------------------------------------
|
|
|
4c79b5 |
|
|
|
4c79b5 |
function loadConfiguration {
|
|
|
4c79b5 |
...
|
|
|
4c79b5 |
}
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Translation pre-rendering scripts are function scripts loaded and
|
|
|
4c79b5 |
executed when rendering a translation entry. Translation pre-rendering
|
|
|
4c79b5 |
scripts are loaded using the translation entry being rendered as
|
|
|
4c79b5 |
reference. For example, suppose you are using the
|
|
|
4c79b5 |
centos-art Bash's implementation, and you are rendering
|
|
|
4c79b5 |
translations for CentOS brands, in this situation the translation
|
|
|
4c79b5 |
entry would be:
|
|
|
4c79b5 |
|
|
|
4c79b5 |
trunk/Translations/Identity/Brands
|
|
|
4c79b5 |
|
|
|
4c79b5 |
and the entry inside the translation pre-rendering configuration
|
|
|
4c79b5 |
structure would be
|
|
|
4c79b5 |
|
|
|
4c79b5 |
trunk/Scripts/Bash/Config/Identity/Brands
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Once the centos-art Bash's implementation detects that
|
|
|
4c79b5 |
translation pre-rendering configuration directory exists, it looks for
|
|
|
4c79b5 |
the <tt>`render.conf.sh'</tt> script file. If the <tt>`render.conf.sh'</tt>
|
|
|
4c79b5 |
file exists, it is loaded and executed. Once the <tt>`render.conf.sh'</tt>
|
|
|
4c79b5 |
file has been executed the translation rendering is over and the
|
|
|
4c79b5 |
script execution ends.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
Translations Rendering Default Functionality
|
|
|
4c79b5 |
In contrast, if there is no <tt>`render.conf.sh'</tt> file or it isn't
|
|
|
4c79b5 |
written as a function script, the centos-art script ignores
|
|
|
4c79b5 |
it and passes to apply default translation process instead.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
The default translation process takes place using translation
|
|
|
4c79b5 |
templates available inside translation entry. It is simple. The
|
|
|
4c79b5 |
centos-art script takes the template structure and
|
|
|
4c79b5 |
duplicates it inside a release-specific translation structure using
|
|
|
4c79b5 |
the <samp>`release-number'</samp> value, passed in the
|
|
|
4c79b5 |
<samp>`--filter='release-number''</samp> argument, as reference. Inside
|
|
|
4c79b5 |
release-specific translation files, release number replacements are
|
|
|
4c79b5 |
added at the end of each file to provide release-specific translation
|
|
|
4c79b5 |
to release-specific translation markers inside translation files.
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
[ < ]
|
|
|
4c79b5 |
[ > ]
|
|
|
4c79b5 |
|
|
|
4c79b5 |
[ << ]
|
|
|
4c79b5 |
[ Up ]
|
|
|
4c79b5 |
[ >> ]
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
[Top]
|
|
|
4c79b5 |
[Contents]
|
|
|
4c79b5 |
[Index]
|
|
|
4c79b5 |
[ ? ]
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
<font size="-1">
|
|
|
bc3531 |
This document was generated on September, 5 2010 using texi2html 1.76.
|
|
|
4c79b5 |
</font>
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
|
|
|
4c79b5 |
</body>
|
|
|
4c79b5 |
</html>
|