Blame Manuals/Repository/repository-latex/Concepts/Frameworks/templates.tex

4c79b5
% Part   : Concepts
4c79b5
% Chapter: Frameworks
4c79b5
% ------------------------------------------------------------
4c79b5
% $Id: templates.tex 6207 2010-08-05 13:11:13Z al $
4c79b5
% ------------------------------------------------------------
4c79b5
4c79b5
\section{Design Templates}
4c79b5
\hypertarget{sec:Concepts:Frameworks:Templates}{}
4c79b5
\label{sec:Concepts:Frameworks:Templates}
4c79b5
4c79b5
Design templates are plain text files. Design templates may or may not
4c79b5
contain translation markers inside.  Design templates are used to
4c79b5
define the CentOS visual style (the look and feel) of CentOS corporate
4c79b5
identity in all its manifestations.  Design templates are the
4c79b5
documents you need to create or edit in order to implement or maintain
4c79b5
the monolithic CentOS corporate visual structure.  Design templates
4c79b5
are normative documents that need to be conceived carefully.
4c79b5
4c79b5
Design templates may be based on specific markups (i.e. XHTML, SVG,
4c79b5
CSS, etc.). If that is the case, translation markers may be combined
4c79b5
inside the specific markup design template to create a translatable
4c79b5
markup-specific design template. In contrast, if design templates do
4c79b5
not have specific markup inside, they are considered the simpliest
4c79b5
design templates because they only have translation markers inside.
4c79b5
4c79b5
Design templates can be read, edited, and studied using your favorite
4c79b5
text editor. 
4c79b5
4c79b5
Design templates are specific to frameworks using design patterns to
4c79b5
define the visual style of content produced inside them.  This is the
4c79b5
case of frameworks inside ``trunk/Identity/'', where design templates
4c79b5
are used to define images' visual style; and ``trunk/Translations/'',
4c79b5
where design tempates are used to define translations' common files.
4c79b5
4c79b5
Inside frameworks, design templates are stored in a directory named
4c79b5
`tpl'. This name is a convenction that scripts use to find framework's
4c79b5
design tempate files. If you want to change the design template
4c79b5
directory's name to something different from `tpl', you need to set
4c79b5
the same name in all design templates' directories along the CentOS
4c79b5
Artwork Repository, and update scripts to recognize the new name you
4c79b5
set.  This is something you problably don't need to do, but if you
4c79b5
still want to, please share your reasons in
4c79b5
\href{mailto:centos-devel@centos.org}{centos-devel@centos.org} before
4c79b5
commit your changes. Changing the design template directory's name is
4c79b5
a big chanage that needs to be discussed in the community.
4c79b5
4c79b5
\subsection{Simpliest Design Templates}
4c79b5
4c79b5
The simpliest design templates are inside identity frameworks. The
4c79b5
simpliest design tempaltes are plain text files with translation
4c79b5
markers only.  These kind of design templates are used to define
4c79b5
information like ``eula files'' (i.e trunk/Identity/Release/Tpl/eula)
4c79b5
used by Anaconda and similar files.  The simpliest design template
4c79b5
files do not use extension.
4c79b5
4c79b5
\subsection{Translation Design Templates} 
4c79b5
4c79b5
The translation design templates are inside translation frameworks.
4c79b5
The translation design templats are plain text documents whithout any
4c79b5
kind of markup.  Instead, they contain sed's replacements commands.
4c79b5
As convenction, translation file names end with the extension `.sed'.
4c79b5
Translation files are created and edited using your favorite text
4c79b5
editor.
4c79b5
4c79b5
\subsection{SVG Design Templates}
4c79b5
4c79b5
The scalar vector graphics (SVG) design templates are inside identity
4c79b5
frameworks.  The SVG design templates are plain text files with
4c79b5
markup, based on SVG standard. The SVG standard is described at
4c79b5
\href{http://www.w3.org/2000/svg}{http://www.w3.org/2000/svg}. 
4c79b5
4c79b5
Even SVG design templates can be read and edited with your favorite
4c79b5
text editor, it is better to use a SVG editor like
4c79b5
\href{http://www.inkscape.org/}{Inkscape} (see
4c79b5
http://www.inkscape.org/) to create and edit them. The SVG design
4c79b5
template files are used to define the visual style of images
4c79b5
controlling the visual style of CentOS distribution, CentOS web sites,
4c79b5
CentOS promotion, etc.
4c79b5
4c79b5
Inside SVG design templates, each object has an ``Id'' property.  By
4c79b5
default the object's Id is a combination of letters and numbers
4c79b5
granting its uniqueness inside the entire document.  
4c79b5
4c79b5
Inside CentOS Artwork Repository, SVG design templates are rendered
4c79b5
automatically using the \texttt{render.sh} identity script.  The
4c79b5
\texttt{render.sh} identity script looks for the object's Id property
4c79b5
containing the CENTOSARTWORK uppercase word and exports its area as
4c79b5
bitmap, automatically.
4c79b5
4c79b5
If you are designing SVG templates for CentOS Artwork Repository, and
4c79b5
you are using the \texttt{render.sh} identity script to render them,
4c79b5
you need to set the CENTOSARTWORK uppercase word as object's Id on the
4c79b5
design object you want to export as bitmap during the rendering
4c79b5
process. The CENTOSARTWORK uppercase word is a convenction used by
4c79b5
scripts to find the export area on your SVG design templates.
4c79b5
4c79b5
In CentOS Artwork Repository, SVG design templates are released under
4c79b5
the \href{http://creativecommons.org/licenses/by-sa/3.0/}{Creative
4c79b5
Common Share-Alike License 3.0}.\footnote{See
4c79b5
http://creativecommons.org/licenses/by-sa/3.0/} In Inkscape, you say
4c79b5
so in the ``Document Metadata'' panel, available in the ``File'' menu.
4c79b5
4c79b5
\subsection{XHTML Design Templates} 
4c79b5
4c79b5
The XHTML design templates are inside identity frameworks. They are
4c79b5
plain text with markup, based on the
4c79b5
\href{http://www.w3.org/TR/xhtml1}{XHTML standard} described at
4c79b5
\href{http://www.w3.org/TR/xhtml1}{http://www.w3.org/TR/xhtml1}. These
4c79b5
files are created and edited using your favorite text editor.  XHTML
4c79b5
design templates are used to define the visual style of files like the
4c79b5
``Release Notes'' (trunk/Identity/Release/Tpl/release-notes.html) used
4c79b5
by Anaconda.
4c79b5